Systemd hurok

Fórumok

Telepítettem egy gépre Fedora 29-et, engedélyeztem és elindítottam az automatikus frissítéseket:

systemctl enable --now dnf-automatic-install.timer

Működik, minden jó, majd reboot után ellenőrzöm, látom, hogy nem fut, bár engedélyezve van. Hát, mondom, ezt meg mi lelte? Azért mondtam neki, hogy unmask, de nyilván nem segített.Log olvasása alapján kiderült, hogy saját farkába harapott valami, egymásra várás van. Nem volt türelmem bogozni a szálakat, meg nem is nagyon tudom, hogyan fognék hozzá. Írtam egy rc.local file-t - amelyet amúgy szintén a systemd indít -, amelybe írtam egy

systemctl start dnf-automatic-install.timer

parancsot. Csak, mert türelmetlen lettem. Tudom, legalább azt illene vizsgálni, hogy a szolgáltatás engedélyezve van-e, s csak akkor elindítani, ha igen.

Így természetesen elindul, viszont nagyon csúnya workaround ez. Mi lenne a korrekt megoldás, hogyan lehet kibogozni egy ilyet? Gondolom, a unit file-okat nézegethetném, mi után minek kellene indulnia, aztán jegyzetelhetném egy A4-es lapra a megfejtést, de jó volna valami egyszerűbb megoldás erre.

Hozzászólások

systemctl list-dependencies dnf-automatic-install.timer
mire var amugy?

Köszönöm, meg fogom nézni az érintett gépen.

Az a kérdésed, mire való ez a timer? A gép bekapcsolását követően egy óra múlva letölti és feltelepíti a háttérben a repóban megjelent legújabb frissítéseket, s ha nem kapcsolják ki a gépet, ezt naponta egyszer megteszi. Van egy legfeljebb 5 perces random jitter is benne, hogy ne legyen túl nagy a load, amennyiben más szolgáltatás is a bekapcsolást követő első órára lenne időzítve.

Ha pedig az a kérdésed, mi okozta a deadlock-ot, arra azt mondom, már nem emlékszem arra, hogy pontosan mit olvastam a logban. De az jött le belőle, hogy egymásra várás van, mert függőségi hurok alakult ki.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE