OVH Cloud OVH Cloud

Script if mount

24 réponses
Avatar
ols
Bonjour,

Je ne sais pas comment récupérer l'état d'un mount pour le tester ensuite
avec une condition, lorsque je consulte le man, rien n'indique un retour de
résultat.

Je veux, grossièrement, que si un disque est monté, je puisse copier
dessus, sinon on ne fait rien...

Cordialement,
OLS

10 réponses

1 2 3
Avatar
Emmanuel Florac
Le Mon, 18 Sep 2006 21:39:07 +0000, Luc Habert a écrit :


Là, j'ai accès à des solaris 8 et 9 et des freebsd 5.1, aucun n'a de
mtab.


Oui mais solaris a /etc/vfstab en place de /etc/fstab, et /etc/mnttab pour
/etc/mtab. On ne peut pas dire que c'est comme s'il n'y avait rien.

--
Mais monsieur, voudriez-vous que je me l'écorchasse?
Barbey d'Aurevilly.

Avatar
vincent.verdon
Bonsoir,

mtab n'est pas si mauvais que cela , finalement !

Mais peut-être peut-on utiliser aussi tout simplement mount sans
arguments, non ?... ou df ?

Amicalement, Vincent Verdon
Avatar
Emmanuel Florac
Le Tue, 19 Sep 2006 19:29:07 +0200, a écrit :


Mais peut-être peut-on utiliser aussi tout simplement mount sans
arguments, non ?... ou df ?


Il suffit de lire les sources de la complétion de zsh, qui précise bien
que le format de /etc/mtab et /etc/mnttab (selon les OS) est plutôt bien
fixé, alors que la sortie de mount ou df, ça varie considérablement
d'un OS à l'autre.

--
entia non sont multiplicanda praeter necessitatem.
John Ponce of Cork.

Avatar
Benoit Izac
Bonjour,

le 19/09/2006 à 21:23, Emmanuel Florac a écrit dans le message
:

Mais peut-être peut-on utiliser aussi tout simplement mount sans
arguments, non ?... ou df ?


Il suffit de lire les sources de la complétion de zsh, qui précise
bien que le format de /etc/mtab et /etc/mnttab (selon les OS) est
plutôt bien fixé, alors que la sortie de mount ou df, ça varie
considérablement d'un OS à l'autre.


Le format de sortie de df avec l'option « -P » est fixé par SUSv3 :
<http://www.opengroup.org/onlinepubs/009695399/utilities/df.html>

--
Benoit Izac


Avatar
Yves Lambert
ols wrote:

Je ne sais pas comment récupérer l'état d'un mount


avec bash :

if
grep "/dev/sda1" /etc/mtab>/dev/null;
then
echo "sda1 est monté" ;
echo "je fais cd qu'on me demande de faire";
else
echo "je ne fais rien;
fi

Avatar
Ego

ols wrote:

Je ne sais pas comment récupérer l'état d'un mount


avec bash :


pas de bash sur ma bécane

if
grep "/dev/sda1" /etc/mtab>/dev/null;


c'est quoi /etc/mtab ?

then
echo "sda1 est monté" ;


pas de sda1 sur NetBSD

marche pô


Avatar
Yves Lambert
Ego wrote:

avec bash :


pas de bash sur ma bécane


Traduire donc avec la syntaxe du if sur votre shell

if
grep "/dev/sda1" /etc/mtab>/dev/null;


c'est quoi /etc/mtab ?
/etc/mnttab sur solaris (SunOS) et hp/ux



Un fichioer qui contient le résultat de la commande 'mount' (sans
arguments :o)
mount|grep "dev/idDuDevice" devrait fonctionner parait-il. Encore mieux
mount|grep "/repertoire-ou-est-censé-être-monté-le-device
en tout cas testé sous debian, redhat SunOS, Irix64, ,. Sous hp/ux ça
coince parce que mount est dans le répertoire /usr/sbin mais
/usr/sbin/mount fonctionne (en peon)

then
echo "sda1 est monté" ;


pas de sda1 sur NetBSD


Pas non plus sur ma debian, curieux, non ?
ça désigne sous linux les disques sériels (scsi, usb etc.) sous bsd ça
doit être un truc du genre sd1a, non ?

marche pô


avec un peu d'adaptation ?


Avatar
Rakotomandimby (R12y)
avec bash :
pas de bash sur ma bécane



Et tu veux qu'on devine aussi ce que tu as sur ta becane?

if
grep "/dev/sda1" /etc/mtab>/dev/null;
c'est quoi /etc/mtab ?



Trop la flemme de chercher?

then
echo "sda1 est monté" ;
pas de sda1 sur NetBSD



Il fallait aussi deviner que tu fais tourner NetBSD?

marche pô


C'est toi qui marche pas...!


Avatar
Ego

avec bash :
pas de bash sur ma bécane



Traduire donc avec la syntaxe du if sur votre shell


c'est la seule chose portable

if
grep "/dev/sda1" /etc/mtab>/dev/null;


c'est quoi /etc/mtab ?
/etc/mnttab sur solaris (SunOS) et hp/ux



toi aussi tu n'as pas mtab ?

Un fichioer qui contient le résultat de la commande 'mount' (sans
arguments :o)
mount|grep "dev/idDuDevice" devrait fonctionner parait-il. Encore mieux
mount|grep "/repertoire-ou-est-censé-être-monté-le-device
en tout cas testé sous debian, redhat SunOS, Irix64, ,. Sous hp/ux ça
coince parce que mount est dans le répertoire /usr/sbin mais
/usr/sbin/mount fonctionne (en peon)


ça coince en effet. d'autant plus que si /usr est le point
de montage d'un autre partition celle ci ne peut être mountée vu que
mount s'y trouve. un truc m'echappe. y a t'il deux mount ?

then
echo "sda1 est monté" ;
pas de sda1 sur NetBSD



Pas non plus sur ma debian, curieux, non ?


non ce n'est pas curieux, c'est normal que les devices
ne portent pas le même nom

ça désigne sous linux les disques sériels (scsi, usb etc.) sous bsd ça
doit être un truc du genre sd1a, non ?


ça doit être ? peut être sd0e ou sd0a ou sd1a ou sd1e?
c'est trop spécifique, il vaut mieux poser la question sur un groupe Linux

marche pô


avec un peu d'adaptation ?


mount est trop près du noyau pour trouver une solution adaptable à
10 Unices différents
pareil pour ifconfig et beaucoup d'autres



Avatar
Nicolas George
Yves Lambert wrote in message <45843ca0$0$25696$:
ça désigne sous linux les disques sériels (scsi, usb etc.)


Tu sors d'où ce terme de disque « sériel » ?

1 2 3