OVH Cloud OVH Cloud

script au demarrage

19 réponses
Avatar
alban
bonjour, alors je veux mettre un script au démarrage de la machine, je le
place dans /etc/init.d/ et crée un lien symbolique
dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre exécute,
une idée ?

voila le script :

#!/bin/sh

let userid=501
rm /home/nom

for i in `cat /etc/passwd`
do
let j=`echo $i | cut -f 3 -d ':'`

if [ $j -ge $userid ]
then
echo $i|cut -d":" -f1>>/home/nom
fi
done

for i in `cat /home/nom`
do
if ! test /home/$i/public/
then
mkdir /home/$i/public/
fi
echo montage du dossier /var/ftp/ dans /home/$i/public
mount --bind /var/ftp/ /home/$i/public
done


--
oui je sais...

10 réponses

1 2
Avatar
Thomas Nemeth
Le jeu 22 avr 2004 à 09:36, alban a tapoté :
| bonjour, alors je veux mettre un script au démarrage de la machine, je le
| place dans /etc/init.d/ et crée un lien symbolique
| dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre exécute,
| une idée ?

man init
Le runlevel 6 est le runlevel pour le _reboot_ !
Place ton script dans le répertoire du runlevel que tu utilises. De
plus, avec une arborescence pareille, il semblerait que tu utilises
une Debian. Dans ce cas utilise le script update-rc.d qui permet
de gérer ça tout seul.


Thomas
--
BOFH excuse #273:
The cord jumped over and hit the power switch.
Avatar
alban
Thomas Nemeth wrote:

ok , quel run level vous semble bon ? rc.5 ? et non je suis sous une
mandrake

Le jeu 22 avr 2004 à 09:36, alban a tapoté :
| bonjour, alors je veux mettre un script au démarrage de la machine, je
| le place dans /etc/init.d/ et crée un lien symbolique
| dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre
| exécute, une idée ?

man init
Le runlevel 6 est le runlevel pour le _reboot_ !
Place ton script dans le répertoire du runlevel que tu utilises. De
plus, avec une arborescence pareille, il semblerait que tu utilises
une Debian. Dans ce cas utilise le script update-rc.d qui permet
de gérer ça tout seul.


Thomas


--
oui je sais...

Avatar
Thomas Nemeth
Le jeu 22 avr 2004 à 09:50, alban a tapoté :
| Thomas Nemeth wrote:
|
| ok , quel run level vous semble bon ? rc.5 ? et non je suis sous une
| mandrake

Celui qui est indiqué dans /etc/inittab. Lire la documentation de
la distro n'est _PAS_ optionnel, mais obligatoire.

Merci de répondre à l'endroit !
http://www.giromini.org/usenet-fr/repondre.html


| > Le jeu 22 avr 2004 à 09:36, alban a tapoté :
| > | dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre
| > | exécute, une idée ?
| >
| > Le runlevel 6 est le runlevel pour le _reboot_ !

Thomas
--
BOFH excuse #285:
Telecommunications is upgrading.
Avatar
alban
Thomas Nemeth wrote:

Le jeu 22 avr 2004 à 09:50, alban a tapoté :
| Thomas Nemeth wrote:
|
| ok , quel run level vous semble bon ? rc.5 ? et non je suis sous une
| mandrake

Celui qui est indiqué dans /etc/inittab. Lire la documentation de
la distro n'est _PAS_ optionnel, mais obligatoire.

Merci de répondre à l'endroit !
http://www.giromini.org/usenet-fr/repondre.html


| > Le jeu 22 avr 2004 à 09:36, alban a tapoté :
| > | dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre
| > | exécute, une idée ?
| >
| > Le runlevel 6 est le runlevel pour le _reboot_ !

Thomas


ok pardon pour mon mauvais quotage je sais pas ce qui me passe par la tete
des fois !
--
oui je sais...

Avatar
alban
Thomas Nemdémarrete:

Le jeu 22 avr 2004 à 09:50, alban a tapoté :
| Thomas Nemeth wrote:
|
| ok , quel run level vous semble bon ? rc.5 ? et non je suis sous une
| mandrake

Celui qui est indiqué dans /etc/inittab. Lire la documentation de
la distro n'est _PAS_ optionnel, mais obligatoire.

