LéaBook, Chapitre :
Trucs & astuces de Léa
par tous les amis de Léa
Le copyright de chaque article est détenu
par son auteur.
Le copyright du livre lui-même est détenu par Léa
(Association Loi 1901).
Les articles de ce livre sont diffusés selon la license GPL (GNU
General Public License), sauf mention explicite dans l'article.
Copyright (c) 2003 Association Léa.
This documentation is free documentation; you can redistribute it
and/or modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This documentation is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of
the GNU General Public License along with this program; if not,
write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge,
MA 02139, USA.
For the purpose of applying the GPL to this document, I
consider "source code" to refer to the html source.
Administration (58) Tout sur l'administration sous Linux : les droits, les permissions, les systèmes de fichiers, les logs,... |
Installation (17) Comment personnaliser son installation, les astuces sur les installations des distributions,... |
Matériel (62) Les petits trucs pour installer, configurer et utiliser les périphériques sous Linux. video, son, modems, wifi... |
Noyau (11) Comment jouer avec les paramètres du noyau et des modules, les personnaliser pour ses besoins. Noyau 2.4... |
Au secours (21) Que faire quand plus rien ne marche, quand Linux ne démarre plus, que X plante... documentation... |
Shell (40) Les commandes du shell, leurs paramètres, les scripts... |
Logiciels (29) Des trucs et astuces sur les logiciels. bureautique, multimedia, jeux... |
X Window (24) Comment personnaliser son environnement graphique, activer des options, jouer avec les fontes... |
Réseau (41) Comment bien tirer parti d'un réseau local, d'internet, les trucs sur le mail, etc. web, courrier, transfert de fichiers... |
Sauvegarde (17) Tout (hum...) sur le gravage, les sauvegardes sur bandes, etc. |
Tout sur l'administration sous Linux : les droits, les permissions, les systèmes de fichiers, les logs,...
Ensuite on vous demande de saisir le mot de passe de l'utilisateur root et il ne vous reste plus qu'à récupérer le fichier..
Afin de connaître la version de la libc installée sur le système, il suffit de l'éxécuter comme un programme :
[jice@localhost jice]$ /lib/libc.so.6 GNU C Library stable release version 2.3.2, by Roland McGrath et al. Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Compiled by GNU CC version 3.3.1 (Mandrake Linux 9.2 3.3.1-1mdk). Compiled on a Linux 2.4.22 system on 2003-08-29. Available extensions: GNU libio by Per Bothner crypt add-on version 2.1 by Michael Glad and others linuxthreads-0.10 by Xavier Leroy BIND-8.2.3-T5B libthread_db work sponsored by Alpha Processor Inc NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk Report bugs using the `glibcbug' script to <bugs at gnu dot org>.
On apprend plein de trucs intéressants en plus :-)
Le cas général des versions de bibliothèques est abordé dans l'article Exploration de la configuration.
Pour décompresser un zip multi-volumes sous Linux :
cat mon_zip.z01 mon_zip.z02 ... mon_zip.zip > tout_le_zip.zip
zip -F tout_le_zip.zip
Les fichiers .deb
son en fait des fichiers ar
.
Pour installer un .deb
sur une ditribution non compatible :
Cette solution n'offre aucune gestion des dépendances, de désinstallation...
Cela peut etre tres utile de d'avoir le même shell sur 2 pc differents.
Pour cela il faut utiliser la commande screen
screen, ... c'est terrible. lorsqu'on lance une appli depuis un shell, le pere de l'appli est evidemment le shell. par contre si on tape screen mutt
depuis une console, le parent de mutt
n'est plus le shell, mais screen, pire, le shell n'est même pas le parent de screen. (ce n'est qu'une des fonctions de screen).
Ainsi sur un pc on tape screen zsh
on se log en ssh depuis un autre poste en utilisant le même utilisateur, puis on tape screen -x
et la magie opérera, screen attribue aussi les appli aux different terminaux (tty ou pty, ...) ici zsh
aura 2 terminaux :
celui qui a executé screen zsh
et l'autre qui a executé screen -x
/usr/X11R6/lib/X11/fonts/ttfonts
chkfontpath
(faites man chkfontpath
au besoin)Inutile d'utiliser xfstt
, ça fonctionne !
Pour mettre à jour automatiquement une Mandrake (i.e. installer les mises à jour de sécurité et les nouvelles versions logiciels de contrib et de plf), c'est très simple, il suffit de taper (en tant que root) :
Voilà, c'est tout ! Pour rendre cela encore plus "automatique", mettez ces commandes dans un script shell (avec leur PATH complet) et lancez le depuis votre crontab root.
Le pager most
est un peu plus pratique que less
et more
; il sait aller à droite et à gauche, et il met des couleurs aux manpages. par defaut sur debian, man
utilise most
s'il est installé, sinon
La recherche avec /
est toujours possible. (tapez h pour l'aide)
most
permet aussi de lire les fichiers compressés. essayez :
Mettre à jour une Mandrake en 9.2
Si vous partez d'une 9.0 ou une 9.1, la mise à jour devrait être assez simple (mais le processus est plus long qu'une install depuis les CD).
Voici ce qu'il faut faire (en tant que root bien sûr) :
Voilà, vous avez maintenant une Mandrake 9.2 :-)
La modification du hostname est perdue apres un reboot dans le cas d'une Mandrake 9.2.
Dans ce cas, il faut modifier le rc.sysinit
:
en
Pour beaucoup de raisons, cela n'est pas forcément une bonne chose de laisser ca clé secrète et son trustdb dans ~/.gnupg
Par exemple, vous ne voulez peut-être pas laisser votre clé secrète sur votre poste de travail dans votre entreprise (n'importe qui pourrait alors la récupérer), ou vous voulez signer/chiffrer des mails à partir de différents ordinateurs (ordinateur portable, ordinateur de travail, ordinateur familial...)
Pour cela, il y a une solution très simple, j'utilise une clé USB sur laquelle est copié le contenu de ~/.gnupg
. Ma clé usb est montée sur /mnt/cle
. A vous d'adapter ce qui suit pour votre usage :
De cette manière, vous ne pourrez chiffrer, signer, déchiffrer ou lire de messages sans votre clé usb et votre mot de passe.
Il y a cependant un inconvénient à cette technique, une clé usb est potentiellement égarable, si vous la perdez vous devrez vous créer une nouvelle clé GPG, la faire resigner etc...Pour cela, vous pouvez toujours enterrer un backup sur cd dans votre jardin, ou laisser un cd chez tata ginette...
Bonne chance !!!
Testé sur Mandrake 9.1; mais ça devrait fonctionner ailleurs.
J'ai décidé d'installer des gestionnaires de fenêtres à partir de leurs sources mais je ne savais pas comment demander à KDM/GDM/MdkKDM de les inclure dans leur liste de sessions ouvrables.
En cherchant un peu, j'ai fini par trouver :
/etc/X11/wmsession.d
ou vous devriez trouver des fichiers du genre 01KDE
, 02GNOME
, ...xxWM
ou xx
est la valeur la plus élevée des fichiers déja existants + 1 et WM
le nom de votre windows manager, puis éditez le fichier créé en tant que root avec n'importe quel éditeur de texte.EXEMPLE POUR XFCE4
Remplacez le chemin de l'éxécutable par /usr/local/bin/startxfce4
et le script par exec /usr/local/bin/startxfce4
. Mettez XFCE
comme nom. L'icone n'a aucune importance : laissez la tel quel.
chksession
en mode console. Voyez man chksession
pour plus d'informations.
Les caractères ^M que l'on peut rencontrer parfois dans les fichiers texte sous Unix proviennent du codage de la fin de ligne, qui diffère selon que le fichier a été édité sur un système Microsoft (CR LF, ou ^M et ^L) ou sur un Unix (LF seul). Les éditeurs de texte qui ne supportent pas le codage à la Microsoft affichent donc ce ^M superflu... Voyons ci-dessous des méthodes pour s'en débarrasser.
Voilà enfin un modèle de fichier dos2unix pour ceux qui en cherchaient, Celui - ci est en ksh mais il est sûrement assez simple à adapter au bash...
Remarque (R. LEROY): Pour Debian si vous voulez faire encore plus rapide :
apt-get install sysutils
puis dos2unix fichier.txt
Suite au Trucs & Astuces de FP, que je vous invite à consulter, je vous propose une autre méthode afin de supprimer ces sales bêtes.
Avant tout, sachez que le ^M
que vous voyez dans votre fichier texte est la manifestation du retour à la ligne des fichiers sur un système Microsoft Windows.
Sur les Unix-like (Linux, *BSD, Mac OS X, ...) le retour à la ligne est le code ascii 10 (<Ctrl-Alt-10>
ou 0A
en hexadécimal), alors que sous un système de Microsoft, le retour à la ligne est l'ensemble des deux codes ascii dans l'ordre : 13 et 10 (<Ctrl-Alt-13>
et <Ctrl-Alt-10>
ou 0D
et 0A
en hexadécimal).
Donc pour supprimer ces fameux ^M
, faites comme suit :
Ouvrez votre fichier avec vi
(ou vim
, gvim
, ...).
Une fois le fichier ouvert, tapez :
:%s/<Ctrl-v><entrée>//g
Pour rendre cette manipulation plutot ingrate automatique, faites en une macro !
Editer votre fichier ~/.vimrc
et ajoutez y la ligne suivante :
map v :%s/<Ctrl-v><Ctrl-v><Ctrl-v><Ctrl-v><Ctrl-v><entrée>//g
Ensuite, lorsque vous ouvrirez un fichier avec des ^M
, il vous suffira de taper v
et <entrée>
.
Cette solution a l'avantage de marcher sur tous les systèmes Unix-like, car vi
(ou un clone) est présent sur tous les systèmes Unix-like.
D'autres solutions possibles :
ghex
, et supprimer tous les 0D
.Syntaxe : dos2unix srcfile destfile
Où dos2unix est le script suivant :
Variante, par Manisero (manisero chez freesurf point fr) :
perl -pi -e 's/\r//g'
fichieramodifier.extension
Accepte les widlcards :
perl -pi -e 's/\r//g' *.c
Voilà un sujet qui inspire beaucoup ici, voici une solution plus conventionelle :
Cette solution est une des plus simples, et moins lourde que d'utiliser perl, awk ou d'écrire un script.
Astuce facile et convi(viale):
debootstrap woody /chroot/ ftp://ftp.fr.debian.org/debian/
/chroot
en utilisant la liste des sources contenue
dans ftp://ftp.fr.debian.org/debian.
urpmi basesystem --root /chroot
sources_list
) dans le
répertoire /chroot
.
(Special thanks à misc, Thauvin Olivier (Nanar) et bien sûr Mosssieeu François Pons pour la version Mandrake :)
eh bien dans /usr/share/doc/leabook-YYYYMMDD
...happy RTFM :)
urpmi leabook
.
La situation est courante, vous vous retrouvez dans un répertoire où se trouvent quelques fichiers, et vous voulez déziper tous les .zip par exemple. Pas besoin pour cela d'ouvrir un éditeur et de faire un script, il suffit de taper :
for i in *.zip ; do ; unzip $i ; done
On peut aussi imaginer :
for i in *.mp3 ; do ; xmms -e $i ; done
qui enqueue dans xmms tous les mp3...
ah le bash....
# adduser <login>
# cp /bin/bash /home/<login>/bin/
/bin/bash
est dépendant de /lib/libncurses.so.5
, /lib/libdl.so.2
, /lib/libc.so.6
et de /lib/ld-linux.so.2
.# ldd /bin/bash | awk '{ print "cp "$3" /home/<login>/lib/" }' | bash
dev
devrait notamment servir à stocker les devices./dev/null
, mais celui ci n'est pas indispensable.
Si vous souhaitez quand même créer ce device, faites comme ceci :# mknod /home/<login>/dev/null c 1 3 -m 666
/home/<login>
;
|
|-- bin
| |
| `-- bash
|
|-- dev
| |
| `-- null
|
`-- lib
|
|-- ld-linux.so.2
|-- libc.so.6
|-- libdl.so.2
`-- libncurses.so.5
/etc/passwd
/etc/passwd
(ou bien votre serveur central, cf: LDAP)
et modifiez les informations "shell" par :/bin/chrootuser
chroot:x:1003:1003:,,,:/home/chroot:/bin/bash
chroot:x:1003:1003:,,,:/home/chroot:/bin/chrootuser
chrootuser
?/bin/chrootuser
# chmod 755 /bin/chrootuser
chmod 4755 /usr/sbin/chroot_suid
.
Idée originale : Anne
Pour sauvegarder :
Puis, pour récupérer ce qui a été enregistré :
c'est le paramètre -f /dev/st0
qui indique à tar d'utiliser le lecteur st0.
Vous pouvez aussi effectuer des actions très pratiques sur vos bandes qui peuvent par exemple être utilisées dans vos programmations de taches automatiques en meme temps que vos sauvegardes comme par exemple la retension des bandes :
mt -f /dev/st0 retension
ou la remise à zéro :
mt -f /dev/st0 rewind
ou l'effacement :
mt -f /dev/st0 erase
... voir man mt
Tout cela en admettant bien sur que st0 soit votre lecteur de bande (cas si vous avez un seul dat branché sur une carte scsi par exemple). Pour tenter de trouver le nom du votre essayez :
dmesg | grep tape
Si cela ne donne rien vérifiez que votre carte scsi est correctement reconnue avec :
dmesg | grep scsi0
si vous compilez votre noyau vous même n'oubliez pas le scsi tape support
dans la rubrique drivers scsi.
Si vous compilez tout cela en modules n'oubliez pas de charger le module (st.o).
Cette astuce est tirée en partie d'une archive de mailing-list de l'aful : http://www.aful.org/wws/arc/educ/1999-05/msg00003.html (trouvée avec les mots-clefs "mt dat linux" dans une recherche francophone avec google)
Bonne sauvegarde !
Cette question revient souvent, voici donc la ligne pouvant monter un lecteur de CDROM simplement.
mount -t iso9660 /dev/cdrom /mnt/cdrom
Pour démonter :
umount /mnt/cdrom
Pour que le montage soit automatique au démarrage, jettez un coup d'oeil à http://lea-linux.org/admin/fstab.php3.
Bonne chance !!
En raison de la transition à un nouveau système de polices basé sur fontconfig/Xft, GTK+ 1.2 les applications Gnome sous RedHat 9 ne sont touchées par aucun changement effectué au moyen du dialogue Préférences de polices.
Pour ces applications (Mozilla, Evolution...), une police peut être configurée en ajoutant les lignes suivantes au fichier ~/.gtkrc.mine
:
Où [spécification-police]
correspond à la spécification de police dans le style utilisé par les applications traditionnelles comme "-adobe-helvetica-medium-r-normal--*-120-*-*-*-*-*-*".
Voici la solution que j'ai trouvée, et qui fonctionne chez moi :
Il faut créer un fichier .Xmodmap
à la racine du répertoire utilisateur (ex: /home/toto/.Xmodmap) et y insérer la ligne suivante:
Dès la prochaine connexion de l'utilisateur, ce dernier retrouvera le point avec la touche '.' du pavé numérique et d'insérer une virgule en combinant les touches shift + '.' du pavé numérique...
Suggestion de Dimitri ROBERT :
Cette manip fait en sorte que cette touche ne produise que des points, que le pavé soit verrouillé ou non. La virgule nécessite l'appui simultané de Shift. En revanche, le comportement Delete passe à la trappe.
Il vaudrait mieux faire ceci :
keycode 0x5B = KP_Delete period
Donc, remplacer KP_Decimal par period, vu que KP_Decimal est mal interprété.
Pour voir les codes renvoyés par toutes les touches, consultez le fichier /etc/X11/xkb/symbols/us pour la base du clavier et /etc/X11/xkb/symbols/fr pour les spécificités de nos claviers
Pour éviter la lecture fastidieuse des pages de manuel dans un terminal, on peut taper man:commande
dans konqueror : les pages ont alors une belle mise en forme et sont même en couleur !!!!
(fonctionne avec kde 3.1)
Il arrive parfois que le mode vga = extended
de lilo ne soit pris en compte que pendant un certain temps au démarage.
Pour avoir le mode vga = extended
en mode console, il suffit d' éditer les fichiers
/etc/rc.d/init.d/keytable
et
/etc/rc.sysinit
Mettre en commentaire le chargement des sysfont.
On redémarre et hop problème résolu ! (problème rencontré sur ma redhat 8.0)
Il arrive que votre système soit installé par défaut en mode console avec un clavier anglais (qwerty au lieu de azerty). C'est génant, surtout pour les mots de passe...
Pour configurer correctement votre clavier (testé sous Mandrake Linux 8.2 uniquement):
Vérifier que vous avez bien le fichier :
fr-latin1.kmap.gz
installé sous :
/usr/lib/kbd/keymaps/i386/azerty
Si oui, éditer le fichier :
/etc/sysconfig/keyboard
et remplacer :
KEYTABLE=us-latin1
par :
KEYTABLE=fr-latin1
Enregistrer, redémarrer, et le tour est joué...
On dit souvent qu'il est très difficile de changer le nom du superutilisateur (root), cela dit il existe une astuce pour qu'il apparaisse avec un nom différent dans les consoles.
Pour cela, on édite les fichiers /etc/passwd
et /etc/shadow
.
Au départ, on a les lignes :
root:x:0:0::/root:/bin/bash
(...)
dans /etc/passwd
et
root:MDP_crypté_du_root:11631:0:::::
(...)
dans /etc/shadow
Or le shell, pour afficher un nom de login cherche le
premier login de /etc/passwd
correspondant a son
UID. En mettant donc AU-DESSUS dans /etc/passwd
un utilisateur d'UID 0 et de nom différent, on verra
apparaître le root sous ce nom là :
/etc/passwd
:
Ici root s'appellera Jah ;)
Il ne faut pas oublier de mettre un mot de passe a Jah dans /etc/shadow
:
Et voilà !
On teste :
Ça a fonctionné, et les applications comme su
qui font appel au root fonctionneront de façon transparente sans qu'on ait eu a éditer les sources ;)
NDM: ça ne change rien au fait que se logguer en tant que root sur une machine est dangereux, ne le faites qu'en cas de nécessité.
Pour faire reconnaître tous vos lecteurs et graveurs IDE avec les front-ends de gravure et pouvoir faire de la copie de cd à cd voici la démarche à suivre.
/boot/grub/menu.lst
et rajoutez la ligne en gras:
/etc/lilo.conf
et ajouter la ligne
/etc/fstab
), éditez les lignes de votre lecteur et de votre graveur:
/dev/cdrecorder
/dev/sr0
/dev/sr1
/dev
/dev/cdrecorder
et /dev/dvd
(qui pointaient vers les anciens périphériques) ainsi que /dev/cdrom
car ils ne servent plus à rien (ou laissez-les si vous le voulez)/dev/sr0
comme périphérique.Lancez votre front-end, maintenant vous pouvez vous servir de votre lecteur de cd sans pbs pour faire de la copie de cds à cds et vous pouvez monter directement avec les icônes respectifs.
Sous RedHat 8.0, l'affichage des accents ainsi que leur écriture peut poser quelques problèmes. Ceci est dû au fait que l'encodage par défaut a changé pour utf-8 (unicode)...
Pour afficher correctement les accents sur RedHat 8.0, il suffit de modifier cet encodage par défaut :
Pour celà, éditez le fichier /etc/sysconfig/i18n
à l'aide de votre éditeur préféré.
Lancez par exemple vi en lignes de commandes:
# vi /etc/sysconfig/i18n
Remplacez la ligne :
LANG="fr_FR.UTF-8"
par celle ci :
LANG="fr_FR@euro"
Sauvegarder et quitter (ESC, ":wq
").
Ensuite, pour les applications Perl, lancez la commande:
# localedef -f ISO-8859-1 -i fr_FR fr
si vous utilisez glibc...
Si toutefois vous continuez à avoir des problèmes, notamment lors du lancement de programmes PERL, et recevez ce type d'erreurs (sans conséquence):
ftp://rpmfind.net/linux/redhat/7.3/en/os/i386/RedHat/RPMS/locale_config-0.3.4-2.i386.rpm
# rpm -i locale_config-0.3.4-2.i386.rpm
# locale_config
Choisissez votre langue par défaut et le tour est joué !
C'est tout! Il vous suffit alors de redémarrer le système (# reboot
), et tous les accents réapparaîtront normalement ;-)
Pour envoyer un mail en console rien de plus simple :
mail -s "ceci est le sujet" destinataire@domaine.org
puis il faut taper le texte (et finir par CTRL+D)
Encore plus fort envoyer un fichier , résultat d'une sauvegarde par exemple ...
cat fichier | mail -s "ceci est le sujet" destinataire@domaine.org
Ceci à la fin de la sauvegarde et hop ! On sait automatiquement que c'est bon.
tuxement votre
-*- Drinou -*-
Vous en avez marre d'avoir des shells avec des grosses barres autour!
Au lieu d'afficher votre fond d'écran avec bsetbg ou bsetroot
, il faut lancer votre fond d'écran avec Esetroot
:
Esetroot -f(fullscreen) -s(scale) -c(center) /home/.../image.jpg
Esetroot
est le seul à activer la transparence sous X : xchat en transparent c'est mieux, non? ;)
Puis pour Eterm, lancer par exemple:
"Eterm -f green -b black -O --shade 25 --utmp-logging -x -w=0 --scrollbar=0 --buttonbar=0 -g 70x10x0x0}"
Et voilà! Eterm le plus simplement!
Bien sur, vous allez tuez le shell donc il reste à exécuter :
nohup Eterm -f green -b black -O --shade 25 --utmp-logging -x -w=0 --scrollbar=0 --buttonbar=0 -g 70x10x0x0} &"
Il est une chose fort peu connue, KDE offre son gestionnaire d'impression à toutes les applications.
Il suffit de préciser kprinter
ou kprinter --stdin
(ça dépend du programme) comme imprimante en lieu et place de lpr
ou lpr -Pmonimprimante
.
Ce programme ouvre alors une fenêtre permettant de choisir l'imprimante ainsi que les paramètres d'impression, puis lance l'impression de façon habituelle.
Vous devez taper 'zindozs' au lieu de 'windows' au prompt de LILO et ça vous dérange ? (moi j'aime bien ;)
Pour passer LILO en clavier AZERTY français, il faut insérer au début de /etc/lilo.conf
la ligne suivante :
keytable=/boot/fr-latin1.klt
et copier le fichier fr-latin1.klt
ci-joint dans /boot
.
Bien sûr, ne pas oublier de relancer /sbin/lilo
après avoir modifié /etc/lilo.conf
...
Il est possible de garder sa machine à l'heure assez simplement ! Pour cela il suffit d'utiliser les commandes ntp
, ce qui signifie Network Time Protocole.
Rien de plus simple à utiliser. Une fois connecté à l'Internet, lancez, en root la commande suivante :
ntpdate nom-serveur-ntp
Si cela ne marche pas et que vous passez par un firewall, vous pouvez essayer :
ntpdate -u nom-serveur-ntp
Vous pouvez mettre cette commande à la fin du script shell qui vous sert à vous connecter à Internet.
Il se peut que ntpdate
ne soit pas installé sur votre distribution. Cherchez le package sur les CDROMs d'installation ou pour :
Debian (deb)
RedHat/Mandrake/Suse (rpm)
Slackware (tgz)
Et les sources
De plus, pour ceux qui ont une connexion Internet permanente, penchez-vous sur le daemon ntpd
. Et lancez le avec inetd
ou xinetd
.
Voici des listes des serveurs ntp :
en France
dans le monde
Copiez ces serveurs (un par ligne) dans le fichier /etc/ntp/ntpservers
.
Voilà, c'est simple non !? :-)
Complément de Nicolas : en installant le package NTP, sur mandrake, NTP se met automatiquement en tant que service. Donc il est lancé à chaque démarrage. Par-contre, il n'est pas configuré. Editer (en root) le fichier /etc/ntp.conf
. Chercher une ligne commençant par # server. Décommentez-là en enlevant le # et mettez :
server nom_du_server_NTP
Vous pouvez trouver une liste de serveurs à l'URL suivante : http://www.cru.fr/NTP/serveurs_francais.html ou sur www.ntp.org. Ensuite sauvez le fichier. Maintenant il faut juste relancer le service. En root tapper :
service ntp restart
Voilà c fini ;-) Allez, soyez à l'heure c'est pas dur !
Complément de Patrice : pour donner suite à la remarque de Nicolas, avec la Mandrake 9.1 et le package ntp-4.1.1-2mdk.i586.rpm
(ce que j'ai), il n'y a pas fichier à configurer (ntp.conf
). Tout se fait tout seul...
Si il n'y a pas de Firewall... SINON :
Il faut ajouter les deux règles suivantes pour établir une connection sur le port 123 UDP, ainsi que la réception du serveur.
tun0
ou ppp0
, etc selon votre connection internetOn peut aussi utiliser rdate
:
rdate -s ntp.unice.fr
par exemple.
Plus d'infos ici : http://www.boulder.nist.gov/timefreq/service/its.htm
Un Xterm possède trois menus. Pour y accéder il suffit de maintenir la touche Control enfoncée et de clicker sur la fenêtre de l'Xterm.
Ctrl + click gauche : ouvre le menu Main Options (19 choix).
Ctrl + click centre : ouvre le menu VT Options (25 choix).
Ctrl + click droit : ouvre le menu VT Fonts (11 choix).
Ces menus vous permettent d'activer ou de désactiver simplement la barre de défilement ou le mode video inverse, de modifier la taille de la police et d'accéder à un bon nombre d'options qui me sont assez mystérieuses ... Je n'en dirai donc pas plus.
Le fichier /etc/inittab
, fichier de configuration de init, vous permet de choisir le mode de démarrage par défaut de GNU-Linux. Ainsi pour de nombreuses distributions la ligne :
id:3:initdefault:
correspond à un démarrage en mode texte et il suffit d'y remplacer le 3 par un 5 pour démarrer en mode graphique. Ceci a l'avantage d'automatiser la procédure de démarrage mais à l'inconvénient d'en fixer le mode a priori.
Rien ne vous empêche toutefois de neutraliser cette ligne en lui donnant le statut de commentaire. Elle devient alors :
# id:3:initdefault:
Si vous procédez ainsi, à chaque démarrage, le démon init affichera le message suivant :
Enter runlevel :
Il ne vous restera plus qu'à entrer le numéro du mode de démarrage que vous souhaitez et à valider.
Il existe un utilitaire pour cela : /sbin/fuser
Par exemple, tapez :
/sbin/fuser -v /dev/dsp0
pour savoir quels sont les processus qui utilisent votre carte son,
/sbin/fuser -v /mnt/cdrom
Pour savoir quels sont les processus qui vous empêchent de démonter votre lecteur de cdrom.
Ajout de Jean-Thomas MUYL (maston28)
Vous pouvez aussi utiliser l'option -k
à la place de -v
, pour tuer automatiquement les processus en question...
Le problème : vous avez une imprimante correctement installée, tout les scripts par défaut, et pourtant quand vous faites :
lpr image.jpg
ça ne marche pas ! Rien ne sort de l'imprimante !
Et bien, vous avez le même problème que celui que j' ai eu ;)
Tout d'abord, vous devez compiler et installer gnu-gs-5.50jpeg.tar.gz
. Attention, même si le nom une fois décompressé est le même que le libjpeg
de votre distribution, ce n'est pas du tout la même chose. N'oubliez pas le make install
;)
Bien tout est maintenant correct, mais ça ne marche toujours pas ?
vi vi c' est normal.
Tout ce qui doit être imprimé, doit être convertit en postscript (toutes imprimantes, même DeskJet).
Pour le jpeg c'est djpeg
qui s'en charge, le problème c'est que celui-ci est dans /usr/local/bin
qui, je vous le rappelle, n'est pas par défaut dans le PATH
, donc il suffit de faire un p'ti
ln -s /usr/local/bin/djpeg /bin
et, là miracle lpr image.jpeg
marche du tonerre (surtout avec une hp 930c :) ).
Voili, Voila ... Have a lot of Fun .
(c) 2001 BRARD Emmanuel, license FDL .
Lors de l'installation de la Mandrake, la commande gcc est en fait un lien symbolique vers un fichier binaire au doux nom de gcc-<version> (NRLR: /usr/bin/gcc-2.96 sur une mandrake 8.0 Freq).
Donc, pour réactiver gcc, on peut taper :
ln -sf /usr/bin/gcc-2.96 /usr/bin/gcc
(idem avec g++)
Simplement, lorsque vous voulez redémarrer un service après avoir modifié un fichier de configuration quelconque :
au lieu de faire par exemple (en root bien sûr ! ) "/etc/rc.d/init.d/sound retstart
"
vous faites seulement "servive sound restart
". Et hop, le tour est joué ! C quand même plus rapide :o)
La mémoire du pingouin est multiple et il peut être un véritable éléphant ! ;-)
D'abord, il y a la RAM, puis la SWAP, qui est une partition du disque dur ou un fichier (plus souple, mais moins performant). Linux peut gérer plusieurs zones de SWAP, partitions et fichiers mélangés.
Toute la mémoire à la disposition de Linux (RAM + SWAP + SWAP...) est gérée de façon transparente.
Linux réserve de la mémoire pour le noyau, les programmes indispensables et les applications, puis il utilise le reste comme un cache (buffers cache).
Dans ce cache, il charge les informations utiles au fur et à mesure jusqu'à remplir la RAM. Puis il remplace les informations devenues inutiles, la SWAP étant utilisée s'il ne peut rien remplacer.
Il est donc normal que presque toute votre RAM soit toujours utilisée.
Histoire d'enfoncer un peu plus le clou, il est fortement conseillé de déclarer une taille totale de SWAP égale à 2 fois celle de la RAM.
Pour savoir de quelle mémoire dispose votre Linux, rien de plus simple :
free -mt
=> vous indiquera la mémoire totale, la mémoire physique (RAM) et la SWAP en Mo.
Par exemple, cela donne :
Notez que la fonction free
grapille quelques Mo sur la RAM suivant les options que vous utilisez. Pour avoir un décompte exacte de la RAM d'une facon sympa, faites :
linux_logo
=> Il y a une surprise ! :-)
Entre autres, vous avez aussi la commande :
top
=> qui affiche l'utilisation de la mémoire par processus et des pourcentages d'utilisation en temps réel.
Suite à ces commandes vous pouvez vous apercevoir que Linux n'utilise pas toute votre RAM,
Pour les commandes suivantes, il faut être root.
Si votre ou une de vos partitions SWAP n'est pas prise en compte automatiquement, alors sachez que c'est le fichier /etc/fstab
qui gére l'utilisation des différentes zones de swap.
La ligne correspondante à la SWAP ressemble à ceci :
/dev/hda2 swap swap defaults 0 0
=> c'est ce que j'ai dans mon fstab. Ou
/dev/hda2 none swap defaults 0 0
=> marche aussi d'après le man.
Pour ajouter une zone de SWAP, il faut la créer et ajouter une ligne similaire dans /etc/fstab
en remplacant "hda2
" par la bonne valeur. "hda2
" étant la 2ème partition du 1er disque dur.
Pour activer la SWAP : swapon
et pour la désactiver : swapoff
, avec l'option "-a
" cela affecte toutes les zones de SWAP déclarées dans le fichier /etc/fstab
.
Pour surveiller toute la SWAP, faites :
swapon -s
=> le résultat ressemble à ceci :
Note : L'option "s
" ne marche pas avant le Kernel 2.1.25.
Pensez à regarger le man
avant de jouer avec la SWAP !
Voilà pour la mémoire de notre pingouin.
Ce T&A a été écrit par Philippe, Marc et Jonesy.
Voici le petit frère du T&A "Ctrl + Alt + Del"
Regardez dans votre fichier /etc/inittab
si vous avez deux lignes qui ressemblent à celles-ci :
Si oui, cela signifie qu'en mode console (pas xterm) si vous appuyez sur Alt + Flèche_Haut, "Bla bla bla" s'affiche à l'écran.
Si non, rien ne vous empêche d'ajouter ces lignes pour obtenir le même effet.
Si afficher "Bla bla bla" ne vous intéresse pas, changez de texte ou de commande. Par exemple la ligne :
kb::kbrequest:/sbin/shutdown -t3 -h now
provoque l'arrêt du système à l'appui sur les touches.
Ctrl + Alt + Del pour rebooter ; Alt + Flèche_Haut pour arrêter ; plus besoin d'être root pour ces deux commandes, sympa mais attention de ne pas vous tromper !
PS : (mise à jour par Guerizec David - david@guerizec.net)
pour que les modifications du fichier /etc/inittab
deviennent effectives,
il suffit de faire un "killall -HUP init
".
Ce T&A a été écrit par Philippe, Jonesy et Marc.
Souvent la combinaison de touches Ctrl + Alt + Del sert à rebooter lesystème à partir d'une console. Ceci est possible grâce à une ligne du fichier /etc/inittab qui ressemble à ceci :
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
Vous pouvez désactiver cette combinaison de touches, il suffit pour cela de placer un "#" devant cette ligne qui devient :
# ca::ctrlaltdel:/sbin/shutdown -t3 -r now
Vous pouvez aussi modifier cette ligne pour utiliser cette combinaison à d'autres fins. Ainsi la ligne :
ca::ctrlaltdel:/sbin/shutdown -t3 -h now
provoquera l'arrêt du système, alors que la ligne :
ca::ctrlaltdel:/bin/echo "Combinaison désactivée"
affichera "Combinaison désactivée" sur le terminal ...
Ces fichiers contenant une image de la mémoire (DUMP) sont créés lors du plantage d'une application.
A moins d'être développeur, ces fichiers souvent volumineux ne servent à rien, sauf à prendre de la place ;-(
Pour en limiter la taille, utiliser la commande: ulimit -c 0
(-c
pour fichier CORE, et 0 pour la taille).
Pour afficher toutes les limites fixées: ulimit -a
Autre option bien utile pour les programmeurs en phase de test, la limitation de la taille d'un fichier créé par le shell (cela évite la création d'un fichier énorme si le programme boucle en écriture) : ulimit -f taille
Pour plus de détails sur cette commande voir la page man de...bash.
Convertisseur d'extension PHP. Permet de convertir une application PHP téléchargée avec une extension de type phpX en phpY. Par exemple, permet de transcrire une extension de type php4 en php3 (occurences fichiers et extensions de fichiers), sous réserve de compatibilité ascendantes et descendantes des fonctions utilisées.
Le script :
#! /bin/sh
# ---------------
# CONVERTISSEUR D'EXTENSION DE SCRIPTS PHP
# TUX PUNX
# 2001-05-05
# ---------------
# Titre
echo "CONVERTISSEUR php <-> php3 <-> php4 <-> phtml <-> [ou autre...]"
# $1 : extension d'origine
echo "Extension + occurences fichiers à remplacer : $1"
# $2 : extension de remplacement
echo "Par : $2"
# Test de l'existence des paramètres ($1, $2)
if [ $# -lt 2 ]
then
echo "NB paramètre : NOT OK"
echo "Syntaxe : convert [extension origine] [extension de remplacement] "
exit
else
echo "NB paramètre : OK"
fi
# Le paramètre existe. Test de sa validité. A taper...
# On verifie qu'un fichier portant l'extension $1 existe.
# TRAITEMENT : substitution $1 par $2 ; puis changement des extensions des fichiers
cpt=0
for REP in `find -type d` ; do
for i in `ls $REP/*.$1`; do
echo "$i : Traitement en cours..."
# Remplacement des occurences $1 par $2
sed "s/$1/$2/g" $i > $i.temp
cp -f $i.temp $i
rm -f $i.temp
echo "Fichier converti."
# Renomme le fichier NOM.$1 en NOM.$2
rename $1 $2 $i
# Accremente le compteur
cpt=`expr $cpt + 1`
done
done
# Messges Conclusion
echo "Nombre de fichier(s) traité(s) : $cpt."
echo "Conversion OK".
Installation :
On lancera ce script en lui accordant les droits en exécution :
chmod +X convert.sh
Un lien symbolique simplifie grandement son lancement (sur mdk7.2):
ln -sf /Repertoire/Où/Le/Script/Se/Situe/convert.sh /usr/local/bin/convert
Dans une console, placez vous dans le répertoire source (contient fichiers + sous-dossiers à convertir) et tapez :
convert [extension origine] [extension de remplacement]
ex : convert php3 phtml
La commande magique est du
.
les options utiles :
-h
--> affichage "humain" des tailles 2k plutot que 2048 etc ...
--max-depth=N
--> Limiter l'affichage de la taille pour les sous-répertoires de niveau N
Exemples :
Voilà, c'est compris ?
A+
Xavier
Par défaut sous Linux la touche NUM-LOCK est éteinte (même si vous l'activée dans votre BIOS, elle ne sera pas active sous Linux).
Voici comment faire pour l'activer automatiquement
En root bien sûr, éditer le fichier /etc/rc.d/rc.local (il peut se situer ailleurs suivant votre distribution) et ajoutez-y les lignes suivantes (en fin de fichier par exemple) :
Mettez-le en oeuvre et votre touche numlock sera automatiquement activée, le voyant allumé. La méthode présentée ci-dessous est plus basique, et fonctionne moins bien.
Editez le fichier /usr/X11R6/lib/X11/xkb/types/basic
et modifiez les lignes comme ceci (rouge = modif):
Suivant les distribs, les fichiers risquent de se trouver ailleurs.
Pour trouver un fichier, rien de plus simple, faites un :
find -name nom_du_fichier répertoire | grep nom_du_fichier
Vous pouvez utiliser des jokers dans le nom du fichier, dans ce cas, mettez le entre guillemets, par exemple, pour trouver tous les fichiers rc.* dans /etc
:
find -name "rc.*" /etc
Evitez quand même la recherche à partir du répertoire racine (/
) , ca risque de prendre du temps et même de chercher dans les partitions montées telle que les partitions DOS/Windows ou les CD-ROMs. La commande find est très puissante, je vous conseille de faire man find
pour en savoir plus.
Certaines distribs vous proposent de monter automatiquement vos partitions DOS, OS/2, etc. automatiquement. Mais toutes ne le font pas, et beaucoup d'utilisateurs se demandent comment le configurer.
Il vous faut éditer le fichier /etc/fstab
, et ajouter dedans des lignes dont la syntaxe est la suivante (une ligne par partition) :
périphérique point de montage FS auto 0 0 default
Par exemple sur mon disque IDE maître sur le 1er port IDE, j'ai ma partition Windows 98. Je crée alors en premier mon point de montage que je décide (arbitrairement) d'appeler /dos_c, puis j'édite /etc/fstab
et j'ajoute comme ligne :
/dev/hda1 /dos_c vfat auto 0 0 default
Il ne faut pas oublier de créer le point de montage, un simple répertoire vide, par mkdir /dos_c
.
Pour info, voici quelques FS (File System) standards :
/etc/passwd
), car elles sont par défaut en root. Pour ce faire, la ligne dans /etc/fstab
ressemble à :
Pour choisir le mode de démarrage au... démarrage (différent du mode de démarrage par défaut, en général le mode graphique), si vous utilisez :
1. LILO
Lors du boot de l'ordinateur, à l'invite de LILO :
LILO:
Tapez sur la touche
LILO: linux 3
et votre linux démarrera en mode texte ("3" signifie "mode console") ; si cela ne fonctionne pas, vous pouvez essayer de remplacer 3
par single
ou 1
pour démarrer en mode mono-utilisateur (aucune protection). Enfin, 5
signifie mode X
(mode graphique).
5
) peuvent différer suivant votre distribution. Ils sont valables pour les distributions basées sur RedHat (Mandrake et Compagnie).2. LOADLIN
Si vous utilisez LOADLIN, votre ligne de commande doit ressembler à :
C:\>LOADLIN ... root=/dev/hda3 vmlinuz
Il suffit d'ajouter le mode de démarrage voulu (voir les modes dans le paragraphe consacré à LILO) en argument pour le noyau comme suit :
C:\>LOADLIN ... root=/dev/hda3 vmlinuz le_mode
par exemple :
C:\>LOADLIN ... root=/dev/hda3 vmlinuz 3
pour démarrer en mode console.
Merci à Claude Micouin (claude.micouin@free.fr.nospam) pour m'avoir fait pensé à parler de ça ;) et Fred (fred@lea-linux.org.nospam) pour avoir écrit la version originale dans la section "Au secours" des Trucs et astuces.
Pour connaître l'espace disponible, la commande est :
df
.
Exemples :
$ df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 2028098 1603178 320098 83% /
/dev/hda2 5476211 3920429 1442364 73% /home
/dev/hdc 561144 561144 0 100% /mnt/cdrom$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda1 1.9G 1.5G 313M 83% /
/dev/hda2 5.2G 3.7G 1.4G 73% /home
/dev/hdc 548M 548M 0 100% /mnt/cdrom
C'est tout ;)
Si vous voulez faire une démonstration au public, et en réseau, pour permettre aux autres de voir ce que vous tapez dans votre terminal (en temps réel), il suffit de rediriger les sorties de votre terminal vers un fichier (la sortie standard stdout
, sans oublier la sortie d'erreurs stderr
), avec la commande 'tee
', vers le même canal (i.e. un fichier par exemple).
En pratique, vous tapez :
$ bash -iv 2>&1 | tee /tmp/mon_log
Et le public tape ceci :
$ tail -f /tmp/mon_log
-Tout d'abord rpmdrake (se lance via drakconf ou à la main rpmdrake &) gère simultanément des RPMS
de différentes sources (répertoire, CDrom, site FTP).
Si l'on veut installer un RPM, il propose automatiquement (comme Dselect) d'installer les RPMs qui manquent, si du moins il sont dans sa base de donnée. Si on préfère, on peut aussi utiliser la commande en ligne urpmi pour faire cela.
-rpmdrake dispose de fonctions recherche pour rechercher les packages contenant tel ou tel fichier qui sont dans sa base de donnée, ou meme une simple chaine de caractères.
-Au préalable, il faut enregistrer dans la base de donnée toutes les sources de RPMs. Pour les CDs utilisés à l'installation, cela est fait automatiquement. Pour d'autres sources de RPMs, on peut faire cela en utilisant rmpdrake directement ou alors en revenant à la ligne de commande grace à urpmi.addmedia.
-Tout d'abord rpmdrake gère simultanément des RPMS de différentes sources (répertoire, CDrom, site FTP).
Si l'on veut installer un RPM, il propose automatiquement (comme Dselect) d'installer les RPMs qui manquent, si du moins il sont dans sa base de donnée. Si on préfère, on peut aussi utiliser la commande en ligne urpmi pour faire cela.
-rpmdrake dispose de fonctions recherche pour rechercher les packages contenant tel ou tel fichier qui sont dans sa base de donnée, ou meme une simple chaine de caractères.
-Au préalable, il faut enregistrer dans la base de donnée toutes les sources de RPMs. Pour les CDs utilisés à l'installation, cela est fait automatiquement. Pour d'autres sources de RPMs, on peut faire cela en utilisant rmpdrake directement ou alors en revenant à la ligne de commande grace à urpmi.addmedia.
Ex: on scanne les RPMS d'un CD en tapant:
urpmi.addmedia NomduCD removable_cdrom_2:///mnt/cdrom/Mandrake/RPMS
ou dans le menu configuration de rpmdrake, ajouter un emplacement de paquetages. Ensuite on utilise la commande rechercher. Les deux flèches permettent de basculer de la liste des paquetages installés à la liste de tous les RPMs disponibles.
-Enfin, urpmi peut-etre utilisee pour donner l'autorisation à d'autres utilisateurs que root d'installer des RPMs. Extension à manier avec précaution car cela affaiblit la sécurité du système.
NDM : consulter également l'article concernant urpmi.
Configurer inetd.conf est important pour la sécurité du poste en réseau.
En effet, c'est par ce démon que vont être autorisés ou non les services TCP/IP.
Pour ce faire, tapez :
# netstat -a --inet
Ensuite, commentez par le symbole '#' les services qui ne doivent pas être lancés.
Pour valider les changements, rechercher le pid de inetd par : ps -ax | grep inetd
puis valider par :
# kill -HUP
Note du modérateur: je vous conseille aussi de lire la rubrique "sécuriser Linux" du site pour de plus amples informations sur les services, etc...
Dans certaines distributions, le mode de démarrage par défaut est X (mode graphique), ou bien c'est en mode console ou encore on vous le demande lors de l'install.
Le principe est très simple pour changer ce mode par défaut.
Pour cela, éditer le fichier /etc/inittab
et repérer la ligne (vers le début) :
id:3:initdefault:
Il suffit de changer le chiffre entre id et initdefault
par :
3 | Mode texte |
5 | Mode graphique (X Window) |
Attention, pour la slackware le mode graphique est 4 et non pas 5.
En effet, le système envoie tout le temps des messages d'avertissement, d'information, d'alerte etc. Par défaut ils vont dans un fichier. C'est bien, mais quand on a un problème, se taper les 25000 lignes du fichier pour trouver le message d'erreur datant de 10 secondes c'est un peu pénible...
Pour arranger cela on va aussi envoyer ces messages à l'écran, pas question de l'envoyer aussi sur un écran qui nous sert à travailler : c'est pénible de recevoir des messages toutes les secondes à l'écran, mais comme Linux (Unix) est très bien fait avec ses terminaux virtuels, on va envoyer ça sur le terminal virtuel n°8, tty8 (accessible par Ctrl-Alt-F8 ), pour cela :
Editer le fichier /etc/syslog.conf
Copiez toutes les lignes qui finissent par /var/log/message
, en changeant justement le /var/log/message par /dev/tty8.
Une fois ce travail accompli, on va relancer le système de message pour que nos changements soient pris en compte :
tapez : ps -aux | grep syslogd
Une fois le numéro de process de syslogd repéré (le PID), on le relance :
tapez : kill -1 PID
Basculez alors sur tty8 (Ctrl-Alt-F8) et vous allez voir votre premier message système redirigé :
13.23 PM: Syslogd restarted
ou quelque chose du genre.
Maintenant vous pouvez voir tous les messages système en temps réel sur le tty8 en tapant Ctrl-Alt-F8.
Comment personnaliser son installation, les astuces sur les installations des distributions,...
Strasbourg, 09/02/2004 - SlackWare 9.0 dans LifeBook B2610 sans Floppy ni Cdrom par sw.b2610@free.fr
-----------------------------------------------------------------------------------------------------------
Il y a 6 mois j'ai hérité d'un LifeBook B2610 muni de Win98 SE, sans lecteur de floppy ni de cdrom.
Très deçu par Win98, j'ai décidé d'installer Linux:
C:\Slackware
et y déposer par clé usb (par 4 fois avec 128M) de mon desktop (sous Slackware 90) les répertoires
des pkg suivants: /a
/ap
/d
/f
/gnome
/k
/kde
/l
/n
/tcl
/x
/xap
/y
(suis pas fan de Tetex ni Emacs).C:\Loadlin
et y déposer 3 fichiers : loadlin.exec
, bzImage
et initrd.img
.C:\Loadlin
et exécuter : loadlin bzImage rw root=/dev/ram initrd=initrd.img
fdisk
: il s'agit d'un HD de 30Go et quelle chance, il a 2 partions hda1 : FAT32 de Win98 de 12Go
environ et hda2
: FAT32 de DATA environ 16Go. J'ai suprimé /hda2
et créé 2 petites partions (ça peut servir dans le
futur) hda2
, hda3
et une grande extended hda4
hda5
pour /
, hda6
pour /swap
, hda7
pour /home
, hda8
pour /usr/local
. /hda1
et dans le répertoire
/Slackware90
au lieu de cdrom habituellement.loadlin.exec
(déjà installé) déposer vmlinuz
dans c:\Loadlin
et modifier c:\config.sys
avec
un petit menu Win ou Linux avec la commande shell=c:\loadlin\loadlin.exec c:\loadlin\vmlinuz root=/dev/hda5 ro
Drivers-Modules-Options
de X : redémarrer le LifeBook sous Linux sans option hotplug : chmod 644 etc/rc.d/rc.hotplug
(on est jamais aussi bien servi que par soi-même) sinon le moyau va détecter pour le LAN un chip RTL-8139C
et va installer 8139cp.o
qui ne
marche pas !
HorizSync 30-50
VertRefresh 40-100
Modeline "1024x768" 65.00 1024 1048 1184 1344 768 771 777 806 -hsync -vsync
Driver "ati" VideoRam 8192
lbtouch-0.7.4.tar.gz
de http://conan.de
(pas très stable, de temps en temps ça dérive complètement...). Et v'là.......ça tourne plus vite qu'avec Win98 !
J'ai voulu modifier la résolution du bootsplash (qui est en 800x600 par défaut) ainsi que le thème utilisé (qui est moche à force).
Comme j'ai un écran 22" 4/3 et que le 1600x1200 n'est pas supporté par le Framebuffer, je me suis contenté du 1024x768, et c'est déjà beaucoup plus joli que le 800x600 d'origine :)
J'en ai d'ailleurs profité pour changer le thème (penser à installer les paquetages de thèmes bootsplash, notamment bootsplash-themes et plf_theme. Comme la procédure n'a pas été si évidente, voici comment faire :
1°) Changer la résolution d'affichage du framebuffer :
éditer /etc/lilo.conf
et modifier la résolution en affectant une valeur à vga=
en se référant au tableau suivant :
Numéros des modes graphiques VESA
Couleurs | Résolution | ||||
---|---|---|---|---|---|
640x480 | 800x600 | 1024x768 | 1280x1024 | 1600x1200 | |
256 | 769 | 771 | 773 | 775 | 796 |
32768 | 784 | 787 | 790 | 793 | 797 |
65536 | 785 | 788 | 791 | 794 | 798 |
16,8M | 786 | 789 | 792 | 795 | 799 |
Par exemple, pour du 1024x768x16, il faut vga=791
S'assurer également que le append=
de lilo.conf
contient également l'une des lignes suivantes :
splash=silent
(pour afficher le thème silencieux par défaut)
splash=verbose
(pour afficher le thème verbeux par défaut)
splash=0
(pour ne pas utiliser le bootsplash)
2°) Changer le thèmes bootsplash
Se rendre dans le répertoire du bootsplash et utiliser les outils à disposition :
switch-themes Nom_thème
pour changer de thème
switch-themes -l
pour avoir la liste des thèmes disponibles
switch-themes -c
pour afficher le thème sélectionné
Commande à effectuer :
/usr/share/bootsplash/scripts/switch-themes Nom_thème
Par exemple pour le thème Linux
/usr/share/bootsplash/scripts/switch-themes Linux
3°) Refaire l'initrd
L'image au boot du kernel se trouvant dans l'initrd
, il convient de le recréer pour que le changement de thème soit effectif, il faut taper la commande suivante :
mkinitrd -f /boot/initrd-$(uname -r).img $(uname -r)
La commande /usr/share/loader/make-initrd
est sensée produire le même résultat d'après ce que j'ai pu lire sur certains forums :)
Il est encore possible de paramétrer certaines choses en modifiant le fichier /etc/sysconfig/bootsplash
, notamment activer ou désactiver l'affichage du bootsplash dans les consoles (LOGO_CONSOLE=yes|no
, etc... :)
Comment régler les problèmes dûs au cd recovery system pour installer une mandrake avec un Windows XP (sur un compaq presario 2528EA, peut-être cela fonctionne-t-il sur toute la gamme presario mais je n'ai pas encore pu le vérifier)
Vous avez dû remarquer que le cd recovery system formatte tout le disque dur et si on le laisse redémarrer sous Windows, un script de partitionnement se lance pour étendre la partition Windows sur tout le disque dur. En utilisant l'outil de partitionnement de Mandrake 9.1. pour redimensionner la partition Windows, celui-ci ne se lance plus, malheureusement pour avoir l'offre logiciel qui est achetée avec le portable il faut passer par le cd recovery system. Je vais vous expliquer comment j'ai installé les deux systèmes d'exploitation sur le disque dur.
Avant toute opération, SAUVEGARDER VOS DONNÉES, car les opérations qui suivront vont formater totalement le disque dur.
Tout d'abord, préparer les disques de Mandrake-linux 9.1 et du recovery system à coté de vous, lancer l'ordinateur avec le cd du recovery system et suivez les instructions jusqu'à la fin de la copie des images sur le disque dur, faites bien attention à la fin de cette opération car il faudra être rapide pour la manipulation qui suit.
Quand le programme a fini de copier les images du disque dur depuis le cd, il va redémarrer l'ordinateur. Au redémarrage, taper sur la touche [échap]
avant qu'il ne lance Windows (écran Compaq), ceci est très important, autrement un script de partitionnement sera lancé et la manipulation précédente sera à refaire.
Une fois sur le menu de choix de périphérique de démarrage, mettez le cd d'installation de Mandrake et choissisez le lancement d'un système à partir du cd.
Dans le premier écran de l'installation de Mandrake appuyer [F1] et à l'invite boot, tapez linux noauto
(l'installation de Linux plante au moment de la détection à cause de l'ohci. Malheureusement, désactiver la prise en charge USB légué dans le BIOS ne suffit pas à enlever le blocage. Si vous avez des informations là-dessus prévenez-moi. Le noauto empêche ce blocage). Suivez les instructions jusqu'au partitionnement.
A l'étape de partitionnement, choisissez le partitionnement personalisé. Et commencez à partitionner pour linux à partir d'où vous voulez que s'arrête la partitions Windows (passer en mode expert), ne redimensionnez pas la partition Windows car vous aurez un bug entre la taille de la partition et la taille donnée sous le poste de travail. Je vous conseille de passer en mode expert, de créer une partion FAT32 (pour l'échange de données) qui commence à 19350 Mo et fini à 20000 Mo, choisissez l'espace libre qui suit la mini-partition et choisissez le partitionement automatique simple.
Continuer l'installation de linux juqu'au reboot.
Sur Lilo vous avez le choix, soit vous configurez linux, soit vous configurez Windows.
Si vous êtes sous Windows, laisser le programme d'installation de Windows faire son travail. Les programmes fournis avec l'ordinateur s'installe avec software setup.
Si vous êtes sous linux, il restera le modem à configurer. Actuellement Linuxant (réalisateurs des pilotes des winmodems Connexant) fait payer ses pilotes pour Linux, je vous conseille de trouver une version beta qui fonctionnera sur l'ordinateur à la condition d'avoir désactivé les modules concernant le son.
La question est récurrente, où vont donc se nicher les applications installées via RPM ?
/usr/bin
ou dans /usr/sbin
.
Vous voulez installer une distribution du style Slackware mais vous n'avez pas envie de partitionner avec fdisk (trop compliqué, je suis d'accord ;-) . Il existe une solution simple : procurez-vous un CD1 d'une Mandrake et bootez dessus. Allez jusqu'à l'étape du partitionnement. Redimensionnez graphiquement vos partitions (même les NTFS depuis la 9.1) et créez-en de nouvelles, puis écrivez la table des partitions et formattez celles que vous avez créé. Puis appuyez sur le bouton Reset de votre PC et lancez l'installation de Slackware. Vous n'avez plus qu'à choisir une installation depuis des partitions existantes...
Les puristes n'apprécieront pas, mais c'est bien utile pour un débutant !
Malgré ce que disent les documentations, il peut y avoir des problèmes lors de l'installation de KDE 3.1 (conflits de paquetages, librairies non reconnues, etc...). Voici comment j'ai procédé :
Note de Jice : il suffit d'installer la Mandrake 9.1, KDE 3.1 est dedans... De plus, cette méthode me semble assez bourin : pour installer KDE 3.0 sur une Mandrake 8.2, j'ai simplement mis les rpm de KDE 3.0 dans un répertoire (sauf les -devel), et fait un urpmi *
dessus. KDE 3.0 était disponible après avoir redémarré une nouvelle session graphique. Cela fonctionnait car KDE 3.0 s'installait à coté (dans /opt) et non par dessus KDE 2.
Il arrive de temps en temps, qu'après l'installation d'une distribution GNU/Linux, on veuille agrandir une partition ou changer un point de montage.
Dans le cas suivant, je pars de l'exemple où vous avez installé tout le système sur une seule partiton et que vous aimeriez mettre le /home sur une autre partition.
Le plus délicat ici, c'est de libérer une partition existante sur votre disque ou de créer une nouvelle partition sans détruire celles que vous voulez garder.
Je ne peux pas vous aider à choisir quelle partition existante à libérer. Mais pour redimensionner les partitions exsitantes afin d'en créer une nouvelle, sachez qu'il existe des utilitaires comme parted (Libre) sous GNU/Linux ou des produits propriétaires comme le célébricime Partition Magic.
Donc après avoir libéré ou créé une partition sur hdb, par exemple. Procédons pas en pas :
Rebootez sous GNU/Linux en init 3.pour ce faire, au prompt de lilo tapez :
Linux init 3
Ici, 'Linux' est le label de votre système GNU/Linux.
Loggez-vous avec un utilisateur normal, puis en root en faisant : su - root
Nous allons formater, vérifier et configurer cette nouvelle partition :
mke2fs -j /dev/hdbX
e2fsck /dev/hdbX
tune2fs -c 24
Où 'X' est votre future partition /home. De plus l'option -j de mke2fs formate la partition en EXT3.
La dernière commande indique que la partiton sera vérifiée automatiquement tout les 24 montages.
Nous allons monter cette partition sur un point de montage temporaire :
mkdir /mnt/home
chmod -R a+rwx /mnt/home
mount /dev/hdbX /mnt/home
Afin de mettre le contenu du /home dans le /home temporaire :
mv /home/* /mnt/home
Donc normalement /home est vide et /mnt/home contient tout le /home, ce qui nous arrange pour la suite.
Afin de poursuivre, il faut démonter le /home temporaire :
umount /mnt/home
Il faut maintenant modifier le fichier /etc/fstab afin de définir le nouveau point de montage.
Editez-le et ajoutez une ligne du genre :
/dev/hdbX /home ext3 defaults 1 1
Essayons de monter le nouveau /home :
mount /dev/hdbX
Et voilà ! Il ne reste plus qu'à rebooter en mode normal.
Note : Vous pouvez appliquer cette méthode pour n'importe quel répertoire, comme /usr/local, et quelque soit l'état d'encombrement de votre système. Car elle ne réclame pas d'espace disque supplémentaire.
... depuis le CD de sa distribution ...
Ou comment installer une distribution quand son pc refuse de booter sur le CD-Rom.
Sur le cd de votre distribution linux se trouve plus que surement un utilitaire "DOS et/ou Windows" nommé "rawrite.exe". Cet utilitaire sert à copier une "image" de disquette. Vous trouverez aussi des images de disquette de boot, souvant dans le répertoire "D:\images\" du CD, ces images ont des noms se terminant par ".img", comme "boot.img".
Supposons que "rawrite.exe" soit dans le répertoire "D:\dosutils\", que les images soient dans "D:\images\", et que vous souhaitiez utiliser l'image "boot.img" de ce répertoire. Voilà, alors comment procéder, depuis une fenêtre de commandes MS-DOS :
C:\> d:
D:\> cd \images
D:\images> ..\dosutils\rawrite
Enter disk image source file name: boot.img
Enter target diskette drive: a:
Please insert a formatted diskette into drive A: and press --ENTER-- :
Et voilà, vous avez en votre possession une belle disquette de boot pour installer votre linux tout frais.
Installez d'abord le logiciel root-tail
Une fois installé, connectez-vous en root et essayez ceci:
root-tail -g 100x25+0+400 -font fixed /var/log/message,green var/log/secure,red,'ALERT'
(vous pouvez remplacer /var/log/message par /var/log/xferlog, vous verrez qui fait quoi en ftp).
Tuez le shell qui lancer root-tail, ça continue
:)
Une info au sujet de Demolinux. Je l'ai téléchargé la semaine dernière pour effectuer une install de 10 DD, constitués de win98 et une redhat. Apres avoir fait une install type sur un disque dur avec les programmes (openoffice, scilab,...etc), j'ai installé mes disques durs tout fraichement sortis de leur emballage pour les installer sur 5 PC. J'ai ensuite gravé 5 CD Demolinux. Puis, après avoir récupéré l'exécutable de netcat. Je l'ai installé sur Demolinux. Ensuite tout a été très "vite", le 1er disque du 1er PC a été copié sur le 1er disque du 2eme pc. Puis sur le 1er PC a été copié le 2eme disque local. Pendant ce temps, le PC 2 a transféré la copie qu'il venait de recevoir au PC 3. Une fois ceci terminé, le PC 2 a copié son disque sur le second local et ainsi de suite jusqu'au 5eme....
Voici le détail des actions :
Il s'agissait de disques dur de 30 Go neufs. Quant aux machine, c'était des PII 450Mgz avec 64 de RAM. Temps total d'installation : 15 h environ. Tout fonctionne à merveille, après config du réseau.
Conclusion : c'est vraiment beaucoup de temps gagné pour ce type de manipulation... Et oui, j'ai pu passer une bonne nuit pendant ce temps ;o)
Si vous souhaitez désinstaller Linux, voici quelques conseils.
D'une façon générale, utilisez de préférence les outils Linux pour ce qui concerne Linux et les outils Dos pour ce qui concerne le Dos. Pour supprimer les partitions Linux et rétablir votre MBR choisissez une des trois méthodes suivantes.
Méthode 1 : difficulté variable, coût nul.
A partir du Dos rétablissez le MBR avec la commande : fdisk /mbr.
Procédez ensuite comme si vous souhaitiez (ré)installer votre distribution Linux. Poursuivez cette installation jusqu'à l'étape de partitionnement lors de laquelle vous en profitez pour supprimez vos partitions Linux (et éventuellement (re)créer des partitions Dos). Rendez effectif ce nouveau partitionnement puis quittez l'installation. Redémarrez votre ordinateur, tout doit être rentré dans l'ordre.
Cette méthode dépend de votre distribution et de ses outils de partionnement. Je ne peux donc la détailler plus ni même vous garantir qu'elle soit possible avec votre distribution. Si vous ne pouvez l'appliquer utilisez la méthode 2 ou 3.
Méthode 2 : difficulté moyenne, coût nul.
Procurez-vous une mini-distribution du type TOMSRTBT. Si vous ne savez pas ce que c'est ou comment l'utiliser, lisez l'article de Léa à ce sujet. Démarrez votre ordinateur à l'aide de cette mini-distribution puis une fois que vous avez le prompt entrez :
fdisk /dev/votre_disque_dur (exemple /dev/hda pour le premier disque dur IDE, /dev/hdb pour le second, etc.)
Les commandes dont vous pouvez avoir besoin ici sont :
m : affiche l'aide
p : affiche la table des partitions
d : supprime une partition
w : écrit les modifications et quitte
q : quitte sans écrire les modifications (si vous aviez soudainement des regrets :-)
Pour supprimer une partition vous entrez donc d, vous validez, puis vous entrez le numéro de la partition à supprimer. Vous procédez ainsi pour chaque partition Linux que vous voulez supprimer. Si vous hésitez sur les numéros des partitions, utilisez la commande p. Une fois que vous avez terminé quittez en entrant w.
Vous pouvez maintenant quitter définitivement Linux et redémarrer sous Dos. Pour rétablir le MBR et créer vos partitions Dos utilisez le programme fdisk du Dos. Pour restaurer le MBR et donc supprimer le chargeur Linux que vous y aviez installé, un simple fdisk /mbr suffit (notez que si vous le souhaitez, vous pouvez faire ceci avant de supprimer vos partitions Linux). Pour le reste, il s'agit de l'utilisation d'un programme Dos dans un cadre Dos, il vaut donc mieux vous reporter aux informations des sites sur ce sujet plutôt qu'à celles d'un site sur Linux.
Méthode 3 : difficulté faible, coût élevé.
Si vraiment rien de ce qui précède ne vous convient, vous trouverez chez votre revendeur habituel, et pour quelques centaines de francs, des programmes simples et performants, normalement dotés d'un manuel d'utilisation auquel vous n'aurez qu'à vous référer.
Merci à P* (puisse cet anonymat relatif préserver son honneur de Linuxien ;-) pour ses précieux conseils.
Voilà, un jour, on a voulu installer la mandrake 7.2, on fait une installation personnalisée, et vogue la galère, on installe et on configure le système.
Mais là, certains d'entre vous auront peut-être envie de ne pas prendre grub comme chargeur (cf lilo et loadlin)(pris par défaut), mais lilo.
Alors, on procède à l'installation de linux comme on a l'habitude (mode personnalisé) et on arrive à l'écran où on paramètre le chargeur. Ici, on ne continue pas, mais on va remonter dans les étapes de l'installation. On clique sur l'icône à coté de "Choix du type d'installation". On choisit, cette fois si, "Expert". On répond Expert à la question qui est ensuite posée, et, Oh miracle, on se retrouve avec le choix entre lilo et grub !!!
On peut faire pareil pour le serveur graphique : on peut alors choisir entre Xfree 3.3.6 et Xfree 4.01 (Attention : uniquement valable pour la Mandrake 7.2).
Si on a du courage, on peut se faire toute l'installation en mode expert, on a ainsi accès à plein d'autre options. Mais ATTENTION : ceci est risqué, car comme le dit l'aide pendant l'installation, on aura à répondre à des questions vraiment incompréhensibles pour les non experts que nous sommes !!!
Voilà, l'astuce est terminée.
Pour tout commentaire ou rectification, n'hésitez pas à me contacter : Pierrick-BERGER@ifrance.com
PS :
Cette astuce fonctionne aussi avec la Mandrake 8.0.
Encore une bonne nouvelle ! :o)
Ayant depuis peu la dernière des dernières version de la mandrake 8.0, à savoir la Freq 2 (MandrakeFreq-20010619), je confirme qu'encore on peut utiliser mon astuce!
Cette fois ci, on aura par exemple le chois entre XFree 4.1.0 et Xfree 3.3.6 .
On pourra aussi choisir le kernel 2.4.5
...
Il y a aussi des amélioration au niveau de la détection des périphériques...
Enfin, le freq2 est une distribution avec pratiquement tous les derniers trucs !!
Voilà, bonne chance avec l'installation :o)
Pierrick
Installation Apache/php/gd/jpeg/png/zlib/freetype1 avec une slackware 7.1 toute fraîche mais avec les packages devel installés les libs jpeg/png/zlib sont installées et apache également, dans /var/lib/apache.
La procédure qui suit a été menée avec le package apache fournie avec la slack7.1
Télécharger freetype1.3.1 chez www.freetype.org, gd1.8.4 chez www.boutell.com/gd/, php4.0.4pl1 chez www.php.net, mettre les tar.gz dans /usr/local/src
cd /usr/local/src
tar xfz freetype-1.3.1.tar.gz
cd freetype-1.3.1
./configure --prefix=/usr
make
make install
cd ..
tar xfz gd-1.8.4.tar.gz
cd gd-1.8.4/
Editer le Makefile Voici les bonnes valeurs :
AR=ar
CFLAGS=-O -DHAVE_LIBPNG -DHAVE_LIBJPEG -DHAVE_LIBTTF
LIBS=-lgd -lpng -lz -ljpeg -lttf -lm
INCLUDEDIRS=-I. -I/usr/include/freetype
LIBDIRS=-L.
INSTALL_LIB=/usr/lib
INSTALL_INCLUDE=/usr/include
INSTALL_BIN=/usr/local/bin
make install
cd ..
Si ce n'est pas fait, téléchargez apache.tgz (il est dans le répertoire n8,
si vous avez le cd de la Slack) Puis en étant dans le rep, tapez installpkg apache.tgz
tar xfz php-4.0.4pl1.tar.gz
cd /usr/local/src/php-4.0.4pl1/
./configure --with-gd=/usr --with-ttf=/usr --with-jpeg-dir=/usr --with-zlib=/usr --with-apxs=/var/lib/apache/sbin/apxs --enable-track-vars
make
make install
cp /usr/local/src/php-4.0.4pl1/php.ini-dist /usr/local/lib/php.ini
Editer /var/lib/apache/conf/httpd.conf
Ajouter là où sont les autres AddType (où au début ou à la fin ...), vous pouvez ajouter des extensions de votre choix comme .power ou .x, pour rire, ;-) ça marche aussi
AddType application/x-httpd-php .php .phtml
Je vous conseille également de trasformer la ligne
DirectoryIndex index.php
en
DirectoryIndex index.php index.phtml index.html
Pour pouvoir avoir des index en php
Terminez avec un :
/var/lib/apache/sbin/apachectl restart et ça devrait être bon.
Nota:
/usr/local est le prefix par défaut pour php, pour le changer,
vous pouvez ajouter --prefix=/usr par exemple.
Un petit script pour tester que ça marche :
Dans le même répertoire copiez par exemple depuis windows le fichier arial.ttf.
Accédez à la page depuis le navigateur et appréciez.
Pour savoir sur quelle libc (la librairie des fonctions standard) votre Linux est basé, allez dans /lib et faites un "ls libc*", si vous voyez libc5, c'est la libc5, libc6 c'est la glibc et libc-2.xx c'est la Glibc 2.xx.
Les distributions suivantes utilisent la glibc2.1 : RedHat 6, Mandrake 6.0, Slackware 7...
Ce n'est pas à proprement parler une astuce mais une aide à l'installation. Il m'avait été fortement déconseillé d'installer Linux en cohabitation avec Windows 2000 car ce dernier, d'après les bruits de couloir, était vorace et ne supportait aucun autre OS. La solution c'est simplement de faire démarrer Linux sur disquette. Bill ne s'est aperçu de rien !
Note du modérateur: Dans tous les cas, quand vous faites cohabiter Linux et un autre OS, il suffit d'ajouter une entrée dans LILO pour avoir le choix de l'OS à démarrer (voir pour ça la rubrique LILO). Une disquette bootable LILO est fortement recomandée aussi dans le cas d'un problème, ainsi qu'une disquette DOS/WIN bootable avec les outils fdisk et sys pour restaurer un MBR.
Pendant l'installation de la plupart des distributions, Linux est déjà actif.
On peut donc accéder à une console pour, par exemple régler un problème, créer un lien etc.
Pour cela, c'est très simple il suffit de changer de console en utilisant les combinaisons de touches habituelles : ALT+CTL+Fn ou n varie entre 1 et 12.
(cela permet même d'avoir plus d'information sur les erreurs qui se produisent.)
Les petits trucs pour installer, configurer et utiliser les périphériques sous Linux.
Pour avoir cette souris sous une debian fraichement installé (pour situer les parametres kernel) faites ceci:
(une fois les usb lancé, vous devais avoir un echo dans les logs comme quoi un devices n'est pas reclamé par un drivers...)
et ensuite (le plus dur a trouver...)
et voila reste a éditer votre config de X pour le satisfaire de votre souris :P
Amicalement, Lous
Je pense que vous avez été nombreux à le remarquer: sous la mandrake 9.2, l'utilisation des périphériques de stockage usb tels que clés ou lecteur mp3 (par exemple) est laborieuse: ROOT est appelé pour le démontage, certains périphériques qui marchaient il y a quelques minutes deviennent innacessibles, etc...
Pour résoudre ce problème, il faut ouvrir le fichier /etc/fstab (droits d'administrateur nécessaires), y enlever toutes les lignes où votre périphérique est concerné et les remplacer par celle-ci :
/dev/sda2 /mnt/périph vfat defaults,uid=500,gid=500,user,noauto 0 0
où /dev/sda2 est l'ID de votre périphérique usb et /mnt/periph le point de montage (vous pouvez mettre n'importe quel dossier comme point de montage à condition de créer le répertoire correspondant).
Pour pouvoir transférer les photos ou vidéos que vous avez prises avec votre appareil numérique Labtec DC-2320 (modèle très semblable au creative PC-cam 880), branchez-le sur un port USB et tapez (en root) :
Créez d'abord le repertoire /mnt/appnum, sinon vous aurez un message disant que le point de montage /mnt/appnum n'existe pas.
Vous avez acheté un portable tout neuf avec une carte ATI Radeon Mobility et, manque de chance, vous êtes incapable de trouver les drivers. Normal, ils n'existent pas ! Vous n'êtes cependant pas limité à la 2D : il existe plusieurs moyens de vous en sortir.
Celui que je vais décrire n'est (en théorie) valable que pour les distributions RPM. ATTENTION : c'est du bricolage ! Si vous n'avez pas une distribution RPM, vous pouvez toujours essayer en décompactant le paquetage manuellement avec Midnight Commander, mais ... ce n'est pas conseillé !
Bon, alors :
--nodeps --force
(sinon ça ne marchera pas). Ne tenez pas compte des message d'erreur pour l'instant mais notez les quelque part.fglrx
).XF86config-4
.
Faites une copie de sauvegarde de votre XF86config-4
.XF86config-4
original avec un éditeur de texte et recherchez la section device
qui parle de la carte 3D. Ouvrez le fichier généré par fglrxconfig
et allez à la fin. Vous devriez voir une section nommée ATI [...] device
. Copiez toute cette section et collez la dans votre XF86config
. Supprimez de votre section Device
précédente tout ce qui est aussi dans celle que vous venez de coller ! Puis dans votre section sur votre moniteur, changez ce qui est nécessaire (device
et peut-être d'autres paramètres).
L'article Utiliser 2 souris avec XFree3 et en mode texte (console) indique comment configurer gpm pour fonctionner avec deux souris, mais concerne visiblement une machine mandrake.
Voici donc la modification équivalente à faire sur une debian (sid, mais ça doit être équivalent partout).
Éditez le fichier /etc/gpm.conf, afin qu'il ressemble à ceci (les lignes en gras sont celles qu'il faut ajouter):
Puis modifiez le fichier /etc/init.d/gpm pour qu'il ressemble à ça (les lignes ajoutées sont en gras):
Redémarrez gpm (/etc/init.d/gpm start), et c'est fait.
Voici comment j'ai connecté un ibm thinkpad x31 à internet via une carte bluetooh et un téléphone nokia 6310i
ma config :
J'ai commencé par installer les pack bluez. Pour savoir ou rapatrier ces pack, allez sur le site du plf, et à l'aide du lien easyurpmi, ajoutez les sources main, contrib et plf. Ensuite, via rpmdrake, installez les pack bluez, ça va tout seul. Tout ce qui suit est à faire dans une console root.
Pour installer la carte bluetooth
Puis j'ai créé le node /dev/rfcomm0 avec :
j'ai mis à la fin du fichier /etc/rc.d/rc.local :
et enfin, j'ai installé GPRS Easy Connect.
Bon, tout est installé, yapuka configurer.
Il vous faut la mac-address du téléphone, ceci afin de relier le pc à mon téléphone et uniquement mon téléphone.
pour ce faire :
affiche plein d'infos sur le téléphone, dont la fameuse mac address.
Dans le fichier /etc/bluetooth/hcid.conf, changez la valeur de security à user
pin à /usr/bin/bluepin
(vérifiez l'emplacement de bluepin, on ne sais jamais...)
Dans le fichier /etc/bluetooth/rfcomm.conf, changez la valeur de device avec celle de la mac adress recueillie plus haut.
Enfin, supprimez le fichier /etc/ppp/resolv.conf et tapez :
Maintenant, nous allons relier le téléphone au pc. Activez le bluetooth du téléphone, et veillez à ce que le téléphone soit visible par tous (voir dans les menus du téléphone)
maintenant, dans le pc, tapez :
ceci ne sera pas à taper lors du prochain démarrage du PC puisqu'on a mis ces commandes dans /etc/rc.d/dc.local
tapez :
Sur le téléphone :
acceptez la connexion puis entrez un code de 6 chiffres, par exemple 000000.
Sur le PC, entrez le même code : 000000 ainsi, le téléphone est lié au pc.
Sur le téléphone :
Nous avons maintenant une émulation de modem standard sur le port /dev/rfcomm0
maintenant, tapez :
et configurez votre connection :
la doc fournie avec gprs easy connec est très claire et il y à un nombre
conséquent des prestataires préconfigurés.
notez que les fichiers hcid, sdpd, rfcomm ont l'attribut SUID et SGID root.
voilà ! c fini !!
n'hésitez pas à m'envoyer vos corrections.
Par défaut, MDK 9.1 ne me permettait pas de profiter de mon joystick sidewinder branché sur le port jeu de ma carte son SB Live 1024
Il faut simplement rajouter 3 lignes dans le fichier /etc/rc.d/rc.local
.
Les voici donc :
À noter que ceci est a faire en root.
Pour ceux qui ont une webcam logitech quickcam 4000 pro sous mandrake 9.1
ENFIN, ÇA FONCTIONNE !
pwcx-i386.o
(ou /x86/gcc-3.2/pwcx-2.4.20.o
) de l'archive dans
/lib/modules/2.4.21-0.13mdk/kernel/drivers/usb
(remplacer 2.4.21-0.13mdk
par votre version de noyau)pwcx-i386.o
en pwcx.o
et faire depmod -a
insmod -f pwcx
Et voila ! Ça marche super avec motion
(détecteur de mouvement) : les images sont sauvées.
depmod -a
et insmod -f pwcx
Vous avez un joystick USB sous Linux et malheureusement, la présence du périphérique laisse de marbre votre distribution Mandrake 9.1.
La solution consiste à rajouter sa reconnaissance automatique au démarrage de l'ordinateur. Pour cela, il faut éditer le fichier /etc/modules.conf et trouver la ligne suivante :
probeall usb-interface usb-uhci ehci-hcd
puis de la modifier pour :
probeall usb-interface usb-uhci ehci-hcd joydev
On redémarre l'ordinateur et hop ! le tour est joué !
Remarque : Pour les plus impatients, sans redémarrer, il est également possible de le faire reconnaître tout de suite à l'aide de insmod joydev
.
Sur RedHat 8 :
/usr/src/linux/drivers/block/paride/mkd
(si ce script n'a jamais été lancé)insmod parport
insmod parport_pc
insmode paride
insmod aten
insmod pd
/etc/fstab
une ligne avec : /dev/pda /mnt/dd-para ext2
(hardware-point de montage - file system)mount /dev/pda /mnt/dd-para
(ou mkfs
si le disque dur est vierge)
MDK 8.2 et MDK 9 reconnaissent pas mal de scanners apparemment, mais pas le Agfa Snapscan e25 (ni le e20). Mais il est tout à fait possible de les faire marcher.
Voilà, je me souviens que pour MDK 8.2 la question s'était posée, et la manip étant un chouia différente, je me suis dit que ça pouvait intéresser quelques uns de savoir comment faire marcher le Snapscan e25 USB sur MDK 9 :
Voilà c'est, tout et vu que quand on branche son scanner MDK affiche automatiquement le racourci vers xsane sur le bureau, je trouve que ça en jette :)
J'espère que ça aura été utile à quelqun...
Pour installer une WebCam USB Quickcam et qu'elle soit reconnue au démarrage ou à son branchement, il faut :
C'est tout :)
NB:Il existe plusieurs type de QuickCam Express et le module de la MDK n'en reconnait qu'une seule :-((
Voili, voilà, A+
J'ai réglé le problème en parcourant /dev/scsi/host0/bus0/ , là j'ai vu que j'avais 3 "target" (target1, target4 et target5, cela ne sera pas la même chose pour vous). Comment trouver celui qui correspond à votre scanner ? C'est très simple, faire :
[root@fourmies fred]# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 01 Lun: 00
Vendor: RICOH Model: MP6200S Rev: 2.40
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 04 Lun: 00
Vendor: AGFA Model: SNAPSCAN 310 Rev: 1.20
Type: Scanner ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 05 Lun: 00
Vendor: IOMEGA Model: ZIP 100 Rev: J.02
Type: Direct-Access ANSI SCSI revision: 02
Ce qui est important : "scsi0 Channel: 00 Id: 04 Lun: 00" qui correspond a votre scanner (à vous de voir), je peux donc en déduire que mon scanner est en réalité :
/dev/scsi/host0/bus0/target4/lun0/generic
Je revient rapidement sur les généralités :
lsmod
pour consulter la liste des modules chargés) suivants : parport
, parport_pc
et ppa
.
mount /dev/sda4 -t vfat /mnt/zip
(n'oubliez pas de créer le répertoire /mnt/zip
).
Vous constaterez que parfois ça ne marche pas, notamment dans le cas de vieux pc comme le mien.
C'est là qu'est l'astuce promise. Dans votre BIOS, choisissez comme protocole pour le port parallèle EPP1.9
.
Ceci devrait régler vos problèmes. Peut être celà marche-t-il avec EPP1.7
mais avec SPP
, ça ne marchera que très mal !
# **************************************************************
# tablette graphique section (sur COM1)
# *********************************************************
Section "InputDevice"
Identifier "stylus"
Driver "wacom"
Option "Type" "stylus"
Option "Device" "/dev/ttyS0"
EndSection
Section "InputDevice"
Identifier "eraser"
Driver "wacom"
Option "Type" "eraser"
Option "Device" "/dev/ttyS0"
EndSection
Section "InputDevice"
Identifier "cursor"
Driver "wacom"
Option "Type" "cursor"
Option "Device" "/dev/ttyS0"
EndSection
Section "ServerLayout"
Identifier "layout1"
Screen "screen1"
InputDevice "Mouse1" "CorePointer"
InputDevice "stylus" "AlwaysCore"
InputDevice "eraser" "AlwaysCore"
InputDevice "cursor" "AlwaysCore"
InputDevice "Keyboard1" "CoreKeyboard"
EndSection
# ***************************************************
Quand vous avez une certaine quantité de mémoire et que seulement une partie de celle-ci est détectée sous linux, cela peut venir de plusieurs choses différentes :
Memory hole at 16 Mo
ou Limit 64 Mo
ou 64Mo OS2 limit
ou tout autre chose du genre ne soit PAS ACTIVES./etc/lilo.conf
une ligne append
du style :
append="mem=XXM"
XX=
quantité en Mo de mémoire.lilo
pour faire prendre en compte les changements !
Pour accélérer le swap de Linux, il suffit d'avoir plusieurs disques durs, et de laisser une partition de swap sur chacun d'eux (attention je parle de plusieurs disques, pas de plusieurs partitions, il faut des partitions sur des disques distincts !)
supposons que vous ayez créé deux partions pour le swap, une sur :
/dev/hda
: /dev/hda5
et une sur
/dev/hdc
: /dev/hdc2
/etc/fstab
vous devez avoir quelque chose comme :
/dev/hda5 swap swap defaults 0 0
il faut ajouter :
/dev/hdc2 swap swap defaults 0 0
après avoir tapé :
mkswap /dev/hdc2
et rebooter (ou mount -a
) pour pouvoir bénéficier du swap supplémentaire.
De cette façon Linux accédera en même temps au deux partitions de swap et doublera le vitesse de ses accès au swap (ou plutôt ajoutera la vitesse de chaque disque).
Pour éviter de modifier les paramètres à la main dans le fichier /etc/X11/XF86Config
ou /etc/X11/XF86Config-4
(voir ce truc et astuces), il est possible d'utiliser nvtv
(http://sourceforge.net/projects/nv-tv-out).
Il est possible de choisir en ligne les paramètres tels que décrits précédemment.
L'avantage est qu'il modifie la session X courante sans modifier les fichiers de configurations.
Il est donc possible de faire de multiples réglages jusqu'au résultat souhaité.
Installation de nvtv :
Télécharger le logiciel nvtv-out.
Décompressez-le, puis en tant que root lancer (dans le répertoire nvtv-out
créé) :
./nvtv
>.
Rien de plus simple et configurable.
Installer le pilote Nvidia sous Fedora Core 1 Téléchargez le fichier NVIDIA-Linux-x86-1.0-4496-pkg2.run et le README depuis http://www.nvidia.com/object/linux.html Ouvrez une console virtuelle :
[Ctrl-Alt-F1]
et loguez vous en root.
Changez de niveau d'exécution pour stopper X :
telinit 3
Modifiez la variable de l'environnement de compilation C :
export CC=gcc32
Supprimez le paquet XFree86-Mesa-libGL
(IMPORTANT : voir annexe)
rpm -e --nodeps XFree86-Mesa-libGL
Lancez l'installation du pilote :
Répondez aux questions, ...
Effectuez une copie de sauvegarde de /etc/X11/XF86Config
:
Editez le fichier XF86Config
,
dans la section Device
remplacez
Driver "nv"
par :
Driver "nvidia"
Eventuellement ajoutez ou commentez des options dans la section Module
.
Pour toutes les options, voir le fichier README
dans /usr/share/doc/NVIDIA_GLX-1.0/README
.
Sauvegardez et quittez XF86Config
.
Testez le nouveau pilote :
startx
Si X se lance correctement, ouvrez un terminal et lancez :
glxgears
Si l'animation-test apparaît sans problème, c'est bon :)
Quittez X, au prompt relancez :
telinit 5
Reloguez-vous en simple utilisateur...
N'oubliez pas de fermer la console virtuelle root :
[Ctrl-Alt-F1]
exit
[Alt-F7]
That's all folks :)
-----
Annexe
Pour éviter les problèmes de dépendances qui pourraient survenir avec la suppression de XFree86-Mesa-libGL
, vous avez plusieurs solutions :
Téléchargez les rpm adéquats nvidia-glx
et kernel-module-nvidia
depuis ce site
Installez ces paquets en lieu et place du pilote *.run
de nvidia :
rpm -Uvh nvidia-glx* kernel-module-nvidia*
et poursuivez l'astuce ...
ou bien :
Après installation complète du pilote *.run
de nvidia décrite ci-dessus, réinstallez XFree86-Mesa-libGL
:
rpm -Uvh --justdb XFree86-Mesa-libGL
l'option --justdb
ne met à jour que la base de données et pas le système de fichiers.
Ce truc intéressera peut-être les utilisateurs des nombreux portables à chipset video Neomagic (Dell, Sony, IBM, etc.)
Il m'a été transmis par Jean-Paul Smets Solanes <jp at smets point com>.
Mon portable fonctionnait très bien sous XFree3. Sous XFree4, il se figeait de temps en temps avec un serveur X à 99% du CPU.
Voici la solution : ajouter une option (Option ShadowFB
) dans le fichier de config XF86Config
dont voici un extrait :
Le HOWTO de Léa, http://lea-linux.org/hardware/nvidia.php3, sur les cartes NVidia est très bien fait ! Et il est donc recommandé de le suivre.
Mais il y a un petit détail détail à savoir XFree permet de choisir d'installer en parallèle deux versions (3.3.6 et 4.0.3), il peut donc y avoir deux fichiers de configuration XFree, utilisez/etc/X11/XF86Config
pour 3.x et /etc/X11/XF86Config-4
pour 4.x
De plus, dans /etc/X11/XF86Config-4
, vous pouvez ne pas trouver la ligne à décommenter : #Load "glx" dans la section module
. Il suffit de l'ajouter sans le #, bien sur ! ;))
Merci à Michel pour l'info
Option "accel"
Option "FastVram"
Pour activer le son sous ALSA (testé sous Mandrake 9.1 avec une carte son a base de VIA), il suffit souvent d'augmenter le son ! Pardi, ce n'est pas ALSA qui foire mais l'oubli de monter le son. En effet, lorsqu'ALSA se lance, il met à zéro tous les canaux.
Réglez-les simplement en lancant "aumix" dans une console :) puis augmentez le volume de VOL (pcm est géré par XMMS ou tout autre lecteur son / vidéo et c'est lui qui bouge quand vous voulez changer le volume).
YannTech heureux d'avoir contribué a Léa
Installer de vieilles cartes son sur bus ISA n'est souvent pas une sinécure, mais si une SB 16 peut très bien faire l'affaire, pourquoi acheter une carte PCI ?
Heureusement ALSA est là, et il va nous simplifier la tâche : plus besoin d'utiliser les isapnp-tools
qui gèrent l'initialisation des cartes ISa Plug'n Play (voir l'article sur le PnP), car ALSA intègre cette fonctionnalité.
Il vous faudra tout d'abord installer ALSA (voir l'article cartes son), mais la plupart des distributions le font en standard, ou proposent des paquets pour le faire. Cherchez les paquets contenant le nom "alsa" et installez-les (Mandrake : urpmi, Debian : apt-get, RedHat: rpm, etc.)
Configurez le fichier /etc/modules.conf
en y ajoutant les lignes suivantes :
La seule partie spécifique à la SB AWE 64 a été mise en gras ci-dessus. Pour votre carte, vous n'avez qu'à mettre le bon module à la place. Pour le trouver, faites un find /lib/modules -name "snd-sbawe*"
. Cela va afficher un répertoire, les autres modules se trouvent dedans. L'article sur les cartes son donne les noms des modules pour les différentes cartes, mais il faut supprimer le -card
dans le nom du module.
Commentez (si besoin est), en mettant des #
en début de ligne, les lignes correspondant à OSS, dans mon cas, cela donne :
Il suffit maintenant de charger le son : tapez (en root) : # modprobe snd-card0
et vous devriez pouvoir jouer des sons.
Si les anciens drivers OSS étaient chargés, il faut auparavant les supprimer : # rmmod sb sb-lib sound soundcore
. Là aussi, le "sb sb-lib" est spécifique aux cartes SB, un lsmod
vous renseignera sur les modules à supprimer.
Ça y est : vous pouvez jouer des sons !
En cas de problèmes :
Avant de les installer, il faut désactiver le module emu10k1 dans le kernel et recompiler celui-ci si le driver emu10k1 n'était pas compilé en module.
Après les avoir installé (sans problème j'espère :) et chargé le driver, chercher le fichier "emu-script" qui se trouve dans le répertoire "/usr/local/etc/" (si vous avez laisser l'installation se dérouler normalement depuis les sources), lancez le et vous verrez des nouvelles options de réglage dans votre table de mixage OSS habituelle, les basses et les aigus (si tout c'est bien passé).
En utilisant des paramètres, on peut configurer différentes options supplémentaires que voici :
Il y a aussi un script pour mieux utiliser les cartes audigy, mais je ne sais pas trop ce qu'il fait.
Ces scripts lancent le programme emu-dspmgr qui charge des "patch"-s dans le processeur de la carte son (des effets dsp si j'ai bien compris), il permet aussi de charger d'autres effets (un peut comme ceux qu'on trouve avec les driver windows) mais je n'ai pas réussi à les faire fonctionner (harf !!!:-(
D'après ce que j'ai vu dans les sources, une gui en gtk serai en développement, peut être que ça simplifira les choses.
bonne chance (et désolé pour les fautes d'orthographe et la grammaire :)
NDLR: j'en ai corrigé pas mal, mais je suis nul en orthographe moi aussi :)
Le son peut etre géré par une puce spécialisée directement fixée sur la carte mère.
C'est le cas du chipset SiS7012 (Silicon Integrated System) sur une carte Elite K7S5A.
Malheureusement, l'installation de la Mandrake 8.2 échoue à la reconnaissance de cette puce.
Il faut donc déclarer les modules utilisés directement dans le fichier /etc/modules.conf
en modifiant la ligne
alias sound-slot-0 snd-card-intel8x0
par
alias sound i810_audio
d'après ce que j'ai vu sur les forums dédiés à Mandrake, cette astuce fonctionne sur plusieurs autres cartes mères.
Attention : l'utilitaire sndconfig détecte bien la puce mais indique quelle n'est pas supportée.
Note de Jicé : cette manip consiste en fait à remplacer le support son Alsa (sound-slot-0) par le support son natif du noyau OSS (sound). Pitch nous informe que ce chipset est bien supporté par OSS au moins à partir du noyau 2.4.18.
L'installation du speedtouch 330 avec la SuSE 9.1 a été simplifiée.
paquets nécessaires :
mode d'emploi :
tar -xvzf speedmgmt.tar.gz
cd mgmt
make
make install
modprobe pppoatm
Vous êtes sur internet !
Pour ceux qui ont cherché à faire fonctionner ce modem sous Linux Mandrake 9.2, voici la solution qui fonctionne bien chez moi (après 2 semaine de recherche)
mgmt.o
dans /usr/share/speedtouch.
Et voici la méthode pas à pas, proposée par Jean-Marc Barco (apresjc55 chez netscape point net).
su
, suivi de l'appui de la touche Entrée. Linux va vous demandez votre mot de passe pour passer du mode utilisateur en mode administrateur, rentrez le. ATTENTION MOT DE PASSE SAISI EN AVEUGLE, le curseur ne bouge pas mais ce que vous saisissez est mémorisé. Une fois le mot de passe saisi, validez par la touche Entrée. Vous êtes maintenant en mode administrateur. Et vous avez 3 lignes à saisir:
/etc/rc.local
, ce qui aura pour effet de lancer Internet à chaque démarrage.
modprobe -k speedch
en
modprobe -k speedtouch
J'ai trouvé cette page sur un site néerlandais mais valable pour la France avec VPI VCI 8.35 et PPP over ATM.Si vous avez des problèmes pour enregistrer les modifs dans les fichiers pré-cités ce qui m'est arrivé, envoyez-moi un E.Mail ou si lea m'y autorise je communiquerai sur le forum.
Il faut utiliser le gestionnaire de fichier Konqueror en tant que root. Quand vous avez trouvé le fichier, faire un clic droit dessus et ouvrir avec Kate. Dans le haut se trouve l'icône "disquette" pour enregistrer la modif.
Note : cette manip est valable à condition que les paquetages "make" et "gcc" (la dépendance "glibc" est automatique) soient installés, à vérifier dans Yast et installation de logiciel avant de taper "make" sinon le message "command not found" suit après la commande "make". A noter que ce mode d'emploi fonctionne aussi bien avec le speedtouch 330 qu'avec speedtouch USB
Voici une manip simple quand vous avez configuré le modem alcatel speedtouch. A l'installation de mandrake 9.1 il vous est demandé le fichier mgmt.o
. Vous pouvez récupérer ce dernier
dans /mnt/win_c/windows/systen 32/driver
. Il vous suffit alors de copier le fichier alcaudsl.sys
et de le copier vers /usr/share/speedtouch/mgmt.o
en root. Lancez maintenant l'utilitaire de configuration du speedtouch, et tout devrait fonctionner normalement...
Pour les passionnés comme moi qui ont essayé tous les "How to" pour faire fonctionner leur modem SpeedTouch (patches....) sous Mandrake 9.0 sans succès; il y a quand même une solution !
C'est très simple :
Remerciements à : Ahmad Clement, Christine Noot.
Pour plus de détails : cet autre truc.
Etant moi-même débutant, je ne garantis rien mais ça a marché chez moi.
Pour ceux qui ont encore des problèmes avec le dasub du drivers ECI, j'ai trouvé une petite manip qui marche à tous les coups pour le désinstaller. Pour ma part je suis resté 2 mois sans arriver à enlever ce module, même avec les conseils de flashtux.org
Voici peut-être une manip qui fera des heureux. Elle se fait en 3 temps après avoir installé le driver avec le modem débranché :
eciconftxt.sh
avec le modem toujours débranché et choisir l'option 2. Il vous dit "dasub not loaded"Vous n'avez plus qu'à rebrancher le modem et lancer la commande startmodem
dans un terminal.
Et c'est tout , you are connected :-))))))
Après un mois de recherche et de galère pour se connecter via un modem ethernet sur le réseaux des réseaux, après quelque Email au FAI et quelque coups de téléphones. J'ai enfin réussi a avoir un technicien de chez FRANCE TELECOM, celui-ci m'a enfin confirmé la cause de mon impossibilité de me connecter à Internet. Depuis quelque temps je soupçonnais un filtre radio (aucune fréquences de coupure n'est mentionnée) qui faisait interface entre la ligne extérieure de FRANCE TELECOM et le téléphone.
Ce filtre est dans un petit boitier blanc électrique (tableau FRANCE TELECOM) ; il suffit de débrancher les quatres fils et de les relier entres eux en respectant les couleurs (bien sûr).
Pour plus d'infos, ce filtre est posé chez les abonnés par FRANCE TELECOM, suite à un problèmes de voies dans le téléphone dû à un émetteur de radio proche. Logique : la ligne de téléphone sert alors d'antenne de réception (Fin du cour de radio).
Je remercie au passage tous ceux qui m'ont aidé à résoudre mon problème.
hsfbasic2 92352 2 (autoclean)
hsfserial 16744 0 (unused)
hsfengine 907844 0 [hsfserial]
hsfosspec 12408 0 [hsfbasic2 hsfengine]
Installer et configurer un modem ADSL SpeedTouch USB
(toute distribution, surtout celles qui ont un outil spécifique qui ne marche pas...)
su
Bien que non recommandé pour des raison de sécurité, il est plus simple de faire toute la procédure d'installation en tant que root.
D'abord, il faut vous procurer le "firmware" du modem. Le firmware est le logiciel qui tourne à l'intérieur de votre modem. Vous avez plusieurs possibilités :
Votre modem est configuré/installé sur votre poste sous Windows, alors récupérez le firmware (le fichier alcaudsl.sys
) dans
c:\windows\system
(depuis Windows) ou /mnt/win_c/windows/system
(depuis Linux, remplacez /mnt/win_c
par le nom du
répertoire sur lequel est montée votre partition Windows).
Exemple (dans un terminal en tant que root, les commandes sont longues et doivent être tapées sur une seule ligne, sans appuyer sur [Entrée]) :
Ensuite on copie le firmware au bon endroit sous Linux :
speedmgmt.tar.gz
(ce lien n'est peut être valide qu'après enregistrement, je n'en sais rien, essayez !).mgmt.o
(le firmware). Après l'avoir récupéré et mis dans votre répertoire
"maison" (/home/votrelogin
), dans un terminal en tant que root :
Voilà, nous sommes fin prêts à installer le driver pour Linux.
Ensuite il nous faut télécharger les drivers sur le site :
http://speedtouch.sourceforge.net/index.php?/index.fr.html.
La version que j'utilise est la 1.1, mais le principe de fonctionnement est le même si vous avez une version 1.2 (dernière en date...)
Je supposerai que votre archive (tarball) s'appelle : speedtouch-1.2-beta1.tar.bz2 (ou speedtouch-1.2-beta1.tar.gz). Vous devez avoir
installé, avant les paquets make, gcc et autoconf (au moins !) avant de commencer.
Allons-y, c'est parti :
À ce stade, le driver est installé, mais pas configuré. Pour le configurer, vous devez créer/modifier 5 fichiers : /etc/ppp/options
,
/etc/ppp/chap-secrets
, /etc/ppp/pap-secrets
, /etc/ppp/peers/adsl et /etc/resolv.conf
.
D'abord le fichier /etc/ppp/options
(vous pouvez copier/coller ce qui suit dedans) :
Cette étape est sûrement faculative, mais mieux vaut prévenir que guérir...
Ensuite, le fichier /etc/ppp/peers/adsl
(vous pouvez copier/coller ce qui suit dedans) :
Ensuite les fichiers /etc/ppp/chap-secrets
et /etc/pap-secrets
(qui sont identiques, et contiennent
une seule ligne utile ; les lignes commençant par '#' étant des commentaires) :
Où vous remplacez fti/identifiant@fti
par votre identifiant de connection et motdepasse par votre mot de passe
(tel que fournis par votre fournisseur d'accès). Prenez soin de respecter la présence des guillemets : "
.
À ce stade cela doit marcher dans la plupart des cas. Pour tester, il suffit de faire (toujours dans un terminal en tant que root) :
Là vous êtes, sauf mega-loose, connecté. Pour le vérifier tapez :
inet adr:81.48.215.226 P-t-P:81.48.215.1 Masque:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:24880 errors:0 dropped:0 overruns:0 frame:0
TX packets:24964 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:3
RX bytes:11315872 (10.7 Mb) TX bytes:2635953 (2.5 Mb)
Si c'est le cas, vous êtes connecté ! Même si vous n'arrivez pas (encore) à joindre un site web !
Dans ce dernier cas, c'est que votre provider est "méchant" et ne fournit pas les DNS à la connection (de plus en plus rare). Il
faut alors enlever du fichier /etc/ppp/peers/adsl
la ligne "usepeerdns
" et éditer à la main le fichier /etc/resolv.conf
pour qu'il resemble à :
Où vous devez remplacer xxx.xxx.xxx.xxx et yyy.yyy.yyy.yyy par les IP des DNS de votre fournisseur d'accès (ils doivent vous être fournis avec vos paramètres de connection, sinon demandez-les à votre fournisseur d'accès ou sur un forum). Cette modification ne nécessite pas de rebooter, ni de relancer la connection.
Dernière étape, faire en sorte que cette connection s'établisse au démarrage (l'option 'persist
' dans /etc/ppp/peers/adsl
nous assure que la
connection sera maintenue en cas de déconnection). Il suffit de mettre dans /etc/rc.d/rc.local
(ou bien dans le script qui démarre votre ordinateur)
les lignes (ajoutez les en fin de script) :
Il peut être nécessaire de remplacer "pppd call adsl
" par "/usr/sbin/pppd call adsl
" ou par "/sbin/pppd call adsl
". Voilà c'est fini !
Vous pouvez également copier les 3 lignes précédentes dans un fichier "/usr/bin/start_modem
", commençant par la ligne :
#!/bin/sh
et le rendre exécutable par la commande :
J'espere que vous avez trouvé cette documentation utile et claire. Si ce n'est pas le cas, je suis ouvert à vos remarques et critiques
Pour ceux qui auront la chance de trouver un modem interne PCI US-Robotics ou 3Com (pas le winmodem) 56k, il faut savoir que ce modem est configuré pour le port COM5 (i.e. 5ème port série) sous Win.
Pour le faire fonctionner sous Linux, voici une petite astuce :
faire un cat /proc/pci
pour obtenir la valeur IRQ et celle du port.
Ensuite effacez /dev/modem avec rm -f /dev/modem
Faites un lien avec ln -s /dev/ttyS4 /dev/modem
Enfin, mettez dans votre /etc/rc.local
(sur une seule ligne)
setserial /dev/ttyS4 irq <votre valeur> port <votre valeur> autoconfig
En faisant un test avec minicom, tout devrait marcher.
Si vous utilisez Kppp, vérifiez que vous utilisez bien /dev/modem
.
Voilà :)
Sur Vaio VX88 (ou VX71), mais peut-être sur d'autres portables, le WIFI n'est opérationnel que si l'ACPI est activé !
A l'installation de Mandrake 9.1 l'ACPI est désactivé, et le WIFI n'apparaît même pas dans la liste des dispositifs de communication bien qu'il soit détecté et installé.
Pensez donc à l'activer, soit à l'installation soit après. Avec Mandrake 9.1 cela se fait par Centre de Contrôle>>Démarrage>> DrakeBoot>>Configurer (le menu de démarrage).
Il y a du nouveau, pour cette carte (PCI) et son amie la DWL650+ (pcmcia). Ce sont donc des cartes wifi 802.11b.
On peut trouver des drivers ici (ces drivers ne sont pas 'reconnus' officiellement par DLink, de plus ils ne sont pas fournis avec leurs sources) : http://www.ivor.it/wireless/acx.html.
Ils ont été testés sous : Mandrake 9.1, Mandrake 9.0, RedHat 9.0, RedHat 8.0, Debian 2.4.18, Mandrake 8.1, Suse 8.1, Suse 8.2, Gentoo 1.4.
Pour ma part j'ai fait l'installation sur une mandrake 9.1 et ça marche très bien.... Il y a juste deux trois feintes :
en particulier il faut faire 2 fois l affectation de l essid pour que ça marche à tous les coups...
pour que la carte marche et démarre automatiquement sous la Mandrake, faire l'install telle que spécifié sur le site (ça impique d avoir le compilateur installé, les wireless-tools etc...)
puis j ai modifié dans /etc/sysconfig/network-scripts
les fichiers suivants :
ifup-wireless
à la fin du fichier un copier coller :
(un vilain copier/coller pour qu'il fasse deux fois l'affectation du ESSID.)
et ifcfg-eth1
:
bon là je suis en dhcp. Voilà ! Ca démarre tout proprement...
A l'intention des heureux adhérents FNAC qui ont su profiter de l'offre du mois de Mars 2003 (et des autres ;), j'ai écrit ce petit HowTO qui comblera je l'espère les lecteurs de lea-linux.org.
Prérequis d'usage :
RedHat 7.3 rpm : wireless-tools-23-2
À noter que la base (DG824M) a une adresse IP du type 192.168.0.1
par définition ...
Télécharger le fichier :
# wget ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-wlan-ng-0.2.0.tar.gz
Installez-le :
# cd linux-wlan-ng-0.2.0 ; make config && make all && make install
Ajouter dans /etc/pcmcia/config
:
Redémarrage du service pcmcia :
# /etc/rc.d/init.d/pcmcia restart
Adapter le fichier /etc/wlan/wlan.conf :
Configurer le point d'accès :
# netscape http://192.168.0.1
, adapter le "Wireless setup" afin que l'on ait bien SSID = "Maison" puis Apply en bas !
On peut ENFIN insèrer la carte MA401 dans le slot PCMCIA
Le script de démarrage de l'interface wifi :
Comment jouer avec les paramètres du noyau et des modules, les personnaliser pour ses besoins.
Linux-Lite est un patch pour le noyau Linux-1.0.9, qui lui permet de gérer libc5, qui normalement n'est géré que depuis Linux-1.1.92.
Il a malgré tout un problème au niveau de la gestion du clavier. Il n'accepte pas d'etre remappé avec loadkeys, donc il faut faire sans.
Sous Linux, le fichier qui gère la keymap par default est dans driver/char/defkeymap.c
, dans l'arborescence de votre kernel.
Il faut modifier ce fichier depuis un système bien fonctionel avec la commande
loadkeys --mktable /fichier/de/la/keymap/a/utiliser > /usr/src/linux/driver/char/defkeymap.c
Compilez votre kernel Linux-Lite normalement en vous rappelant que pour ces vieux noyaux, on ne fait pas make bzImage
mais make zImage
ou make Image
.
Testez le tout. Le noyau devrait être plus léger qu'avant avec la même configuration.
Vous utilisez plusieurs versions d'un même noyau ?
L'astuce suivante permet d'avoir les modules compilés associés au bon noyau.
Il faut éditer le paramètre EXTRAVERSION
du Makefile
du noyau :
-special
.
Les paramètres de compilation sont récupérés dans le fichier /usr/src/linux/.config.
Le problème se pose si vous effacez ce fichier par erreur ou bien lorsque vous compilez le noyau pour la première fois pour une Redhat par exemple. Tous les paramètres détectés à l'installation ne sont pas sauvegardés.
Pour éviter de refaire toute la config, une commande bien utile :
# /usr/src/linux/make oldconfig
NDM (Jice) : il est toujours bon de conserver une copie du fichier .config histoire de pouvoir le réutiliser pour compiler un autre noyau par exemple. Copiez-le donc dans votre répertoire-maison sous le nom (par exemple) kernel-config-2.4.18. Lorsque vous voudrez le réutiliser, par exemple pour compiler un 2.4.19, vous n'aurez qu'à le recopier (sous le nom .config !) dans /usr/src/linux-2.4.19...
Cette manipulation demande à ce que vous connaissiez bien votre matériel (carte réseau, son, disque dur, carte SCSI, etc.), le but de cette manoeuvre étant de passer les principaux drivers en modules pour alléger votre noyau (le kernel) et aussi le rendre plus rapide. Malheureusement vous ne pouvez pas TOUT passer en module, autrement vous ne pourrez même pas booter votre Linux...
Tout d'abord nous allons "optimiser" la compilation du kernel et des modules. Cela va dépendre de la mémoire que vous avez sur votre machine. Regardons ce petit tableau :
- 16 Mo : 3
- 24 Mo : 4
- 32 Mo : 5
- 40 Mo : 6
- 48 Mo : 7
- 56 Mo : 8
- 64 Mo : 9
- 80 Mo : 11
- 96 Mo : 13
- 112 Mo: 15
- 118 Mo: 17
Nous allons permettre la compilation en parallèle de plusieurs modules à la fois. N'augmentez pas le chiffre de plus de ce qui est dans ce tableau, sinon vous ralentirez la compilation au lieu de l'optimiser. Pour ce faire, aller dans le répertoire /usr/src/linux, éditez le fichier Makefile, cherchez la ligne " MAKE=make"et faites ce changement :
MAKE=make -j N
Attention, cette manip est pour une compilation sous la console (pas sous X !) et va vous bouffer 100% des ressources pour la compilation (ce qui n'est pas grave si vous ne désirez rien faire d'autre en même temps) ! De même si votre systême swappe comme un fou, stoppez la compilation par Ctrl-C et baissez le nombre N ! De même si votre processeur est overclocké ça risque de planter !
Bon maintenant passons à ce qui peut être compilé en modules. Déjà tout ce qui permet d'accéder au /(racine) ne doit pas être compilé en module sous peine de ne plus pouvoir booter le systême, c'est à dire que si votre racine est sur un disque IDE, il ne faut pas mettre le support IDE en module, et de même si il est sur un disque SCSI, le SCSI ne dois pas être passé en module. Pour la même raison, le systême de fichiers "ext2fs" (ou ext3fs, etc.) ne doit pas être non plus compilé en module. Si votre partition racine est montée par le réseau et NFS (cas des stations diskless par exemple), ne mettez pas le support de la carte réseau et le support NFS en modules.
En effet, les modules sont chargés APRES le noyau, et si les modules IDE sont sur un disque IDE, il faut d'abord les charger avant de pouvoir accéder au disque, mais pour les charger, il faut avoir accès au disque et donc les avoir chargés avant... vous voyez le cercle vicieux ?
Tout le reste peut être compilé en modules, c'est à dire carte son, carte réseau (sauf si la racine est en NFS, voir ci-desus), port parall&èle, ppp support, slip support, CD-ROM, etc. Si vous avez du matériel PnP et que vous voulez utiliser le support PnP, passez également tous les drivers pour ces cartes en modules et configurez votre PNP (voir rubrique PnP).
Je vous conseille aussi pour plus de facilité d'inclure le chargement auto des modules par le kernel (kerneld Y), le support des modules bien sûr.
Pour plus de détails sur la compilation du noyau, voyez la rubrique compilation du noyau.
<Après la compilation et l'installation, éditez le fichier /etc/conf.modules et passez les options et alias de vos modules (voir aussi dans la rubrique PnP, cela y est expliqué).
Les noyaux d'origine 2.4.0-final et 2.4.1 n'intègrent pas automount qui permet au démon autofs ou autofs4 (pour la dernière version) de monter simplement et rapidement à la demande des systèmes de fichiers amovibles (cdrom : iso9660, disquette : vfat).
Je n'ai pas vu à ce jour de noyau 2.4.x patché chez Mandrake ou ailleurs ce qui est le cas pour les noyaux 2.2.xx-mdk.
POUR LE NOYAU 2.4.0 FINAL il existe un patch supermount : on peut le trouver à (entre autres) : http://www.geocities.com/SiliconValley/Lab/8144/supermount.html
POUR LE NOYAU 2.4.18 : on peut trouver le patch sur le site de Mandrake.
On récupère (c'est minuscule) on décompresse et on patche (voir rubrique noyau sur Lea)
La sélection de supermount dans le noyau nécessite la sélection de NFS (c'est ce qui est écrit dans l'aide en ligne : rubrique Filesystem de xconfig). Il y a deux versions de supermount : si on utilise la nouvelle en modules et que le démon autofs ne la reconnaît pas, il faut faire un alias autofs autofs4 dans /etc/modules.conf (C'est dans la doc).
Il faut qu'il y ait un répertoire /.automount à la racine du système de fichiers et un démon autofs actif ainsi qu'un /etc/fstab qui contienne les options supermount pour /mnt/cdrom et /mnt/floppy (et vos autres périphériques amovibles, zip, etc.).
Attention la syntaxe n'est pas la même que pour le montage classique, par exemple pour un lecteur de CD :
/mnt/cdrom /mnt/cdrom supermount fs=iso9660,dev=/dev/cdrom 0 0
(voir aussi man supermount et info supermount)
SURTOUT n'oubliez pas de relancer lilo (ou grub ou autre chargeur de boot) après compilation et installation du noyau (sans ça kernel panic :o( ).
Si un noyau qui ne prenait pas en charge supermount a été lancé, /etc/fstab a été modifié au premier démarrage du système en ce qui concerne le montage du lecteur de CD-ROM et du lecteur de disquettes : il faut donc y réintégrer supermount (je vous conseille de le sauvegarder pas loin si vous voulez éviter de le retaper souvent ainsi que le fichier /usr/src/linux/.config du noyau et /etc/lilo.conf, ça gagne du temps). Ne pas oublier de conserver dans lilo ou grub un démarrage possible sur l'ancien noyau en cas de problème : (cf rubrique noyau de Lea).
POUR LE NOYAU 2.4.1 le patch n'est pas encore sorti : il faudra attendre (c'est donc ce que je fais...) mais dès qu'il sortira ce sera la même chose sans doute.
On récapitule : ( après récupération des sources kernel-2.4.0 et supermount-0.5.3-2.4.0.diff.zip) en root :
Remarque : Cette astuce fonctionne avec MDK 7.1 et 7.2 qui sont paramétrées avec supermount à l'origine). Dans le cas contraire (c'est à dire pour des distributions comme Suse ou d'autres) ajouter l'installation et la configuration du démon 'autofs'
(astuce transmise par André Salaün)
Pour utiliser le mode Ultra-ATA(66 ou 100 si votre carte est supportées par le kernel) il faut :
Après le reboot, vous pouvez vérifier que votre système utilise bien l'Ultra-ATA66 en faisant :
dmesg | grep -i -e dma
Moi j'obtiens :
VP_IDE: VIA vt82c686a IDE UDMA66 controller on pci0:20.1
ide0: BM-DMA at 0xd400-0xd407, BIOS settings: hda:DMA, hdb:pio
ide1: BM-DMA at 0xd408-0xd40f, BIOS settings: hdc:DMA, hdd:DMA
hda: 39102336 sectors (20020 MB) w/2048KiB Cache, CHS=2434/255/63, UDMA(66)
hdc: 8467200 sectors (4335 MB) w/96KiB Cache, CHS=8400/16/63, DMA
hdd: ATAPI 32X CD-ROM drive, 256kB Cache, UDMA(33)
j'ai donc un disque Ultra-ATA66 et un disque standard.
Pour patcher le noyau, vous avez deux solutions.
Soit en utilisant la commande patch, soit le script /usr/src/linux/scripts/patch-kernel.
(Voir la fin de l'astuce "Mise à jour du noyau")
Méthode très simple pour mettre à jour votre noyau avec par exemple un noyau de tests ou une version plus récente, en conservant la configuration du noyau de votre distribution (Mandrake dans cet exemple) :
Il suffit de recopier l'ancien fichier .config dans les nouvelles sources, et de recompiler.
Détail de la "méthode" :
(ici, on passe du noyau 2.2.17-mdk au 2.4.0-test11, voir la remarque 2 ci-dessous pour les "petites" montées de version)
# cd /usr/src
# rm linux
# tar xvzf /le_chemin/linux-2.4.0-test11.tar.gz
# mv linux linux-2.4.0-test11
# ln -s linux-2.4.0-test11 linux
# cp linux-2.2.17-mdk/.config linux-2.4.0-test11
Bien sûr, il faut auparavant avoir installé les sources du noyau 2.2.17-mdk et récupéré le tar.gz ou tar.bz2 su nouveau noyau.
Il suffit ensuite de faire :
# cd linux
# make dep
# make bzImage
# make modules
# make install
# make modules_install
et la config mdk sera conservée tout en upgradant le noyau.
Remarque : vous pouvez vérifier/modifier la configuration du noyau en tapant make xconfig avant le make dep ci-dessus.
Merci à Manuel Flury
Remarque 2 : Si la montée de version n'est pas très grande (ex : 2.2.16 -> 2.2.18), plutôt que de télécharger toutes les sources du nouveau kernel (au moins 12 Mo quand même), vous pouvez récupérer simplement les patches qui séparent la version de votre kernel actuel de la nouvelle version (p.ex. 2,4 Mo pour passer du noyau 2.2.17 au 2.2.18, 2,4Mo+736Ko pour passer du 2.2.16 au 2.2.18, etc.), puis les appliquer un par un. Ensuite, il ne vous reste plus qu'à le recompiler !
Le patch pour passer de la version 2.x.y à la version 2.x.y+1 a pour nom patch-2.x.y+1.bz2. Ainsi, pour passer de la 2.2.16 à la 2.2.18, téléchargez patch-2.2.17.bz2 et patch-2.2.18.bz2, appliquez les dans cet ordre sur les sources du 2.2.16 (ce qui vous donne les sources du 2.2.18 en fait), entrez dans les sources (cd linux), puis recompilez-les comme ci-dessus (make dep, etc.).
Afin de patcher le noyau :
New : Yves Perrey m'a transmis cette astuce pour patcher facilement le noyau :
Pour patcher un kernel, il suffit de stocker les divers patches du noyau dans un répertoire (/usr/src/linux peut faire l'affaire) et de taper la commande depuis le répertoire ou sont les patches :
# /usr/src/linux/scripts/patch-kernel
ça se débrouille avec les diverses versions des patches - dans le cas de patches multiples pour upgrader de plus d'une version - et les diverses compressions utilisées pour lesdits patches - pas besoin de décompresser avant d'appliquer le script, que les patches soit au format gzip ou bzip2 (voire plain text, i.e. non compressés).
C'est valable pour les distributions noyau prises chez kernel.org et mirroirs. Pour les distros type RedHat, il y a de fortes chances que les patches échouent car les sources du noyau livré par RedHat ne concernent que la plateforme de la distro (i.e. i386 par exemple) et pas les autres (si i386, exit le code bas niveau pour PPC, Alpha, ARM, etc...), en tout cas en RH5.2 - depuis je ne suis pas allé fouiller sous /usr/src/linux/*/asm...
Hyperefficace en tout cas que ce script patch-kernel ;-)
En esperant que ça aide ou informe (un peu :) )
Pour surveiller en permanence les messages de syslog, j'ouvre
une fenêtre terminal et dedans je tape :
tail -f /var/log/messages
comme ça dès qu'en message arrive il s'affiche dans ce terminal !
on peut même taper :
tail -f /var/log/messages > /dev/tty11 &
et les messages s'affiche sur la console 11 (accessible par CTRL+ATL+F11 depuis X, ALT+F11 depuis la console)
Astuces propres aux spécificités du kernel 2.4
Que faire quand plus rien ne marche, quand Linux ne démarre plus, que X plante...
L'utilitaire d'importation de polices (depuis Windows en particulier) de mandrake a toujours fait planter mon environnement graphique, en rendant les polices illisibles (caractères bizarres). Après plusieurs tentatives ratées ayant nécessité la réinstallation du sytème, j'ai fini par trouver LA solution.
DrakFont installe les nouvelles polices dans le dossier /usr/X11R6/lib/X11/fonts/drakfont
. Ce dossier contient 2 sous-dossiers.
Pour supprimer les polices récemment installées, qui constituent la seule et unique source de ces problèmes d'affichage, il faut procéder en trois fois :
/usr/X11R6/lib/X11/fonts/fonts.cache-1
la ligne qui fait référence au dossier drakfont/
Après redémarrage du serveur XFS par la commande /etc/init.d/xfs restart
et du serveur X par la commande /etc/init.d/dm restart
Tout devrait rentrer dans l'ordre. Je vous déconseille de recommencer à importer toutes les polices Windows en même temps, ou de réimporter les polices qui ont provoqué le problème. On peut procéder par petit nombre de fichiers, pour identifier les polices qui posent problème et ne pas les importer.
Voilà ! J'espère que ça aidera quelques uns d'entre vous...
Si comme moi il vous arrive de faire un rm -rf *
involontaire, vous pouvez perdre tous les fichiers de votre répertoire courant sauf à interompre avant (perte de fichiers tout de même ).
Il existe un moyen de limiter les dégats.
Au lieu de créer un dossier apelé par exemple download
, apellez-le .download
Ensuite faites un lien symbolique :
ln -s .download download
Ainsi un rm -rf *
n'effacera que le lien symbolique.
Si vous faites un rm -rf .*
, on ne peut plus rien pour vous ;)
PS : j'écris cet article car je viens juste de faire cette erreur :(
The magic SysRq key
Cette option compilée dans le kernel permet de sortir "facilement" d'un plantage par simple raccourcis, du type [ALT+Print Screen+'command']
.
Dans un kernel 2.4.22, cette option se trouve dans la section Kernel hacking
sous le nom de Magic SysRq key
.
Toutes les options se trouvent dans l'aide :
Si vous débranchez la souris et que vous la rebranchez, elle ne sera plus effective sous X. Pour remédier à cela sans avoir à faire un [CTRL+ALT+BackSpace]
, il suffit de passer en tty ([CTRL+ALT+F1]
ou F2 ou F3...). Revenez ensuite sous X avec [CTRL+ALT+F7]
, bougez la souris, le tour est joué !
Sur une idée de _Mr_ Prae :)
Quand PLUS RIEN ne marche, il existe une petite combinaison de touches utile : alt + Syst (souvent la même touche qu'impression écran) + une lettre. Cette astuce ne marche que sur certaines distributions, dont la Mandrake 9.1 :
alt + Syst + S pour vider le cache disque,
alt + Syst + U pour démonter vos partitions et vos systèmes de fichiers puis :
alt + Syst + O pour redémarrer.
Ca vous évitera un long scan au redémarrage si vous êtes en ext2 ...
Voir le truc Sortir élégamment d'un plantage pour plus de détails.
Vous venez pour une raison ou pour une autre de perdre tout ou partie de votre partition /boot
. Pas de panique, il vous reste une solution avant la réinstallation complète. Attention ceci ne fonctionnera que dans le cas où vous avez prévu un système de fichiers dédié à /boot
.
Exemple : extrait du fichier /etc/fstab
:
Quelques conseils à suivre pour vous faciliter la vie dans ce genre de situation (à prévoir avant le plantage bien sûr :p) :
/usr/src/linux-xxx/arch/i386/boot
./usr/src/linux-xxx/.config
pour pouvoir procéder rapidement à la création d'un noyau.Les étapes pour restaurer /boot
:
/
puis chrooter l'environnement :# mount /dev/hda1 /mnt
# chroot /mnt
mount -a
./boot
: # mount /dev/hda2 /boot
boot.b
boot
:# ls boot
boot
:). A copier dans /boot
.mc
) qui sait se déplacer dans un package rpm, et copier le fichier boot.b
dans /boot
grâce à lui.
/boot
. Vérifier que le nom correspond bien à celui spcifié dans /etc/lilo.conf
.boot.b
. Il vous suffit de récupérer le package du noyau et le tour est joué.initrd
. Notamment si vous utilisez ext3 ou SCSI pour vos partitions système, vous aurez besoin de cette image. Elle permet, avant le chargement des modules / drivers (ext3 ou scsi par exemple), de gérer l'accès à ces partitions lors du boot.mkinitrd <nom_de_l'image> <version_du_noyau>
# mkinitrd initrd-2.4.18-14.img 2.4.18-14
# lilo -t
Added linux *
The boot sector and the map file have *NOT* been altered.
Voici une deuxième méthode pour récupérer le mot de passe du root lorsque vous l'avez oublié ou perdu. (c.f. La première méthode)
Cette fois-ci, vous n'avez pas besoin d'un autre système d'exploitation. Nous allons utiliser des options disponibles.
La première chose à faire, c'est de rebooter !
Lorsque votre loader (lilo, grub, ...) affiche les choix, passez l'option suivante au noyau :
init=/bin/bash
Par exemple avec Lilo, cela donne :
Une fois là, le système va démarrer et vous vous retrouverez dans une session shell bash en tant que root sans avoir eu à taper le moindre mot de passe.
Si votre clavier est mal configuré, il est vivement conseillé de configurer votre clavier en francais, en faisant :
/usr/bin/loadkeys fr-latin1.map
Pour faciliter la suite et surtout parce que l'on va ressaisir le mot de passe root et il serait dommage de le saisir en anglais...
Ensuite, il nous faut remonter la partition / en lecture/écriture, car elle est montée en read-only (lecture seule). Pour ce faire :
mount -o remount,rw /
Maintenant, nous pouvons saisir le mot de passe du root, en faisant :
passwd
Saisissez votre nouveau mot de passe, c'est fait ?! Vous avez presque fini.
Afin de faire les choses proprement, nous remontons la partition en lecture seule :
mount -o remount,ro /
Et voilà, vous avez fini ! Il ne reste plus qu'à rebooter.
Il peut vous arriver de perdre d'une façon ou d'une autre le mot de passe (password) d'un de vos utilisateurs (user).
Si cet utilisateur n'est pas l'utilisateur root
C'est le cas le plus simple. Il vous suffit de vous loguer en root et vous affectez directement un nouveau mot de passe idiot à l'utilisateur en faisant :
passwd toto
Puis là, l'utilisateur 'toto' pourra rechanger son mot de passe comme il l'entend.
Si cet utilisateur est le root ( aie ! Ca fait mal... :-) )
Dans ce cas, cela se complique un peu. Ce que je propose impose d'avoir un accès physique à la machine, si ce n'est pas le cas je ne sais pas comment faire.
Vous pouvez vous en sortir si :
La procédure à suivre
Pour l'explication, je pars du principe que votre partition / est sur le disque dur maitre de la nappe IDE 1 sur la deuxième partition principale, soit /dev/hda2. De plus, je suppose aussi que vous utilisez un autre système GNU/Linux pour réparer. Ceci pour faciliter l'explication et pour qu'elle reste claire.
A vous d'adapter la suite en fonction de votre cas particulier... Mais l'idée générale est là.
Pour finir avec les conventions, les commandes dans VI sont des séries de lettres à taper à la suite sans appuyer sur la touche 'entrée' entre les lettres et sans les espaces, qui ne sont là que pour regrouper les commandes logiquement.
La première chose à faire est de rebooter sur le système (autre GNU/Linux, DemoLinux, CD de rescue, ...) vous permettant ainsi de lire et d'écrire sur votre partition /.
Une fois que vous êtes sous une invite de commande...
Il vous sera peut être nécessaire de configurer votre clavier en francais, pour cela faites :
/usr/bin/loadkeys fr-latin1.map
Après, il vous faut monter votre partition / avec les commandes suivantes :
mkdir -p /mnt/mysys
mount /dev/hda2 /mnt/mysys
Si votre partition a un système de fichiers particulier, ou que la commande mount ne marche pas, alors utilisez l'option -t <type> afin de spécifier votre système de fichiers. Si cela ne marche toujours pas, cela signifie que le noyau du système que vous utilisez pour réparer n'a pas le support de votre système de fichiers.
Note : A l'heure actuelle c'est souvent EXT3.
Maintenant que la partition est montée, nous allons modifier le fichier /etc/passwd afin de supprimer le mot de passe root en enlevant l'étoile :
cd /mnt/mysys/etc
vi passwd
#---- Dans VI ----
#---- Sur la ligne : root:x:0:0:,,,:/root:/bin/ksh
2w x :wq<la touche entrée>
#---- Hors VI ----
cd /
umount /mnt/mysys
Remarque : Nous utilisons ici l'éditeur 'vi', car c'est le seul éditeur de texte que nous sommes sûr de trouver quelque soit le système utilisé, sauf MS Windows :-). De plus généralement, l'utilisateur root est la première ligne du fichier /etc/passwd.
>Enfin, il ne vous reste plus qu'à rebooter sur votre système "malade".
Une fois connecté à votre système avec un utilisateur normal, faites :
su - root
#Normalement aucun mot de passe ne vous sera demandé.
cd /etc
vi passwd
#---- Dans VI ----
#---- Sur la ligne : root::0:0:,,,:/root:/bin/ksh
w ax<la touche escape> :wq<la touche entrée>
#---- Hors VI ----
passwd
Une fois ici, il va vous demander le nouveau mot de passe du root. Une fois le mot de passe défini, ça y est, vous avez fini ! Le système est réparé, vous pouvez vous déconnecter et reconnecter en root sans problème. Ouff ! :-)
Ca y est. C'est arrivé. Pourtant on vous avait dit que Linux était stable, mais cette fois, "il" s'est planté.
NOOON ! pas de panique ! ne pressez pas tout de suite le bouton reset ! Oubliez cette mauvaise habitude héritée de votre ancien système d'exploitation (z'avez vu, je ne cite personne ;).
Commencez par mesurer l'étendue des dégats.
Le noyau de Linux bloque extrêmement rarement, et vous pouvez sans doute encore entendre le mp3 qui était en train de jouer, ou voir les diodes du graveur clignoter pendant le gravage en cours (d'ailleurs, si aucune des solutions ci-dessous ne fonctionne, attendez au moins la fin de la gravure - qui sera bonne ! - pour rebouter "à la barbare").
1. seule une application est plantée.
Si vous avez encore accès aux autres applications, que la souris bouge, etc., vous pouvez simplement "tuer" l'application plantée.
a) Pour une application graphique, la solution la plus simple consiste à utiliser xkill. Ce petit utilitaire transforme le curseur de la souris en une cible ou une tête de mort, et il suffit de cliquer sur la fenêtre de l'application plantée pour la faire disparaître. Sous KDE, lancez-le en tapant simultanément : Control-Alt-Echap. Sinon, tapez xkill dans un shell (ligne de commande).
b) une solution valable pour toute application, graphique ou non, consiste à la tuer en utilisant son numéro de processus, ou PID. Ouvrez un shell, et tapez "ps x", vous voyez défiler la liste des applications, avec leur numéro de processus correspondant. Si vous avez plus d'une page, utilisez "ps x | less", et récupérez le numéro correspondant à l'application plantée (son PID). Tapez ensuite : "kill PID" en remplaçant PID par le numéro trouvé. Si l'application ne se ferme toujours pas, essayez plus violent : "kill -9 PID".
2. la souris ne répond plus
Le cas est plus grave mais pas désespéré, et nécessite en général le redémarrage de X, la couche graphique de Linux.
a) méthode n°1
La façon la plus simple de faire pour tuer X, est de presser simultanément les touches Control-Alt-Backspace. Si cela ne fonctionne pas, essayez ensuite la méthode suivante.
b) méthode n°2
Nous allons essayer de passer sur une console texte. Tapez Control-Alt-F1 (ou de F2 à F6), et connectez-vous en tant que root : utilisateur root, suivi de son mot de passe.
De la même façon que ci-dessus, nous allons tuer X : "ps x | grep X" vous donne son PID, il ne vous reste plus qu'à le tuer par "kill PID_de_X" ou "kill -9 PID_de_X".
c) redémarrage de X
Si vous démarrez habituellement directement en mode graphique, il va se relancer tout seul, pour retourner dans la console graphique tapez Control-Zlt-F7 ; sinon, tapez "startx".
Si cela ne fonctionne pas mais que vous avez accès aux consoles texte par Control-Alt-Fn, vous pouvez redémarrer proprement en vous connectant en tant que root, et en tapant la commande "reboot" ou "shutdown -r now".
Note : malheureusement, les documents non sauvegardés risquent alors fort d'être perdus. Avant de redémarrer X, vous pouvez éventuellement tenter un "kill" (pas -9 !) sur l'application contenant votre document, et voir si cela fait quelque chose, en revenant en mode graphique par Control-Alt-F7...
3. pas moyen d'aller dans une console texte avec Control-Alt-Fn
Le clavier ne semble plus répondre, éventuellement l'écran est tout noir, ca va mal... Pourtant vous pouvez essayer trois choses :
a) Vous connecter "en aveugle" : l'écran est noir par suite d'un plantage video. Vous pouvez tenter de basculer sur une console virtuelle par Control-Alt-Fn, vous connecter en root : tapez root, [Entrée], mot_de_passe, [Entrée] (vous ne verrez rien, faites bien attention à ce que vous tapez), puis tapez reboot. Le PC devrait rebouter. Si rien ne se passe... passez à la suite !
b) Les touches magiques de requête système (merci à Michael Scherer et Lenny Cartier de m'avoir rappelé ce point) :
Si votre noyau est compilé avec les bonnes options (dans "Kernel Hacking", cocher "Magic Sysreq Key" - voir la doc dans /usr/linux/src/Documentation/sysrq.txt), vous disposez de séquences de touches pour rebouter, pour synchroniser le cache disque, et remonter tous les disques en lecture seule.
Utilisation : tapez simultanément Alt-PrintScreen-S ou Alt-ImprEcran-S pour vider le cache sur le disque (afin d'éviter la vérification du disque au redémarrage), suivi de Alt-PrintScreen-U pour remonter le disque en lecture seule (même raison), suivi enfin de Alt-PrintScreen-B pour redémarrer. Si cela ne fonctionne pas, c'est que votre noyau n'est pas compilé avec la bonne option.
c) Si vous avez un réseau local, connectez-vous en telnet ou ssh sur la machine plantée : 'telnet ma_machine' ou 'ssh ma_machine' (sous windows, HyperTerminal (tm) permet aussi de se connecter en telnet à la machine plantée).
Si la machine plantée répond au telnet ou au ssh, connectez-vous en root, et essayez de la rebouter proprement par la commande "reboot" ou "shutdown -r now".
4. rien ne marche :-(
Alors vous allez être obligés de redémarrer à la barbare, c'est à dire par le bouton reset ou par un cycle extinction/allumage...
Pour éviter dans ce cas un test souvent assez long du disque lors du redémarrage, il est conseillé d'utiliser un système de fichier journalisé (ext3, Reiserfs, etc.) à la place de l'ancien ext2.
Je débarque sur Linux, je ne pige rien ;-(
Ou trouver de l'aide en général ?
J'ai lu 10 Kg de docs, mais j'ai rien trouvé.
Je galère complétement :-(( : poster sur le BON forum (et seulement celui-la) en précisant clairement
Petit rappel de la netiquette : les gens qui vous lisent sont parfois (souvent ?) succeptibles, alors un petit "bonjour" pour commencer, et un merci après la (les) réponse(s) ne fait jamais de mal... et parfois ça fait plaisir ;-)
D'ailleur, la consultation de ce document est chaudement recommendée. On peut aussi lire ça ou ça, pour savoir comment poser une question si l'on veut une réponse sensée.
Beaucoup de monde risque un jour d'être confronté à ce problème. Plusieurs méthodes existent suivant le problème exact.
Le système bloque pendant l'initialisation du kernel, mais passe bien l'invite LILO
Dans la plupart des cas, on peut résoudre le problème en tapant à l'invite lilo: "linux 1", ou "linux single" (si linux est le mot que vous tapez pour lancer Linux ! voir votre install de LILO) ce qui permet d'arriver à un shell de commande et de modifier vos fichiers de démarrage, bref de régler le problème.
Si vous utilisez LOADLIN, ajoutez "1" au bout de votre ligne de commande. Par exemple :
C:>LOADLIN C:LINUXVMLINUZ root=/dev/hdb1 ro 1
Le noyau démarre, le système s'initialise bien, mais à la fin, l'écran devient noir et clignote
Vous vous trouvez sans doute devant un problème dù à X Window. Le dépannage est décrit dans la rubrique correspondante et dans ce truc.
Disquette RESCUE
Lire le truc correspondant.
La question des codes d'erreurs au démarrage de LILO revient assez souvent dans le forum ou vos mails, aussi voici un extrait du Bootdisk-HOWTO qui traite de ce problème.
Les questions sur ces erreurs sont posées si souvent sur Usenet que nous les incluons ici en tant que service public. Ce résumé est extrait de la Documentation Utilisateur de LILO de Werner Almesberger, disponible ici.
Quand LILO se charge, il affiche le mot "LILO
". Chaque lettre est imprimée avant ou après l'exécution d'une action spécifique. Si LILO échoue à un moment donné, les lettres affichées jusque là peuvent être utilisées pour identifier le problème.
(rien) | Aucun morceau de LILO n'a été chargé. Soit LILO n'est pas installé, soit la partition sur laquelle son secteur d'amorce se trouve n'est pas active. |
L | Le premier morceau du chargeur d'amorce a été chargé et démarré, mais il ne peut charger le second morceau. Les codes d'erreur à deux chiffres indiquent le type de problème. (Voir également la section "Codes d'erreur disque".) Ce cas indique en général une panne de périphérique ou une incohérence de géométrie (c'est à dire de mauvais paramètres disques). |
LI | Le premier morceau du chargeur d'amorce a pu charger le second morceau, mais n'a pas réussi à l'exécuter. Cela peut être causé par une incohérence de géométrie ou par le déplacement de /boot/boot.b sans lancer l'installateur de carte. |
LIL | Le second morceau du chargeur d'amorce a été démarré, mais il ne trouve pas la table de descripteurs dans le fichier carte. C'est en général dû à une panne de périphérique ou une incohérence de géométrie. |
LIL? | Le second morceau du chargeur d'amorce a été chargé à un adresse incorrecte. C'est en général causé par une subtile incohérence de géométrie, ou par le déplacement de /boot/boot.b sans lancer l'installateur de carte.|
LIL- | La table de descripteurs est corrompue. Cela peut être dû à une incohérence de géométrie ou au déplacement de /boot/map sans lancer l'installeur. |
LILO | Tous les éléments de LILO ont été correctement chargés. |
Si le BIOS signale une erreur lorsque LILO essaye de charger une image d'amorce, le code d'erreur correspondant est affiché. Ces codes vont de 0x00
à 0xbb
. Reportez-vous au Guide Utilisateur de LILO pour leur explication.
Merci à Gérald (g-eaux@wanadoo.fr) pour son astuce, que j'ai augmentée ici.
Bref, si votre ordinateur ne boote pas, et qu'au lieu de LILO
vous avez :
LI 01 01 01 01 --- 01 ou l'un des codes d'erreur ci-dessus, ne paniquez pas :
il suffit de réinstaller le chargeur de LILO (en tapant /sbin/lilo en root) après avoir vérifié que sa configuration est bonne.
La plupart du temps, ces erreurs proviennent du fait que vous avez modifié quelque chose dans l'organisation de vos disques durs (ajout ou suppression d'un disque ou d'une partition, etc.), et il suffit alors de réinstaller le chargeur.
Le problème sera de booter sous Linux afin de réinstaller le chargeur de LILO.
Si vous avez une disquette de boot, c'est le moment de l'utiliser. Sinon, vous pouvez passer par le mode "rescue" de votre distribution en bootant sur le CD de celle-ci. Sinon, vous pouvez utiliser des mini-distributions qui tiennent sur une disquette, faites pour ces cas désespérés où on ne sait plus comment démarrer son système (voir l'astuce correspondante).
Enfin, une fois sous Linux, il ne vous reste qu'à vous connecter en root, à vérifier la config de LILO, et à taper /sbin/lilo pour réinstaller le chargeur. Vous pouvez ensuite rebooter (mais profitez-en pour faire une disquette de sauvegarde si jamais cela ne fonctionnait pas...).
Si par malchance vous êtes Québécois (comme moi ;-) et que vous utilisez la distribution Mandrake 7.2, il y a fort à parier que votre lilo.conf ait une ligne vous empêchant de démarrer correctement un autre mode que celui défini par défaut ; c'est dû au fait que la touche "CR" (enter ou return) n'a aucun effet !
La ligne est la suivante et se trouve (en principe) à la 6 ou 7ème ligne :
Pour remédier à ce problème, vous n'avez qu'à commenter avec le caractère "#" cette ligne et à taper "lilo" (afin de réinstaller le bootloader) dans un terminal pour retrouver votre touche "CR".
Note du modérateur :
1. je ne trouve pas que ce soit une malchance d'être Québécois !
2. il doit y avoir moins bourrin comme solution, peut-être corriger ce fichier qc-latin1.klt ? Le premier qui me donne la correction aura gagné... le droit d'être publié ici ;)
Cela provient d'un problème de configuration de votre serveur X (c'est à dire l'environnement graphique).
Pour le résoudre, vous devez redémarrer votre ordinateur en mode texte.
Tapez Ctrl-Alt-Del et attendez que la procédure de reboot se termine.
Lors du boot, si vous utilisez LILO pour démarrer, vous avez un prompt "LILO" qui s'affiche.
À ce prompt, tapez "linux 3" puis [Entrée].
(Attention, si lors de l'installation, vous avez choisi un autre nom que "linux" pour booter, vous devez remplacer le "linux" ci-dessus. Pour voir les noms possibles, tapez [Tab] au prompt LILO.)
Ainsi, l'ordinateur démarre en mode texte. Vous devrez alors vous loguer en root pour résoudre le probléme (voir les autres astuces, ou l'article Régler les problèmes avec X Window).
Attention : Lorsque vous pensez avoir réglé le problème, avant de rebouter, n'oubliez pas de tester si X démarre, en tapant "startx" !
Bon courage !
La solution ultime est la disquette "RESCUE", lorsque même LILO ne démarre plus. A ce moment là, cette disquette de sauvegarde permet de charger une mini distribution Linux en mémoire (nommée TOMSRTBT), qui comprend tous les outils de maintenance (vi, mount, lilo, fdisk, emacs, etc.). Il suffit alors de monter la partition qui contient votre Linux en panne (mount -t ext2 /dev/hda2 /mnt par exemple) et de travailler sur les fichiers en cause ou de réinstaller LILO... suivant le problème exact.
Suivre le lien suivant pour récupérer le fichier qui va vous permettre de créer la disquette :
http://www.toms.net/rb/home.html
Pour créer la disquette :
- sous Linux : dd if=tomsrtbt.gz of=/dev/fd0
- sous DOS : dézipper et lancer install.bat (pas dans une fenêtre Windows, mais en redémarrant en mode DOS !)
mise à jour du 3/10/2001 : lisez l'article sur la distribution TOMSRTBT !
Quand Linux ne démarre plus, il peut y avoir plusieurs raisons.
Une raison relativement courante : vous avez modifié d'une manière quelconque le chemin des polices, et au démarrage, votre écran clignote : il y a une erreur dans les différents chemins des polices.
La solution est simple : enlever le mauvais chemin. Mais c'est plus facile à dire qu'à faire : votre écran ne cesse de clignoter. Pour cela il faut dire à Linux de démarrer en mode texte ! C'est simple, à l'invite de LILO :
LILO:
tapez sur la touche
LILO:
linux windows floppy linux2216
LILO:
Tapez alors le nom d'un des systèmes linux disponibles suivi de "3" :
LILO: linux 3
et votre linux démarrera en mode texte ("3" signifie "mode console") ; si cela ne fonctionne pas, vous pouvez essayer de remplacer "3" par "single" ou "1" pour démarrer en mode mono-utilisateur (aucune protection)
Note du modérateur: Les chemins de polices se trouvent dans le fichier /etc/XF86Config (ou /etc/X11/XF86Config) sous la forme :
FontPath "chemin"
Attention au chemin du style:
FontPath "unix/:-1"
Ce chemin permet de se servir d'un serveur de fonte local. Si c'est ce chemin qui est en erreur, lisez la rubrique X troubleshooting de ce site.
Voir aussi l'astuce sur les codes d'erreur de LILO au boot.
Pour ceux qui ont des problemes avec certaines commandes perl voici comment obtenir de l'aide :
Pour éviter certaine pollution dans les résultats des moteurs de recherche, utilisez google qui a un module linux : http://www.google.fr/linux
Exemple, si vous demandez : '+sed +syntaxe +exemples -perl' :
et on a seulement 48 reponses !!!!
c'est egalement pratique pour rechercher un fichier
Télécharger l'icone de Léa, mettez là dans un répertoire quelconque.
>Cliquez sur la barre de recherche de Galeon avec le bouton droit, et choisissez "Editer..." (Edit... en anglais).
Puis cliquez, sur le premier bouton (Créer un nouveau signet).
Puis, remplissez le formulaire de la manière suivante :
Nom: | Léa |
URL: | http://lea-linux.org |
URL paramétrée: | http://lea-linux.org/search/?searchtext=%s |
Pour certaines versions (anciennes) de galeon vous ne pourrez pas entrer d'URL paramétrée, il faudra remplir le formulaire de la maniére suivante :
Nom: | Léa |
URL: | http://lea-linux.org/search/?searchtext=%s |
Puis cliquer sur "Parcourir..." et choisissez l'icône de Léa que vous venez de télécharger.
Vous pouvez ajouter n'importe quel moteur de recherche en procédant de même.
Dans Konqueror (KDE3) cliquez sur Configuration puis Configurer Konqueror choisissez ensuite Navigation avancée.
Validez ensuite Activer les racourcis web, puis cliquez sur Ajouter. Remplissez alors les champs de la maniére suivante :
Nom du moteur de recherche: | Léa |
URI de la recherche : | http://lea-linux.org/search/?searchtext=\{@} |
Raccourcis URI : | lea |
A partir de maintenant pour chercher quelque chose sur Léa, il suffit de taper dans l'url : "lea:usb" pour rechercher toutes les pages contenant le mot usb sur Léa.
Pour consulter les pages de manuel avec Konqueror, il suffit de taper dans la zone d'adresse : "man:" suivi du nom de la page.
Par exemple : man:tcpdump
Si vous utilisez KDE, vous pouvez utiliser le KDE-Help Center (l'aide de KDE, l'icone en forme de bouée) ou simplement Konqueror pour parcourir les page de manuel et les pages info.
Pour cela tapez comme URL : man:/commande (pour lire la page de manuel concernant la commande : "commande") ou info:/commande (pour lire la page info concernant la commande "commande").
Pour avoir la liste des pages man ou info, tapez juste man:/ ou info:/.
Les commandes du shell, leurs paramètres, les scripts...
Pour ceux qui cherchent comment faire de la couleur dans leur scripts, voilà la solution :
Lorsque l'on écrit un script pour démarrer une application ou un démon au démarrage par exemple, on peut apprécier de voir ce démarrage autrement que noyé dans la série de messages qui défilent. De même, lorsque l'on se lance un script qui fait quelque chose (en fait, j'ai beau chercher, je ne connais pas de script ne faisant rien ;) ), on aime bien voir son texte à soi différement, alors voilà, le mot magique est : Séquences d'échappements !
Je commence par un exemple, et je détaille un peu après :
echo -e '\E[32;40m'"\033[1mScript Lancé !\033[0m"; tput sgr0
Ceci affiche un texte en gras couleur verte sur fond noir !
Le gras, c'est le \033[1m
, le 0
à la fin permettant de désactiver le gras...
Le \033
est la séquence d'échappement, le m
sert à dire où elle s'arrête...
Pour ce qui est des couleurs, on le fait dans un ' '
, c'est comme ça, avec un \E[CouleurDeFond;CouleurDuTextem
Dans un shell si vous tapez emacs
(en mode graphique) et que vous avez oublié de mettre le &
(emacs &
), la console n'est plus disponible.
Dans ce cas selectionner la fenetre de la console, faite un [Ctrl + Z]
, et vous récupérez votre console. Cependant, emacs a l'air un peu planté...,il n'en est rien, son exécution est juste suspendue, il faut dans ce cas taper dans la console bg
et tout fonctionne à nouveau.
Pour y voir plus clair quand vous faites un grep, essayez ceci :
grep --color=always CHAINE /votre/fichier
La chaîne recherchée sera alors en rouge :)
Si vous souhaitez ce comportement de grep par défaut, éditez le fichier ~/.bashrc
et ajoutez y la ligne
alias grep='grep --color=always'
Stop!!!
Il suffit que j'écrive un script, que je tape une commande, et mes fichiers dont le nom contient des espaces m'obligent à utiliser les \
, ""
ou ''
Voyons comment remplacer ces espaces par des _
et vous ?
Note de Jean-Thomas MUYL (maston28) :
Il suffit en fait d'utiliser la commandetr
Ca revient au même, mais c'est toujours intéressant de connaître deux manières de faire quelque chose hein :)
Si vous vous perdez à chaque fois dans les pages man pour trouver la syntaxe pour supprimer un repertoire non vide, il y a une méthode radicale (et sans utiliser un FileManager comme konqueror...).
Faites: mv NomDuDossier /dev/NULL
.
rm -Rf monrepertoire
...
Il est utile quand on travaille en console de différencier du premier coup d'oeil le résultat d'une commande. Pour ca, on peut customiser le prompt de differentes façons :
Pour ça il vous faut modifier le fichier .bashrc
qui se trouve dans votre répertoire personnel en rajoutant à la fin PS1="votre \prompt\perso"
Je ne vais pas entrer dans le détail (sauf si on me le demande) car tout le web en parle. Seulement je vais m'attarder sur un point qui est très génants, la couleur.
Pour la suite il faut juste savoir que :
\u
est le nom de l'utilisateur (root, pikachou, asteroid, ...)
\h
est votre hostaname (bench, monPC, station, MIR, ...)
\W
est le repertoire courant (celui dans lequel vous êtes)
\w
est le chemin complet du repertoire courant
\n
permet de revenir à la ligne
\$
qui met un $ qd vou n'êtes pas root ou un # si vous l'êtes
Par defaut le PS1 est [\u@\h \W]\$ et on le connait en faisant echo $PS1
Lorsque j'ai mis de la couleur dans mon prompt j'ai fait PS1="\e[1;31m\u sur \h dans \w \n=>\e[0m"
ce qui me donne un prompt rouge du style :
Le fait de saisir PS1="... dans une console permet de voir les modifs sans pour autant les enregistrer directement. un exit
vous remettra au prompt précedent.
Mais malheuresement, lorsque je tapais des commandes qui dépassaient la fin de la ligne ça ré-écrivait sur le prompt au lieu d'aller à la ligne.
L'astuce consiste donc à remplacer \e[1;31m
par \[\e[1;31m
et pareil pour arreter la couleur le \[\e[0m.
Pour conclure :
\[\e[1;31m
commence la couleur dans le bash (ici uniquement le prompt) et
\[\e[0m
arrête la couleur.
Le code couleurs est facile a trouver sur le web et en francais avec un tas de petites explications :)
Voila j'espère que ce petit post aura résolu le problème de certains et donner envie aux autres d'en savoir plus sur le bash et son propmt :-)
Cette astuce va permettre de vous faire un pdf à partir de la page de manuel en 1 étape.
On peut avoir besoin de savoir, avant l'exécution d'un script si l'user est
bien root (ou n'est pas, selon le cas bien sur...).
Voilà un bout de code
tout simple à insérer en début de script...
Le script suivant permet de renommer un liste de fichier avec le nom du propriétaire et la date de dernière modification
Lorsque vous voulez lancer un job long, par exemple une compilation de programme complexe (KDE ?), vous pouvez avoir envie de le faire à distance, via ssh. Problème : comment contrôler l'état d'avancement de la compilation à la connexion suivante ?
Une solution simple consiste à lancer la compilation avec la commande nohup (no hang up, commande qui permet de continuer l'action même après déconnexion).
Par exemple :
nohup make &
La sortie de la compilation est dirigée par défaut vers un fichier nohup.out
Pour consulter l'état d'avancement il suffit d'utiliser la commande :
tail -f nohup.out
Vous verrez alors la fin du fichier, raffraichie automatiquement dès qu'une nouvelle ligne s'y ajoute -> vous récupérez votre affichage standard (ctrl+c pour sortir)
Note de Jice : on peut aussi utiliser l'utilitaire screen
pour récupérer des sessions (et accessoirement avoir plusieurs écrans virtuels sur un seul terminal).
Par défaut, updatedb va ommetre certains filesystem et certains repertoires lors de la construction de la base de donnée.
Pour changer cela, il vous faut éditer /etc/update.conf, et modifier les lignes PRUNEPATH=
et PRUNEFS=
.
Attention cependant, inclure /home dans la base de donnée pourrait permettre à n'importe quel utilisateur de voir le nom des fichiers des autres. Utilisez donc cette option avec parcimonie pour des raisons de sécurité.
Pour avoir des informations sur une fenêtre ouverte quelconque :
xwininfo
ou
xprop
Ces commandes sont à lancer en ligne de commande sous un terminal. Une fois, la commande lancée, le pointeur de la sourie change, alors cliquez sur la fenêtre qui vous intéresse et les informations sur cette fenêtre seront affichées dans le terminal d'où vous avez lancé la commande.
Entre autres informations sur la fenêtre vous avez sa position dans l'environnement graphique (coordonnées X,Y) et sa taille.
Voici une commande peu connue permettant d'enregistrer dans un fichier tout ce que vous faites en ligne de commande sans rien changer à vos habitudes :
script nom-fichier
Cela enregistrera toutes les commandes que vous tapez ainsi que leurs sorties d'écran. Le fichier résultat peut être très intéressant dans plusieurs cas :
Pour ne plus enregistrer dans le fichier, il suffit de taper :
exit
Vous ne vous êtes jamais demandé comment ouvrir et fermer votre lecteur CDROM en mode console ?
Ejecter son CDROM ou DVD en mode console, impossible ? Et bien non !
Pour éjecter le CDROM. S'il est monté, il sera démonté automatiquement puis éjecté :
/etc/fstab
.Si vous avez un CDROM à tiroir, voici comment refermer le tiroir :
eject -t /dev/cdrom
.Consultez le man
de la commande eject pour en savoir plus.
Dernier petit truc, si vous gravez en ligne de commande, cdrecord
a une option pour éjecter le CDROM une fois la gravure finie.
Il arrive parfois que le terminal se mette à mal afficher les caractères, par exemple lorsque l'on fait un more d'un fichier binaire.
Si un [CTRL] + [l] ne rafraichit pas le terminal, il suffit de re-initialiser le terminal en tapant à l'aveugle :
echo [CTRL] + [V]
[ECHAP]
[C]
[ENTREE]
Améliorer la présentation des resultats dans les script
les logs ou même les emails
Utilisez les commandes tput et banner si vous avez (selon la distribution utilisée)
bold=`tput smso` offbold=`tput rmso`
echo $bold "toto" $offbold
Voir le man pour les autres options de présentation
Je trouve que cette commande n'est pas très utilisée mais elle est très puissante. Comment faire pour rechercher un texte alors qu'on ne connait pas le fichier d'où il provient ?
C'est simple. Il faut utiliser la commande grep
. Si tous les fichiers sont dans le même répertoire, pour rechercher la chaîne "montexte", il suffit de faire :
Sinon, si les fichiers sont dans une arborescence :
Explications :
Voila
Voici un petit script pour tester votre connexion internet :
Remplacez <site>, par un site internet qui accepte le ping, comme Google (www.google.fr).
En modifiant un peu ce script, vous pouvez l'utiliser pour d'autres tests une fois que vous êtes sûr d'être connecté.
Vous pouvez afficher votre IP ou mettre votre machine à l'heure.
Le script modifié :
Remarque : Pour que ces scripts fonctionnent, il est impératif que vous configuriez vos DNS. Pour ce faire, vérifiez le contenu du fichier /etc/resolv.conf, qui doit contenir les DNS de votre provider.
Le Bash offre une fonctionnalité interessante pour retrouver une ancienne commande (présente dans le bash_history).
Tapez : Ctrl^R
Ca lance le reverse search. Il suffit alors de taper le début d'une commande et de la compléter jusqu'à la trouver.
Je trouve le mécanisme de complession assez efficace.
Nyko.
c'est tout simple, à la fin de la commande placer un " & "
Exemple :
$ xine&
xine se lance et on a de retour la main pour faire autre chose.
Comment extraire les fichiers provenant d'un rpm paquet.rpm ?
Faire rpm2cpio paquet.rpm > paquet.cpio, pour transformer le package en archive cpio.
Il faut ensuite extraire les fichiers de l'archive cpio avec la commande cpio :
cpio -i --make-directories < paquet.cpio
Et le tour est joué !
Pas indispensable, mais le PATH est quand même plus facile à lire...
echo $PATH | tr ":" "\n"
NDLR:
Un petit script est le bien venu, éditez '/usr/bin/jpath' (comme joli - path) et mettez-y :
---------------coupez là----------------
#!/bin/sh
echo $PATH | tr ":" "\n"
---------------coupez là----------------
puis un petit chmod +x /usr/bin/jpath le rendra exécutable par jpath
Il m'arrive souvent de lancer une application X (gtfp, emacs, ...) sous un terminal. Puis j'oublie et je ferme le terminal et cela ferme l'application X aussi !
Note du modérateur (Jicé) : la raison est que Linux considère le processus lancé dans le terminal comme un "fils" du processus du terminal ; de plus, lorsqu'on arrête un processus, tous ses processus "fils" sont automatiquements terminés.
Pour éviter cela, il suffit de lancer votre application "sans père". En faisant comme ceci :
nohup votre-appli-x &
N'oubliez pas le &, sinon il ne vous rend pas la main sous le terminal et vous ne pourrez le fermer sans fermer l'application X.
Donc par exemple, pour lancer emacs :
nohup emacs &
Bien sûr, si l'application réclame des paramètres il suffit de les mettre avant le &, comme ceci :
nohup emacs toto.txt &
Ceci est applicable à tous les processus que vous voulez laisser tourner même si vous fermez le terminal.
Note : Suivant le terminal que vous utilisez, il ferme quand même le processus si vous fermez le terminal avec la "croix" (en haut à droite). Pour sortir du terminal, préférez :
exit
Voici une ligne de commande shell pour connaître votre addresse IP :
ou :
ou encore (en utilisant perl) :
Cette commande peut être lancée par n'importe quel utilisateur et/ou par un script si vous le désirez.
Ou même :
Pour comprendre cette dernière commande, voyez le site.
Un petit truc marrant :
tapez : yes "Léa est le meilleur site du monde de l'univers !" !
La commande shell qui permet d'effectuer un rechercher/remplacer dans un fichier est sed
.
Exemple :
sed "s/ChaineRecherchee/Remplacement/g" le_fichier > le_nouveau_fichier
Remarque : la chaîne qui suit sed
est une expression régulière, c'est à dire qu'elle offre de nombreuses possibilités (jokers, etc.), trop longues à expliquer ici (mais un man regexp
ou man -k regexp
devrait vous renseigner)
Vous voulez vous initier au bash (par exemple) et on vous a dit de faire man bash, seulement voilà, vous êtes allergique aux pages de manuel !
Cette astuce va vous permettre de vous faire un pdf à partir de la page de manuel.
Tapez :
man -t bash > bash.ps
ps2pdf bash.ps && rm -f bash.ps
Vous aurez ainsi un fichier bash.pdf que vous pourrez lire, comme un autre, avec xpdf, Ghostview ou Acrobat reader par exemple..
Qui n'a jamais fait une fausse manipulation dans ses commandes shell et se retrouve avec un fichier ayant un nom "-s" par exemple.
Un rm -s se marchera pas (rm croyant qu'on lui passe l'option -s).
Il alors faut utiliser l'option "fin de commande" symbolisée par "--". Pour notre exemple alors il suffit de faire:
rm -- -s
Note : -- est utilisable pour toutes les commandes shell.
Ctrl+F ne donnera rien ;-).
Si votre PAGER1 est less, vous pouver chercher du texte en tapant :
/texte puis [Entrée]
Puis :
* chaque pression sur la touche [n] (comme next) ira à la prochaine occurrence de texte,
* chaque pression sur la touche [N] ira à l'occurrence précédente de texte.
1Note du modérateur :
* pour connaître votre pager (i.e. le programme qui permet d'afficher du texte page par page), tapez echo $PAGER.
* cette astuce fonctionne également avec le pager more, cependant pour chercher la prochaine occurence, tapez simplement / puis [Entrée].
Si vous vous servez un tant soit peu des pages de manuel (et c'est conseillé !), vous avez déjà du rencontrer le problème :
Vous êtes en train de développer un ptit truc en C et vous ne vous rappelez plus de la syntaxe de la fonction read.
Vous tapez donc man read et ...
... Vous tombez sur bash built-in commands. ARRGH, déception et peste la vérole.
La solution est toute simple, les pages de manuel sont réparties en sections numérotées de 1 à 9 plus la section n.
Pour consulter une page d'une section particulière, il faut le dire à man.
Chez moi :
- man read me donne read dans les Bash built-in commands,
- man 2 read me donne read, en C,
- man n read me donne read, en TCL.
Note de Le Felis (LeFelis chez bigfoot com):
La commande man -a la_commande, qui affiche toutes les pages
que man dispose sur le sujet. On passe d'une section a l'autre par la touche q.
Note du modérateur :
Sans argument de section, man renvoie la première page trouvée.
les différentes sections sont :
1 - Commandes Generales (comme cd, ls, echo, etc.)
2 - Appels Système (fonctions en C)
3 - Sous-routines (fonctions en C)
4 - Fichiers spéciaux
5 - Formats de Fichiers (fstab, crontab, hosts, etc.)
6 - Jeux
7 - Macros et Conventions
8 - Commandes de Maintenance (chmod, chown, init, lpd, mount, reboot, mk*fs, etc.)
9 - Interface du Kernel (fonctions en C)
n - Nouvelles Commandes (dont pas exemple les fonctions TCL)
Vous pouvez trouver les pages de man sur le web à l'adresse http://www.openbsd.org/cgi-bin/man.cgi (ces pages de manuel sont destinées à OpenBSD mais la plupart du temps valables aussi pour Linux)
Pour avoir ls en couleur il faut taper ls --color. C'est bien me direz vous mais c'est chiant au possible à taper à chaque fois !
CERTES. Les solutions :
Ou alors, ce n'est que pour vous et vous ajoutez une ligne dans ~/.bashrc,
Ou alors votre root bien aimé vous ajoute gentiment une ligne dans /etc/bashrc (si on utilise bash comme shell et qu'il est bien rangé là)
Voici la ligne en question :
alias ls="ls --color"
Vous allez vous empresser de me répondre : "oui mais quand je pipe1 le résultat de ls dans autre chose, j'obtiens des caractères bizarres.
J'ai pensé à vous et les concepteurs de linux aussi (bien avant moi).
Remplacez donc la ligne sus-mentionnée par :
alias ls="ls --color=auto" et le tour est joué !
Faites un ls | less dans les deux cas pour vérifier, euh, si vous avez less (sinon utilisez more...) ;-)
tshaw, a+
1Note du modérateur : le pipe est le caractère "barre verticale" ou '|'. Ce caractère spécial permet de faire des redirections de la sortie d'une commande dans l'entrée d'une autre.
(voir dans l'article sur le shell, les redirections).
Tapez vos commandes dans l'ordre séparées par &&.
Elles seront ainsi traitées dans l'ordre jusqu'à ce qu'il y ait une erreur.
Ex : ./configure && make && make install
Vous pouvez ainsi vous faire un café en installant The GIMP1.2 (merci papa Noël)
Pour ça tapez la commande suivie de | less
.
Vous pouvez alors :
/ mot_à_chercher
puis [Entrée].less
n'existe pas sur votre système, essayez more
Pour savoir si un rpm est installé, tapez dans un shell (une console) :
$ rpm -qa | grep nom_ou_partie_du _nom_du_rpm_recherché
Par exemple, pour savoir si vous avez kde et les rpm contenant "kde", tapez :
$ rpm -qa | grep kde
Vous avez une liste de RPMs dans /mnt/cdrom/Mandrake/RPMS
(le cd d'installation de la Mandrake par exemple) et vous souhaitez installez le RPM contenant le fichier 'bidule', mais vous ne savez pas dans quel RPM celui-ci se trouve...
La solution :
for i in /mnt/cdrom/Mandrake/RPMS/*rpm ; do if rpm -qpl $i | grep bidule > /dev/null ; then echo $i ; fi ; done
et voilà ! vive le shell !
Note du modérateur : selon les distributions, les RPMs peuvent se trouver dans d'autres répertoires. Par exemple, pour une Redhat : /mnt/cdrom/Redhat/RPMS
, etc.
Note de Maston28 : Plus simplement, avec urpmf
sous mandrake, tapez : urpmf bidule
.
Par exemple, je recherche le fichier gaim.desktop
. Je tape :
Le résultat est de la forme : <nomdupaquet>:<arborescence/vers/le/fichier>
.
Dans notre exemple, le fichier en question se situe trois fois dans le paquet gaim
.
Supposons que vous ayez un fichier nommé : "Mes documents" (par exemple y celui de win$$$) et que vous souhaitiez le déplacer vers /bidule
Si vous tapez:
mv Mes documents /bidule vous obtenez une erreur !
Il faut en fait taper :
mv "Mes documents" /bidule
ou
mv Mes\ documents /bidule
Ceci fonctionne aussi avec d'autre caractères spéciaux comme '\' ,'/' etc.
Comment rechercher dans /home/jice (par exemple) tous les fichiers plus récents qu'une date donnée ?
Créez un fichier temporaire (on l'effacera par la suite) à la bonne date par :
touch -t 199912251615 fichier.tmp
(cela crée le fichier fichier.tmp, avec comme date de dernière modif le 25/12/1999 à 16h15).
Ensuite, tapez :
find /home/jice -newer fichier.tmp -print
pour en afficher la liste (voir man find pour les autres options de find).
Comment travailler (copier, renommer, etc.) sur des fichiers de façon globale ?
C'est en même temps moins simple que sous DOS (où un simple "ren *.htm *.php3" suffit, mais beaucoup plus puissant car cela permet de faire des choses totalement innaccessibles avec DOS).
La syntaxe générale est assez simple à se souvenir, car la structure de la commande est toujours la même :
on utilise soit une boucle for (pour un travail cantonné au même répertoire) soit la commande find (pour un travail récursif sur les sous-répertoires), puis on exécute la commande voulue sur chaque fichier.
Par exemple, pour renommer tous les fichiers .htm en .php3:
for i in *.htm; do mv $i `echo $i | sed "/.htm/s//.php3/"`; done
ou
find . -name "*.htm" -exec mv {} `echo {} | sed "/.htm/s//.php3/"` \;
Equivalent DOS :
ren *.htm *.php3
Explications :
Pour changer le "toto" présent dans le nom des fichiers en "titi", où qu'il se trouve (début, fin, ou milieu) :
for i in *toto*; do mv $i `echo $i | sed "/toto/s//titi/"`; done
(pas d'équivalent en DOS)
Pour copier tous les fichiers finissant par .htm ou .html vers le même nom auquel on ajoute .bak :
for i in *.htm*; do cp $i $i.bak; done
la même chose, mais récursivement sur tous les répertoires :
find . -name "*.htm*" -exec cp {} {}.bak \;
(pas d'équivalent en DOS)
Bref, la structure qui modifie le nom du fichier est globalement toujours la même : "commande $i `echo $i | commande_qui_transforme_$i`" (pour modifier la valeur de $i, voir les pages de man de sed, tr...), ou "commande $i append$iprepend" (pour ajouter avant et/ou après $i). Voir également ci-dessous :
Comment renommer automatiquement des fichiers de manière à remplacer les espaces par des underscores, et supprimer les accents en conservant les majuscules ?
Tapez sur une seule ligne de commande :
for i in * ; do mv "$i" `echo $i | tr "àçéèêëîïôöùüÂÇÉÈÊËÎÏÔÖÙÜ " "aceeeeiioouuACEEEEIIOOUU_"` ; done
(merci à Charles Goyard pour ses remarques)
Un bon exercice peut être de trouver comment faire la même chose mais sur les fichiers du répertoire et de ses sous-répertoires (utilisez find !)
Comment effacer tous les fichier *.tmp dans un répertoire et ses sous-répertoires ?
Nous allons utiliser find :
find . -name "*.tmp" -exec rm -f {} \;
(les accolades {} sont remplacées par le nom du fichier en cours).
Des trucs et astuces sur les logiciels.
Par exemple, si dans gaim vous voulez que les liens que l'on vous envoie s'ouvrent dans un nouvel onglet (tab) dans mozilla, vous devez utiliser la commande mozilla -remote "openfile(%s, new-tab)"
comme navigateur par défaut. %s
est dans gaim la variable 'url'. Ceci est transposable dans n'importe quel autre programme...
Avec le thème par défaut de gaim, il y a une liste de smileys avec la plupart des smileys connus. Cependant certains ne figurent pas dans la liste: en voici quelques uns:
(avec le support des codecs RV9)
Premièrement, il faut télécharger le lecteur Real : ici, il faut s'incrire, c'est du logiciel propriétaire, mais c'est gratuit. Préférez la version Linux 2.x (libc6 i386)
si vous utilisez un processeur compatible Intel. Au jour où j'écris ses lignes le fichier téléchargé s'appelle : rp8_linux20_libc6_i386_cs2.bin
.
Ensuite, il faut les codecs RV9 : ici.
Puis, c'est parti : on installe le lecteur :
Répondez correctement aux questions, et faites attention où vous installez realplayer : je l'ai mis dans /opt/RealPlayer8/
.
Enfin, copiez les codecs RV9 :
C'est tout ! Enfin presque, il n'y a plus qu'à installer le plugin Mozilla dans /usr/lib/mozilla/plugins
(enfin, c'est là qu'est installé Mozilla chez moi) :
Voilà, cette fois c'est tout !
Supposons que vous vouliez consulter la documentation de mplayer. En gourou d'Unix, vous faîtes :
cd /usr/share/doc/mplayer-*/French/
L'aide se trouve être au format html. Pour l'afficher, vous tentez :
mozilla index.html
Le résultat bien décevant est : www.index.html not found
La commande correcte permettant d'ouvrir le fichier dans une nouvelle tabulation si mozilla est lancée est :
mozilla -remote "openfile(usr/share/doc/mplayer-0.90/French/documentation.html, new-tab) "
Pratique, mais un peu long. Nous avons trouvé là un prétexte pour faire un script shell.
Enregistrez le script suivant dans un dossier se trouvant dans votre variable PATH, modifiez-en la troisième ligne, puis rendez-le exécutable grace à la commande :
chmod u+x html
Dorénavant, la commande html un_fichier.html
lance mozilla pour afficher ce fichier, ou l'affiche
dans un nouvel onglet si un navigateur est déjà lancé.
Le script html :
La méthode est simple, mais il faut en avoir l'idée ;)
Cela nécessite que ImageMagick soit installé sur votre système.
Démarrez votre système ou terminez votre session afin d'afficher l'écran de démarrage. Passez sur une console texte ([Ctrl]-[Alt]-[Fn], où n est 1, 2, ... 6) et connectez-vous en root.
Dans cette console, tapez :
# ps axw | grep -- "-auth" | grep -v grep
Cette dernière ligne peut varier, ce qui est important est en gras, il faut recopier très précisément le votre dans la ligne suivante :
9263 ? R 0:19 /usr/X11R6/bin/X -auth /var/run/xauth/A:0-pmbpGb
# xauth merge /var/run/xauth/A:0-pmbpGb
# export DISPLAY=":0.0"
# import -window root image.ext
où image.ext
est le nom de l'image que vous voulez enregistrer.
Là, vous entendez quelques bips, si import ne rend pas la main, retournez sous X ([Ctrl][Alt][F7]) et cliquez n'importe où.
Si votre image ne comporte que des parasites, essayez plutôt dans la console :
import image.ext
Puis retournez sous X, et cliquez sur le fond d'écran.
Note 1 : import de ImageMagick reconnaît l'extension et enregistre le fichier au bon format (png, jpg...). Vous pouvez remplacer ":0.0" par ":0.1" pour copier votre deuxième écran en mode "multihead".
Note 2 : on peut aussi capturer l'écran de fin de session de KDE ou Gnome (et des autres ;) avec cette méthode.
Note 3 : Cette méthode peut aussi servir dans un script et donc permettre par exemple de faire des copies d'écran à intervalles réguliers en mettant un script dans la crontab
de root
.
Note 4 : durant mes tests, il m'est arrivé d'être bloqué sous X : la souris transformée en croix, et plus rien ne répond. Retournez alors dans une console et répétez la manip avec import, cela règlera le problème.
Pour pouvoir entrer du texte en japonais, il faut tout d'abord installer quelques paquetages. Il faut au minimum installer les suivants :
locales-ja
FreeWnn
kinput2-wnn4
fonts-ttf-japanese
Ensuite, il faut lancer le serveur FreeWnn puis kinput2-wnn4.
Il faut également que 2 variables d'environnement soient définies :
XMODIFIERS="@im=kinput2"
LC_CTYPE=ja_JP
Ensuite, il suffit de taper SHIFT-Espace pour taper en japonais. Se reporter au manuel de Kinput et FreeWnn pour plus de détails et pour connaître leur mille et une facettes.
Merci à Rutger Noot pour son aide.
Après l'installation, vous remarquerez peut-être que Maple marche mais pas xmaple, qui plante tout de suite, après des messages d'erreurs du style :
/usr/local/maple_su/bin.IBM_INTEL_LINUX/maplew: Symbol `__vt_8iostream.3ios' has different size in shared object, consider re-linking.
Sur le site de Maple, le problème est connu : c'est la librairie libstdc++ de LM 8.1 qui est incompatible avec Maple 7. En revanche, la librairie qui vient avec LM 7.2 marche convenablement.
Le problème est que si l'on remplace le package lidstdc++ par celui de LM 7.2, on la remplace pour tout le système, ce qui risque de le rendre instable.
Il faut utiliser la variable d'environnement LD_PRELOAD pour éviter ce problème. Je suppose que Maple est installé dans /usr/local/maple_su.
Téléchargez la librairie libstdc++-3-libc6.1-2-2.10.0.so qui vient avec LM 7.2. (A partir de ma page web: http://noothuy.free.fr/LM81, ou à partir d'un site distribuant le rpm de libstdc++ de LM 7.2).
Installez-la par exemple dans /usr/local/maple_su/bin.IBM_INTEL_LINUX.
Il faut maintenant que xmaple charge d'abord cette librairie plutôt que celle du système. Editez pour cela le script xmaple qui se trouve dans /usr/local/maple_su/bin.
Juste après les commentaires du début, rajoutez les deux lignes (la première est un commentaire):
# First define path to convenient c++ library
export LD_PRELOAD=/usr/local/maple_su/bin.IBM_INTEL_LINUX/libstdc++-3-libc6.1-2-2.10.0.so
Et le tour est joué, xmaple fonctionne.
L'usage de Latex est vivement conseillé pour la création de fichiers au format PDF ou PostScript. Cependant, il est complexe de le maîtriser. Par contre, il est possible de créer des fichiers de ce type avec des logiciels wysiwig (par ex. traitement de texte). Je prendrai l'exemple d'Abiword.
Niveau: débutant
Temps: quelques secondes
Logiciels:
- Linux + X
- Abiword
- Ghostscript
- Un logiciel de visualisation
recette:
Lors du make test (après avoir tapé ./configure et make), si vous avez des erreurs sur certaines fonctions réseau, vérifiez que vous pouvez faire sans erreur un ping au moins sur votre machine.
Sinon, activez l'interface loopback en tapant ifup lo (faut être root ?).
Testé sous Mandrake 9.1, Système d'impression CUPS, ppd, gimp-print >4.2.x et ghostscript OpenOffice.org 1.1
Introduction
Le soucis est de pouvoir paramétrer les propriétés avancées d'une EPSON EPL5500+ (contraste, qualité d'impression, type de tramage/diffusion), cette imprimante possédant à priori les mêmes attributs que la série HP5P, HP5L, HP6L etc ... soit du langage PCL5
Je suppose que cela fonctionne avec bien d'autres modèles..
Le pilote de base ghostscript-lj3
(celui recommandé et le plus classique car compatible laserjet3) ne permet pas d'accéder à ces propriétés avancées.
Le soucis principal vient du fait que la mémoire de ces imprimantes étant ridicule, même si elles sont capables d'imprimer en 600dpi, ceci est inutilisable dans la pratique... il faut donc imprimer en 300dpi, mais en utilisant des méthodes de tramage/lissage avancées, sinon les images, et notamment celles contenant du texte (copies d'écran par ex) sont grossièrement tramées donc inexploitables.
Choix du pilote
Choisir un pilote de type ghostscript+gimp-print-ijs
Lors de l'installation dans printerdrake, aller dans options de
l'imprimante->avancé: les options qualité, dither (tramage ?) etc ..
sont disponibles; elles correspondent aux réglages par défaut.
Télécharger d'abord le fichier ppd correspondant à votre imprimante.
Pour ce faire, allez sur ce site.
Pour accéder aux paramètres dans openoffice , il faut lancer un
utilitaire spécial nommé spadmin
, situé dans le dossier d'install
d'OpenOffice (/usr/local/OpenOffice.org1.1.0/spadmin
dans mon cas).
Cliquez sur ajouter une imprimante, suivant, puis sur importer: allez
dans le dossier où vous avez téléchargé le fichier ppd de votre
imprimante...
Le reste est trivial.
Ensuite dans Oo, si vous allez sur imprimer->propriétés, vous retrouvez dans les options tous les paramètres avancés.
Bonne chance...
Si vous trouvez la manipulation :
Edition > Préférences > Cocher ou décocher "Afficher les fichiers cachés ou de sauvegarde" > Fermer Préférences
longue et pénible,
simplifiez vous la vie avec deux scripts :
Lancer Nautilus, puis Click-droit sur un fichier ou répertoire Scripts > Ouvrir le dossier de scripts
soit /home/user/.gnome2/nautilus-scripts
Il suffit d'un click droit sur un fichier ou répertoire pour choisir le script à lancer (afficher ou masquer) dans "Scripts"
merci à dredoz de gnomesupport.org
Par défaut, lorsque je sélectionne un .pdf, c'est xpdf qui ouvre le document. Mais à chaque fois la valeur du zoom vaut +1 et moi je préfère nettement +3. Afin de stopper cette manie de rectifier le zoom à chaque ouverture de .pdf, j'ai copié le fichier de config par défaut dans mon répertoire utilisateur :
cp /etc/xpdfrc $HOME/.xpdfrc
puis j'ai ajouté dans ce fichier $HOME/.xpdfrc
la ligne :
et c'est fini !
À chaque fois que je sélectionne un document, celui-ci s'ouvre en zoom +3 parfaitement encadré par la fenêtre du document. Faîtes un "man 5 xpdfrc" pour en savoir plus sur le fichier de config de xpdf !
Voici un script simple pour ripper et encoder un DVD en 2 passes ainsi que la piste audio française au format mp3.
/!\ mplayer doit être compilé avec le support de lame pour encoder la piste audio en mp3, http://lame.sourceforge.net
Supprimez les fichiers divx2pass.log et frameno.avi pour effectuer un nouvel encodage.
Aller dans le menu déroulant X-chat / liste des serveur.
Quelque part à l'écran, un menu déroulant proposant des jeux de caractères...
Sélectionner iso 8859-1
(western Europe), fermer le xchat, et le relancer. Le tour est joué.
Merci martial pour l'astuce ! ;o)
Hop!
Si vous etes comme moi, vous devez avoir une dizaine de répertoire pour les mp3 qui se promenent un peu partout, sur des disques différents, avec des File Systems différents, etc. Voici la solution pour pouvoir les rassembler rapidement et facilement...
Je pars du principe que vous avez locate et que la base de donnée est à jour et contient bien les répertoires en question.
Vous n'avez plus qu'à exécuter le script ! et à faire "+dir" dans xmms, puis choisir le répertoire ou sont tous les liens symboliques (ici /home/maston28/listemp3
).
Bons MP3s !!
L'astuce d'Olivier m'a intéressée mais ce qui me génait, c'était de passer par une compression avec perte non libre.
J'ai donc cherché et voilà ma trouvaille.
Logiciel indispensable : mplayer
Logiciel utile : de quoi graver ;-p
Pour récupérer les pistes, il suffit de taper une ligne de commande du type :
Par exemple pour extraire la piste son japonais (160) du chapitre 3 du titre 1 du dvd (/dev/dvd
)
Il ne reste plus qu'à graver les wav-s obtenus
C'est extrêmement simple mais il fallait y penser, lol !
Il suffit de créer un lien symbolique dans le dossier Skins de Xmms, lequel pointe vers un skin Winamp 2.x .
Exemple :
Et voilà! Tous vos skins Winamp dispos sous Xmms sans avoir à copier les fichiers, d'où un certain gain de place, si comme moi vous avez beaucoup de skins...
Version de Xmms avec laquelle a été testée cette astuce :
xmms-1.2.7-13mdk
NB : vous devez avoir accès au dossier /usr/share/xmms/Skins en écriture et accès au dossier Skins de Winamp en lecture (au moins). Si besoin, passez en root.
Pour aller plus loin il est possible de supprimer carrément le répertoire Skins de Xmms, et de créer un lien symbolique nommé Skins qui pointe vers le dossier Skins de Winamp 2.x ... cela donne donc pour la manip :
NB: il faut bien entendu avoir l'accès écriture au dossier de Xmms et en lecture pour celui de Winamp/Skins. De plus il ne faut pas oublier de supprimer le répertoire Skins de Xmms ! Et pour une idée de la place économisée :
Taille du répertoire /mnt/nt/Program\ Files/Winamp/Skins : 6.7 Mo
Taille du lien symbolique : 34 octets !
Qui dit mieux ?
Dans un premier temps on lit un CD Audio via xcdroast en prenant soin de ne pas oublier le "Query CDDB" au passage. Ensuite, viennent les choses sérieuses avec le p'tit script Rename_tracks qui permet de convertir en MP3 (facile!) et dans la foulée de renommer le fichier résultat de bladeenc sous la forme Artist_Numéro-Du-Morceau_Titre.mp3. Bonne lecture et à vos CD's !!!
PS : Bladeenc se trouve sur le site WEB http://bladeenc.mp3.no.
#!/bin/csh -f ###################################################################### # On suppose que l'utilisateur est connecté à Internet lorsqu'il lance # xcdroast et peut ainsi faire un QUERY CDDB lorsqu'il lit le CD audio # d'origine. Le but de la manip consiste à renommer le fichier MP3 # (track-01.mp3, une fois le format WAV encodé) en quelque chose de + # compréhensible "Artist_Track#_Title.mp3" pour tous les titres d'un # album !! On part du principe que bladeenc est DEJA installé sous le # répertoire /usr/local/bin. Enjoy, # # E.Carcamo - Wed Feb 19 19:54:53 CET 2003 ###################################################################### rm -f track*.inf >& /dev/null foreach morceau ( track*.wav ) echo "/usr/local/bin/bladeenc $morceau $morceau:r.mp3 && rm $morceau" sleep 1 /usr/local/bin/bladeenc $morceau $morceau:r.mp3 && rm $morceau set fichinfo = `echo $morceau:r.xinf` set artiste = `grep ^cd_cddb_dtitle $fichinfo | awk -F= '{print $2}' | sed -e "s/\/.*//" -e 's/"//g' -e "s/ /_/g" -e "s/^_//"` set titre = `grep ^cddb_ttitle $fichinfo | awk -F= '{print $2}' | sed -e 's/"//g' -e "s/\///g" -e "s/ /_/g"` set rank = `grep ^track $fichinfo | awk -F= '{print $2}' | sed -e "s/ //g" -e "s/of/-of-/" -e "s/\(.*\)/_\1_/"` echo "mv $morceau:r.mp3 ${artiste}${rank}${titre}.mp3 && rm $fichinfo" sleep 1 mv $morceau:r.mp3 ${artiste}${rank}${titre}.mp3 && rm $fichinfo end
Pour écouter une radio diffusant au format windows media player, il faut récupérer l'adresse commençant par mms:// dans le code html du player (pas évident car il y a souvent plein de cadres, ou des sous-fichiers .asx à ouvrir...), et le lancer avec mplayer *.
Par exemple, pour écouter Oui FM :
$ mplayer -nocache mms://vipbu.yacast.fr/encoderouifm
Et ça marche !!!
Liste d'adresses mms://
Oui FM | mms://vip7.yacast.fr/encoderouifm
|
Fun MP3 | mms://vip2.yacast.fr/encoderfun1
|
Fun Radio | mms://vip2.yacast.fr/encoderfun |
Skyrock | mms://vipbu.yacast.fr/encoderskyrock
|
NRJ | mms://vip1.yacast.fr/encodernrj
|
Nostalgie | mms://vip1.yacast.fr/encodernostalgie |
Radio Nova | mms://wmbcast.tvradio-global.speedera.net
|
Chérie FM | mms://vip1.yacast.fr/encodercheriefm |
Le Mouv' | mms://viptvr.yacast.fr/encoderlemouv |
RFM | mms://wmbcast.rfm.speedera.net
|
Europe 2 | mms://viptvr.yacast.fr/tvr_europe2 |
RTL2 | mms://vipbu.yacast.fr/encoderrtl2 |
Voir ce site ou celui-ci pour une liste de radios emettant en mms, mp3, realaudio... Pour les radios mms, il suffit de récupérer l'adresse dans les fichiers .asx.
Si vous voulez qu'on ajoute une adresse ici, envoyez-moi un mail, avec le nom de la radio et son URL, ainsi que l'URL mms:// si vous la connaissez...
(Merci à Tony Byet pour les liens mms proposés, et merci à EcliptuX pour l'adresse de ce forum où vous trouverez plein de liens mms français)
Voici un autre lien proposé par un contributeur, qui regroupe un grand nombre d'urls radio...
Remarques :
Remarques techniques :
-nocache
par -cache 128
par exemple (ajoute un buffer de 128 Ko, soit une réserve de son de quelques secondes...).mplayer -cache 128 -afm acm...
(astuce rapportée par Anthony).couldn't open/init audio device -> NOSOUND
: si vous utilisez KDE (démon de son arts), ajoutez -ao arts
à la ligne de commande, pour Gnome (démon de son esd) : -ao esd
, etc. (voir mplayer -ao help
)Le retour de l'astuce : créez des icônes sur votre bureau pour jouer les radios d'un seul clic ! Dans KDE par exemple, faites un clic droit sur le bureau, nouveau -> lien vers une application, puis onglet Exécution, Commande: mettez la commande mplayer correspondante, précédée de killall player
afin de pouvoir zapper (par exemple : killall mplayer ; mplayer -nocache -ao arts mms://vipbu.yacast.fr/encoderskyrock
). Faites aussi une icône "stop radio", avec comme commande : killall mplayer
. Et voilà :)
Bref, je voulais dire qu'on peut utiliser celà de manière simple
avec un petit coup d'alias et de complétion programmable :
Une variante proposée par Jean-Michel FAYARD
Pour simplifier encore l'utilisation grâce aux alias et à la complétion. Voici le contenu de mon .bashrc
:
Suivant le bureau que vous utilisez, vous pouvez changer l'alias:
exemple pour KDE :
alias rmplayer="mplayer -ao arts -nocache"
Utilisation :
simple, tapez juste
rmplayer ' (un guillemet) [TAB]
(n'oubliez pas le guillemet, sinon ça ne marche pas). La liste des radios qu'il faut apparaît après avoir appuyé sur la touche [TAB].
* voir la fiche de mplayer dans la logithèque. Pour installer mplayer sur une Mandrake (avec support des dvd cryptés et tout et tout), le moyen le plus simple est de visiter le Penguin liberation front, de l'installer comme spécifié sur la première page, puis taper : urpmi mplayer
.
Nouveau :
Grâce à la pression de la communauté du libre, Radio France (France Inter, France Info, France Culture, France Musiques, FIP, Le Mouv', Hector, La cityradio de Paris) diffuse maintenant en ogg vorbis : http://www.radiofrance.fr/services/aide/difflive.php#ogg.
Vous pouvez aussi télécharger ce fichier.m3u.
Greg nous informe que les URLs mms:// fonctionnent également avec Real Player One.
Konqueror offre une façon très simple de ripper des mp3 ou des ogg.
Pour ce faire, ouvrez une fenêtre Konqueror, dans la barre d'adresse tapez : audiocd:/
et entrée. Vous allez vous retrouver sur le CD audio, avec des répertoires supplémentaires : ogg
et/ou mp3
.
Si vous êtes connectés à internet à ce moment là, le nom des morceaux dans les répertoires aura de plus été récupéré (grâce à cddb).
Il ne vous reste plus qu'à copier les pseudo-fichiers de ces répertoires quelque part sur votre disque dur et le tour est joué.
Si comme moi, après avoir installé une redhat, vous n'avez pas de son dans ce magnifique jeu qu'est TuxRacer, alors que vous avez du son dans les autres applications, suivez la procédure suivante :
glx.h
, alors que vous avez installé les derniers drivers de Nvidia (si vous avez une de leurs cartes) c'est que le script ne regarde pas au bon endroit. Il faut alors lui dire de le faire en lançant le ./configure
par :
./configure --with-gl-inc=/usr/share/doc/NVIDIA_GLX-1.0/include/
s'il s'y trouve le fichier glx.h
installé par le programme d'installation de nvidia
Pour installer Diablo II sous wine, il faut se passer complètement de Windows. Pour cela, commencez par créer un arborescence Windows vide :
mkdir /home/windowsVoila. Ensuite, il faut configurer wine pour utiliser cette arborescence, copiez /etc/wine/config dans ~/.wine/config et modifiez le pour que wine utilise cette arborescence. Il suffit de modifier la section [Drive C]. Elle doit ressembler à :
mkdir /home/windows/windows
mkdir /home/windows/windows/system
mkdir /home/windows/windows/fonts
mkdir /home/windows/Program\ Files
[Drive C]Ensuite, la section [x11drv] doit être :
"Path" = "/home/windows"
"Type" = "hd"
"Label" = "MS-DOS"
"Filesystem" = "win95"
[x11drv]Maintenant, il faut installer Diablo II dans cette arborescence. C'est là que ça ce complique, si vous n'avez pas l'automount (ie: pas une Mandrake). Montez le CD1 de diablo (sauf sous mdk: il suffit de l'insérer). Lancez :
; Number of colors to allocate from the system palette
"AllocSystemColors" = "100"
; Use a private color map
"PrivateColorMap" = "N"
; Favor correctness over speed in some graphics operations
"PerfectGraphics" = "N"
; Color depth to use on multi-depth screens
;;"ScreenDepth" = "16"
; Name of X11 display to use
;;"Display" = ":0.0"
; Allow the window manager to manage created windows
"Managed" = "Y"
; Use a desktop window of 640x480 for Wine
;"Desktop" = "640x480"
; Use XFree86 DGA extension if present
; (make sure /dev/mem is accessible by you !)
"UseDGA" = "Y"
; Use XShm extension if present
"UseXShm" = "Y"
; Use XVidMode extension if present
"UseXVidMode" = "Y"
; Enable DirectX mouse grab
"DXGrab" = "Y"
; Create the desktop window with a double-buffered visual
; (useful to play OpenGL games)
"DesktopDoubleBuffered" = "Y"
; Code page used for captions in managed mode
; 0 means default ANSI code page (CP_ACP == 0)
"TextCP" = "0"
; Use this if you have more than one port for video on your setup
; (Wine uses for now the first 'input image' it finds).
;; "XVideoPort" = "43"
; Run in synchronous mode (useful for debugging X11 problems)
;;"Synchronous" = "Y"
Enfin, on lance Diablo II par : wine /home/windows/Program\ Files/Diablo\ II/Game.exe
Pour que tout soit parfait, votre serveur X doit pouvoir se mettre en 640x480 et 800x600 et 65000 couleurs (ColorDepth=16).
>Unreal engine initialized
>Bound to SDLDrv.so
>Joystick [0] : Unknown Joystick
>SDLClient initialized.
>Bound to Render.so
>Lighting subsystem initialized
>Rendering initialized
>LoadMap: Entry
>Failed to load 'Entry': Can't find file 'Entry'
>Failed to load 'Level None.MyLevel': Can't find file 'Entry'
>appError called:
>Failed to enter Entry: Can't find file 'Entry'
>Executing UObject::StaticShutdownAfterError
>Executing USDLClient::ShutdownAfterError
>Signal: SIGIOT [iot trap]
>Aborting.
>Exiting.
>Name subsystem shut down
#!/bin/sh
#
# Change this to YOUR install-dir of UT
#
INSTALLDIR=/usr/local/games/ut
cd $INSTALLDIR/System
for i in ../Maps/*.unr.uz
do
ucc decompress $i -nohomedir
done
mv *.unr ../Maps
cd ../Maps
for f in *.unr
do
rm $f.uz
done
echo "..:: Done! ::.."
Comment personnaliser son environnement graphique, activer des options, jouer avec les fontes...
Après maintes demandes et quelques recherches sur Google, je n'arrivais pas à lancer une application au démarrage de mon WM favoris, Enlightenment. Alors que je commençais à perdre espoir, m'est venu le déclic : j'ai regardé du côté du clic droit sur la décoration de la fenêtre de l'application concernée, et il y avait dans le menu déroulant une option : "Remember..."
Dans cette option, on trouve tout pour l'application en question : la lancer au démarrage d'E, mémoriser sa place, son type de bordure... Bref le bonheur !
Je ne pouvais pas laisser passer l'occasion de vous en faire profiter, n'est-ce pas?
Sous XWindow, pour faire une recherche on devait se rendre sur la page de notre moteur préféré puis entrer le sujet puis lancer la recherche.
On peut faire le tout en un seul clic. On sélectionne le mot, puis on fait un clic milieu (pour ceux et celles avec des souris à deux boutons, je n'ai pas encore trouvé la solution, pour les utilisateurs de mac ... ;-P ). Si le mot sélectionné est par exemple une marque, on est envoyé directement sur le site du constructeur, sinon la page du moteur s'affiche, avec les résultats. Il ne reste plus qu'à choisir.
J'ai testé, cela fonctionne très bien sous firebird et mozilla.
NDM: également avec Konqueror
Windows Xp propose d'ouvrir une nouvelle session depuis le menu démarrer, cela s'appele le fast user switching.
Sous X11, on peut le faire depuis longtemps, mais il faut lancer X à la main, et faire des su, et autres magouilles fastidieuses.
Ce temps est révolu :)
En ajoutant :
à votre fichier /etc/X11/xdm/Xservers
, vous aurez désormais un bouton 'ouvrir une nouvelle session' dans le menu K, qui lancera un kdm (après avoir relancé kdm, bien sur )
De même, vous pouvez lancer un nouveau gdm avec la commande gdmflexiserver ( ou un bouton dans gnome, je n'ai pas testé toutes les combinaisons ).
Vous pouvez bien sur multiplier le nombre de serveurs, pour 3 ou 4 serveurs, sachant que quasiment rien n'est consommé, vu qu'ils sont lancés à la volée.
Il est possible de changer de themes facilement sans charger quoi que ce soit en démon (gconfd
ou gconfd-2
).
Pour ce faire, c'est très simple, utilisez une petite application de changement de themes ;)
Le paquet s'appelant gtk-theme-switch
(verifié sous Debian, Mandrake, Gentoo) :
switch
switch2
Cependant, j'ai remarqué une utilisation excessive du processeur lors de changmement de theme avec switch
(GTK1) et quelques plantages aléatoires de l'application (même sous debian stable).
Ce défaut ne semble pas etre présent sur switch2
(GTK2).
A quoi cela peut-il bien servir si l'on n' a pas de theme à changer :p
URL de theme, ici : http://art.gnome.org/themes/gtk2/index.php et là : http://www.themedepot.org/.
Testé sur debian stable et unstable. A vous de jouer :)
La Mandrake 9.1 PPC s'installe fort bien sur un iBook. Le clavier est assez bien géré (ils ont mappé les touches d'un clavier PC, ce qui est pratique : plein de touches manquent sur un clavier d'iBook pour utiliser correctement Linux) mais (car il y a toujours un mais !) point de touche ALT GR ! C'est assez pénible (en particulier pour faire un @ ou un | ).
Il existe une solution fort simple : utiliser la touche Pomme (qui ne sert a rien ...) à sa place. Sur la Mandrake, il suffit de créer (en tant que root) le script /etc/X11/xinit.d/Map_Pomme_AltGr
(le nom importe peu, mais l'emplacement est impératif) contenant :
Puis de relancer le serveur X. À partir de maintenant la touche Pomme est une touche ALT GR.
Pour ceux que ça intéresse, voilà comment j'ai fait pour trouver le 115
et le Mode_switch
. Sur l'iBook j'ai installé le paquet : XFree86-contrib
(urpmi XFree86-contrib
) puis j'ai lancé le programme xev
qui retourne les codes des touches renvoyés par X, lorsque je tapais sur Pomme, il me renvoyait :
Le keycode 115
indique le code de la touche qu'on veut remplacer sur l'iBook. Pour le Mode_switch
, j'ai procédé pareil mais sur un PC, xev
renvoie quelque chose comme : (keysym 0xff7e, Mode_switch)
. Voilà c'est tout.
xmodmap -e "pointer = 3 2 1"
Il faut rajouter cette ligne dans un fichier de démarrage, sinon faut retaper cette commande à chaque fois. Par exemple dans ~/.fluxbox/startup
Merci à misc pour cette astuce ;-)
/etc/inittab
et vérifier la ligne id:n:initdefault
ou n est l'id utilisé par le système)
- l'id permet de savoir quels scripts sont lancés et ou ils se trouvent, ds mon cas c'était 4 donc direction /etc/rc4.d/
- dans ce répertoire se trouvent différents liens dont un sous la forme S(numéro)gdm
. Voilà : il suffit de supprimer ce lien et plus de gdm au démarrage.
Pour faire tourner à la fois KDE et xfce,tapez dans un xterm :
$ exec xfce
Screenshot
(ps : l'image est assez longue à charger)
XFree4 sait maintenant s'autoconfigurer afin d'optimiser les résolutions vidéo, mais il existe encore des cas où on désire / a besoin de le faire à la main : réglages fins, moniteur non plug'n play, résolution exotique (768x576 pour regarder la TV en plein écran)...
Le site suivant vous permet de générer ces lignes absconses :
http://www-sop.inria.fr/cgi-bin/koala/nph-colas-modelines-fr
http://koala.ilog.fr/cgi-bin/nph-colas-modelines-fr
Note : les lignes "Modeline" de /etc/XF86Config prennent en compte la résolution que l'on veut obtenir et les paramètres en fréquence mini/maxi du moniteur, et ressemblent à :
ModeLine "768x576" 94.61 768 800 960 1024 576 578 590 616 #150Hz
Depuis XFree 4.2.99 (ie: les releases candidates de XFree 4.3.0) il est possible d'avoir des curseurs transparents avec ombres (c'est trés cool : on dirait XP ;-).
Si ce n'est pas activé par défaut, il faut éditer le fichier /usr/X11R6/lib/X11/icons/default/index.theme, dans lequel il suffit de mettre (par exemple) : Inherits=whiteglass à la place de Inherits=core. Pour connaître les thêmes possibles pour vos curseurs : ls /usr/X11R6/lib/X11/icons/, ceci listera les thêmes qu'il est possible d'utiliser dans la clause "inherits" (default n'est pas un thême...). Moi, j'ai trois thêmes possibles : handhelds, redglass et whiteglass.
Je viens de découvrir un moyen surprenant et très pratique d'endormir l'écran.
Pressez simplement 2 fois de suite la touche contrôle, et l'écran s'éteind.
La même manipulation le réveille (et aucune autre, par exemple bouger la souris ne sert à rien).
C'est quand même plus pratique que de rechercher le bouton marche-arrêt de mon écran dissimulé sous des piles de CD et autres paquets de bonbons ! ;)
(testé sous Mandrake 8.2, XFree 4)
if [ -x /usr/X11R6/bin/enable_X11_numlock ] ; thenPuis vous redémarrez votre serveur X (par exemple par CTRL+ALT+BACKSPACE). Et vous devriez avoir [Numlock] activé.
/usr/X11R6/bin/enable_X11_numlock on
fi
Section "Pointer"
Protocol "MouseSystems"
Device "/dev/gpmdata"
ZAxisMapping 4 5
EndSection
MOUSETYPE=msc----------
XMOUSETYPE=MouseSystems
FULLNAME=Serie
XEMU3=no
WHEEL=no
device=ttyS0
TWO_MOUSES=yes
MOUSETYPE_2=imps2
XMOUSETYPE_2="IMPS/2"
FULLNAME_2="USB|Wheel"
XEMU3_2=no
WHEEL_2=yes
device_2=usbmouse
#!/bin/bash----------
#
# chkconfig: 2345 85 15
# description: GPM adds mouse support to text-based Linux applications such \
# the Midnight Commander. Is also allows mouse-based console \
# cut-and-paste operations, and includes support for pop-up \
# menus on the console.
# processname: gpm
# pidfile: /var/run/gpm.pid
# config: /etc/sysconfig/mouse
# modified by Jean-Christophe 'Jice' Cardot <jice at lea-linux dot org>
# for 2 mouses support
# source function library
. /etc/rc.d/init.d/functions
MOUSECFG=/etc/sysconfig/mouse
MOUSEDEVICE=/dev/mouse
RETVAL=0
case "$1" in
start)
echo -n $"Starting console mouse services: "
if [ -f "$MOUSECFG" ]; then
. "$MOUSECFG"
else
echo $"(no mouse is configured)"
exit 0
fi
if [ -n "$device" ];then
MOUSEDEVICE=/dev/$device
fi
if [ ! -e $MOUSEDEVICE ];then
echo $"$MOUSEDEVICE don't exist"
exit 0
fi
if [ "$MOUSETYPE" = "none" ]; then
echo $"(no mouse is configured)"
exit 0
fi
if [ "$MOUSETYPE" = "Microsoft" ]; then
MOUSETYPE=ms
fi
if [ "$TWO_MOUSES" = "yes" ]; then
if [ -n "$device_2" ];then
MOUSEDEVICE_2=/dev/$device_2
fi
if [ ! -e $MOUSEDEVICE_2 ];then
echo $"$MOUSEDEVICE_2 don't exist"
exit 0
fi
if [ "$MOUSETYPE_2" = "none" ]; then
echo $"(no 2nd mouse is configured)"
TWO_MOUSES=no
fi
if [ "$MOUSETYPE_2" = "Microsoft" ]; then
MOUSETYPE_2=ms
fi
if [ -n "$MOUSETYPE" -a -n "$MOUSETYPE_2" ]; then
daemon gpm -t $MOUSETYPE -m $MOUSEDEVICE \
-M -t $MOUSETYPE_2 -m $MOUSEDEVICE_2
else if [ -n "$MOUSETYPE" ]; then
daemon gpm -t $MOUSETYPE -m $MOUSEDEVICE \
-M -m $MOUSEDEVICE_2
else if [ -n "$MOUSETYPE_2" ]; then
daemon gpm -m $MOUSEDEVICE \
-M -t $MOUSETYPE_2 -m $MOUSEDEVICE_2
else
daemon gpm -m $MOUSEDEVICE \
-M -m $MOUSEDEVICE_2
fi fi fi
else
if [ -n "$MOUSETYPE" ]; then
daemon gpm -t $MOUSETYPE -m $MOUSEDEVICE
else
daemon gpm -m $MOUSEDEVICE
fi
fi
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/gpm
;;
stop)
echo -n $"Shutting down console mouse services: "
killproc gpm
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/gpm
;;
restart|reload)
$0 stop
$0 start
RETVAL=$?
;;
status)
status gpm
RETVAL=$?
;;
*)
echo $"Usage: gpm {start|stop|status|restart|reload}"
exit 1
esac
exit $RETVAL
Retour à la normal par la même combinaison de touche.
(Lu sur http://gulse.tuxfamily.org/supp_linux.html et sur : linuxfr.org pour ce qui est de la manipulation des boutons)
Comment bien tirer parti d'un réseau local, d'internet, les trucs sur le mail, etc.
L'esprit est le même que la redirection de syslog vers un terminal virtuel, simplement, c'est très utile pour avoir directement les erreurs d'Apache sans avoir à lire tout le fichier /var/log/apache/error_log
...
Pour pouvoir faire cela, il suffit d'éditer le fichier /etc/apache/httpd.conf
et de rechercher la ligne ErrorLog /var/log/apache/error_log
.
Ensuite, c'est très simple, on remplace /var/log/apache/error_log
par /dev/ttyXX
avec XX ce que l'on souhaite, dans mon cas, c'est la 12, mais chacun fait ce qu'il souhaite !
Pour valider les changements, un petit apachectl restart
s'impose, et un petit tour sur la console que l'on a modifié doit indiqué un truc du style : [Date][notice]Apache ... configured -- resuming normal operations
.
Il faut se dire, de toutes façons, que si un message est affiché, c'est que cela fonctionne :D
Si vous vous connectez par ssh sur votre serveur et que vous voulez lancer un programme X sur celui ci mais que l'affichage se fasse sur votre poste client.
/etc/ssh/sshd_config
trouver la ligne X11Forwarding no
et remplacer no
par yes
./etc/init.d/sshd restart
.Manip :
ssh -X addresse_du_serveur
ssh -X root@addresse_du_serveur
.
Il n'est pas possible de lancer un programme après un su
ou un su -
VeriSign s'est fait une sacré pub dernièrement (bonjour si vous lisez cette astuce dans 2 ans ;) en résolvant tout les noms de domaines en .com non-attribués vers la même IP.
Cette astuce est très simple et peut être intégrée à votre serveur DNS sans problèmes. L'exemple va vous montrer une version pour les "hôtes" :
Si vous avez des connaissances en DNS (named), rajoutez dans votre base d'host la ligne suivante (de préférence à la fin)
*.votredomain.tld 300 IN A votreip
Le petit jeu après est de faire des "host" dans tout les sens pour voir si cela marche :
Pour le fun : Créez un virtualhost qui accepte toutes les requètes d'host. Puis faites un script qui récupère le nom de l'hôte envoyé (dans notre exemple jesaisquecethotenexistepas) et amusez-vous à afficher n'importe quoi.
Par exemple : http://patrick.est.chauve.domain.tld ;-)
Comment avoir les accents propres dans xchat2 ? Simple :
/charset iso-8859-15
bon irc !
C'est assez simple en fait, il vous suffit d'utiliser le programme 'socket' qui crée ou utilise des sockets et de faire ceci :
# socket -p 'cat input.mp3' -slv 1234
l'option -p execute une commande.
Ici nous demandons à lire le fichier input.mp3 (mais nous aurions pu faire plus complexe comme commande)
les options -slv demande à ce que ce soit un serveur en mode "looping" et en mode "verbose" sur le port "1234"
Utilisez un player compatible stream (xmms ferra très bien l'affaire) et rajoutez l'url "http://localhost:1234
"
(voire même un autre host si votre machine le possède)
Voila votre premier serveur de stream en shell :-)
Le problème est le suivant : comment lancer un serveur dhcp distribuant des adresses spécifiques suivant le segment réseau qui les demande?
Par exemple un routeur de réseau local, distribuant 2 segments réseaux différents, sur lequel on veut installer un serveur dhcp afin que tout poste se connectant sur un segment puisse obtenir une adresse IP en conformité avec le segment.
La solution consiste à déclarer plusieurs subnet dans votre fichier de config (dhcpd.conf par défaut), comme ci dessous:
Il suffit alors de lancer le démon dhcpd de la façon suivante:
Et vala....
En LAN, connecté à internet derrière un routeur ou un firewall, le truc habituel avec ifconfig (script) ne fonctionne pas, puisqu'il ne vous permet que de voir votre adresse IP interne.
Pour y remédier, j'utilise ce petit script très simple :
Ce script ip.cgi est lui-même simplissime :
Supposons que votre liaison internet soit obtenue par liaison ppp, le device est alors : ppp0 (si c'est eth0 ou eth1 pour vous, changez ce qu'il faut).
1. La passerelle Linux
En tant que root, tapez :
Si vous utilisez un mur de feu (firewall) sur votre passerelle, alors il se peut que l'une des règles de filtrage de celui-ci interfère avec la règle d'iptables que nous devons mettre pour partager la connection. Dans ce cas, la règle iptables de partage de connection doit être avant la ou les règles de filtrage.
2. Un poste Linux
Chaque poste Linux doit configurer une passerelle et ses dns. Pour la passerelle, il faut soit utiliser les outils de sa distribution pour lui préciser que la passerelle est le poste Linux précédemment configuré ; soit taper en tant que root une commande du style :
Il faut aussi configurer les dns, pour cela il suffit de s'assurer que le fichier /etc/resolv.conf contient des lignes du style :
3. Un poste 'exotique' (mac ou windows)
Pour les postes 'exotiques', il avoir la même démarche que pour Linux, à savoir : préciser les dns ainsi que l'ip de la passerelle Linux.4. C'est tout !
L'article de léa sur samba recommandant l'usage de swat, qui est assez pénible à configurer étant obsolète, et n'ayant pas trop le courage d'écrire un article complet sur SAMBA pour le moment, voici un smb.conf "type", à modifier selon les besoins !
Voilà, et bonne chance à tous !
Voiçi un petit script qui remplace avantageusement le ppd call adsl, si celui-ci n'est pas verbeux, et ne fonctionne pas:
Sur une connexion ADSL, j'héberge mon site personnel, avec son propre nom de domaine www.monsite.net.
Pour héberger aussi le site de mon petit frère sur un autre nom de domaine moi.monsite.net, j'ai paramétré 2 VirtualHosts dans Apache. Après avoir un peu galéré, voici la solution mise en oeuvre :
Dans le fichier httpd.conf :
ServerName *
puis, pour les virtuals hosts:
NameVirtualhost *
<VirtualHost *>
ServerName www.monsite.net
DocumentRoot /chemin/des/html
</VirtualHost>
<VirtualHost *>
ServerName moi.monsite.net
DocumentRoot /autre/chemin/des/html
</VirtualHost>
Vous allez me demander : "Une connection SSH (sécurisée) sans mot de passe (non sécurisé), à quoi cela peut-il servir ?".
Supposons que vous ayez 2 postes "sûrs" (c'est-à-dire dont vous n'avez pas spécialement peur qu'on puisse prendre le contrôle), si vous avez réussi a vous connecter sur le premier, c'est pénible de devoir taper un mot de passe pour faire un truc sur le second. Surtout que si quelqu'un vient de prendre possession de votre compte sur le premier poste, de toute façon, le second sera en sa possession dans pas longtemps.
Le but n'est pas de se passer de sécurité (au contraire). La solution du problème est la suivante. Nous avons deux postes : frodon.tux et gandalf.tux. Sur les deux postes sshd tourne et est correctement configuré. Sur chacun des postes on génére des clés :
Ajout de Michel Bonnet
Personnellement, je trouve que c'est dangereux de laisser une clef privée sans mot de passe, car si quelqu'un arrive à accéder au répertoire où elle est stockée, il peut utiliser immédiatement la clé.
Il est donc préférable de passer par un agent d'authentification.
il faut générer les clés de façon identique (mais
avec un mot de passe, ce qui permet de crypter la clé privée).
Pour les utiliser :
ssh-agent screen
(lancement de l'agent)ssh-add <ma liste de clés privée>
pour se connecter :
ssh bibi@gandalf
marchera automatiquement sans retaper le mot de passe, et ce tant
que l'agent tourne.
Pour terminer,
la sécurité est un vaste sujet, qui au fond dépend de
son appréciation du risque, ce qui est éminemment très personnel.
Le problème actuel avec Apache et le support SSL, est le fait qu'il ne peut exister qu'un seul virtualhost en HTTPS sur une seule IP.
Il existe cependant une solution simple :
Apache-SSL: http://www.apache-ssl.org
Apache-SSL est un projet pour le support SSL dans Apache mais de manière améliorée.
Ce patch permet d'intégrer plusieurs virtualhosts en https sur la même IP. Très convivial comme astuce.
(sous debian : apt-get install apache-ssl
;-)
L'intégration est relativement simple (hormis configuration SSL de base)
et ainsi de suite :-)
Avec debian (woody ou sarge) n'oubliez pas de créer ce lien :
Ceci est valable autant pour utiliser java que pour installer une version de mozilla ou netscape à la "mano".
Déja, il faut que la cam marche. testez avec qcam, xawtv ou ce que vous avez sous la main.
Il faut récupérer sur le web w3cam. Ca doit être fourni avec certaines distributions, ou sur le site http://mpx.freeshell.org/.
Copier le fichier w3cam.cgi dans le répertoire cgi-bin de votre serveur web, puis rajouter la ligne suivante dans votre index.html :
(remplacer localhost par l'adresse ou le FQDN de votre serveur web)
<a href="http://localhost/cgi-bin/w3cam.cgi?refresh=2&color=1&size=320x240&format=jpg&mode=html">Voir ma trombine (jpg) si en ligne ...</a>
et voilà ca marche !
votre télé est en ligne :-)
PS: FQDN = full qualified domaine name, si vous utilisez un nom de domaine, pour dyndns par exemple, c'est nom.dyndns.org.
Copier ce qui suit dans : install-flash.sh
puis lancer le script par :
sh install-flash.sh
c'est tout !
urpmi libstdc++-devel code>.
Note(2): Comment je l'ai su ? ldd ~/.mozilla/plugins/libflashplayer.so
retourne, entre autre : libstdc++-libc6.2-2.so.3 => not found
Mozilla est un des seuls navigateurs à proposer de travailler avec des onglets. Cette méthode vous permet d'ouvrir plusieurs URL dans la même fenêtre.
Imaginez que vous utilisez toujours les mêmes URL. Vous allez donc ouvrir chacune de ces URL dans un onglet. Puis vous allez enregistrer cet ensemble d'onglet sous un nom de signet. Quand vous relancerez Mozilla, vous pourrez charger ce groupe d'onglets et ouvrir automatiquement vos URL préférées. Ainsi vous accédez à vos sites en un seul clic !
- Pour ouvrir un nouvel onglet :
Menu File >> New >> Navigator Tab ou en raccourcis clavier "CTRL + T"
- Pour enregistrer un groupe d'onglets :
Menu Bookmarks >> Bookmark this group of Tabs ou en raccourcis clavier "CTRL + B"
- Pour mettre à jour tous les onglets d'un groupe : un clic droit sur un onglet et vous choisissez "Actualisez tous les onglets" !
Merci à T. STOEHR pour cette astuce>
Installation des plug'in Macromédia sur Mandrake 9.0 Final
>Adresses où télécharger flash :
http://www.macromedia.com/fr/shockwave/download/alternates/#linux
ou
http://download.macromedia.com/pub/shockwave/flash/english/linux/5.0r51/flash_linux.tar.gz
# chmod +x j2re-1.3.1-02b-FCS-linux-ppc.bin
# cd /opt
#chemin/j2re-1.3.1-02b-FCS-linux-ppc.bin
ln -s /opt/j2re1.3.1/plugin/ppc/mozilla/javaplugin__oji.so /usr/lib/mozilla/plugins
fnx2k ajoute : pour une mandrake 9.2, avec un AMD, j'ai téléchargé le fichier j2re-1_4_2_01-linux-i586.bin au lieu de j2re-1.3.1-02b-FCS-linux-ppc.bin
Pour le reste c'est identique, sauf pour le lien: utiliser ns610-gcc32
ln -s <chemin_d_install>/j2re-1_4_2_01/plugin/i386/ns610-gcc32/libjavaplugin_oji.so /usr/lib/mozilla/plugins
A priori, on doit pouvoir laisser "java" dans l'onglet pour l'éxecutable java de Konqueror (faire en console which java pour vérifier le chemin).
NB: une page java pour test se trouve:
<chemin_d_install>/j2re-1_4_2_01/ControlPanel.html
Le truc & astuces "garder son anonymat sur le web" permet de supprimer le fichier cookies de netscape à chaque démarrage . Malheureusement pour nous, fan de Léa-Linux, les posts lus se retrouvent de nouveau marqués en non lus :-(
La solution (mais ce n'est pas la seule) est de filtrer cette suppression en ne gardant que ce qui concerne notre site favori (à mettre dans le $HOME/.bashrc):
grep lea-linux $HOME/.netscape/cookies > $HOME/.netscape/cookies.tmp && cp -f $HOME/.netscape/cookies.tmp $HOME/.netscape/cookies
Explications:
- 'grep' copie dans un fichier temporaire toutes les lignes du fichier cookies comportant lea-linux
- si la commande précédente s'est bien passée (&&), 'cp -f' écrase le fichier cookies d'origine par le fichier temporaire
--disable-...
dans l'installation de pinentry sont facultatifs et peuvent être supprimés (ils ne servent qu'a compiler pinentry pour QT).~/.gnupg/gpg.conf
(pour chaque utilisateur) et d'y ajouter la ligne :
~/.gnupg/gpg-agent.conf
contenant :
pinentry-qt
doit être adapté si vous avez installé pinentry autrement que de la manière indiquée.
Ensuite, il faut faire en sorte de démarrer l'agent GnuPG (ici, pinentry-qt) automatiquement, il y a plusieurs solutions.
~/.xsession
pour démarrer votre interface graphique préférée, ajoutez en debut de ce fichier :
/etc/X11/xdm/Xsession
:
Puis sélectionnez l'onglet "Modules externes de cryptographie". Cliquez sur "Nouveau". Pour le "Nom" tapez ce que vous voulez, par exemple "PGP/Mime". Pour l'"Emplacement" tapez l'emplacement de "gpgme-openpgp.so", par défaut : /usr/local/lib/cryptplug/gpgme-openpgp.so
. Comme sur cette image.
Enfin, validez le tout.
Largement inspiré de kmail-pgpmime-howto.html.
Pour utiliser gpg et Kmail (on suppose ici que gpg est configuré et que vous avez créé vos clefs : publique et secrète ; voir l'article sur gpg), il faut aller dans la configuration de Kmail, icône sécurité, onglet OpenPGP, sélectionner l'outil de cryptage GnuPG, cocher les cases qui vous interessent (pour ma part j'ai tout coché ;), puis dans l'icône Identité, onglet Options avancées, sélectionner la clef OpenPGP avec le bouton Modifier.
Vous devriez dès lors être capable de signer (icône d'une lettre avec un stylo plume à droite dans la barre d'outil) ou crypter vos mails (icône de cadenas).
Pour crypter un mail, il faut disposer de la clef publique de votre correspondant, et qu'elle soit signée.
Supposons que vous l'ayez récupérée dans monpote.asc
, vous l'importez avec :
gpg --import mon_pote.asc
Puis vous listez les clefs :
pub 1024D/E64019B5 2001-09-13 Frédéric Bonnaud (Fred) <frederic.bonnaud chez laposte.net>
sub 1024g/422AA63E 2001-09-13
key_id
) : E64019B5
.
Vous allez signer la clef en faisant :
gpg --sign-key E64019B5
Relancez kmail, vous pouvez maintenant envoyer des mails cryptés à votre correspondant (icône de cadenas dans la barre d'outils).
On peut aussi utiliser l'interface de gpg en tapant :
La clé secrète est disponible.
pub 1024D/E64019B5 créée: 2001-09-13 expire: never confiance: f/u
sub 1024g/422AA63E créée: 2001-09-13 expire: never
(1) Frédéric Bonnaud (Fred) <frederic.bonnaud chez laposte.net>
Commande>sign
...
Commande>save
...
Pour récupérer les dossiers de mail d'Outlook pour les utiliser dans votre logiciel de mail préféré sous Linux, c'est très simple : il suffit d'utiliser mbx2mbox qui se trouve à l'adresse suivante : http://mbx2mbox.sourceforge.net.
(Piloter le serveur POP à la main)
Lorsque quelqu'un vous a envoyé un énorme mail, et que vous ne souhaitez pas passer des heures afin de le récupérer, il existe un moyen d'y aller "à la main" afin de le virer (en attendant que quelqu'un nous fasse une petite appli sympa qui fait ça en mode graphique ?)
Il suffit de se connecter à internet puis avec telnet sur le port 110 de la machine depuis laquelle vous rappatriez vos mails (en général, pop.votre_fournisseur.fr).
Par exemple, en ligne de commandes : telnet pop.free.fr 110
Vous allez vous retrouver sur une sorte de prompt, et il vous faudra taper dans l'ordre les commandes suivantes afin de vous authentifier :
USER mon_compte [Entrée]
PASS mon_mot_de_passe [Entrée]
(Attention ! on regarde par dessus ton épaule :)
Enfin, le serveur comprend des commandes afin de gérer les messages :
commande | commentaire |
LIST [Entrée] | Affiche la liste des messages, permet de consulter la taille de chaque message. |
RETR numéro_de_message >i>[Entrée] | Affiche tout le message correspondant. |
TOP numé_de_message nbre_de_lignes_à_afficher [Entrée] | Affiche les n premières lignes du message. |
DELE numéro_de_message [Entrée] | Supprime le message correspondant. |
QUIT [Entrée] | Bye bye... |
Le serveur répond avec des messages "+OK" lorsqu'il a compris et exécuté votre commande.
Donc vous voyez ce qu'il vous reste à faire : un ptit "LIST" pour repérer l'intrus, puis un "DELE numéro" pour le virer, avec éventuellement un "TOP numéro 20" pour voir ses 20 premières lignes (des fois que ça soit important ! :)
Charles Goyard m'écrit :
Il pourrait etre utile d'ajouter une référence à l'outil poppy, qui permet de lire ses mails directement sur un serveur pop ou imap. On peut, sans rappatrier, lire le début, supprimer, etc... Cet outil a été écrit pour les gens qui n'ont pas de connexion rapide.
A noter que j'ai patché poppy pour qu'il puisse supprimer automatiquement les mails de plus d'une certaine taille, et envoyer un mail à l'expéditeur pour lui signaler de ne pas envoyer de gros messages. La version patchée n'est pas encore dispo en ligne mais ça ne saurait tarder.
Je me sers de la version automatisée après un fetchmail -l 200000 chez moi, c'est bien pratique.
http://home.sprynet.com/~cbagwell/poppy-2.0.tar.gz
En plus, l'auteur est assez sympa.
Il existe de multiples façons de transférer des fichiers entre deux ordinateurs
Dans tous les cas vous aurez besoin de votre ip, récupérez là (dans l'exemple je suppose une liaison par modem, si vous êtes relié à internet via votre lan, remplacez ppp0 par eth0) :
Vous disposez d'un serveur apache, avec la configuration de base : créez un répertoire public_html
dans votre /home/user
(c'est à dire ~
). Puis copiez-y le fichier à transférer :
Enfin, dîtes à la personne à qui vous voulez envoyer ce fichier de le récupérer sur l'url :
Bien sur il faut remplacer user
par le nom de votre utilisateur et fichier
par le nom du fichier que vous avez copier dans public_html
Si vous avez un serveur ftp actif, le principe est le même (mais il faudra donner le mot de passe de l'utilisateur à la personne charger de récupérer le fichier, dans ce cas, il suffit de créer un utilisateur spécialisé dans cette tache). Mais c'est encore plus simple mettez votre fichier à copier quelque part dans votre home
(par exemple : ~/le-fichier
)
Puis, comme pour le serveur http, dîtes à la personne chargée de récupérer le fichier sur l'url :
Bien sur il faut remplacer user
par le nom de votre utilisateur.
Si vous avez installé un serveur ssh sur votre machine, scp
peut récupérer directement un fichier par la commande :
Pour cela, vous devez :
Ensuite, sur le pc source, vous devez exporter un repertoire vers la destination :
Puis, sur le pc destination, vous devez monter ce répertoire sur un réperoite que vous aurez préalablement créé (facultatif, si le répertoire existe) :
Ensuite, vous pouvez copier tous les fichiers de /repertoire
avec n'importe quel outil (cp
, nautilus
, konqueror
, ...)
Par exemple pour echanger un fichier avec un utilisateur de Windows.
Pour connaitre les machines du réseau, on demande à samba :
Et pour connaitre les ressources disponibles sur une machine, il suffit de demander à samba :
Muni de ces informations, il suffit de monter une ressource quelque part, par exemple sur /mnt/smb (si vous avez créé ce répertoire avant) :
En remplaçant bien entendu monusername
par votre login et monpassword
par votre mot de passe (à la ressource).
Ensuite, il suffit de copier le fichier depuis, ou dans /mnt/smb.
lanesrine propose une astuce pour reprendre un téléchargement interrompu avec konqueror.
Pour les fichiers de taille importante (14 MO, 650 MO...), il peut être plus judicieux d'utiliser wget.
Dans un terminal, il suffit de taper
wget --continue http://monfichier
ça a le même effet mais ça prend moins de mémoire et c'est moins tentant de fermer le terminal qui traine...
Quand on transfère un fichier de 14 Mo, c'est à 13.99 Mo que le téléphone coupe.
4h de perdues ? Non !
N'effacez pas le fichier.
Sous Konqueror, refaites la manip de transfert du dit fichier dans le même répertoire sous le même nom.
Au moment ou vous pensez écraser votre ancien fichier, Konqueror vous demande "écraser ou continuer" ?
Si vous choissisez "continuer", Konqueror finit de télécharger le fichier (quel que soit le logiciel utilisé pour faire le début de téléchargement bien sûr).
Nous cherchons à enregister une série de fichiers, souvent des images à partir d'un site web.
Par exemple, considérons les fichers suivants :
Rares seront les personnes assez courageuses pour enregister un par un ces 234 fichiers !
il suffit juste de créer un fichier exécutable comme celui-ci (nommé enreg
) :
/usr/local/bin/
ou si cela ne marche pas copiez le dans /usr/bin/
(méthode un peu forcing)
chmod a+x enreg
Pour utiliser ce script, placez-vous dans le répertoire qui recevra les fichiers, et tapez la ligne de commande :
enreg 'debut URL' 'fin URL' 'debut chiffre' 'fin chiffre'
exemple :
enreg http://www.linux.org/image .jpg 1 22
Le script enregistrera alors dans ce répertoire :
Vous voici prêt à enregistrer des séries d'images ou de fichiers quelconques.
Note du modérateur (Jicé) : ce script nécessite la présence du programme wget
.
Note du modérateur (maston28) : on peut, si l'on a pas wget utiliser curl
par exemple.
Par exemple, disons que nous avons besoin de trouver le fichier md5sum.exe pour DOS. Nous allons voir comment faire pour créer un alias qui nous permettra de taper une seule ligne de commande pour ce faire. Nous utiliserons de manière transparente le serveur ftpsearch (http://ftpsearch.lycos.com).
Vous avez besoin d'installer le package lynx. (Lynx est un browser Web en mode texte).
Nous allons créer une nouvelle commande ftpsearch :
créez un fichier /usr/local/bin/ftpsearch, contenant :
#!/bin/sh
lynx "http://ftpsearch.lycos.com/cgi-bin/search?form=lycosnet&query=$1"
puis tapez (afin de rendre ce script exécutable) :
chmod a+x ftpsearch
Ensuite, la commande :
[jice@taz jice]$ ftpsearch md5sum.exe
donne
...
1 /mirrors/linux/OfficialCD/1.3.1/utilities/md5sum.exe
33.0K - 1997 Jul 11 00:32
FTP Site: ftp.it.net.au
2 /mirrors/linux/debian-cd/OfficialCD/1.3.1/utilities/md5sum.exe
33.0K - 1997 Jul 11 00:32
FTP Site: ftp.it.net.au
3 /pub/DOS_Extras/md5sum.exe
21.3K - 1997 Jan 18 00:00
FTP Site: ftp.forth.org
4 /pub/DOS_Extras/md5sum.exe
21.3K - 1997 Jan 18 00:00
FTP Site: ftp.taygeta.com
...
Il ne vous reste plus qu'à choisir le serveur !
Tout (hum...) sur le gravage, les sauvegardes sur bandes, etc.
Il s'agit d'un script simple sans passage de paramètres.
N'oubliez pas de rendre votre script exécutable:
chmod 755 nom_du_script
Voila, votre sript est terminé, vous pouvez le lancer avec ./nom_du_script
, ou mieux (c'est tout de même le but recherché) l'intégrer à votre cron.
J'envisage de d'améliorer ce sript en permettant de passer en paraméter un nombre illimité de fichiers à sauvegarder.
On dit souvent que le meilleur type de sauvegarde est un backup sur un ou plusieurs FTP distants, mais, me direz-vous, je n'aime pas trop que des données confidentielles soient à droite à gauche sur le net...
Pour cela, une solution : Cryptez vos fichier avec votre propre clé GPG avant de les envoyer. Ainsi, vous serez le seul à pouvoir les lire...
Pour créer une image ISO à partir d'un CD, sous Linux c'est extrêmement simple :
Dans une console tapez :
Et c'est tout !
Note : if
signifie "input file" et of
"output file".
Autre méthode utilisant les redirections du shell :
Si on a pas besoin de spécifier de taille de bloc (interêt de dd), on peut aussi utiliser :
# cp /dev/cdrom image.iso
ou
# cat /dev/cdrom > image.iso
et hop ! :)
Des informations sur les archives aux adresses :
Grâce à mv, on peut automatiser un backup quand on déplace un fichier.
Par exemple, j'ai le fichier testA
et le fichier testB
. je veux renommer
testA
en testB
. Je peux faire :
Je me retrouve alors avec un fichier testB
(qui contient le contenu de
testA
), et un fichier testB~
qui contient l'ancien contenu de testB
. On
a donc un backup !
Il se peut cependant que vous préferiez avoir testB.old
par exemple,
l'option -S
est la pour vous !
Mais on peut cependant automatiser ceci, en jouant sur la variable
d'environnement SIMPLE_BACKUP_SUFFIX
. Si l'on veut que le suffixe par défaut soit .old
, il faut mettre ceci dans son ~/.profile
(ou ~/.bashrc
) :
et voila !
man
cp
, man mv
vous donneront de plus amples infos à propos de
cette variable et des options de backup auto...
Méthode proposée sur : http://robert.silve.free.fr/doc/save/
Il s'agit de se donner un moyen simple de sauvegarder un ensemble de configurations (apache, bind, scripts de démarrage ...). Pour la sauvegarde le plus simple est encore d'utiliser tar. Par contre pour la restauration il est agréable d'avoir un outil plus fin qui permettrait par exemple de ne restaurer que certaines parties, de restaurer suivant un schéma de dépendances, d'effectuer certaines compilations ... Pour ce genre de taches il existe un outil suffisament puissant : make.
On doit donc avoir un fichier Makefile contenant des listes de fichiers (une pour chaque installation : apache, bind ...) qui permettront de traiter aussi bien la sauvegarde que la restauration. On y trouvera également un script d'installation pour chaque partie (liste de fichiers)
Voici le fichier Makefile que j'utilise. On remarquera que les premières lignes qui correspondent aux liste de fichiers contiennent des noms de fichiers absolus auxquels on enlève le premier /. Ceci est trés important.
RC_CONFIG=etc/rc etc/rc.conf etc/rc.conf.local \ etc/rc.local etc/rc.vnc \ etc/sysctl.conf FSTAB_CONFIG=etc/fstab XFREE_CONFIG=etc/X11/XF86Config DHCPD_CONFIG=etc/dhcpd.conf NAMED_CONFIG=var/named/named.boot var/named/namedb/db.cache \ var/named/namedb/db.local var/named/namedb/db.127.0.0 \ var/named/namedb/db.192.168.0 \ var/named/namedb/db.mtice SUEXEC=var/www/suexec.tgz HTTPD_CONFIG=var/www/conf/httpd.conf var/www/conf/php3.ini POSTFIX_CONFIG=etc/postfix/aliases etc/postfix/main.cf \ etc/postfix/canonical etc/postfix/transport etc/postfix/master.cf BSMTP=usr/src/bsmtp-1.02.tar.gz PPP_CONFIG=etc/ppp/ppp.conf etc/ppp/ppp.linkup usr/sbin/ipmtice PPPD_CONFIG=etc/ppp/chap-secrets etc/ppp/chat-free etc/ppp/ip-up \ etc/ppp/peers/free usr/bin/ppp-on usr/bin/ppp-off NAT_CONFIG=etc/ipf.rules etc/ipnat.rules SAMBA_CONFIG=etc/samba/smb.conf usr/local/bin/smbprint BASH_CONFIG=etc/profile etc/skel/.profile etc/skel/.bashrc FILES=${RC_CONFIG} ${FSTAB_CONFIG} ${XFREE_CONFIG} ${DHCPD_CONFIG} \ ${NAMED_CONFIG} ${HTTPD_CONFIG} ${SUEXEC} \ ${POSTFIX_CONFIG} ${BSMTP}\ ${PPPD_CONFIG} ${PPP_CONFIG} \ ${NAT_CONFIG} ${SAMBA_CONFIG} ${BASH_CONFIG} TAR_FLAGS=vp UNTAR_DIR=/tmp/save_config ARCHIVE_NAME=save_config.tgz PRINT=printf OK_MESSAGE="\e[300C\e[20D[ \e[1;33mOK\e[0m ]\n" FAILED_MESSAGE="\e[300C\e[20D[\e[1;31mFAILED\e[0m]\n" MESSAGE=${PRINT} ${OK_MESSAGE} || ${PRINT} ${FAILED_MESSAGE} CDROM_PATH=/mnt/cdrom target=ALL help: @echo -e "usage : make save\n make install [target=CONF]\n\nCONF = ALL (default)| RC | XFREE | DHCPD | NAMED | PPP | PPPD | NAT | POSTFIX | HTTPD | SAMBA | BASH" mount_cdrom:install_FSTAB @echo -n "Inserer le CD contenant les packages puis tapez sur 'Entrer'";\ read; \ mount ${CDROM_PATH}/ umount_cdrom: @umount ${CDROM_PATH}/ save:${ARCHIVE_NAME} ${ARCHIVE_NAME}:${FILES:S/^/\//g} @echo 'saving files ...';\ cd /;tar c${TAR_FLAGS}fz ${.CURDIR}/${.TARGET} ${FILES} ${UNTAR_DIR}: @echo 'untar ${ARCHIVE_NAME} in ${UNTAR_DIR} ...' @install -d ${UNTAR_DIR} @tar x${TAR_FLAGS}fz ${ARCHIVE_NAME} -C ${UNTAR_DIR} install:${UNTAR_DIR} @$(MAKE) install_$(target); $(MAKE) clean; clean: @echo 'removing ${UNTAR_DIR} ...'; rm -rf ${UNTAR_DIR} @echo 'removing temp files ...'; rm -f install_* install_ALL: @${.MAKE} install_RC; @${.MAKE} install_FSTAB; @${.MAKE} install_XFREE; @${.MAKE} install_DHCPD; @${.MAKE} install_NAMED; @${.MAKE} install_PPP; @${.MAKE} install_NAT; @${.MAKE} install_POSTFIX; @${.MAKE} install_HTTPD; @${.MAKE} install_SAMBA; @${.MAKE} install_BASH; install_FSTAB: @echo 'Installing FSTAB config ... '; \ cd ${UNTAR_DIR}; \ for i in ${FSTAB_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE} ;\ done; @touch install_FSTAB install_RC: @echo 'Installing RC config ... '; \ cd ${UNTAR_DIR}; \ for i in ${RC_CONFIG}; \ do \ echo -n "\t$$i ... "; \ cp -p /$$i /$$i.old ;\ cp -p $$i /`dirname $$i` && ${MESSAGE} ;\ done; @touch install_RC install_XFREE:install_RC /usr/local/bin/xfstt @echo -n 'Installing XFree config ... '; \ cd ${UNTAR_DIR}; \ install -b -m 644 ${XFREE_CONFIG} /`dirname ${XFREE_CONFIG}` && ${MESSAGE} @touch install_XFREE /usr/local/bin/xfstt: @${.MAKE} mount_cdrom; \ echo 'Installing Xfstt program ... '; \ echo -n "\txfstt-1.1.tgz ... "; \ pkg_add -n ${CDROM_PATH}/xfstt-1.1.tgz > /dev/null 2>&1 && ${MESSAGE}; \ mkdir -p /usr/local/lib/X11/fonts/TrueType/; \ ${.MAKE} umount_cdrom install_DHCPD:install_RC @echo -n 'Installing DHCPD config ... '; \ cd ${UNTAR_DIR};\ install -b -m 644 ${DHCPD_CONFIG} /`dirname ${DHCPD_CONFIG}` && ${MESSAGE} @touch install_DHCPD install_NAMED:install_RC @echo 'Installing Named config ... ';\ cd ${UNTAR_DIR}; \ for i in ${NAMED_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE} ;\ done; \ named.reload; @touch install_NAMED install_POSTFIX:install_RC /usr/local/sbin/postfix /usr/local/libexec/bsmtp/bsmtp @echo 'Installing Postfix config ... '; \ cd ${UNTAR_DIR}; \ /usr/local/sbin/postfix stop; \ for i in ${POSTFIX_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE};\ done; \ echo -n "\tetc/postfix/aliases.db ... "; \ /usr/local/sbin/postalias hash:/etc/postfix/aliases && ${MESSAGE}; \ echo -n "\tetc/postfix/canonical.db ... "; \ /usr/local/sbin/postmap hash:/etc/postfix/canonical && ${MESSAGE}; \ echo -n "\tetc/postfix/transport.db ... "; \ /usr/local/sbin/postmap hash:/etc/postfix/transport && ${MESSAGE}; \ /usr/local/sbin/postfix start; @touch install_POSTFIX /usr/local/sbin/postfix: @${.MAKE} mount_cdrom; \ echo 'Install Postfix program ... '; \ echo -n "\tpostfix-20010228.pl01.tgz ... "; \ pkg_add -n ${CDROM_PATH}/postfix-20010228.pl01.tgz > /dev/null 2>&1 && ${MESSAGE}; \ ${.MAKE} umount_cdrom /usr/local/libexec/bsmtp/bsmtp: @cd ${UNTAR_DIR}/usr/src/; \ tar xfz `basename ${BSMTP}`; \ cd bsmtp;\ echo -n 'Compil bsmtp program ... '; \ make -f Makefile.bsd-wrapper > /dev/null 2>&1 && ${MESSAGE} ;\ echo -n 'Install bsmtp program ... '; \ make -f Makefile.bsd-wrapper install > /dev/null 2>&1 && ${MESSAGE}; \ install_HTTPD:install_RC install_SUEXEC @echo 'Installing httpd config ... '; \ cd ${UNTAR_DIR}; \ for i in ${HTTPD_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE} ;\ done; \ apachectl restart @touch install_HTTPD install_SUEXEC: @echo 'Installing Suexec program ... '; \ cd ${UNTAR_DIR}; \ cd `dirname ${SUEXEC}`; \ tar xfz `basename ${SUEXEC}`; \ cd `basename ${SUEXEC} .tgz`;\ echo -n "\tCompiling suexec ... "; \ make && ${MESSAGE}; \ echo -n "\tInstalling suexec ... "; \ make install && ${MESSAGE} @touch install_SUEXEC install_PPPD: @echo 'Installing pppd config ... '; \ cd ${UNTAR_DIR}; \ for i in ${PPPD_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE} ;\ done; @touch install_PPPD install_PPP:install_RC @echo 'Installing PPP config ... '; \ cd ${UNTAR_DIR}; \ for i in ${PPP_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE} ;\ done; chmod 700 /usr/sbin/ipmtice @touch install_PPP install_NAT:install_RC @echo 'Installing IPnat config ... '; \ cd ${UNTAR_DIR}; \ for i in ${NAT_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE} ;\ done; @touch install_NAT install_SAMBA:install_RC /usr/local/sbin/smbd @echo 'Installing Samba config ... '; \ cd ${UNTAR_DIR}; \ for i in ${SAMBA_CONFIG}; \ do \ echo -n "\t$$i ... "; \ cp -p /$$i /$$i.old ;\ cp -p $$i /`dirname $$i` && ${MESSAGE} ;\ done; @touch install_SAMBA /usr/local/sbin/smbd: @${.MAKE} mount_cdrom; \ echo 'Installing Samba program ... '; \ echo -n "\tsamba-2.0.8.tgz ... "; \ pkg_add -n ${CDROM_PATH}/samba-2.0.8.tgz > /dev/null 2>&1 && ${MESSAGE}; \ ${.MAKE} umount_cdrom install_BASH:/usr/local/bin/gls @echo 'Installing Bash config ... '; \ cd ${UNTAR_DIR}; \ for i in ${BASH_CONFIG}; \ do \ echo -n "\t$$i ... "; \ install -b -m 644 $$i /`dirname $$i` && ${MESSAGE} ;\ done; @touch install_SAMBA /usr/local/bin/gls: @${.MAKE} mount_cdrom; \ echo 'Installing GNUls program ... '; \ echo -n "\tgnuls-4.0.tgz ... "; \ pkg_add -n ${CDROM_PATH}/gnuls-4.0.tgz > /dev/null 2>&1 && ${MESSAGE}; \ ${.MAKE} umount_cdrom
Pour sauver il suffit de faire make save, pour installer la totalité on fait make install et pour installer un élément (par exemple PPP) on fait make install target=PPP. Voici le résultat de l'installation
(root@elrond) Save # make install untar save_config.tgz in /tmp/save_config ... etc/rc etc/rc.conf etc/rc.conf.local etc/rc.local etc/rc.vnc etc/sysctl.conf etc/fstab etc/X11/XF86Config etc/dhcpd.conf var/named/named.boot var/named/namedb/db.cache var/named/namedb/db.local var/named/namedb/db.127.0.0 var/named/namedb/db.192.168.0 var/www/conf/httpd.conf var/www/conf/php3.ini var/www/suexec.tgz etc/postfix/aliases etc/postfix/main.cf etc/postfix/scanonical etc/ppp/chap-secrets etc/ppp/chat-free etc/ppp/ip-up etc/ppp/peers/free usr/bin/ppp-on usr/bin/ppp-off etc/ppp/ppp.conf etc/ppp/ppp.linkup etc/ipf.rules etc/ipnat.rules etc/samba/smb.conf usr/local/bin/smbprint Installing RC config ... etc/rc ... [ OK ] etc/rc.conf ... [ OK ] etc/rc.conf.local ... [ OK ] etc/rc.local ... [ OK ] etc/rc.vnc ... [ OK ] etc/sysctl.conf ... [ OK ] Installing FSTAB config ... etc/fstab ... [ OK ] Inserer le CD contenant les packages puis tapez sur 'Entrer' Installing Xfstt program ... xfstt-1.1.tgz ... [FAILED] Installing XFree config ... [ OK ] Installing DHCPD config ... [ OK ] Installing Named config ... var/named/named.boot ... [ OK ] var/named/namedb/db.cache ... [ OK ] var/named/namedb/db.local ... [ OK ] var/named/namedb/db.127.0.0 ... [ OK ] var/named/namedb/db.192.168.0 ... [ OK ] Reloading Database Installing PPP config ... etc/ppp/ppp.conf ... [ OK ] etc/ppp/ppp.linkup ... [ OK ] Installing IPnat config ... etc/ipf.rules ... [ OK ] etc/ipnat.rules ... [ OK ] Installing Postfix config ... postfix-script: stopping the Postfix mail system etc/postfix/aliases ... [ OK ] etc/postfix/main.cf ... [ OK ] etc/postfix/scanonical ... [ OK ] etc/postfix/aliases.db ... [ OK ] etc/postfix/scanonical.db ... [ OK ] postfix-script: warning: /var/spool/postfix/etc/services and /etc/se rvices differ postfix-script: starting the Postfix mail system Installing Suexec program ... Compiling suexec ... [ OK ] Installing suexec ... [ OK ] Installing httpd config ... var/www/conf/httpd.conf ... [ OK ] var/www/conf/php3.ini ... [ OK ] /usr/sbin/apachectl restart: httpd restarted Installing Samba config ... etc/samba/smb.conf ... [ OK ] usr/local/bin/smbprint ... [ OK ] removing /tmp/save_config ... removing temp files ... (root@elrond) Save #
Cloner votre système consiste à faire une copie de votre système, comme le fait par exemple ce Trucs & Astuces : Copier (déplacer) son Linux sur DD. A la différence, que cette copie vous pourrez la mettre à jour très rapidement et très facilement.
C'est ce que l'on appelle une Sauvegarde différentielle en informatique.
Quel est l'intérêt d'une telle copie ?
Etre sûr de conserver un système qui marche impéccablement bien et
en même temps pouvoir faire des tests d'installations de logiciels,
d'optimisation, de création de packages et tout ce qui peut vous passer
par la tête sur votre système.
La création de packages pour sa distribution est un bon exemple,
car c'est typiquement le genre d'activité où vous pouvez casser votre
système, surtout lorsque vous packagez une librairie centrale.
Et donc ainsi, vous pouvez tester ce que vous voulez en toute
sécurité, une fois que vous savez que cela marche sur la copie, vous l'appliquez sur
votre système original (stable) et vous n'avez plus qu'à remettre le
système copié à jour.
Enfin, si un jour pour une raison ou une autre le système original ne fonctionne plus, vous aurez votre copie.
Bien entendu, cela peut vous servir pour faire simplement une sauvegarde régulière rapidement.
Vous devez de préférence avoir une partition libre d'une taille
adéquate. La taille doit être égale à la somme des tailles des
partitions de votre système original (/ + /home + /usr + /boot +...). Si ce n'est pas le cas, il faut
qu'une partition de votre système soit capable d'accueillir tout le
système.
De plus, il est souhaitable, que vous maitrisiez la configuration de votre loader (lilo, grub) et le fichier /etc/fstab.
Enfin, pour que la copie soit efficace et significative, il est conseillé d'être root. Alors méfiance à ce que vous faites !
Par la suite, je considère que le système copié est sur une partition indépendante (libre). Donc je vais supposer que la partition est montée sous /mnt/copie.
Nous allons créer un fichier d'exclusion, qui comme son nom l'indique, contiendra la liste des fichiers ou répertoires à ne pas sauvegarder. Car certains répertoires et fichiers sont inutiles sur le système copié.
Le fichier exclud.lst :
--------------------
/proc
/tmp
/mnt
/etc/fstab
--------------------
Ce fichier doit aussi contenir le répertoire où vous faites la
copie si vous décidez de mettre la copie ou de monter la partition
ailleurs que sous /mnt.
Une fois ce fichier créé, gardez-le bien au chaud dans un coin,
vous en aurez besoin à chaque mise jour. Maintenant, copions le
système :
rsync -ravH --exclude-from=exclud.lst / /mnt/copie
La copie faite, si vous le désirez, vous pouvez rendre ce nouveau système bootable :
cd /mnt/copie
mkdir proc tmp mnt
chmod -R 755 proc mnt
chmod -R 777 tmp
De plus, créez les répertoires utiles dans /mnt/copie/mnt, comme cdrom, win_c ou floppy.
Créez le fichier /mnt/copie/etc/fstab correspondant à ce nouveau système. C'est à dire qu'il doit ressembler à celui d'origine mais en y enlevant les lignes des autres points de montages (/home, /usr, /boot,...) et en remplacant le /dev/... du root (/) par celui de la partition de copie.
Et enfin sur le système orignal, modifiez la configuration de votre loader afin de pouvoir booter sur le système copié.
Ressortez le fichier exclud.lst, montez la partition contenant la copie, nous allons la mettre à jour. C'est à dire que seulement ce qui a été modifié, créé ou détruit sur le système original depuis la dernière mise à jour sera reproduit sur le système copié (sauvegarde différentielle).
rsync -uravH --delete --exclude-from=exclud.lst / /mnt/copie
Si vous souhaitez simplement simuler ce qui va se passer afin de vérifier avant :
rsync -uravHn --delete --exclude-from=exclud.lst / /mnt/copie
Et, important, si vous ne voulez pas effacer les fichiers de la copie qui n'existent plus sur l'original, faites :
rsync -uravH --exclude-from=exclud.lst / /mnt/copie
Dans ce dernier cas, votre copie ne sera plus exactement la copie de l'original.
Voilà, vous savez tout ! Je vous invite à faire un petit man rsync pour en savoir plus.
PS : La commande rsync est applicable sur n'importe quel répertoire. Je pense particulièrement aux répertoires sensibles, tel que /etc, si vous n'avez pas la possibilité de sauvegarder tout votre système.
Voici une méthode permettant de faire simplement un double de sa distribution (ou d'une partie de celle-ci) sur son disque dur avant de se lancer dans de nouvelles aventures. Si l'on préfère elle peut également servir à changer la distribution de partition(s). Cette méthode utilise la commande tar qui a l'avantage de préserver les propriétaires et permissions des fichiers ainsi que les liens symboliques sans que l'on ait besoin de lui passer d'options particulières.
Pour simplifier, nous admettrons ici que votre distribution tient sur une seule partition. Si ce n'est pas le cas il vous suffira de répéter ce qui suit, en l'adaptant légèrement, pour chacune de celles que vous souhaitez copier. Elle nécessite bien sûr que vous disposiez alors de partitions libres en nombre et taille suffisants.
Nous allons donc copier notre distribution située en hda1 (source) vers hda2 (cible).
- Passez en root : su -
- Montez la cible en /mnt/disk par exemple : mount /dev/hda2 /mnt/disk
Utilisez l'option -t pour préciser le type du système de fichiers si vous rencontrez un problème.
- Placez-vous dans le répertoire cible : cd /mnt/disk
- Lancez la copie de la source : (cd / ; tar cf - *) | tar xvf -
Nous utilisons ici un sous-shell pour nous placer à la racine de notre distribution /. Nous l'archivons totalement sur la sortie standard puis la désarchivons sur l'entrée standard (pour ne copier qu'une partie de la distribution, il suffit de mofidifier le "cd /source", par exemple en "cd /home" pour ne copier que les répertoires utilisateurs). Il est a noté qu'aucune archive tar n'est réellement écrite.
Maintenant nous aimerions pouvoir tester le résultat, et voir si notre double fonctionne bien.
- Editez le fichier fstab de la cible pour le modifier en conséquence, par exemple :
/dev/hda1 / ext3 defaults 1 1 devient /dev/hda2 / ext3 defaults 1 1
- Retournez chez vous : cd
- Editez le fichier lilo.conf de la source : vi /etc/lilo.conf
Là vous ajoutez une entrée pointant vers la cible.
- Rendez ceci effectif : lilo
Il ne vous reste plus qu'à redémarrer sur votre double pour juger du résultat. Ca marche ! Oui, mais il y a un petit défaut ... les fichiers cachés (dont les noms commencent par un .) sont maintenant si bien cachés que l'on ne les retrouve plus. En fait ils n'ont pas été copiés, il vous faudra les ajouter. Heureusement ils ne sont pas très nombreux et généralement situés presque tous dans les "home" des users et de root.
J'ai testé cette méthode avec succès. Je ne pense pas qu'elle comporte de réel danger pour votre distribution, puisque vous n'en faite qu'une copie. Soyez prudents tout de même, notamment si vous décidez de déplacer ainsi votre distribution en supprimant ensuite la source.
Complément de l'astuce postée :
http://lea-linux.org/trucs/lire.php3?id=76
Si vous désirez réaliser une sauvegarde avec conservation du propriétaire, du groupe et des permisssions d'accès, otez l'option -r de la ligne de commande de mkisofs.
Ce qui donne :
# mkisofs -o temp.iso -J -R -graft-points -l -L -no-bak -allow-multidot -q home/=/home www/=/var/www mysql/=/var/lib/mysql
# cp -p Archive Emplacement
Les droits d'origine sont ainsi conservés.
# cp -p MaSauvegarde Emplacment
L'option -p permettra de conserver le propriétaire, le groupe et les permissions d'accès.
Le script commenté :
Pour lancer le script : ./NomDuScript
[parametre du zip : 100
ou 250
]
Le paramètre 100 ou 250 est nécessaire au bon fonctionnement de ce script.
Automatisez ce script par un cron
.
LE SCRIPT
#! /bin/sh
# ---------------
# SAUVEGARDE AUTOMATISEE SUR CDRW
# TUX PUNX
# 2001-05-05
# ---------------
# TEST DES PARAMETRES D'ENTREE : speed=$1 device=$2
if [ $# -lt 2 ]
then
echo "NB parametres : NOT OK."
echo "SYNTAXE : svg [speed] [device]."
echo "Par exemple : svg 4 1,0,0"
exit
else
echo "SYNTAXE OK"
fi
# ETAPE : FORMATAGE RAPIDE DU CDRW
cdrecord -v -pad speed=$1 dev=$2 blank=fast
# CREATION D'UNE IMAGE ISO
mkisofs -o temp.iso -J -r -R -graft-points -l -L -no-bak -allow-multidot -q home/=/home www/=/var/www mysql/=/var/lib/mysql
# GRAVURE DE L'IMAGE
cdrecord -v -eject speed=$1 dev=$2 temp.iso
# SUPPRESION DE L'IMAGE ISO
rm -f temp.iso
# ------------------ Fin du script ---------------------
# --------- Tux Punx
# ------------------------------------------------------
INSTALLATION
On lancera ce script en lui accordant les droits en exécution :
# chmod +X svg.sh
Seul le root peut lancer le script (cdrecord/mkisofs).
En ces temps de connexion internet par ADSL ou câble, les personnes qui peuvent télécharger des images ISO (fichier contenant l'image de ce qui se trouve sur un CD) sont de plus en plus nombreuses.
Oui, mais... Comment les graver ?
Sous Linux, c'est simple. Une ligne de commande suffit :
# cdrecord -v speed=8 dev=0,5,0 /chemin/image.iso
avec :
* speed la vitesse du graveur 8 pour 8x par exemple,
* dev l'adresse sur le bus SCSI du graveur, obtenue avec la commande :
# cdrecord -scanbus
Note : si vous avez aussi téléchargé le fichier md5sums (lorsqu'il existe), vous pouvez tester votre image avant de la graver par la commande :
$ md5sum -c md5sums
Si vous êtes allergiques à la ligne de commande, essayez le logiciel K3B, un excellent outil de gravure, qui vous permettra de graver votre image ISO en 3 clics.
Sous Windows, utilisez votre logiciel de gravure, et choisissez la fonction "graver une image". Ouvrez alors le fichier contenant l'image ISO, et gravez-le.
Nero (Les fichiers .nrg de Nero seraient en fait des images ISO) et Easy CD Creator savent le faire à ce qu'il paraît.
PS : une erreur classique consiste à graver le fichier image.iso sur le système de fichiers du CD (i.e. le CD contient un seul fichier, votre image ISO). Dans ce cas, vous pouvez toujours vous en servir en montant le CD, puis en montant l'image en loopback (voir ce truc), mais c'est de la bidouille, et surtout c'est fichu pour booter sur le CD (ex : CD d'une distribution Linux).
Il y a maintenant un article sur la gravure en ligne de commande sur Léa ; je vous conseille également l'excellent logiciel K3B en mode graphique, et ces trois liens :
CD-Writing-HOWTO
funix.org
linuxfr.org
Bon surf ;)
alias cdcopy='su root -c "cdrecord -v fs=4m dev=0,6,0 speed=6 /dev/scd0"'
-v
: mode verbeux
fs=4m
: fifo de 4 Mo
dev=0,6,0
: identifiant SCSI du graveur (pour connaître le votre, tapez cdrecord -scanbus
)
speed=6
: vitesse de votre graveur
/dev/scd0
: identifiant de votre lecteur de CD-ROM (souvent aussi /dev/hdc
)
cdcopy
(vous pouvez placer la ligne de définition dans votre .bashrc
) copie un CD de votre lecteur vers votre graveur à la volée ; il vous demande le mot de passe du root avant de commencer.
alias scd0 sr_mod
alias scsi_hostadapter ide-scsi
options ide-cd ignore=hdb
Fin du chapitre