Como executar o Tunefs no sistema de arquivos raiz no FreeBSD?

6

Eu quero ativar as ACLs para um sistema FreeBSD 11. De acordo com o Manual do FreeBSD , isso pode ser feito em duas maneiras:

  1. Usando uma opção de montagem - mount -o acls

  2. Ao modificar um superbloco - tunefs -a enable

Ele diz que é preferível usar a segunda opção, porque:

The mount-time ACLs flag cannot be changed by a remount (mount(8) -u), only by means of a complete umount(8) and fresh mount(8). This means that ACLs cannot be enabled on the root file system after boot. It also means that you cannot change the disposition of a file system once it is in use.

Setting the superblock flag will cause the file system to always be mounted with ACLs enabled even if there is not an fstab entry or if the devices re-order. This prevents accidental mounting of the file system without ACLs enabled, which can result in ACLs being improperly enforced, and hence security problems.

Na página man do man :

The tunefs utility is designed to change the dynamic parameters of a UFS file system which affect the layout policies. The tunefs utility cannot be run on an active file system. To change an active file system, it must be downgraded to read-only or unmounted.

O problema é que o rootfs (/) não pode ser desmontado.

Como posso executar tunefs no sistema de arquivos raiz?

    
por Brandon Bradley 22.04.2017 / 14:00

1 resposta

1

Você pode forçar a remontagem do sistema de arquivos somente leitura:

mount -fur /
tunefs -a enable /
reboot

A etapa reboot parece ser necessária: primeiro, remontar leitura-gravação ( mount -uw / ) não seleciona o sinalizador de habilitação de ACL e, segundo, a remontagem somente leitura quebrará tudo que quiser gravar no disco (por exemplo, syslogd), então é melhor você apenas reinicializar nesse ponto.

    
por 29.06.2017 / 16:14