no-mtab não funciona para montagem

0

Eu tenho um script que tenta montar /dev/loop0 em um ponto de montagem, digamos /mnt/mp no RHEL. O comando que eu uso está abaixo.

mount /dev/loop0 /mnt/mp --no-mtab -o ro

Isso não deve criar nenhuma entrada em /etc/mtab . Isso funciona bem até o RHEL 6, mas no RHEL 7 esses comandos adicionam a entrada em /etc/mtab . O que pode ser a razão? Como posso suprimi-lo no RHEL 7?

    
por Durgesh 19.06.2017 / 16:09

2 respostas

3

Em sistemas modernos, o / etc / mtab é um link simbólico para / proc / mounts. / proc / mounts é um arquivo virtual fornecido pelo kernel que mostra o status atual de todas as montagens. Portanto, /proc/mounts será sempre atualizado após qualquer operação mount . Veja man mount .

The programs mount and umount traditionally maintained a list of cur‐ rently mounted filesystems in the file /etc/mtab. This real mtab file is still supported, but on current Linux systems it is better to make it a symlink to /proc/mounts instead, because a regular mtab file main‐ tained in userspace cannot reliably work with namespaces, containers and other advanced Linux features.

O RHEL7 parece ser um sistema desse tipo.

It is possible that files /etc/mtab and /proc/mounts don't match

...

use kernel (/proc/mounts) as a source about filesystems information. This solution will be used in RHEL7.

link >

    
por 19.06.2017 / 17:35
0

Eu não recomendo isso porque coisas que lêem / etc / mtab podem quebrar, mas você poderia fazer:

# cd /etc
# rm mtab
# touch mtab.real
# ln -s mtab.real mtab
# reboot

O systemd não parece atualizar o mtab, então ele fica vazio.

    
por 21.08.2017 / 15:56