Identificando se / tmp está em uma partição separada

0

Eu ainda estou aprendendo e vi uma das melhores práticas de segurança é particionar /tmp separadamente do sistema de arquivos. Como faço para verificar se /tmp está em outra partição?

Se eu fizesse cd /, ele está exibindo a partição inteira ou é outro diretório para uma partição separada?

    
por DTA 25.10.2015 / 10:08

3 respostas

0

Você pode usar o comando mount , sem argumentos. Isso listará todos os seus pontos de montagem. Se você ver que o diretório /tmp está listado, é uma partição diferente. Caso contrário, não é.

    
por 25.10.2015 / 10:12
0

visualy usando

 df | grep /tmp

em um script

  if df | grep -q ' /tmp$' 
  then
       # code for /tmp onwn partition
  else
       # code for /tmp in /
  fi

por favor note que df pode travar (especialmente se você está usando NFS ou SAMBA / CIFS), você pode querer redirecionar em mount ( grep comando será um pouco diferente).

    
por 25.10.2015 / 10:23
0

Em um sentido mais geral, df pode ser usado para discernir se dois diretórios estão em sistemas de arquivos diferentes. Faça isso dando o nome do diretório como um argumento para df . Por exemplo, no sistema em que estou logado, df é mais fácil de trabalhar nesse sentido do que mount :

$ pwd
/tmp/foo
$ df .
Filesystem                                             1K-blocks         Used Available Use% Mounted on
/dev/disk/by-uuid/8a1efcd1-0d32-4674-aa7a-c24c2cd924fd  19751804 12269912   6478528  66% /
$ df /tmp
Filesystem                                             1K-blocks     Used Available Use% Mounted on
/dev/disk/by-uuid/8a1efcd1-0d32-4674-aa7a-c24c2cd924fd  19751804 12269912   6478528  66% /
$ df /
Filesystem                                             1K-blocks     Used Available Use% Mounted on
/dev/disk/by-uuid/8a1efcd1-0d32-4674-aa7a-c24c2cd924fd  19751804 12269912   6478528  66% /
$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=125055,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=101324k,mode=755)
/dev/disk/by-uuid/8a1efcd1-0d32-4674-aa7a-c24c2cd924fd on / type ext4 (rw,relatime,errors=remount-ro,user_xattr,barrier=1,data=ordered)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /run/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=382860k)

POSIX não especifica um formato de saída para df . Eu pareço lembrar que alguns (não Linux) podem mostrar o argumento dado para df em vez do ponto de montagem na saída. POSIX não especifica mount (daí a falta de especificação para a saída de df ).

    
por 25.10.2015 / 11:31