sistema de arquivos não montado deve exibir ele não está montado

1

Eu preciso verificar se um determinado sistema de arquivos está montado ou não. Eu sei que nós podemos descobrir isso a partir de df -k.Mas aqui, se um determinado sistema de arquivos não está montado, o erro deve exibir "cronshadow (sistema de arquivos-exemplo) não está montado" .Eu vou dar um exemplo de saída de df - k

Filesystem            kbytes    used   avail capacity  Mounted on
/dev/dsk/c0t0d0s0    4130982 1463894 2625779    36%    /
/proc                      0       0       0     0%    /proc
fd                         0       0       0     0%    /dev/fd
mnttab                     0       0       0     0%    /etc/mnttab

/dev/dsk/c2t3d0s0    2053605 1815547  176450    92%    /psa_shdw
mmr1asxx:/crnonshdw  106687632 92602932 14084700    87%    /crnonshdw

Aqui, qual sistema de arquivos que eu marquei com asterisco não está montado, preciso exibir uma mensagem como --- "o crnonshdw não está montado"

    
por Ranjith.R 13.11.2013 / 15:20

3 respostas

1

Este é fácil com um simples grep :

if ! df -k | grep -q 'crnonshdw'; then
    printf 'crnonshdw is not mounted\n'
fi
    
por 13.11.2013 / 15:23
1

Você também pode usar o comando mount para descobrir isso:

$ mount | grep cronshadow

Exemplo

$ if ! mount | grep -q "cronshadow"; then echo "not mounted";fi
not mounted

Você também pode dizer assim:

$  mount | grep -q "cronshadow" || echo "not mounted"
not mounted
    
por 13.11.2013 / 15:36
0

Pelo menos no meu sistema, eu tenho um comando mountpoint que permite verificar se um diretório tem algo montado nele. Então você poderia:

if ! mountpoint -q /crnonshdw; then
    echo "cronshadow(file system-example) is not mounted"
fi

Como alternativa, se você não tiver esse comando, uma abordagem simples é garantir que o sistema de arquivos montado contenha um arquivo "flag", que você pode testar:

if ! [ -e /crnonshdw/.mounted ]; then
    echo "cronshadow(file system-example) is not mounted"
fi

Você pode também colocar o arquivo de flag dentro do diretório no sistema de arquivos pai (ele será escondido quando o outro sistema de arquivos estiver montado no topo), então você removerá o ! .

    
por 13.11.2013 / 16:02