j'ai besoin d'etre certain qu'un script va s'executer sans pb à tous les
coups, parce que sinon je ne peux plus demarrer mon ordi
voilà l'explication :-) :
<http://www.bombich.com/mactips/loginhooks.html>
est ce que des gens veullent bien me confirmer que mon script va
s'executer sans pb à tous les coups svp ? :-)
c'est executé sous root
il y a forcé ment un parametre, qui est le nom d'un utilisateur existant
le but est d'executer un script qui se trouve dans son dossier de
depart, en son nom au lieu de celui de root
#!/bin/sh
if [ ! $1 ]; then
echo "No user specified!"
exit 1
fi
su $1
cd /Users/$1
bin/startupscript &
### Always exit with 0 status
exit 0
ca va ? :-)
vu que c'est sous root, su ne demandera pas de mdp ?
ca renverra 0, de sorte qu'on puisse demarrer,
meme si bin/startupscript
- renvoie autre chose,
- n'est pas executable (parce qu'il manque le x ou parce que le fichier
contient n'importe quoi),
- ou n'existe pas ?
--
si je dors : wakeonlan -i tDeContes.hd.free.fr 00:03:93:AF:45:AE
"don't put your PC out of the window, put windows out of your PC"
"petit Free qui devient grand, gêne les requins blancs"
il me semble que ca, ca existait deja : un fichier dans lequel on peut mettre des commandes qui sont executées au demarrage de l'ordi (il me semble qu'apache est dans ce fichier, d'ailleurs)
je voulais la meme chose, mais au login (et executé au nom de celui qui se logge, pas au nom de root, bien sur)
apple a deja fait ca, mais seulement pour les elements double-clicables
vois tu ? :-)
non, t'y es pas. Je parles bien de loginhook Je dis juste que c'est pas la peine d'en mettre partout, un seul loginhook suffit.
Sinon osx a diverses possibilités de scripts au boot : Il y a rc Il y a /Library/StartupItems Il y a /System/Library/StartupItems (réservé) Je suppose qu'il y a le shell de boot de l'utilisateur Il y a les variables d'environnement du shell et il y a les loginhook.
Dans ton cas c'est bien le loginhook que tu veux utiliser, mais c'est pas la peine de le faire pointer sur un loginscript placé dans /Users/toto/bin, amha. Tu peux faire un script pour tous le monde, non ?
-- S'il n'y a pas de solutions, c'est qu'il n'y a pas de problèmes iChat/AIM : michelnicolas
Thomas <fantome.forums.deContes@iFrance.com> wrote:
il me semble que ca, ca existait deja :
un fichier dans lequel on peut mettre des commandes qui sont executées
au demarrage de l'ordi
(il me semble qu'apache est dans ce fichier, d'ailleurs)
je voulais la meme chose, mais au login
(et executé au nom de celui qui se logge, pas au nom de root, bien sur)
apple a deja fait ca, mais seulement pour les elements double-clicables
vois tu ? :-)
non, t'y es pas.
Je parles bien de loginhook
Je dis juste que c'est pas la peine d'en mettre partout, un seul
loginhook suffit.
Sinon osx a diverses possibilités de scripts au boot :
Il y a rc
Il y a /Library/StartupItems
Il y a /System/Library/StartupItems (réservé)
Je suppose qu'il y a le shell de boot de l'utilisateur
Il y a les variables d'environnement du shell
et il y a les loginhook.
Dans ton cas c'est bien le loginhook que tu veux utiliser, mais c'est
pas la peine de le faire pointer sur un loginscript placé dans
/Users/toto/bin, amha. Tu peux faire un script pour tous le monde, non ?
--
S'il n'y a pas de solutions, c'est qu'il n'y a pas de problèmes
iChat/AIM : michelnicolas
il me semble que ca, ca existait deja : un fichier dans lequel on peut mettre des commandes qui sont executées au demarrage de l'ordi (il me semble qu'apache est dans ce fichier, d'ailleurs)
je voulais la meme chose, mais au login (et executé au nom de celui qui se logge, pas au nom de root, bien sur)
apple a deja fait ca, mais seulement pour les elements double-clicables
vois tu ? :-)
non, t'y es pas. Je parles bien de loginhook Je dis juste que c'est pas la peine d'en mettre partout, un seul loginhook suffit.
Sinon osx a diverses possibilités de scripts au boot : Il y a rc Il y a /Library/StartupItems Il y a /System/Library/StartupItems (réservé) Je suppose qu'il y a le shell de boot de l'utilisateur Il y a les variables d'environnement du shell et il y a les loginhook.
Dans ton cas c'est bien le loginhook que tu veux utiliser, mais c'est pas la peine de le faire pointer sur un loginscript placé dans /Users/toto/bin, amha. Tu peux faire un script pour tous le monde, non ?
-- S'il n'y a pas de solutions, c'est qu'il n'y a pas de problèmes iChat/AIM : michelnicolas
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme l'optimisation en realisant que c'est la derniere commande du script) lance un nouveau processus. Comme c'est la derniere commande du script, ce n'est pas necessaire, on peut reutiliser le meme processus.
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme
l'optimisation en realisant que c'est la derniere commande du
script) lance un nouveau processus. Comme c'est la derniere
commande du script, ce n'est pas necessaire, on peut reutiliser
le meme processus.
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme l'optimisation en realisant que c'est la derniere commande du script) lance un nouveau processus. Comme c'est la derniere commande du script, ce n'est pas necessaire, on peut reutiliser le meme processus.
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme l'optimisation en realisant que c'est la derniere commande du script) lance un nouveau processus. Comme c'est la derniere commande du script, ce n'est pas necessaire, on peut reutiliser le meme processus.
Ça peut être embetant si on veut faire quelque chose après le exec dans une prochaine version.
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme
l'optimisation en realisant que c'est la derniere commande du
script) lance un nouveau processus. Comme c'est la derniere
commande du script, ce n'est pas necessaire, on peut reutiliser
le meme processus.
Ça peut être embetant si on veut faire quelque chose après le exec
dans une prochaine version.
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme l'optimisation en realisant que c'est la derniere commande du script) lance un nouveau processus. Comme c'est la derniere commande du script, ce n'est pas necessaire, on peut reutiliser le meme processus.
Ça peut être embetant si on veut faire quelque chose après le exec dans une prochaine version.
Stephane Chazelas
2004-09-8, 18:17(+00), Laurent Wacrenier:
Stephane Chazelas écrit:
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme l'optimisation en realisant que c'est la derniere commande du script) lance un nouveau processus. Comme c'est la derniere commande du script, ce n'est pas necessaire, on peut reutiliser le meme processus.
Ça peut être embetant si on veut faire quelque chose après le exec dans une prochaine version.
Oui, ou si on a des "trap" definies dans le script. A noter qu'avec les shells qui font l'optimisation eux-memes (comme ksh93), les traps ne fonctionnent plus pour la derniere commande.
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme
l'optimisation en realisant que c'est la derniere commande du
script) lance un nouveau processus. Comme c'est la derniere
commande du script, ce n'est pas necessaire, on peut reutiliser
le meme processus.
Ça peut être embetant si on veut faire quelque chose après le exec
dans une prochaine version.
Oui, ou si on a des "trap" definies dans le script. A noter
qu'avec les shells qui font l'optimisation eux-memes (comme
ksh93), les traps ne fonctionnent plus pour la derniere
commande.
au fait, pourquoi tu mets exec, alors que laurent n'en met pas ?
Juste une optimisation.
Sans le "exec", le shell (a moins qu'il fasse lui-meme l'optimisation en realisant que c'est la derniere commande du script) lance un nouveau processus. Comme c'est la derniere commande du script, ce n'est pas necessaire, on peut reutiliser le meme processus.
Ça peut être embetant si on veut faire quelque chose après le exec dans une prochaine version.
Oui, ou si on a des "trap" definies dans le script. A noter qu'avec les shells qui font l'optimisation eux-memes (comme ksh93), les traps ne fonctionnent plus pour la derniere commande.