Merci de répondre à l'endroit !
http://www.giromini.org/usenet-fr/repondre.html


| > Le jeu 22 avr 2004 à 09:36, alban a tapoté :
| > | dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre
| > | exécute, une idée ?
| >
| > Le runlevel 6 est le runlevel pour le _reboot_ !

Thomas


vu que je demarre en mode graphique je dois le placer dans le runlevel 5 -->
X11 c'est bien ca, je me trompe ?

merci
--
oui je sais...

Avatar
omnikron
On Thu, 22 Apr 2004 09:36:39 +0200
alban wrote:


| place dans /etc/init.d/ et crée un lien symbolique
| dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre

par exemple :

/etc/rc.3/S09nomduscript << Full multi-user mode (No GUI interface)
/etc/rc.5/S09nomduscript << Full multi-user mode (With GUI interface)

http://www.siliconvalleyccie.com/linux-hn/runlevels.htm
Avatar
Billiob
Thomas Nemdémarrete:


Le jeu 22 avr 2004 à 09:50, alban a tapoté :
| Thomas Nemeth wrote:
|
| ok , quel run level vous semble bon ? rc.5 ? et non je suis sous une
| mandrake

Celui qui est indiqué dans /etc/inittab. Lire la documentation de
la distro n'est _PAS_ optionnel, mais obligatoire.

Merci de répondre à l'endroit !
http://www.giromini.org/usenet-fr/repondre.html


| > Le jeu 22 avr 2004 à 09:36, alban a tapoté :
| > | dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre
| > | exécute, une idée ?
| >
| > Le runlevel 6 est le runlevel pour le _reboot_ !

Thomas



vu que je demarre en mode graphique je dois le placer dans le runlevel 5 -->
X11 c'est bien ca, je me trompe ?

merci


salut.
c'est bien ça.
@+
Billiob

--
Remplaçez INVALID par swissinfo pour m'envoyer un mail.
Utilisateur de Linux n°342916 enregistré sur http:counter.li.org
Pourquoi avoir développé l'Informatique : pour gagner de l'argent ou
pour s'aider dans l'accomplissement de certaines tâches?


Avatar
Christophe PEREZ
Le Thu, 22 Apr 2004 15:33:41 +0200, Billiob a écrit:

c'est bien ça.


et avec « /etc/rc.5/S09nomduscript » au lieu de
« /etc/rc.5/Snomduscript09 », ça sera plus "traditionnel" ;-)

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
TiChou
Dans le message <news:c67sm4$fpf$,
*alban* tapota sur f.c.o.l.configuration :

bonjour,


Bonsoir,

alors je veux mettre un script au démarrage de la machine, je le
place dans /etc/init.d/ et crée un lien symbolique
dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre exécute,
une idée ?

voila le script :

#!/bin/sh

let useridP1
rm /home/nom

for i in `cat /etc/passwd`
do
let j=`echo $i | cut -f 3 -d ':'`

if [ $j -ge $userid ]
then
echo $i|cut -d":" -f1>>/home/nom
fi
done

for i in `cat /home/nom`
do
if ! test /home/$i/public/
then
mkdir /home/$i/public/
fi
echo montage du dossier /var/ftp/ dans /home/$i/public
mount --bind /var/ftp/ /home/$i/public
done


Je vous propose le script suivant :

$ cat /etc/init.d/ftppublic
#!/bin/sh
#
# chkconfig: 35 90 10
# description: ftppublic

DEV="/var/ftp"
DIR="public"

service=ftppublic

. /etc/rc.d/init.d/functions

case "$1" in
start)
gprintf "Starting %s service: n" "$service"

awk -F: '{
if ( $3 >= 500 && $3 <= 60000 )
print $1
}' < /etc/passwd | while read user
do
eval DIR="~$user/$DEST"
[ ! -d $DIR ] && mkdir -p $DIR
action "Montage du répertoire %s sur %s" "$DEV" "$DIR"
"mount --bind $DEV $DIR"

done

touch /var/lock/subsys/$service
;;
stop)
gprintf "Stopping %s service: n" "$service"

awk -v DEV=$DEV '$1 == DEV && $4 ~ "bind"
{
print $2
}' < /etc/mtab | while read DIR
do
action "Démontage du répertoire %s" "$DIR"
"umount $DIR"
done

