Como você força o fsck na reinicialização do FreeBSD10?

1

Eu preciso forçar uma verificação do sistema de arquivos na reinicialização para tentar corrigir meu sistema de arquivos montado. Todos os comandos / métodos que eu acho são obsoletos no FreeBSD10

[\u@vader:/root] # tune2fs -c 1 /dev/vtbd0p2
tune2fs: not found
[\u@vader:/root] # pkg install tune2fs
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
pkg: No packages available to install matching 'tune2fs' have been found in the repositories

Como você força a verificação do sistema de arquivos e corrige os erros na próxima reinicialização, apenas para um reparo único?

    
por nix 21.04.2015 / 06:18

4 respostas

2

Provavelmente, a melhor maneira de lidar com isso é reinicializar o sistema no modo de usuário único e fazer o fsck manualmente. Se, por qualquer motivo, isso não for uma opção para você, a próxima melhor maneira de lidar com isso é girar alguns knobs rc.conf . Especificamente, estes:

background_fsck="NO"
fsck_y_enable="YES"
fsck_y_flags="-f"

Reinicialize e o subsistema rc cuide disso para você. Note que rc.early foi depreciado no FreeBSD em 2007.

    
por 21.04.2015 / 11:16
1

O FreeBSD tem corretamente desmontado, então você não precisa fazer isso na inicialização. Basta efetuar login (remotamente), remontar rootfs como somente leitura ( mount -fur / ), fazer fsck manualmente ( fsck -y / ) e depois reinicializar a máquina.

    
por 01.08.2017 / 17:14
0

tune2fs é uma ferramenta de e2fsprogs para lidar com sistemas de arquivos ext2 / 3/4:)

Para o UFS do FreeBSD, os tunefs podem ser usados, mas não é possível definir nada fsck relacionado. Há uma discussão longa sobre forçar fsck após uma reinicialização, a melhor resposta deste tópico parece ser " não " e confie em background_fsck="YES" ou force via /etc/rc.early :

echo '/sbin/fsck -y -f' >> /etc/rc.early

    
por 21.04.2015 / 07:15
0

Para mim, o

background_fsck="NO"
fsck_y_enable="YES"
fsck_y_flags="-f"
A abordagem

também não está funcionando (diferentes versões 10.x). Então eu uso esse truque 'sujo' para /etc/rc.d/root :

--- /tmp/root.orig  2018-06-09 00:56:23.089825000 +0200
+++ /etc/rc.d/root  2018-06-09 00:56:03.831574000 +0200
@@ -22,6 +22,9 @@
    [Nn][Oo] | '')
        ;;
    *)
+                # Uncomment the below line to run FORCED fsck on ALL mounts in /etc/fstab during boot:
+                /sbin/fsck -fy || /sbin/fsck -fy
+
        if ! mount -uw /; then
            echo 'Mounting root filesystem rw failed, startup aborted'
            stop_boot true

Dessa forma, está funcionando com certeza. AVISO : comente novamente a linha / sbin / fsck ... depois de executar isto, pois isso custa tempo e pode ser um risco, se um fsck não for o que você deve fazer.

    
por 09.06.2018 / 01:04