Wie führe ich Tunefs auf dem Root-Dateisystem in FreeBSD aus?

Wie führe ich Tunefs auf dem Root-Dateisystem in FreeBSD aus?

Ich möchte ACLs für ein FreeBSD 11-System aktivieren. LautFreeBSD-HandbuchDies kann auf zwei Arten erfolgen:

  1. Durch die Verwendung einer Mount-Option --mount -o acls

  2. Durch die Modifizierung eines Superblocks -tunefs -a enable

Darin heißt es, dass die zweite Option aus folgenden Gründen vorzuziehen sei:

Das ACL-Flag beim Einhängen kann nicht durch erneutes Einhängen (mount(8) -u) geändert werden, sondern nur durch vollständiges umount(8) und erneutes Einhängen(8). Das bedeutet, dass ACLs nach dem Booten nicht auf dem Root-Dateisystem aktiviert werden können. Es bedeutet auch, dass Sie die Disposition eines Dateisystems nicht mehr ändern können, sobald es in Gebrauch ist.

Durch das Setzen des Superblock-Flags wird das Dateisystem immer mit aktivierten ACLs gemountet, auch wenn kein fstab-Eintrag vorhanden ist oder die Geräte neu angeordnet werden. Dies verhindert das versehentliche Mounten des Dateisystems ohne aktivierte ACLs, was zu einer falschen Durchsetzung von ACLs und damit zu Sicherheitsproblemen führen kann.

Von den Melodienmanpage:

Das Dienstprogramm tunefs dient zum Ändern der dynamischen Parameter eines UFS-Dateisystems, die sich auf die Layoutrichtlinien auswirken. Das Dienstprogramm tunefs kann nicht auf einem aktiven Dateisystem ausgeführt werden. Um ein aktives Dateisystem zu ändern, muss es auf schreibgeschützt herabgestuft oder ausgehängt werden.

Das Problem besteht darin, dass das Root-Dateisystem (/) nicht ausgehängt werden kann.

Wie kann ich tunefs auf dem Root-Dateisystem ausführen?

Antwort1

Sie können das Dateisystem zwangsweise schreibgeschützt erneut mounten:

mount -fur /
tunefs -a enable /
reboot

Der rebootSchritt scheint notwendig zu sein: Erstens wird beim erneuten Mounten von read-write ( mount -uw /) das ACL-Aktivierungsflag nicht erkannt und zweitens wird beim erneuten Mounten im schreibgeschützten Modus alles zerstört, was auf die Festplatte schreiben wollte (z. B. syslogd). Daher ist es an dieser Stelle besser, einfach neu zu starten.

verwandte Informationen