Pages : 1
#1 Le 04/06/2007, à 15:42
- romeros
Commande au demmarge du serveur
je veut exécuter la commande "mount -a" au demarage du serveur sans avoir a la taper a chaque foi, es ce qu il existe un fichier ou quelque chose pour que lors de chaque demarage le server exécute des commandes ?
#2 Le 04/06/2007, à 16:26
- Fengy
Re : Commande au demmarge du serveur
Il faut créer un petit script qui s'éxecutera au démarrage de Linux. Pour cela, on créer le script puis on le rattache au processus de démarrage de Linux (rcS).
sudo nano /etc/init.d/rc.local
Dans ce fichier, tu met :
#!/bin/sh
mount -a
On met les bon droit :
chmod 774 /etc/init.d/rc.local
Et on le rattache au processus de démarrage avec la valeur 33 (plus la valeur est élevé, plus le script sera exécuté en dernier)
sudo ln -s /etc/init.d/local /etc/rcS.d/S33local
Voilà maintenant tu redémarre et ça devrait être bon.
Pour ceux qui ont un problème avec une carte wifi à base d'un chipset rt61 : http://forum.ubuntu-fr.org/viewtopic.php?id=82783
Hors ligne
#3 Le 04/06/2007, à 16:36
- nikko
Re : Commande au demmarge du serveur
Euh, peux tu préciser ton problème, car il me semble qu'il existe déjà un script correspondant, /etc/init.d/mountall.sh
#! /bin/sh
### BEGIN INIT INFO
# Provides: mountall
# Required-Start: checkfs
# Required-Stop:
# Should-Start: lvm
# Should-Stop:
# Default-Start: S
# Default-Stop:
# Short-Description: Mount all filesystems.
# Description:
### END INIT INFO
PATH=/sbin:/bin
. /lib/init/vars.sh
. /lib/lsb/init-functions
. /lib/init/mount-functions.sh
do_start() {
#
# Mount local file systems in /etc/fstab.
#
pre_mountall
if [ "$VERBOSE" = no ]
then
log_action_begin_msg "Mounting local filesystems"
mount -a -t proc >/dev/null 2>&1 # Ignore error message due to /proc already being mounted
ES_TO_REPORT=$?
mount -a -t noproc,nfs,nfs4,smbfs,cifs,ncp,ncpfs,coda,ocfs2,gfs
ES=$?
ES_TO_REPORT=$(($ES_TO_REPORT | $ES))
if [ 0 = "$ES_TO_REPORT" ]
then
log_action_end_msg 0
else
log_action_end_msg 1 "code $ES_TO_REPORT"
fi
else
log_action_msg "Will now mount local filesystems"
mount -a -t proc >/dev/null 2>&1 # Ignore error message due to /proc already being mounted
ES=$?
[ 0 = "$ES" ] || log_failure_msg "Mounting proc filesystems failed with error code ${ES}."
mount -a -v -t noproc,nfs,nfs4,smbfs,cifs,ncp,ncpfs,coda,ocfs2,gfs
ES=$?
if [ 0 = "$ES" ]
then
log_success_msg "Done mounting local filesystems."
else
log_failure_msg "Mounting local filesystems failed with error code ${ES}."
fi
fi
post_mountall
case "$(uname -s)" in
*FreeBSD)
INITCTL=/etc/.initctl
;;
*)
INITCTL=/dev/initctl
;;
esac
#
# We might have mounted something over /dev, see if
# /dev/initctl is there.
#
if [ ! -p $INITCTL ]
then
rm -f $INITCTL
mknod -m 600 $INITCTL p
fi
kill -USR1 1
#
# Execute swapon command again, in case we want to swap to
# a file on a now mounted filesystem.
#
# Ignore 255 status due to swap already being enabled
#
if [ "$VERBOSE" = no ]
then
log_action_begin_msg "Activating swapfile swap"
swapon -a -e 2>/dev/null || : # Stifle "Device or resource busy"
log_action_end_msg 0
else
log_action_msg "Will now activate swapfile swap"
swapon -a -e -v || :
log_success_msg "Done activating swapfile swap."
fi
}
case "$1" in
start|"")
do_start
;;
restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
stop)
# No-op
;;
*)
echo "Usage: mountall.sh [start|stop]" >&2
exit 3
;;
esac
Nikko
Hors ligne
#4 Le 04/06/2007, à 16:52
- romeros
Re : Commande au demmarge du serveur
et si je met dans le fichier /etc/rc.local
mount -a
ca marche ?
#5 Le 04/06/2007, à 17:01
- Fengy
Re : Commande au demmarge du serveur
Je pense oui, essaye pour voir.
Enfin pour ma part j'ai toujours l'habitude de mettre #!/bin/sh avant
Pour ceux qui ont un problème avec une carte wifi à base d'un chipset rt61 : http://forum.ubuntu-fr.org/viewtopic.php?id=82783
Hors ligne
#6 Le 04/06/2007, à 17:04
- nikko
Re : Commande au demmarge du serveur
et si je met dans le fichier /etc/rc.local
mount -a
ca marche ?
Oui, c'est le fichier qui est lu par /etc/init.d/rc.local installé par défaut.
#! /bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
[ -f /etc/default/rcS ] && . /etc/default/rcS
. /lib/lsb/init-functions
do_start() {
if [ -x /etc/rc.local ]; then
log_begin_msg "Running local boot scripts (/etc/rc.local)"
/etc/rc.local
log_end_msg $?
fi
}
case "$1" in
start)
do_start
;;
restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
stop)
;;
*)
echo "Usage: $0 start|stop" >&2
exit 3
;;
esac
Mais encore une fois il y a déjà un script qui fait ça.
Hors ligne
#7 Le 04/06/2007, à 17:13
- romeros
Re : Commande au demmarge du serveur
merci bocoup:lol:
Pages : 1