Je gebruikt systemd en je hebt v256, update nu, omdat het een bug bevat die thuismappen elimineert

systemd 256 verwijderd /home

Enkele dagen geleden deelden we hier op de blog het nieuws over de release van systemd versie 256. Deze versie introduceerde een groot aantal wijzigingen en nieuwe functies, waaronder het hulpprogramma run0, dat we gerust de belangrijkste attractie van deze release kunnen noemen.

De reden voor de vermelding van systemd 256 is dat de release van de corrigerende versie, systemd 256.1, is aangekondigd . Deze versie is uitgebracht om een ​​kritiek probleem in versie 256 op te lossen.

Dit probleem had gevolgen voor het onjuist verwijderen van de inhoud van de /home-partitie bij het uitvoeren van de opdracht systemd-tmpfiles --purge . Oorspronkelijk was deze optie bedoeld om bestanden en mappen te verwijderen die waren aangemaakt via configuraties in tmpfiles.d, maar het gedrag kwam niet overeen met de documentatie en de verwachtingen van de gebruiker.

Het specifieke probleem was dat de naam "tmpfiles" in het hulpprogramma misleidend was, omdat de optie `--purge` niet alleen tijdelijke bestanden verwijderde, maar ook van invloed was op mappen en bestanden die automatisch werden aangemaakt via configuraties in `tmpfiles.d`. Dit omvatte ook de automatische aanmaak van gegevensmappen, zoals de thuismap in `/home`.

Het bestand /usr/lib/tmpfiles.d/home.conf was bijvoorbeeld verantwoordelijk voor het aanmaken van de directorystructuur in /home, en het onbedoelde gebruik van systemd-tmpfiles --purge verwijderde deze mappen en hun inhoud, in plaats van alleen tijdelijke bestanden op te ruimen zoals verwacht.

Dat is de reden waarom de corrigerende versie van systemd 256.1 is uitgebracht om deze inconsistenties en problemen op te lossen die door gebruikers zijn gemeld en ook om de functie –purge op de juiste manier af te stemmen op het oorspronkelijke doel, om ervoor te zorgen dat deze alleen tijdelijke bestanden verwijdert en de mapstructuur niet beïnvloedt. gemaakt via configuraties in tmpfiles.d.

Het is de moeite waard te vermelden dat het incident met systemd-tmpfiles en het onjuist verwijderen van mappen in de partitie /home Het was een ongelukkige situatie die aanleiding gaf tot discussie en belangrijke oplossingen voor de systeemimplementatie.

Er begonnen veel waarschuwingsberichten te verschijnen, inclusief routes naar binnen /home(kon de wijzigingstijden niet herstellen...?). Wat doet een tijdelijk opschoonprogramma in mijn thuismap? Dat is niet goed. Mijn hart begon sneller te kloppen en ik drukte zo snel als ik kon op Ctrl-C.

Het blijkt dat een groot deel van mijn persoonlijke map is verwijderd. Gelukkig lijkt het erop dat het is begonnen met de configuratiebestanden en niet met de daadwerkelijke gegevens, hoewel ik nog steeds niet zeker weet of ik iets belangrijks heb gemist. Ik heb de machine uitgeschakeld om de gegevens later te herstellen extundelete(tussen haakjes, het werkte niet, het crasht onmiddellijk om de een of andere reden; ik heb back-ups, maar ze zijn een beetje verouderd, ik vul de schijven te snel).

De eerste reactie van Luca Boccassi, ontwikkelaar van Microsoft systemd, weerspiegelde de frustratie en verbijstering van gebruikers die door deze onbedoelde verwijdering werden getroffen. De implementatie van een functie die, volgens de documentatie, alle bestanden en mappen zonder onderscheid zou moeten verwijderen, maar in de praktijk essentiële systeemstructuren aantastte, werd in twijfel getrokken.

Na uitgebreide discussies en recensies werd het erkend dat het gedrag van systemd-tmpfiles --purge onjuist was en er corrigerende maatregelen zijn genomen.

Aanvankelijk werd overwogen om de optie volledig te elimineren --purge, maar we hebben ervoor gekozen om de reikwijdte ervan te beperken, zodat het alleen bestanden en mappen beïnvloedt die rechtstreeks verband houden met een specifieke configuratie in tmpfiles.d/. Deze wijziging zorgt ervoor dat de opdracht alleen datgene verwijdert waarvoor het bedoeld is, waardoor ongewenste bijwerkingen op andere delen van het bestandssysteem worden vermeden.

Waar ik wel een probleem mee heb, is de documentatie. Het legt uit wat de opties technisch gesproken doen (nou ja, ik denk het wel, ik weet hier niet veel over de architectuur), maar het verklaart niet waarom ze doen wat ze doen. Wanneer iemand gewoon door de documentatie bladert, lijken alle drie de opties hetzelfde te doen: tijdelijke bestanden opruimen --purgeHet lijkt "vollediger" omdat het vermeldt dat het alle bestanden verwijdert (inclusief gebruikersgegevens).

Bovendien heeft systemd-tmpfiles gebruikershandleiding bijgewerkt om een ​​nauwkeurigere beschrijving van de optie te geven --purge en om duidelijk te waarschuwen voor de mogelijke gevolgen van onjuist gebruik.

Tot slot raden we aan de nodige updates uit te voeren om te voorkomen dat dit probleem zich opnieuw voordoet. Wilt u meer weten ? Dan vindt u de details via de volgende link.


Voeg dit toe als voorkeursbron in Google.