#1 Le 28/10/2008, à 12:26
- frco9
Ecrire un script qui verifi, la presence d'un disque.
Bonjour,
Je suis debutant en ubuntu, mais j'ai deja besoin d'un script shell, j'ai commencer a regarder comment faire ce que je veut faire mais j'ai des doutes :
alors enfaite je voudrais faire un script qui au demarrage de ubuntu va :
- verifier que le disque dur sdb est bien en route, je m'explique ce disque est le disque systeme ou se trouve windows server or il deconne et ne demarre pas forcement (faute de moyens je ne peu le changer)
- ensuite si ce disque est bien en route, le script copie un fichier dans un dossier, sinon il affiche un message comme quoi le disque en question ne marche pas
-puis il fais reboot le server
Ps: je precise que c'est un server domestique donc je n'est pas besoin d'un faibilité parfaite, et je ne passe malheuresement pas completement sous ubuntu server car je ne maitrise pas encore, ce que home server me permet de faire en un clique ^^.
Donc ne maitrisant pas très bien le shell, je pense qu'il faut que j'utilise la commande fdisk, peut etre ajouter une commande de configuration pour qu'il ne cherche que le disque sdb ? Cependant je ne vois pas trop comment commencer et meme apres pour faire les conditions :
- disque present > cp fichierX fixhierY
- disque absent > echo disque sdb pas en route ......
A si enfaite j'ai le debut :
# !/bin/bash
# Script test disque sdb
Merci
#2 Le 28/10/2008, à 12:36
- frafa
Re : Ecrire un script qui verifi, la presence d'un disque.
Erreur
c'est:
#!/bin/bash
# Script test disque sdb
Hors ligne
#3 Le 28/10/2008, à 12:45
- philou8237
Re : Ecrire un script qui verifi, la presence d'un disque.
Lache fdisk, tu risque de faire une bourde. Vérifie simplement, comme tu le dis, si sdb existe :
#!/bin/bash
# test ([ ... ] ) si le fichier /dev/sdb existe (-e)
if [ -e /dev/sdb ]; then
# disque present
# FIXME
else
# disque absent
shutdown -r now
fi
plus d'info :
man test
man shutdown
Hors ligne
#4 Le 28/10/2008, à 12:54
- frco9
Re : Ecrire un script qui verifi, la presence d'un disque.
Merci pour vos reponses expresses ^^
Sinon frafa merci pour la correction ça commençait bien.
Philou, j'ai une question a quoi correspond
# FIXME
, sinon merci beaucoup, je vais etudier en detail et je viendrais si j'ai encore des problème !
#5 Le 28/10/2008, à 13:00
- xelator
Re : Ecrire un script qui verifi, la presence d'un disque.
en fait le #
signifie que c'est un commentaire :
#!/bin/bash
# test ([ ... ] ) si le fichier /dev/sdb existe (-e)
if [ -e /dev/sdb ]; then
# disque present
mkdir /media/win
mount /dev/sdb1 /media/win -o umask=000 # l'utilisateur a sans doute pas le droit, à voir avec fstab
# disque monté
cp le/fichier /media/win/le/dossier
umount /dev/sdb1
shutdown -r now
else
# disque absent
echo disque absent # par contre ça affiche ça que dans le terminal s'il y en a un...
shutdown -r now #vérifier qu'un utilisateur à le droit
fi
Hors ligne
#6 Le 28/10/2008, à 13:07
- frco9
Re : Ecrire un script qui verifi, la presence d'un disque.
a ok xelator pour le # mais j'ai encore deux petites questions
:
- pourquoi tu monte le disque sdb1 (on est d'accord c'est le disque dont je veux verifier la presence ?), j'ai peut etre mal expliquer,ou j'ai mal compris ^^, le fichier que je vais coller sera dans un dossier de ubuntu en l'occurence boot/grub enfaite je copy le fichier menu.list avec comme disque de demarrage par defaut sdb. Donc j'ai pas besoin de monter le disque ?
#7 Le 28/10/2008, à 13:38
- xelator
Re : Ecrire un script qui verifi, la presence d'un disque.
a ok xelator pour le #
mais j'ai encore deux petites questions
:
- pourquoi tu monte le disque sdb1 (on est d'accord c'est le disque dont je veux verifier la presence ?), j'ai peut etre mal expliquer,ou j'ai mal compris ^^, le fichier que je vais coller sera dans un dossier de ubuntu en l'occurence boot/grub enfaite je copy le fichier menu.list avec comme disque de demarrage par defaut sdb. Donc j'ai pas besoin de monter le disque ?
j'avais mal compris inutile donc
Hors ligne
#8 Le 28/10/2008, à 14:05
- frco9
Re : Ecrire un script qui verifi, la presence d'un disque.
MERCI
ça marche parfaitement, donc pour ceux que ça interesserait je met le script final :
#!/bin/bash
# test ([ ... ] ) si le fichier /dev/sdb existe (-e)
if [ -e /dev/sdb ]; then
# disque present
cp le/fichier /media/win/le/dossier
shutdown -r now
else
# disque absent
echo disque absent # par contre ça affiche ça que dans le terminal s'il y en a un...
shutdown -r now #vérifier qu'un utilisateur à le droit
fi
PS: j'execute le script en root donc pas de pb pour les droit
encore merci a tous
#9 Le 28/10/2008, à 16:01
- MrWaloo
Re : Ecrire un script qui verifi, la presence d'un disque.
pour nourrir ma curiosité, tu peux me dire pour quelle raison tu copies le fichier menu.list de grub ?
"De tous ceux qui n'ont rien à dire, les plus agréables sont ceux qui se taisent !!" (Desproges)
UNIX is an operating system, OS/2 is half an operating system, Windows is a shell, MS-DOS is a boot sector virus.
Hors ligne