« La distribution Linux Xandros de l'EeePC » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
(balises code)
 
(72 versions intermédiaires par 6 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
{{en construction}}
[[Catégorie:Eee PC]]
 
=La distribution Linux Xandros de l'EeePC=
=La distribution Linux Xandros de l'EeePC=


La distribution Linux livrée avec l'EeePC est une version spéciale de [http://fr.wikipedia.org/wiki/Xandros Xandros], elle même basée sur la distribution [http://fr.wikipedia.org/wiki/Debian Debian].
La distribution Linux livrée avec l'[[EeePC]] est une version spéciale de [http://fr.wikipedia.org/wiki/Xandros Xandros], elle même basée sur la distribution [http://fr.wikipedia.org/wiki/Debian Debian].


Elle en partage donc un grand nombre de particularités.
Elle en partage donc un grand nombre de particularités.
Ligne 9 : Ligne 8 :
Si vous êtes nouveau à Linux, je vous propose de lire l'article d'[[Intro-index|introduction à Linux]] de ce site.
Si vous êtes nouveau à Linux, je vous propose de lire l'article d'[[Intro-index|introduction à Linux]] de ce site.


==installer un logiciel==
=Le mode Easy=
à faire
[[Image:Easymode internet.jpg|thumb|Le mode Easy de l'EeePC]]
 
L'EeePC est livré avec une interface simplifiée, qui permet cependant de faire tout ce que l'on attend d'un ordinateur, sans avoir à se creuser la tête. Elle se nomme "mode Easy" ou "Easy mode" (anglais oblige).
 
Les icones sont grandes, facilement accessibles, et rangées dans différents onglets.
 
Des outils comme [[Launcher tools#Simple_UI_Editor|Simple UI Editor]] ou [[Easy Mode Editor]] permettent de la modifier (ajout, modification et suppression d'icones et/ou d'onglets), et [[Theeemer]] permet d'en changer le look.
 
=Le mode avancé=
Enfin, un [http://wikeee.fr/index.php/Passer_en_mode_Full_Desktop tutoriel sur wikeee.fr] explique comment passer en mode avancé (ou ''full desktop''). Dans ce mode, vous aurez l'écran normal de la distribution Xandros, avec un bureau classique, une barre des tâches, un menu des programmes...<br />
Si vous avez installé le dépôt Tuxfamily (voir plus bas), vous pouvez aussi faire simplement :
<code multi>$ sudo apt-get install advanced-desktop-eeepc</b>
 
La boîte de dialogue d'extinction doit par la suite disposer d'un cinquième choix vous permettant de basculer entre les 2 modes de l'EeePC.
 
=La ligne de commandes=
[[Image:Xterm eeepc.png|thumb|La ligne de commande de l'EeePC]]
 
Autrement nommée Shell, Terminal, mode texte, etc. la ligne de commande vous permet de faire ce qui n'est pas prévu dans les interfaces graphiques.
Consultez la [[Fiches:La ligne de commande|fiche d'introduction à la ligne de commande]] pour en savoir plus.
 
Sur l'EeePC il n'y a pas d'icône pour la lancer, mais un raccourci clavier : <b>Ctrl+Alt+T</b>. En utilisant [[Launcher tools#Simple_UI_Editor|Simple UI Editor]] ou [[Easy Mode Editor]] vous pourrez en rajouter une, d'autant qu'une icone de terminal est présente dans les fichiers d'icones de l'EeePC.
 
==utilisateur (user) ou administrateur (root) ? la commande sudo ==
 
Sous Linux, l'utilisateur de base n'est pas autorisé à réaliser lui-même les opérations de maintenance. Il existe pour cela un utilisateur spécial, nommé '''root'''. Cette distinction permet d'avoir une meilleure sécurité du système.
 
Pour lancer une application ou une commande en tant que l'utilisateur root, nous allons utiliser la commande <b>sudo</b>. Par exemple :
<code multi>$ sudo apt-get install un_logiciel</b>
Si votre utilisateur a un mot de passe, sudo vous le demande la première fois ; les utilisations suivantes de sudo ne vous le demanderont pas, sauf si vous ne l'utilisez pas pendant un moment.
 
Vous pouvez aussi lancer une ligne de commande en tant que root, histoire d'éviter d'ajouter <b>sudo</b> en tête de chaque commande. Pour ce faire, tapez :
<code multi>$ sudo -s
mot de passe :
#</b>
 
<u>Note</u> : vous remarquerez dans ce site des commandes qui commencent par un signe dollar comme ci-dessus, et d'autres commençant par un dièse (<b>#</b>). Le <b>$</b> représente l'invite de commandes (le ''prompt'') pour les commandes à lancer en tant que simple utilisateur, le <b>#</b>, le prompt pour les commandes à lancer dans une ligne de commande root. Vous pouvez les faire précéder de <b>sudo</b> si vous ne souhaitez pas lancer un shell root.
 
=installer et supprimer des logiciels=
 
La distribution de l'EeePC étant basée sur la distribution Debian, les commandes classiques de celle-ci sont à utiliser.
 
==chercher un logiciel==
Afin de chercher le nom du paquet contenant le logiciel, tapez dans une console :
<code multi>$ sudo apt-cache search <mot clef></b>
Par exemple :
<code multi>$ sudo apt-cache search browser</b>
Cela va vous retourner une liste de paquets avec leur description ; vous pouvez utiliser le nom du paquet pour les 2 actions suivantes.
 
==installer / mettre à jour un logiciel==
Dans la console, tapez :
<code multi>$ sudo apt-get install <nom du logiciel></b>
Par exemple :
<code multi>$ sudo apt-get install pidgin</b>
 
 
<cadre type=note>Je vous recommande, si vous avez ajouté des dépôts, de toujours faire un test d'installation avec la commande : <b>$ sudo apt-get -s install pidgin</b>. Ajouter l'option <b>-s</b> demande à apt-get de simuler l'installation, ce qui nous permet de voir les éventuelles erreurs. S'il y a une erreur, n'installez le paquet que si vous savez vraiment ce que vous faites.</cadre>


==désinstaller un logiciel==
==désinstaller un logiciel==
à faire
Dans la console, tapez :
<code multi>$ sudo apt-get remove <nom du logiciel></b>
Par exemple :
<code multi>$ sudo apt-get remove skype</b>


==ajouter des dépôts de logiciels==
==ajouter une icone==
à faire
Si vous installez un package non spécialement prévus pour l'EeePC, il y a très peu de chance qu'une icone adaptée apparaisse dans le menu "Easy mode". En utilisant [[Launcher tools#Simple_UI_Editor|Simple UI Editor]] ou [[Easy Mode Editor]] vous pourrez en ajouter une facilement, et créer vos propres icones avec les [[Launcher tools]].
 
==mettre à jour l'EeePC==
===en mode graphique===
===en console===
Nous allons utiliser le gestionnaire de logiciels apt-get.
Tout d'abord nous allons mettre à jour les dépôts par la commande :
<code multi>$ sudo apt-get update</b>
Ensuite, nous demandons la mise à jour générale des logiciels par la commande :
<code multi>$ sudo apt-get upgrade</b>
apt-get va alors vous demander de confirmer la mise à jour, puis télécharger et installer les dernières versions disponibles.
 
<u>Attention</u> : si apt-get vous propose de supprimer 12 packages, ne l'autorisez pas sauf si vous savez bien ce que vous faites, et essayez de corriger le problème auparavant (par exemple en supprimant un dépôt non recommandé que vous auriez ajouté auparavant).
 
Je vous conseille ici aussi d'utiliser l'option <b>-s</b> afin de tester si la mise à jour va bien se passer :
<code multi>$ sudo apt-get -s upgrade</b>
 
<u>Note</u> : à cause de l'organisation du disque UnionFS (voir ci-dessous), la mise à jour des logiciels va prendre de la place sur le disque dur, car le logiciel va se retrouver en double sur le disque (la version originale dans la première partition, la nouvelle version dans la deuxième partition).
 
===autres===
;Firefox 3
:[[Installer Firefox 3 ou 3.1 sur EeePC]]
:Des paquets pour installer Firefox 3 sont aussi disponibles sur [http://www.3eportal.com/index.php?option=com_content&task=view&id=37&Itemid=1 3eportal.com], mais à mon avis la méthode ci-dessus est plus simple et devrait prendre moins de place sur votre disque interne.
 
==Ajouter des dépôts de logiciels==
 
===Qu'est-ce qu'un dépôt ?===
En anglais ''repository'', un dépôt est une partie d'un serveur qui contient des paquets (''packages'') de logiciels spécialement préparés ou compatibles avec votre distribution. Un paquet est un fichier compressé contenant l'ensemble des fichiers composant un logiciel, ainsi que les instructions afin de l'installer, le mettre à jour et le supprimer. Sous Debian et donc EeePC l'extension de ce fichier est <b>.deb</b>.
 
En effet, alors que sous Windows vous devez chercher le site web de l'application désirée, télécharger un '''setup.exe''' et le lancer (et souvent chercher le '''crack''' correspondant...), sous Linux il suffit de demander l'installation d'un logiciel pour que l'ordinateur aille tout seul le chercher, l'installe et le configure.
 
Lorsque vous allez demander l'installation d'un logiciel, par exemple Firefox, vous allez entrer la commande suivante :
<code multi>$ sudo apt-get install firefox</b>
 
*'''sudo''' dit que vous souhaitez exécuter ce qui suit en tant qu'administrateur de la machine (root),
*'''apt-get install''' que vous souhaitez installer un logiciel ('''apt-get''' est le gestionnaire d'installation),
*'''firefox''' est le nom du logiciel (en fait du paquet) que vous voulez installer.
 
apt-get va donc aller chercher dans l'ensemble des dépôts (dont la liste se trouve dans le fichier <b>/etc/apt/sources.list</b>) le logiciel cherché, et l'installer. Le fichier <b>/etc/apt/preferences</b> précise l'ordre de priorité des dépôts (ce fichier n'existe pas par défaut).
 
===Pourquoi ajouter un dépôt ?===
L'EeePC est configuré de base avec les dépôts d'Asus. Cela suffit pour installer les logiciels fournis par Asus et les mettre à jour. Cependant, ils ne contiennent pas forcément l'ensemble des logiciels que vous souhaitez, aussi il est intéressant d'en ajouter.
 
===Pourquoi ne pas en ajouter ?===
Il ne faut pas ajouter n'importe quel dépôt Debian. En effet, on ne peut se servir que de ceux qui sont compatibles ou mieux réalisés pour l'EeePC. Attention donc à n'utiliser les dépôts que vous donnent les sites consacrés à l'EeePC.
 
'''Si vous désirez en ajouter, suivez bien les recommendations de cet article, sinon vous risquez d'installer des logiciels incompatibles et de rendre votre EeePC inutilisable.'''
 
===Quelques dépôts intéressants===
Vous pouvez ajouter les lignes ci-dessous au fichier <b>/etc/apt/sources.list</b>. Afin de prendre en compte vos modifications, utilisez la commande :
<code multi>$ sudo apt-get update</b>
====Dépôts standard Asus====
Les deux lignes suivantes de <b>/etc/apt/sources.list</b> correspondent aux dépôts configurés par défaut par Asus en sortie d'usine.
<b>deb http://update.eeepc.asus.com/p701 p701 main
deb http://update.eeepc.asus.com/p701/fr-channel p701 main</b>
====Dépôts spécifiques EeePC====
;xepc.org
Ce dépôt très intéressant fournit des mises à jour et des logiciels supplémentaires. Ajoutez la ligne suivante dans <b>/etc/apt/sources.list</b>.
<code multi>deb http://updates.xepc.org/ p701 main</b>
Si vous ajoutez ce dépôt, vous devez aussi installer la clef de signature du dépôt par les commandes suivantes :
<b>$ wget http://updates.xepc.org/dists/p701/xepc-pubkey.txt
$ sudo apt-key add xepc-pubkey.txt
$ sudo apt-get update</b>
(la première télécharge la clef et la deuxième l'installe ; vous pouvez ensuite supprimer le fichier <b>key.txt</b>.
 
<u>Note</u> : si pour un dépôt vous obtenez l'erreur suivante, c'est que vous n'avez pas installé la clef :<br />
''GPG error: http://updates.xepc.org p701 Release: Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 36E9E3DE1ACBEB0D''
 
;tuxfamily.org
Ce dépôt fournit également des logiciels supplémentaires pour l'EeePC.
<code multi>deb http://download.tuxfamily.org/eeepcrepos/ p701 main etch</b>
Si vous ajoutez ce dépôt, vous devez aussi installer la clef de signature du dépôt par les commandes suivantes :
<b>$ wget http://download.tuxfamily.org/eeepcrepos/key.asc
$ sudo apt-key add key.asc
$ sudo apt-get update</b>
<u>Note</u> : dans la ligne ci-dessus <b>main</b> correspond à des paquets spécialement conçus pour l'EeePC. <b>etch</b> correspond à une simple copie de paquets Debian qui sont sensés fonctionner sur l'EeePC sans problème. Cependant, si vous voulez être du côté le plus sûr, vous pouvez supprimer <b>etch</b> de la ligne.
 
====Dépôts compatibles====
;Xandros
Les lignes suivantes ajoutent les dépôts de Xandros :
<b>deb http://xnv4.xandros.com/xs2.0/upkg-srv2 etch main contrib non-free
deb http://dccamirror.xandros.com/dccri/ dccri-3.0 main</b>
La première ligne correspond aux logiciels supportés par Xandros, la deuxième ceux qui ne le sont pas (i.e. les paquets sont réalisés par la communauté).
 
<u>Note</u> : Si vous obtenez cette erreur :
<code multi>GPG error: http://xnv4.xandros.com, etch Release : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY A3CCB76FA8BCF0C9</b>
Alors installez les clefs de Xandros :
<code multi># wget http://xnv4.xandros.com/xs2.0/pkg/pool/main/xandros/xandros-archive-keyring_1.0-3_all.deb
# sudo dpkg -i xandros-archive-keyring_1.0-3_all.deb
# sudo apt-get update
</b>
 
;Geek Connection
<code multi>deb http://www.geekconnection.org/ xandros4 main</b>
 
====Dépôts non recommandés====
Les dépôts standard de Debian ne sont pas recommandés. Par exemple :
<code multi>deb ftp://ftp.fr.debian.org/debian/ stable main contrib non-free </b>
 
===Choisir la priorité entre dépôts===
Une fois les lignes ajoutées à <b>/etc/apt/sources.list</b>, il faut indiquer à <b>apt-get</b> la priorité entre ces dépôts, au cas où plusieurs d'entre eux disposent du même logiciel. Cela s'appelle aussi le '''pining'''.
 
Si on ne définit pas la priorité, on va installer le logiciel qui a le numéro de version le plus grand. Or pour les dépôts compatibles, nous ne souhaitons pas installer de packages avec des versions plus grandes que celle de Xandros. Nous devons donc en informer apt-get.
 
Cela se fait à travers du fichier <b>/etc/apt/preferences</b>.  Tapez la commande suivante :
 
<code multi>$ sudo kwrite /etc/apt/preferences</b>
 
puis copiez-collez le contenu suivant :
 
<code multi>Package: *
Pin: origin update.eeepc.asus.com
Pin-Priority: 950
 
Package: *
Pin: origin updates.xepc.org
Pin-Priority: 925
 
Package: *
Pin: origin download.tuxfamily.org
Pin-Priority: 900
 
Package: *
Pin: origin xnv4.xandros.com
Pin-Priority: 875
 
Package: *
Pin: origin dccamirror.xandros.com
Pin-Priority: 850
 
Package: *
Pin: origin www.geekconnection.org
Pin-Priority: 750
 
Package: *
Pin: release a=stable
Pin-Priority: 700
 
Package: *
Pin: release a=testing
Pin-Priority: 650
 
Package: *
Pin: release a=unstable
Pin-Priority: 600</b>
 
Voici ce que fait le fichier ci-dessus :
* il donne la priorité maximale aux dépôt officiel Asus afin d'empêcher d'écraser les logiciels critiques de l'EeePC,
* il donne la priorité 925 et 900 aux dépôts spécifiques EeePC (xepc et tuxfamily),
* ensuite viennent les dépôts officiels Xandros,
* enfin, le moins prioritaire, Geek Connection.
* les lignes suivantes sont là au cas où nous téléchargerions des paquets Debian.
 
<u>Note</u> : si vous ne mentionnez pas un dépôt dans ce fichier, alors il aura une priorité de 500.
 
Bien sûr si vous n'ajoutez pas tous les dépôts présentés ci-dessus, vous pouvez supprimer les lignes correspondantes.
 
Après avoir enregistré le fichier, mettez à jour le gestionnaire de logiciels par la commande :
<code multi>$ sudo apt-get update</b>


=Le disque interne ([http://fr.wikipedia.org/wiki/Unionfs UnionFS])=
=Le disque interne ([http://fr.wikipedia.org/wiki/Unionfs UnionFS])=
Votre disque interne est découpé en 2 partitions. L'une (<code>/dev/sda1</code>) qui contient le système tel qu'installé par Asus en sortie d'usine (et ne sera jamais modifié), l'autre (<code>/dev/sda2</code>) contenant toutes les modifications apportées par l'utilisateur depuis la première utilisation (fichiers utilisateurs, logiciels installés ou mis à jour...).
Votre disque interne est découpé en 2 partitions. L'une (<b>/dev/sda1</b>) qui contient le système tel qu'installé par Asus en sortie d'usine (et ne sera jamais modifié), l'autre (<b>/dev/sda2</b>) contenant toutes les modifications apportées par l'utilisateur depuis la première utilisation (fichiers utilisateurs, logiciels installés ou mis à jour...).


Ces deux partitions sont montées lors du démarrage, en les fusionnant afin de n'en faire apparaître qu'une seule. Ce mode de montage se nomme [http://fr.wikipedia.org/wiki/Unionfs UnionFS].<br />
Ces deux partitions sont montées lors du démarrage, en les fusionnant afin de n'en faire apparaître qu'une seule. Ce mode de montage se nomme [http://fr.wikipedia.org/wiki/Unionfs UnionFS].<br />
Ligne 34 : Ligne 250 :
Pour accéder à vos fichiers, il faut "monter" les partitions, i.e. attacher leur contenu à un répertoire. Pour ce faire entrez les 2 commandes suivantes :
Pour accéder à vos fichiers, il faut "monter" les partitions, i.e. attacher leur contenu à un répertoire. Pour ce faire entrez les 2 commandes suivantes :


<code># mount /dev/sda1 /mnt-system
<b># mount /dev/sda1 /mnt-system
# mount /dev/sda2 /mnt-user</code>
# mount /dev/sda2 /mnt-user</b>


Dans chacun des répertoires <code>/mnt-system</code> et <code>/mnt-user</code>, vous pourrez voir un ensemble de répertoire semblables à ceux qu'on trouve à la racine de n'importe quel système Linux. La magie de UnionFS est de les fusionner et de n'en laisser apparaître qu'un.
Dans chacun des répertoires <b>/mnt-system</b> et <b>/mnt-user</b>, vous pourrez voir un ensemble de répertoire semblables à ceux qu'on trouve à la racine de n'importe quel système Linux. La magie de UnionFS est de les fusionner et de n'en laisser apparaître qu'un.


Vos modifications seront toutes dans <code>/mnt-user</code>. Dans <code>/mnt-system</code>, vous trouvez le système d'origine. Attention aux modifications faites dans <code>/mnt-system</code> : vous ne pourrez plus revenir en arrière depuis le menu de démarrage, et si vous n'arrivez pas à corriger un problème il ne vous restera plus qu'à utiliser le DVD de restauration !
Vos modifications seront toutes dans <b>/mnt-user</b>. Dans <b>/mnt-system</b>, vous trouvez le système d'origine. Attention aux modifications faites dans <b>/mnt-system</b> : vous ne pourrez plus revenir en arrière depuis le menu de démarrage, et si vous n'arrivez pas à corriger un problème il ne vous restera plus qu'à utiliser le DVD de restauration !


=Le démarrage (séquence de boot)=
=Le démarrage (séquence de boot)=
Ligne 47 : Ligne 263 :


==le menu de démarrage==
==le menu de démarrage==
Grub propose un menu de démarrage ; celui-ci n'est pas visible, mais si vous pressez <key>F9</key> de façon répétée lors du boot, vous devriez voir apparaître un menu ressemblant à ceci :
Grub propose un menu de démarrage ; celui-ci n'est pas visible, mais si vous pressez <b>F9</b> de façon répétée lors du boot, vous devriez voir apparaître un menu ressemblant à ceci :
<cadre type=console>
<cadre type=console>
+---------------------------------
+---------------------------------
Ligne 57 : Ligne 273 :
Si vous avez appliqué le tutoriel [[Rescue mode EeePC]], vous devez avoir une entrée supplémentaire, dénommée "Single user".
Si vous avez appliqué le tutoriel [[Rescue mode EeePC]], vous devez avoir une entrée supplémentaire, dénommée "Single user".


Dans ce menu, choisissez une entrée avec les flèches du clavier, et appuyez sur entrée pour la lancer. Vous pouvez ajouter / modifier les arguments de la ligne de commande passées à Linux en tapant <key>E</key>, et même utiliser la ligne de commande de Grub en pressant <key>C</key>. Les modifications effectuées ici ne sont pas enregistrées (elle ne seront pas visibles au boot suivant). Pour plus d'informations, voir l'article détaillant [[Grub]].
Dans ce menu, choisissez une entrée avec les flèches du clavier, et appuyez sur entrée pour la lancer. Vous pouvez ajouter / modifier les arguments de la ligne de commande passées à Linux en tapant <b>E</b>, et même utiliser la ligne de commande de Grub en pressant <b>C</b>. Les modifications effectuées ici ne sont pas enregistrées (elle ne seront pas visibles au boot suivant). Pour plus d'informations, voir l'article détaillant [[Grub]].


Description des entrées de menu :
Description des entrées de menu :
Ligne 67 : Ligne 283 :
La distribution de l'EeePC utilise un programme de boot nommé '''fastinit''' qui remplace le programme '''init''' des autres distributions. Fastinit est un logiciel propriétaire d'Asus. A noter l'existence de '''[http://helllabs.org/finit/ finit]''', un logiciel libre permettant de remplacer et améliorer fastinit (vive le logiciel libre ;-).
La distribution de l'EeePC utilise un programme de boot nommé '''fastinit''' qui remplace le programme '''init''' des autres distributions. Fastinit est un logiciel propriétaire d'Asus. A noter l'existence de '''[http://helllabs.org/finit/ finit]''', un logiciel libre permettant de remplacer et améliorer fastinit (vive le logiciel libre ;-).


Au lieu d'exécuter tout en un ensemble de scripts présents dans <code>/etc/init.d</code>, ce qui prend un temps important, fastinit fait lui-même le travail d'un init simplifié, et de quelques scripts d'initialisation. Il gère les signaux, monte les systèmes de fichiers, crée les fichiers de base, met en place le réseau (mais pas la connection elle-même), ouvre les terminaux (en fait un seul, celui où va tourner X Window) et finalement lance le serveur X, et en même temps, en tâche de fond, démarre les autres services non essentiels. Ainsi le serveur X est-il lancé le plus tôt possible, donnant une sensation de grande rapidité au démarrage.
===l'initialisation===
Au lieu d'exécuter tout en un ensemble de scripts présents dans <b>/etc/init.d</b>, ce qui prend un temps important, fastinit fait lui-même le travail d'un init simplifié, et de quelques scripts d'initialisation. Il gère les signaux, monte les systèmes de fichiers, crée les fichiers de base, met en place le réseau (mais pas la connection elle-même), ouvre les terminaux (en fait un seul, celui où va tourner X Window) et finalement lance :
*le serveur X, puis <b>/usr/bin/x-session-manager</b>, qui est un lien vers <b>/usr/bin/startsimple.sh</b> (voir ci-dessous)
*En même temps, en tâche de fond, il démarre les autres services non essentiels. Ainsi le serveur X est-il lancé le plus tôt possible, donnant une sensation de grande rapidité au démarrage.
 
Le lancement de ces services "non essentiels" consiste simplement à lancer le script [[shell]] <b>/usr/sbin/services.sh</b>, qui va faire tout le travail.
 
===services.sh===
Pour ceux qui ne peuvent ou ne veulent pas lire le script shell, voici ce qu'il fait.
*il attend 1 seconde que l'environnement graphique soit démarré (afin de ne pas ralentir son démarrage),
*il démarre vraiment le réseau,
*il charge tous les drivers (modules) nécessaires (si vous avez besoin d'en ajouter, modifiez le fichier <b>/etc/modules</b>),
*il lance <b>/usr/sbin/wlan_on_boot.sh</b> qui essaie de se connecter en wifi lors du démarrage (si vous avez défini une telle connection),
*il restore le volume sonore (tel qu'il était lors de l'arrêt),
*il démarre le système d'impression Cups,
*il démarre de la façon standard (comme '''init''' le ferait) les services listés dans <b>/etc/fastservices</b> (fichier qui n'existe pas par défaut ; c'est ici que vous pouvez ajouter les noms de services présents dans <b>/etc/init.d/</b>),
*il démarre Samba, la couche de partage de ressources (répertoires, imprimantes...) compatible avec Windows,
*plus tout un tas de petites (mais importantes) choses.
 
<u>Note</u> : comme c'est un script shell, on peut le modifier pour ajouter des services non graphiques, mais il me semble plus judicieux de le faire de la façon standard, i.e. utiliser des scripts dans <b>/etc/init.d/</b> et les référencer dans <b>/etc/fastservices</b> (voir ci-dessous)...
 
Cependant, il peut être intéressant de le modifier, si on souhaite faire d'autres opérations avant de lancer un service. Par exemple, pour automatiser le Bluetooth au démarrage (voir l'article [[Bluetooth sur EeePC]]), on peut ajouter, dans le cas où c'est nécessaire pour vous (i.e. si le "hciconfig hic0 reset" est indispensable), les 2 lignes suivantes :
 
<b>hciconfig hci0 reset
/usr/sbin/invoke-rc.d bluetooth start
</b>
 
Sinon, ajouter la ligne <b>bluetooth</b> au fichier <b>/etc/fastservices</b> suffit à lancer le service.
 
===startsimple.sh===
<b>/usr/bin/startsimple.sh</b>, dont les permissions autorisent l'édition par un simple utilisateur, lance tout ce qui est nécessaire pour initialiser la session graphique sous X Window :
* l'environnement "Easy" avec ses grandes icones,
* la zone de notification (la zone avec les icones en bas à droite),
* les logiciels qui s'y affichent sous forme d'icone (réglages réseau, réseau, batterie, témoins verrouillage numérique et verrouillage majuscule, mixer sonore,
* le logiciel permettant d'afficher en sur-impression les actions faites avec la touche <b>Fn</b> (comme changer la luminosité de l'écran, le volume sonore...),
* si vous avez suivi le tutoriel [[Lancement automatique de logiciels au démarrage sur EeePC]], il va lancer les programmes présents ou liés depuis <b>/home/user/Autostart</b> (permettant ainsi à l'utilisateur d'ajouter simplement des logiciels à lancer au démarrage, comme par exemple la messagerie instantanée),
* puis lancer dispwatch et enfin IceWM, les gestionnaire de fenêtres (le programme qui affiche la barre de titre des fenêtres, permet de les déplacer, dimensionner, etc.)
 
===fastservices ou comment démarrer des services (démons ou daemons) au démarrage===
Un grand nombre de services sont installés par défaut, et on peut en ajouter. Chaque service dispose d'un script de démarrage dans <b>/etc/init.d/</b>. Néanmoins, l'EeePC n'utilisant pas la méthode standard de démarrage des autres distributions, vous devez les activer en ajoutant leur nom dans le fichier <b>/etc/fastservices</b>.
 
Vous pouvez lire [[Admin-admin_boot-daemons|cet article]] afin d'avoir plus d'explication sur les services, et leur fonctionnement dans le cadre d'une distribution classique de Linux (i.e. les informations qui y sont présentes ne s'appliquent pas toutes à l'EeePC).
 
Si vous en avez besoin, vous devrez créer ce fichier (il n'existe pas par défaut), et mettre dedans les services que vous souhaitez lancer. Par exemple :
 
<div class="code">
ssh
cron
rc.local
</div>
 
Dans cet exemple, nous démarrons le serveur '''ssh''' (pour se connecter à la machine depuis le réseau avec ssh), le service '''cron''' (qui réalise des tâches programmées), et lançons le script <b>/etc/init.d/rc.local</b>.


Le lancement de ces services "non essentiels" consiste simplement à lancer le script [[shell]] <code>/usr/sbin/services.sh</code>, qui va faire tout le travail.
'''rc.local''' devrait toujours être la dernière ligne du fichier. En effet, dans une distribution Linux classique, il est lancé en dernier et contient des instructions à exécuter après que tous les services aient été démarrés. C'est le script où l'utilisateur customise le démarrage de la machine (pour faire des actions supplémentaires).


... ici décrire services.sh ...
<u>Note</u> : le fichier ne doit contenir que chaque service sur une ligne. En particulier on ne peut pas mettre de commentaires dedans à cause de la façon dont le fichier est utilisé dans le script qui l'appelle.


===la finalisation===
Lorsque vous arrêtez l'EeePC, fastinit reprend la main, enregistre quelques réglages (le volume sonore, l'heure système), puis démonte les systèmes de fichiers et arrête ou redémarre le PC en fonction de l'action que vous avez demandée.
Lorsque vous arrêtez l'EeePC, fastinit reprend la main, enregistre quelques réglages (le volume sonore, l'heure système), puis démonte les systèmes de fichiers et arrête ou redémarre le PC en fonction de l'action que vous avez demandée.
== l'arrêt ==
Lors de l'arrêt de l'EeePC, le script <b>/sbin/fastshutdown.sh</b> (ou <b>/sbin/fastreboot.sh</b> en cas de redémarrage) est appelé. Si vous avez ajouté des services (voir [[La_distribution_Linux_Xandros_de_l'EeePC#services.sh|services.sh]] ci-dessus) et souhaitez les arrêter proprement, il faut modifier ces 2 scripts de la même manière.
Par exemple, après avoir ajouté l'arrêt du bluetooth, le script <b>/sbin/fastshutdown.sh</b> est le suivant :
<div class="code">
#!/bin/sh
if [ "$1" = "--ask" ]
then
    zenity --question && sudo $0
    exit $?
fi
[ `id -u` = "0" ] || echo "Must be root."
# insérez ci-dessous les services à arrêter en suivant ce modèle :
/etc/init.d/bluetooth stop
/usr/bin/killall --wait usbstorageapplet
/bin/kill -USR2 1
</div>
<br/>
<br/>
'''<b>[[EeePC|@ Retour à la rubrique Eee PC]]</b>'''


= Copyright =
= Copyright =
Copyright &copy; 6/2008, [[Utilisateur:LeaJice|Jean-Christophe Cardot]]
Copyright &copy; 6-9/2008, [[Utilisateur:LeaJice|Jean-Christophe Cardot]]
{{CC-BY-SA}}
{{CC-BY-SA}}
<hr />
[[EeePC|Retour à la page EeePC]]
<hr />

Dernière version du 28 avril 2012 à 16:00

La distribution Linux Xandros de l'EeePC

La distribution Linux livrée avec l'EeePC est une version spéciale de Xandros, elle même basée sur la distribution Debian.

Elle en partage donc un grand nombre de particularités.

Si vous êtes nouveau à Linux, je vous propose de lire l'article d'introduction à Linux de ce site.

Le mode Easy

Le mode Easy de l'EeePC

L'EeePC est livré avec une interface simplifiée, qui permet cependant de faire tout ce que l'on attend d'un ordinateur, sans avoir à se creuser la tête. Elle se nomme "mode Easy" ou "Easy mode" (anglais oblige).

Les icones sont grandes, facilement accessibles, et rangées dans différents onglets.

Des outils comme Simple UI Editor ou Easy Mode Editor permettent de la modifier (ajout, modification et suppression d'icones et/ou d'onglets), et Theeemer permet d'en changer le look.

Le mode avancé

Enfin, un tutoriel sur wikeee.fr explique comment passer en mode avancé (ou full desktop). Dans ce mode, vous aurez l'écran normal de la distribution Xandros, avec un bureau classique, une barre des tâches, un menu des programmes...
Si vous avez installé le dépôt Tuxfamily (voir plus bas), vous pouvez aussi faire simplement : $ sudo apt-get install advanced-desktop-eeepc

La boîte de dialogue d'extinction doit par la suite disposer d'un cinquième choix vous permettant de basculer entre les 2 modes de l'EeePC.

La ligne de commandes

La ligne de commande de l'EeePC

Autrement nommée Shell, Terminal, mode texte, etc. la ligne de commande vous permet de faire ce qui n'est pas prévu dans les interfaces graphiques. Consultez la fiche d'introduction à la ligne de commande pour en savoir plus.

Sur l'EeePC il n'y a pas d'icône pour la lancer, mais un raccourci clavier : Ctrl+Alt+T. En utilisant Simple UI Editor ou Easy Mode Editor vous pourrez en rajouter une, d'autant qu'une icone de terminal est présente dans les fichiers d'icones de l'EeePC.

utilisateur (user) ou administrateur (root) ? la commande sudo

Sous Linux, l'utilisateur de base n'est pas autorisé à réaliser lui-même les opérations de maintenance. Il existe pour cela un utilisateur spécial, nommé root. Cette distinction permet d'avoir une meilleure sécurité du système.

Pour lancer une application ou une commande en tant que l'utilisateur root, nous allons utiliser la commande sudo. Par exemple : $ sudo apt-get install un_logiciel Si votre utilisateur a un mot de passe, sudo vous le demande la première fois ; les utilisations suivantes de sudo ne vous le demanderont pas, sauf si vous ne l'utilisez pas pendant un moment.

Vous pouvez aussi lancer une ligne de commande en tant que root, histoire d'éviter d'ajouter sudo en tête de chaque commande. Pour ce faire, tapez : $ sudo -s mot de passe :

Note : vous remarquerez dans ce site des commandes qui commencent par un signe dollar comme ci-dessus, et d'autres commençant par un dièse (#). Le $ représente l'invite de commandes (le prompt) pour les commandes à lancer en tant que simple utilisateur, le #, le prompt pour les commandes à lancer dans une ligne de commande root. Vous pouvez les faire précéder de sudo si vous ne souhaitez pas lancer un shell root.

installer et supprimer des logiciels

La distribution de l'EeePC étant basée sur la distribution Debian, les commandes classiques de celle-ci sont à utiliser.

chercher un logiciel

Afin de chercher le nom du paquet contenant le logiciel, tapez dans une console : $ sudo apt-cache search <mot clef> Par exemple : $ sudo apt-cache search browser Cela va vous retourner une liste de paquets avec leur description ; vous pouvez utiliser le nom du paquet pour les 2 actions suivantes.

installer / mettre à jour un logiciel

Dans la console, tapez : $ sudo apt-get install <nom du logiciel> Par exemple : $ sudo apt-get install pidgin


<cadre type=note>Je vous recommande, si vous avez ajouté des dépôts, de toujours faire un test d'installation avec la commande : $ sudo apt-get -s install pidgin. Ajouter l'option -s demande à apt-get de simuler l'installation, ce qui nous permet de voir les éventuelles erreurs. S'il y a une erreur, n'installez le paquet que si vous savez vraiment ce que vous faites.</cadre>

désinstaller un logiciel

Dans la console, tapez : $ sudo apt-get remove <nom du logiciel> Par exemple : $ sudo apt-get remove skype

ajouter une icone

Si vous installez un package non spécialement prévus pour l'EeePC, il y a très peu de chance qu'une icone adaptée apparaisse dans le menu "Easy mode". En utilisant Simple UI Editor ou Easy Mode Editor vous pourrez en ajouter une facilement, et créer vos propres icones avec les Launcher tools.

mettre à jour l'EeePC

en mode graphique

en console

Nous allons utiliser le gestionnaire de logiciels apt-get. Tout d'abord nous allons mettre à jour les dépôts par la commande : $ sudo apt-get update Ensuite, nous demandons la mise à jour générale des logiciels par la commande : $ sudo apt-get upgrade apt-get va alors vous demander de confirmer la mise à jour, puis télécharger et installer les dernières versions disponibles.

Attention : si apt-get vous propose de supprimer 12 packages, ne l'autorisez pas sauf si vous savez bien ce que vous faites, et essayez de corriger le problème auparavant (par exemple en supprimant un dépôt non recommandé que vous auriez ajouté auparavant).

Je vous conseille ici aussi d'utiliser l'option -s afin de tester si la mise à jour va bien se passer : $ sudo apt-get -s upgrade

Note : à cause de l'organisation du disque UnionFS (voir ci-dessous), la mise à jour des logiciels va prendre de la place sur le disque dur, car le logiciel va se retrouver en double sur le disque (la version originale dans la première partition, la nouvelle version dans la deuxième partition).

autres

Firefox 3
Installer Firefox 3 ou 3.1 sur EeePC
Des paquets pour installer Firefox 3 sont aussi disponibles sur 3eportal.com, mais à mon avis la méthode ci-dessus est plus simple et devrait prendre moins de place sur votre disque interne.

Ajouter des dépôts de logiciels

Qu'est-ce qu'un dépôt ?

En anglais repository, un dépôt est une partie d'un serveur qui contient des paquets (packages) de logiciels spécialement préparés ou compatibles avec votre distribution. Un paquet est un fichier compressé contenant l'ensemble des fichiers composant un logiciel, ainsi que les instructions afin de l'installer, le mettre à jour et le supprimer. Sous Debian et donc EeePC l'extension de ce fichier est .deb.

En effet, alors que sous Windows vous devez chercher le site web de l'application désirée, télécharger un setup.exe et le lancer (et souvent chercher le crack correspondant...), sous Linux il suffit de demander l'installation d'un logiciel pour que l'ordinateur aille tout seul le chercher, l'installe et le configure.

Lorsque vous allez demander l'installation d'un logiciel, par exemple Firefox, vous allez entrer la commande suivante : $ sudo apt-get install firefox

  • sudo dit que vous souhaitez exécuter ce qui suit en tant qu'administrateur de la machine (root),
  • apt-get install que vous souhaitez installer un logiciel (apt-get est le gestionnaire d'installation),
  • firefox est le nom du logiciel (en fait du paquet) que vous voulez installer.

apt-get va donc aller chercher dans l'ensemble des dépôts (dont la liste se trouve dans le fichier /etc/apt/sources.list) le logiciel cherché, et l'installer. Le fichier /etc/apt/preferences précise l'ordre de priorité des dépôts (ce fichier n'existe pas par défaut).

Pourquoi ajouter un dépôt ?

L'EeePC est configuré de base avec les dépôts d'Asus. Cela suffit pour installer les logiciels fournis par Asus et les mettre à jour. Cependant, ils ne contiennent pas forcément l'ensemble des logiciels que vous souhaitez, aussi il est intéressant d'en ajouter.

Pourquoi ne pas en ajouter ?

Il ne faut pas ajouter n'importe quel dépôt Debian. En effet, on ne peut se servir que de ceux qui sont compatibles ou mieux réalisés pour l'EeePC. Attention donc à n'utiliser les dépôts que vous donnent les sites consacrés à l'EeePC.

Si vous désirez en ajouter, suivez bien les recommendations de cet article, sinon vous risquez d'installer des logiciels incompatibles et de rendre votre EeePC inutilisable.

Quelques dépôts intéressants

Vous pouvez ajouter les lignes ci-dessous au fichier /etc/apt/sources.list. Afin de prendre en compte vos modifications, utilisez la commande : $ sudo apt-get update

Dépôts standard Asus

Les deux lignes suivantes de /etc/apt/sources.list correspondent aux dépôts configurés par défaut par Asus en sortie d'usine. deb http://update.eeepc.asus.com/p701 p701 main deb http://update.eeepc.asus.com/p701/fr-channel p701 main

Dépôts spécifiques EeePC

xepc.org

Ce dépôt très intéressant fournit des mises à jour et des logiciels supplémentaires. Ajoutez la ligne suivante dans /etc/apt/sources.list. deb http://updates.xepc.org/ p701 main Si vous ajoutez ce dépôt, vous devez aussi installer la clef de signature du dépôt par les commandes suivantes : $ wget http://updates.xepc.org/dists/p701/xepc-pubkey.txt $ sudo apt-key add xepc-pubkey.txt $ sudo apt-get update (la première télécharge la clef et la deuxième l'installe ; vous pouvez ensuite supprimer le fichier key.txt.

Note : si pour un dépôt vous obtenez l'erreur suivante, c'est que vous n'avez pas installé la clef :
GPG error: http://updates.xepc.org p701 Release: Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY 36E9E3DE1ACBEB0D

tuxfamily.org

Ce dépôt fournit également des logiciels supplémentaires pour l'EeePC. deb http://download.tuxfamily.org/eeepcrepos/ p701 main etch Si vous ajoutez ce dépôt, vous devez aussi installer la clef de signature du dépôt par les commandes suivantes : $ wget http://download.tuxfamily.org/eeepcrepos/key.asc $ sudo apt-key add key.asc $ sudo apt-get update Note : dans la ligne ci-dessus main correspond à des paquets spécialement conçus pour l'EeePC. etch correspond à une simple copie de paquets Debian qui sont sensés fonctionner sur l'EeePC sans problème. Cependant, si vous voulez être du côté le plus sûr, vous pouvez supprimer etch de la ligne.

Dépôts compatibles

Xandros

Les lignes suivantes ajoutent les dépôts de Xandros : deb http://xnv4.xandros.com/xs2.0/upkg-srv2 etch main contrib non-free deb http://dccamirror.xandros.com/dccri/ dccri-3.0 main La première ligne correspond aux logiciels supportés par Xandros, la deuxième ceux qui ne le sont pas (i.e. les paquets sont réalisés par la communauté).

Note : Si vous obtenez cette erreur : GPG error: http://xnv4.xandros.com, etch Release : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY A3CCB76FA8BCF0C9 Alors installez les clefs de Xandros : # wget http://xnv4.xandros.com/xs2.0/pkg/pool/main/xandros/xandros-archive-keyring_1.0-3_all.deb

  1. sudo dpkg -i xandros-archive-keyring_1.0-3_all.deb
  2. sudo apt-get update

Geek Connection

deb http://www.geekconnection.org/ xandros4 main

Dépôts non recommandés

Les dépôts standard de Debian ne sont pas recommandés. Par exemple : deb ftp://ftp.fr.debian.org/debian/ stable main contrib non-free

Choisir la priorité entre dépôts

Une fois les lignes ajoutées à /etc/apt/sources.list, il faut indiquer à apt-get la priorité entre ces dépôts, au cas où plusieurs d'entre eux disposent du même logiciel. Cela s'appelle aussi le pining.

Si on ne définit pas la priorité, on va installer le logiciel qui a le numéro de version le plus grand. Or pour les dépôts compatibles, nous ne souhaitons pas installer de packages avec des versions plus grandes que celle de Xandros. Nous devons donc en informer apt-get.

Cela se fait à travers du fichier /etc/apt/preferences. Tapez la commande suivante :

$ sudo kwrite /etc/apt/preferences

puis copiez-collez le contenu suivant :

Package: * Pin: origin update.eeepc.asus.com Pin-Priority: 950

Package: * Pin: origin updates.xepc.org Pin-Priority: 925

Package: * Pin: origin download.tuxfamily.org Pin-Priority: 900

Package: * Pin: origin xnv4.xandros.com Pin-Priority: 875

Package: * Pin: origin dccamirror.xandros.com Pin-Priority: 850

Package: * Pin: origin www.geekconnection.org Pin-Priority: 750

Package: * Pin: release a=stable Pin-Priority: 700

Package: * Pin: release a=testing Pin-Priority: 650

Package: * Pin: release a=unstable Pin-Priority: 600

Voici ce que fait le fichier ci-dessus :

  • il donne la priorité maximale aux dépôt officiel Asus afin d'empêcher d'écraser les logiciels critiques de l'EeePC,
  • il donne la priorité 925 et 900 aux dépôts spécifiques EeePC (xepc et tuxfamily),
  • ensuite viennent les dépôts officiels Xandros,
  • enfin, le moins prioritaire, Geek Connection.
  • les lignes suivantes sont là au cas où nous téléchargerions des paquets Debian.

Note : si vous ne mentionnez pas un dépôt dans ce fichier, alors il aura une priorité de 500.

Bien sûr si vous n'ajoutez pas tous les dépôts présentés ci-dessus, vous pouvez supprimer les lignes correspondantes.

Après avoir enregistré le fichier, mettez à jour le gestionnaire de logiciels par la commande : $ sudo apt-get update

Le disque interne (UnionFS)

Votre disque interne est découpé en 2 partitions. L'une (/dev/sda1) qui contient le système tel qu'installé par Asus en sortie d'usine (et ne sera jamais modifié), l'autre (/dev/sda2) contenant toutes les modifications apportées par l'utilisateur depuis la première utilisation (fichiers utilisateurs, logiciels installés ou mis à jour...).

Ces deux partitions sont montées lors du démarrage, en les fusionnant afin de n'en faire apparaître qu'une seule. Ce mode de montage se nomme UnionFS.
"Monter" une partition signifie sous Linux attacher son contenu à un répertoire afin de pouvoir y accéder. Il n'existe pas d'accès direct aux partitions sous formes de lettres comme le C:, D: d'un autre système d'exploitation bien connu, au contraire, le principe du montage permet de faire apparaître toutes les partitions, tous les disques durs, tous les accès à des répertoires partagés, etc. comme un seul et unique système de fichier).

Ainsi, pour revenir à la configuration d'usine, il suffit de supprimer la deuxième partition. C'est d'ailleurs ce que fait l'entrée du menu de boot "Restore factory settings" (voir ci-dessous).

C'est l'avantage principal de cette configuration (i.e. vous ne pouvez pas rendre votre EeePC inutilisable en faisant des manips, en dehors du mode single user). Le désavantage étant :

  • la nécessité de partitionner le petit disque de 4 Go,
  • la perte de place (lorsque vous mettez à jour un logiciel, les anciens programmes ne sont plus visibles mais restent sur la première partition, et consomment donc de la place pour rien). C'est particulièrement sensible sur le disque interne de 4 Go, mais assez peu dérangeant finalement si vous ajoutez une carte SD (on trouve maintenant des 16 Go pour pas cher) pour y placer vos fichiers utilisateur.

Vous pouvez voir sous le capot en démarrant en mode single user. Après le démarrage, aucune des 2 partitions n'est montée. Vous vous trouvez dans la racine du système /.

Pour accéder à vos fichiers, il faut "monter" les partitions, i.e. attacher leur contenu à un répertoire. Pour ce faire entrez les 2 commandes suivantes :

# mount /dev/sda1 /mnt-system

  1. mount /dev/sda2 /mnt-user

Dans chacun des répertoires /mnt-system et /mnt-user, vous pourrez voir un ensemble de répertoire semblables à ceux qu'on trouve à la racine de n'importe quel système Linux. La magie de UnionFS est de les fusionner et de n'en laisser apparaître qu'un.

Vos modifications seront toutes dans /mnt-user. Dans /mnt-system, vous trouvez le système d'origine. Attention aux modifications faites dans /mnt-system : vous ne pourrez plus revenir en arrière depuis le menu de démarrage, et si vous n'arrivez pas à corriger un problème il ne vous restera plus qu'à utiliser le DVD de restauration !

Le démarrage (séquence de boot)

Le démarrage de l'EeePC est spécifique à cette machine. C'est ce qui lui permet de démarrer en si peu de temps (environ 25 secondes).

Le gestionnaire de démarrage choisi par Asus est Grub.

le menu de démarrage

Grub propose un menu de démarrage ; celui-ci n'est pas visible, mais si vous pressez F9 de façon répétée lors du boot, vous devriez voir apparaître un menu ressemblant à ceci : <cadre type=console> +--------------------------------- | Normal boot | Perform disk scan | Restore factory settings |</cadre>

Si vous avez appliqué le tutoriel Rescue mode EeePC, vous devez avoir une entrée supplémentaire, dénommée "Single user".

Dans ce menu, choisissez une entrée avec les flèches du clavier, et appuyez sur entrée pour la lancer. Vous pouvez ajouter / modifier les arguments de la ligne de commande passées à Linux en tapant E, et même utiliser la ligne de commande de Grub en pressant C. Les modifications effectuées ici ne sont pas enregistrées (elle ne seront pas visibles au boot suivant). Pour plus d'informations, voir l'article détaillant Grub.

Description des entrées de menu :

  • Normal boot : démarrage normal de l'EeePC.
  • Perform disk scan : vérification du disque interne.
  • Restore factory settings : remise à zéro de l'EeePC (supprime toutes les modifications que vous avez apportées depuis l'acquisition de la machine).

la séquence de boot

La distribution de l'EeePC utilise un programme de boot nommé fastinit qui remplace le programme init des autres distributions. Fastinit est un logiciel propriétaire d'Asus. A noter l'existence de finit, un logiciel libre permettant de remplacer et améliorer fastinit (vive le logiciel libre ;-).

l'initialisation

Au lieu d'exécuter tout en un ensemble de scripts présents dans /etc/init.d, ce qui prend un temps important, fastinit fait lui-même le travail d'un init simplifié, et de quelques scripts d'initialisation. Il gère les signaux, monte les systèmes de fichiers, crée les fichiers de base, met en place le réseau (mais pas la connection elle-même), ouvre les terminaux (en fait un seul, celui où va tourner X Window) et finalement lance :

  • le serveur X, puis /usr/bin/x-session-manager, qui est un lien vers /usr/bin/startsimple.sh (voir ci-dessous)
  • En même temps, en tâche de fond, il démarre les autres services non essentiels. Ainsi le serveur X est-il lancé le plus tôt possible, donnant une sensation de grande rapidité au démarrage.

Le lancement de ces services "non essentiels" consiste simplement à lancer le script shell /usr/sbin/services.sh, qui va faire tout le travail.

services.sh

Pour ceux qui ne peuvent ou ne veulent pas lire le script shell, voici ce qu'il fait.

  • il attend 1 seconde que l'environnement graphique soit démarré (afin de ne pas ralentir son démarrage),
  • il démarre vraiment le réseau,
  • il charge tous les drivers (modules) nécessaires (si vous avez besoin d'en ajouter, modifiez le fichier /etc/modules),
  • il lance /usr/sbin/wlan_on_boot.sh qui essaie de se connecter en wifi lors du démarrage (si vous avez défini une telle connection),
  • il restore le volume sonore (tel qu'il était lors de l'arrêt),
  • il démarre le système d'impression Cups,
  • il démarre de la façon standard (comme init le ferait) les services listés dans /etc/fastservices (fichier qui n'existe pas par défaut ; c'est ici que vous pouvez ajouter les noms de services présents dans /etc/init.d/),
  • il démarre Samba, la couche de partage de ressources (répertoires, imprimantes...) compatible avec Windows,
  • plus tout un tas de petites (mais importantes) choses.

Note : comme c'est un script shell, on peut le modifier pour ajouter des services non graphiques, mais il me semble plus judicieux de le faire de la façon standard, i.e. utiliser des scripts dans /etc/init.d/ et les référencer dans /etc/fastservices (voir ci-dessous)...

Cependant, il peut être intéressant de le modifier, si on souhaite faire d'autres opérations avant de lancer un service. Par exemple, pour automatiser le Bluetooth au démarrage (voir l'article Bluetooth sur EeePC), on peut ajouter, dans le cas où c'est nécessaire pour vous (i.e. si le "hciconfig hic0 reset" est indispensable), les 2 lignes suivantes :

hciconfig hci0 reset /usr/sbin/invoke-rc.d bluetooth start

Sinon, ajouter la ligne bluetooth au fichier /etc/fastservices suffit à lancer le service.

startsimple.sh

/usr/bin/startsimple.sh, dont les permissions autorisent l'édition par un simple utilisateur, lance tout ce qui est nécessaire pour initialiser la session graphique sous X Window :

  • l'environnement "Easy" avec ses grandes icones,
  • la zone de notification (la zone avec les icones en bas à droite),
  • les logiciels qui s'y affichent sous forme d'icone (réglages réseau, réseau, batterie, témoins verrouillage numérique et verrouillage majuscule, mixer sonore,
  • le logiciel permettant d'afficher en sur-impression les actions faites avec la touche Fn (comme changer la luminosité de l'écran, le volume sonore...),
  • si vous avez suivi le tutoriel Lancement automatique de logiciels au démarrage sur EeePC, il va lancer les programmes présents ou liés depuis /home/user/Autostart (permettant ainsi à l'utilisateur d'ajouter simplement des logiciels à lancer au démarrage, comme par exemple la messagerie instantanée),
  • puis lancer dispwatch et enfin IceWM, les gestionnaire de fenêtres (le programme qui affiche la barre de titre des fenêtres, permet de les déplacer, dimensionner, etc.)

fastservices ou comment démarrer des services (démons ou daemons) au démarrage

Un grand nombre de services sont installés par défaut, et on peut en ajouter. Chaque service dispose d'un script de démarrage dans /etc/init.d/. Néanmoins, l'EeePC n'utilisant pas la méthode standard de démarrage des autres distributions, vous devez les activer en ajoutant leur nom dans le fichier /etc/fastservices.

Vous pouvez lire cet article afin d'avoir plus d'explication sur les services, et leur fonctionnement dans le cadre d'une distribution classique de Linux (i.e. les informations qui y sont présentes ne s'appliquent pas toutes à l'EeePC).

Si vous en avez besoin, vous devrez créer ce fichier (il n'existe pas par défaut), et mettre dedans les services que vous souhaitez lancer. Par exemple :

ssh
cron
rc.local

Dans cet exemple, nous démarrons le serveur ssh (pour se connecter à la machine depuis le réseau avec ssh), le service cron (qui réalise des tâches programmées), et lançons le script /etc/init.d/rc.local.

rc.local devrait toujours être la dernière ligne du fichier. En effet, dans une distribution Linux classique, il est lancé en dernier et contient des instructions à exécuter après que tous les services aient été démarrés. C'est le script où l'utilisateur customise le démarrage de la machine (pour faire des actions supplémentaires).

Note : le fichier ne doit contenir que chaque service sur une ligne. En particulier on ne peut pas mettre de commentaires dedans à cause de la façon dont le fichier est utilisé dans le script qui l'appelle.

la finalisation

Lorsque vous arrêtez l'EeePC, fastinit reprend la main, enregistre quelques réglages (le volume sonore, l'heure système), puis démonte les systèmes de fichiers et arrête ou redémarre le PC en fonction de l'action que vous avez demandée.

l'arrêt

Lors de l'arrêt de l'EeePC, le script /sbin/fastshutdown.sh (ou /sbin/fastreboot.sh en cas de redémarrage) est appelé. Si vous avez ajouté des services (voir services.sh ci-dessus) et souhaitez les arrêter proprement, il faut modifier ces 2 scripts de la même manière.

Par exemple, après avoir ajouté l'arrêt du bluetooth, le script /sbin/fastshutdown.sh est le suivant :

#!/bin/sh
if [ "$1" = "--ask" ]
then
   zenity --question && sudo $0
   exit $?
fi
[ `id -u` = "0" ] || echo "Must be root."
# insérez ci-dessous les services à arrêter en suivant ce modèle :
/etc/init.d/bluetooth stop
/usr/bin/killall --wait usbstorageapplet
/bin/kill -USR2 1



@ Retour à la rubrique Eee PC

Copyright

Copyright © 6-9/2008, Jean-Christophe Cardot

Creative Commons License
Creative Commons Attribution iconCreative Commons Share Alike icon
Ce document est publié sous licence Creative Commons
Attribution, Partage à l'identique 4.0 :
https://creativecommons.org/licenses/by-sa/4.0/