Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
TiChou
Dans le message <news:, *Une bévue * tapota sur f.c.o.unix :
j'ai un warning quand je tente de monter une partition qui l'est déjà :
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32
j'aimerais bien améliorer mon script "brut de fonderie" est tester que, par exemple, /mnt/F32 n'est pas déjà monté.
Comment fait-on ?
Un début de réponse vous est déjà donné dans le warning... ;-)
Sous Linux, ce qui est votre cas, man mount :
mount [-l] [-t type] lists all mounted file systems (of type type). The option -l adds the (ext2, ext3 and XFS) labels in this listing.
[...]
The programs mount and umount maintain a list of currently mounted file systems in the file /etc/mtab. If no arguments are given to mount, this list is printed.
When the proc filesystem is mounted (say at /proc), the files /etc/mtab and /proc/mounts have very similar contents. The former has somewhat more information, such as the mount options used, but is not necessarily up-to-date (cf. the -n option below). It is possible to replace /etc/mtab by a symbolic link to /proc/mounts, and especially when you have very large numbers of mounts things will be much faster with that symlink, but some information is lost that way, and in particular working with the loop device will be less convenient, and using the "user" option will fail.
[...]
FILES /etc/mtab table of mounted file systems
$ mount | grep -q /mnt/F32
ou :
$ grep -q /mnt/F32 /etc/mtab
ou bien :
$ grep -q /mnt/F32 /proc/mounts
et ensuite test de la variable du code de retour :
$ echo $?
-- TiChou
Dans le message <news:pan.2005.12.17.14.42.39.670496@SPAMfree.fr>,
*Une bévue * tapota sur f.c.o.unix :
j'ai un warning quand je tente de monter une partition qui l'est déjà :
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé
mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32
j'aimerais bien améliorer mon script "brut de fonderie" est tester que,
par exemple, /mnt/F32 n'est pas déjà monté.
Comment fait-on ?
Un début de réponse vous est déjà donné dans le warning... ;-)
Sous Linux, ce qui est votre cas, man mount :
mount [-l] [-t type]
lists all mounted file systems (of type type).
The option -l adds the (ext2, ext3 and XFS)
labels in this listing.
[...]
The programs mount and umount maintain a list
of currently mounted file systems in the file
/etc/mtab. If no arguments are given to mount,
this list is printed.
When the proc filesystem is mounted (say at
/proc), the files /etc/mtab and /proc/mounts
have very similar contents. The former has
somewhat more information, such as the mount
options used, but is not necessarily up-to-date
(cf. the -n option below). It is possible to
replace /etc/mtab by a symbolic link to
/proc/mounts, and especially when you have very
large numbers of mounts things will be much
faster with that symlink, but some information
is lost that way, and in particular working
with the loop device will be less convenient,
and using the "user" option will fail.
[...]
FILES
/etc/mtab table of mounted file systems
$ mount | grep -q /mnt/F32
ou :
$ grep -q /mnt/F32 /etc/mtab
ou bien :
$ grep -q /mnt/F32 /proc/mounts
et ensuite test de la variable du code de retour :
Dans le message <news:, *Une bévue * tapota sur f.c.o.unix :
j'ai un warning quand je tente de monter une partition qui l'est déjà :
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32
j'aimerais bien améliorer mon script "brut de fonderie" est tester que, par exemple, /mnt/F32 n'est pas déjà monté.
Comment fait-on ?
Un début de réponse vous est déjà donné dans le warning... ;-)
Sous Linux, ce qui est votre cas, man mount :
mount [-l] [-t type] lists all mounted file systems (of type type). The option -l adds the (ext2, ext3 and XFS) labels in this listing.
[...]
The programs mount and umount maintain a list of currently mounted file systems in the file /etc/mtab. If no arguments are given to mount, this list is printed.
When the proc filesystem is mounted (say at /proc), the files /etc/mtab and /proc/mounts have very similar contents. The former has somewhat more information, such as the mount options used, but is not necessarily up-to-date (cf. the -n option below). It is possible to replace /etc/mtab by a symbolic link to /proc/mounts, and especially when you have very large numbers of mounts things will be much faster with that symlink, but some information is lost that way, and in particular working with the loop device will be less convenient, and using the "user" option will fail.
[...]
FILES /etc/mtab table of mounted file systems
$ mount | grep -q /mnt/F32
ou :
$ grep -q /mnt/F32 /etc/mtab
ou bien :
$ grep -q /mnt/F32 /proc/mounts
et ensuite test de la variable du code de retour :
$ echo $?
-- TiChou
Une bévue
Le Sat, 17 Dec 2005 15:56:54 +0100, TiChou a écrit :
/etc/mtab table of mounted file systems
$ mount | grep -q /mnt/F32
ou :
$ grep -q /mnt/F32 /etc/mtab
ou bien :
$ grep -q /mnt/F32 /proc/mounts
et ensuite test de la variable du code de retour :
$ echo $?
ok, merci beaucoup, j'ai fait ça : if ! mount | grep -q $vfat; then mount $vfat ; fi
la syntaxe de bash a qq subtilités...
qq fois mount ne veut pas démonter en me disant que /mnt/F32 est occupé ou qqc dans le genre. je suppose qu'une appli comme konqueror a ouvert un dossier de /mnt/F32, j'image qu'il y a un lock qqpart que l'on peut tester aussi ?
-- Une bévue
Le Sat, 17 Dec 2005 15:56:54 +0100, TiChou a écrit :
/etc/mtab table of mounted file systems
$ mount | grep -q /mnt/F32
ou :
$ grep -q /mnt/F32 /etc/mtab
ou bien :
$ grep -q /mnt/F32 /proc/mounts
et ensuite test de la variable du code de retour :
$ echo $?
ok, merci beaucoup, j'ai fait ça :
if ! mount | grep -q $vfat; then
mount $vfat ;
fi
la syntaxe de bash a qq subtilités...
qq fois mount ne veut pas démonter en me disant que /mnt/F32 est occupé
ou qqc dans le genre.
je suppose qu'une appli comme konqueror a ouvert un dossier de /mnt/F32,
j'image qu'il y a un lock qqpart que l'on peut tester aussi ?
Le Sat, 17 Dec 2005 15:56:54 +0100, TiChou a écrit :
/etc/mtab table of mounted file systems
$ mount | grep -q /mnt/F32
ou :
$ grep -q /mnt/F32 /etc/mtab
ou bien :
$ grep -q /mnt/F32 /proc/mounts
et ensuite test de la variable du code de retour :
$ echo $?
ok, merci beaucoup, j'ai fait ça : if ! mount | grep -q $vfat; then mount $vfat ; fi
la syntaxe de bash a qq subtilités...
qq fois mount ne veut pas démonter en me disant que /mnt/F32 est occupé ou qqc dans le genre. je suppose qu'une appli comme konqueror a ouvert un dossier de /mnt/F32, j'image qu'il y a un lock qqpart que l'on peut tester aussi ?
-- Une bévue
R12y
On Sat, 17 Dec 2005 16:46:15 +0100, Une bévue wrote:
j'image qu'il y a un lock qqpart que l'on peut tester aussi ?
avec lsof, par exemple.
-- Telephone portable "intelligent" (SmartPhone) GSM, GPRS,... Il est sous Linux, ne coute pas trop cher,... http://www.it2l.com/product_info.php?cPath&products_idE6
On Sat, 17 Dec 2005 16:46:15 +0100, Une bévue wrote:
j'image qu'il y a un lock qqpart que l'on peut tester aussi ?
avec lsof, par exemple.
--
Telephone portable "intelligent" (SmartPhone) GSM, GPRS,...
Il est sous Linux, ne coute pas trop cher,...
http://www.it2l.com/product_info.php?cPath&products_idE6
On Sat, 17 Dec 2005 16:46:15 +0100, Une bévue wrote:
j'image qu'il y a un lock qqpart que l'on peut tester aussi ?
avec lsof, par exemple.
-- Telephone portable "intelligent" (SmartPhone) GSM, GPRS,... Il est sous Linux, ne coute pas trop cher,... http://www.it2l.com/product_info.php?cPath&products_idE6
Pascal Bourguignon
Une bévue writes:
j'ai un warning quand je tente de monter une partition qui l'est déjà :
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32
j'aimerais bien améliorer mon script "brut de fonderie" est tester que, par exemple, /mnt/F32 n'est pas déjà monté.
Comment fait-on ?
On ne fait pas!
Entre le moment où tu teste si une partition est montée et le moment où tu la monte, un autre utilisateur ou un autre processus peut l'avoir montée! Alors tu obtiendras la même erreur.
De même si tu voulais la démonter.
Seulement dans le cas où tu ne veux ni la monter, ni la démonter pourras tu tester si elle l'est.
Donc, utiliser par exemple:
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1 mount_status=$? if [ $mount_status -eq 0 ] ; then echo 'Bon, elle n'était pas montée, et on l'a montée.' else if grep -q -s 'already mounted' /tmp/$$.mount-output ; then echo 'Ah, ah! Elle est déjà montée.' else cat /tmp/$$.mount-output exit $mount_status fi fi # post condition: la partition est montée. faire_quequechose_avec /mnt/F32
-- __Pascal Bourguignon__ http://www.informatimago.com/ The rule for today: Touch my tail, I shred your hand. New rule tomorrow.
Une bévue <yvon.thorNO@SPAMfree.fr> writes:
j'ai un warning quand je tente de monter une partition qui l'est déjà :
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé
mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32
j'aimerais bien améliorer mon script "brut de fonderie" est tester que,
par exemple, /mnt/F32 n'est pas déjà monté.
Comment fait-on ?
On ne fait pas!
Entre le moment où tu teste si une partition est montée et le moment
où tu la monte, un autre utilisateur ou un autre processus peut
l'avoir montée! Alors tu obtiendras la même erreur.
De même si tu voulais la démonter.
Seulement dans le cas où tu ne veux ni la monter, ni la démonter
pourras tu tester si elle l'est.
Donc, utiliser par exemple:
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1
mount_status=$?
if [ $mount_status -eq 0 ] ; then
echo 'Bon, elle n'était pas montée, et on l'a montée.'
else
if grep -q -s 'already mounted' /tmp/$$.mount-output ; then
echo 'Ah, ah! Elle est déjà montée.'
else
cat /tmp/$$.mount-output
exit $mount_status
fi
fi
# post condition: la partition est montée.
faire_quequechose_avec /mnt/F32
--
__Pascal Bourguignon__ http://www.informatimago.com/
The rule for today:
Touch my tail, I shred your hand.
New rule tomorrow.
j'ai un warning quand je tente de monter une partition qui l'est déjà :
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32
j'aimerais bien améliorer mon script "brut de fonderie" est tester que, par exemple, /mnt/F32 n'est pas déjà monté.
Comment fait-on ?
On ne fait pas!
Entre le moment où tu teste si une partition est montée et le moment où tu la monte, un autre utilisateur ou un autre processus peut l'avoir montée! Alors tu obtiendras la même erreur.
De même si tu voulais la démonter.
Seulement dans le cas où tu ne veux ni la monter, ni la démonter pourras tu tester si elle l'est.
Donc, utiliser par exemple:
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1 mount_status=$? if [ $mount_status -eq 0 ] ; then echo 'Bon, elle n'était pas montée, et on l'a montée.' else if grep -q -s 'already mounted' /tmp/$$.mount-output ; then echo 'Ah, ah! Elle est déjà montée.' else cat /tmp/$$.mount-output exit $mount_status fi fi # post condition: la partition est montée. faire_quequechose_avec /mnt/F32
-- __Pascal Bourguignon__ http://www.informatimago.com/ The rule for today: Touch my tail, I shred your hand. New rule tomorrow.
Une bévue
Le Sat, 17 Dec 2005 18:12:20 +0100, Pascal Bourguignon a écrit :
On ne fait pas!
réponse on ne peut plus claire, bravo et merci ;-)
Entre le moment où tu teste si une partition est montée et le moment où tu la monte, un autre utilisateur ou un autre processus peut l'avoir montée! Alors tu obtiendras la même erreur.
je raisonne comme si tout était instantanné )))
De même si tu voulais la démonter.
Seulement dans le cas où tu ne veux ni la monter, ni la démonter pourras tu tester si elle l'est.
Donc, utiliser par exemple:
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1 mount_status=$? if [ $mount_status -eq 0 ] ; then echo 'Bon, elle n'était pas montée, et on l'a montée.' else if grep -q -s 'already mounted' /tmp/$$.mount-output ; then echo 'Ah, ah! Elle est déjà montée.' else cat /tmp/$$.mount-output exit $mount_status fi fi # post condition: la partition est montée. faire_quequechose_avec /mnt/F32
ok, pigé. -- Une bévue
Le Sat, 17 Dec 2005 18:12:20 +0100, Pascal Bourguignon a écrit :
On ne fait pas!
réponse on ne peut plus claire, bravo et merci ;-)
Entre le moment où tu teste si une partition est montée et le moment où
tu la monte, un autre utilisateur ou un autre processus peut l'avoir
montée! Alors tu obtiendras la même erreur.
je raisonne comme si tout était instantanné )))
De même si tu voulais la démonter.
Seulement dans le cas où tu ne veux ni la monter, ni la démonter pourras
tu tester si elle l'est.
Donc, utiliser par exemple:
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1 mount_status=$?
if [ $mount_status -eq 0 ] ; then
echo 'Bon, elle n'était pas montée, et on l'a montée.'
else
if grep -q -s 'already mounted' /tmp/$$.mount-output ; then
echo 'Ah, ah! Elle est déjà montée.'
else
cat /tmp/$$.mount-output
exit $mount_status
fi
fi
# post condition: la partition est montée. faire_quequechose_avec
/mnt/F32
Le Sat, 17 Dec 2005 18:12:20 +0100, Pascal Bourguignon a écrit :
On ne fait pas!
réponse on ne peut plus claire, bravo et merci ;-)
Entre le moment où tu teste si une partition est montée et le moment où tu la monte, un autre utilisateur ou un autre processus peut l'avoir montée! Alors tu obtiendras la même erreur.
je raisonne comme si tout était instantanné )))
De même si tu voulais la démonter.
Seulement dans le cas où tu ne veux ni la monter, ni la démonter pourras tu tester si elle l'est.
Donc, utiliser par exemple:
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1 mount_status=$? if [ $mount_status -eq 0 ] ; then echo 'Bon, elle n'était pas montée, et on l'a montée.' else if grep -q -s 'already mounted' /tmp/$$.mount-output ; then echo 'Ah, ah! Elle est déjà montée.' else cat /tmp/$$.mount-output exit $mount_status fi fi # post condition: la partition est montée. faire_quequechose_avec /mnt/F32
ok, pigé. -- Une bévue
Une bévue
Le Sat, 17 Dec 2005 17:05:03 +0100, R12y a écrit :
avec lsof, par exemple. ok, merci, le man est TRES bavard à ce sujet )))
-- Une bévue
Le Sat, 17 Dec 2005 17:05:03 +0100, R12y a écrit :
avec lsof, par exemple.
ok, merci, le man est TRES bavard à ce sujet )))
Le Sat, 17 Dec 2005 17:05:03 +0100, R12y a écrit :
avec lsof, par exemple. ok, merci, le man est TRES bavard à ce sujet )))
-- Une bévue
DINH Viêt Hoà
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1 mount_status=$? if [ $mount_status -eq 0 ] ; then echo 'Bon, elle n'était pas montée, et on l'a montée.' else if grep -q -s 'already mounted' /tmp/$$.mount-output ; then echo 'Ah, ah! Elle est déjà montée.' else cat /tmp/$$.mount-output exit $mount_status fi fi
de même, on peut te l'avoir démontée entre-temps.
# post condition: la partition est montée. faire_quequechose_avec /mnt/F32
pour répondre à la question initiale, il me semble que 'mount' donne la liste des volumes montés sur la plupart des systèmes Unix.
-- DINH V. Hoa,
- "Tiens, tu te rappliques avec l'Ibanez ?" - "Mais vous allez faire quoi avec de la libanaise ?" -- Elodie
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1
mount_status=$?
if [ $mount_status -eq 0 ] ; then
echo 'Bon, elle n'était pas montée, et on l'a montée.'
else
if grep -q -s 'already mounted' /tmp/$$.mount-output ; then
echo 'Ah, ah! Elle est déjà montée.'
else
cat /tmp/$$.mount-output
exit $mount_status
fi
fi
de même, on peut te l'avoir démontée entre-temps.
# post condition: la partition est montée.
faire_quequechose_avec /mnt/F32
pour répondre à la question initiale, il me semble que 'mount' donne la
liste des volumes montés sur la plupart des systèmes Unix.
--
DINH V. Hoa,
- "Tiens, tu te rappliques avec l'Ibanez ?"
- "Mais vous allez faire quoi avec de la libanaise ?" -- Elodie
mount /dev/sdb9 /mnt/F32 >/tmp/$$.mount-output 2>&1 mount_status=$? if [ $mount_status -eq 0 ] ; then echo 'Bon, elle n'était pas montée, et on l'a montée.' else if grep -q -s 'already mounted' /tmp/$$.mount-output ; then echo 'Ah, ah! Elle est déjà montée.' else cat /tmp/$$.mount-output exit $mount_status fi fi
de même, on peut te l'avoir démontée entre-temps.
# post condition: la partition est montée. faire_quequechose_avec /mnt/F32
pour répondre à la question initiale, il me semble que 'mount' donne la liste des volumes montés sur la plupart des systèmes Unix.
-- DINH V. Hoa,
- "Tiens, tu te rappliques avec l'Ibanez ?" - "Mais vous allez faire quoi avec de la libanaise ?" -- Elodie
R12y
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32 j'aimerais bien améliorer mon script "brut de fonderie" est tester que, par exemple, /mnt/F32 n'est pas déjà monté. Comment fait-on ? On ne fait pas!
Entre le moment où tu teste si une partition est montée et le moment où tu la monte, un autre utilisateur ou un autre processus peut l'avoir montée! Alors tu obtiendras la même erreur. [...]
Donc, utiliser par exemple:
<mode Dimanche> Euh... Y a pas des "Exception" en shell?
try: mount -t vfat /mnt/F32 except: pass
Oui, je découvre les exceptions... c'est pratique ces machins là. On devrait en faire une régle... (régle, exception,...) ça fait rire personne? bon ben je sors... </>
-- Telephone portable "intelligent" (SmartPhone) GSM, GPRS,... Il est sous Linux, ne coute pas trop cher,... http://www.it2l.com/product_info.php?cPath&products_idE6
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé
mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32
j'aimerais bien améliorer mon script "brut de fonderie" est tester que,
par exemple, /mnt/F32 n'est pas déjà monté.
Comment fait-on ?
On ne fait pas!
Entre le moment où tu teste si une partition est montée et le moment
où tu la monte, un autre utilisateur ou un autre processus peut
l'avoir montée! Alors tu obtiendras la même erreur.
[...]
Donc, utiliser par exemple:
<mode Dimanche>
Euh...
Y a pas des "Exception" en shell?
try:
mount -t vfat /mnt/F32
except:
pass
Oui, je découvre les exceptions... c'est pratique ces machins là.
On devrait en faire une régle... (régle, exception,...)
ça fait rire personne? bon ben je sors...
</>
--
Telephone portable "intelligent" (SmartPhone) GSM, GPRS,...
Il est sous Linux, ne coute pas trop cher,...
http://www.it2l.com/product_info.php?cPath&products_idE6
mount: /dev/sdb9 est déjà monté ou /mnt/F32 est occupé mount: selon mtab /dev/sdb9 est déjà monté sur /mnt/F32 j'aimerais bien améliorer mon script "brut de fonderie" est tester que, par exemple, /mnt/F32 n'est pas déjà monté. Comment fait-on ? On ne fait pas!
Entre le moment où tu teste si une partition est montée et le moment où tu la monte, un autre utilisateur ou un autre processus peut l'avoir montée! Alors tu obtiendras la même erreur. [...]
Donc, utiliser par exemple:
<mode Dimanche> Euh... Y a pas des "Exception" en shell?
try: mount -t vfat /mnt/F32 except: pass
Oui, je découvre les exceptions... c'est pratique ces machins là. On devrait en faire une régle... (régle, exception,...) ça fait rire personne? bon ben je sors... </>
-- Telephone portable "intelligent" (SmartPhone) GSM, GPRS,... Il est sous Linux, ne coute pas trop cher,... http://www.it2l.com/product_info.php?cPath&products_idE6