rm -f /var/lock/subsys/$service
;;
status)
gprintf "Status %s service: n" "$service"

awk -v DEV=$DEV '$1 == DEV && $4 ~ "bind"
{
print "Répertoire " DEV " monté sur " $2
}' < /etc/mtab
;;
*)
gprintf "Usage: %s {start|stop|status}n" "$0"
exit 1
esac

Celui-ci permet donc de monter le répertoire /var/ftp dans le répertoire
/home/*/public (/etc/init.d/ftppublic start) de chaque utilisateur, de
démonter tous les répertoires /home/*/public (/etc/init.d/ftppublic stop) et
de connaître l'état des répertoires /home/*/public montés
(/etc/init.d/ftppublic status).

Pour que ce sript soit lancé automatiquement au démarrage, dans les runlevel
3 et 5, il suffit d'ajouter le service avec la commande 'chkconfig' :

$ chkconfig --add ftppublic

N'hésitez pas à me demander des détails sur ce script et son fonctionnement.

--
TiChou

Avatar
alban
TiChou wrote:

Dans le message <news:c67sm4$fpf$,
*alban* tapota sur f.c.o.l.configuration :

bonjour,


Bonsoir,

alors je veux mettre un script au démarrage de la machine, je le
place dans /etc/init.d/ et crée un lien symbolique
dans /etc/rc.6/Snomduscript09 mais celui si na pas l'air d'etre exécute,
une idée ?

voila le script :

#!/bin/sh

let useridP1
rm /home/nom

for i in `cat /etc/passwd`
do
let j=`echo $i | cut -f 3 -d ':'`

if [ $j -ge $userid ]
then
echo $i|cut -d":" -f1>>/home/nom
fi
done

for i in `cat /home/nom`
do
if ! test /home/$i/public/
then
mkdir /home/$i/public/
fi
echo montage du dossier /var/ftp/ dans /home/$i/public
mount --bind /var/ftp/ /home/$i/public
done


Je vous propose le script suivant :

$ cat /etc/init.d/ftppublic
#!/bin/sh
#
# chkconfig: 35 90 10
# description: ftppublic

DEV="/var/ftp"
DIR="public"

service=ftppublic

. /etc/rc.d/init.d/functions

case "$1" in
start)
gprintf "Starting %s service: n" "$service"

awk -F: '{
if ( $3 >= 500 && $3 <= 60000 )
print $1
}' < /etc/passwd | while read user
do
eval DIR="~$user/$DEST"
[ ! -d $DIR ] && mkdir -p $DIR
action "Montage du répertoire %s sur %s" "$DEV" "$DIR"
"mount --bind $DEV $DIR"

done

touch /var/lock/subsys/$service
;;
stop)
gprintf "Stopping %s service: n" "$service"

awk -v DEV=$DEV '$1 == DEV && $4 ~ "bind"
{
print $2
}' < /etc/mtab | while read DIR
do
action "Démontage du répertoire %s" "$DIR"
"umount $DIR"
done

rm -f /var/lock/subsys/$service
;;
status)
gprintf "Status %s service: n" "$service"

awk -v DEV=$DEV '$1 == DEV && $4 ~ "bind"
{
print "Répertoire " DEV " monté sur " $2
}' < /etc/mtab
;;
*)
gprintf "Usage: %s {start|stop|status}n" "$0"
exit 1
esac

Celui-ci permet donc de monter le répertoire /var/ftp dans le répertoire
/home/*/public (/etc/init.d/ftppublic start) de chaque utilisateur, de
démonter tous les répertoires /home/*/public (/etc/init.d/ftppublic stop)
et de connaître l'état des répertoires /home/*/public montés
(/etc/init.d/ftppublic status).

Pour que ce sript soit lancé automatiquement au démarrage, dans les
runlevel 3 et 5, il suffit d'ajouter le service avec la commande
'chkconfig' :

$ chkconfig --add ftppublic

N'hésitez pas à me demander des détails sur ce script et son
fonctionnement.




merci je trouver mon script pas tres beau j'allais le revoir mais voila
zorro est arrivé merci beaucoup
--
oui je sais...


1 2