Predstavljen je sistemski upravitelj GNU Shepherd 1.0.0 (bivši dmd), koji spaja mogućnosti sustava inicijalizacije i alate za upravljanje sistemskim servisima. Ističe se da je dodeljivanje broja 1.0 nakon 21 godine razvoja označilo priznanje spremnosti projekta i njegovog usklađivanja sa zahtevima funkcionalnosti modernih sistema inicijalizacije i upravitelja servisa.
Projekt se razvija od strane programera distsribucije GNU Guix System kao alternativa sistemu inicijalizacije SysV-init, koji podržava zavisnosti. Upravitelj demon i alati Shepherd napisani su na jeziku Guile (jedna od implementacija jezika Scheme), koji se takođe koristi za definisanje postavki i parametara pokretanja servisa. Shepherd se već koristi u distribuciji GNU Guix System i takođe je usmeren na upotrebu u GNU/Hurd, ali može raditi na bilo kojem POSIX-kompatibilnom operativnom sistemu za koji je dostupan jezik Guile.
Shepherd opravlja delo zagona in ustavitve storitev, pri čemer upošteva medsebojne povezave med storitvami, dinamično določa in zažene storitve, od katerih je odvisna izbrana storitev. Shepherd prav tako podpira določanje konfliktov med storitvami in preprečuje njihovo hkratno izvajanje. Projekt se lahko uporablja bodisi kot osnovni sistem inicializacije (init s PID 1) bodisi na ločen način za upravljanje ozadnih procesov posameznih uporabnikov (na primer za zagon tor, privoxy, mcron itd.) z izvajanjem s pravicami teh uporabnikov.
Glavne novine u GNU Shepherd 1.0.0:
- Dodana je podrška za servise koji povremeno pokreću komande ili kod na jeziku Scheme prema navedenom rasporedu.
- U timu 'herd status SERVICE' implementirano je prikazivanje visoko nivo informacije o servisima, kao što su PID, komanda i adrese na kojima se prihvataju mrešni zahtevi, kao i sažeci nedavno dodatih poruka u log. Pored toga, ova komanda sada prikazuje primenljive korisničke akcije za servis i obaveštava o postojanju zamenskog servisa koji će se primeniti nakon ponovnog pokretanja trenutnog servisa.
- Komanda 'herd status root' više nije sinonim za 'herd status' i prikazuje informacije o korenskom procesu shepherd.
- Za Linux platformu pružena je mogućnost ponovnog pokretanja koristeći mehanizam kexec ('reboot --kexec') za zamenu Linux jezgra bez fizičkog ponovnog pokretanja.
- Dodana je usluga log-rotation, koja je odgovorna za periodičku rotaciju logova i brisanje zastarjelih logova.
- Dodana je usluga system-log, koju možete koristiti kao zamenu za tradicionalni sistem syslogd.
- Dodana je usluga timer za pokretanje komandi u određeno vreme, analogno alatu 'at'. Na primer, 'herd schedule timer at 07:00 -- mpg123 alarm.mp3'.
- Dodana je usluga transient za pokretanje komandi u pozadini, analogno alatu systemd-run. Na primer, 'herd spawn transient -d $PWD -- make -j4'.
Izvor: opennet.ru
