|
Linux historique
Au cours de l'année 1991, un étudiant finlandais, nommé
Linus Torvalds, a acheté un micro-ordinateur de type PC, afin d'étudier
la programmation du microprocesseur i386. Ne voulant pas être limité
par MS/DOS, il a tout d'abord utilisé un clone d'Unix, peu cher, appelé
Minix. Minix possède lui-même certaines limitations qui, bien que moins
importantes que celles de MS/DOS, sont assez génantes (limitation de la
taille des exécutables à 64 kilo-octets, limitation des systèmes de
fichiers à 64 méga-octets, temps de réponse déplorable, ...). Aussi,
Linus Torvalds a commencé à ré-écrire certaines parties du système afin
de lui ajouter des fonctionnalités et de le rendre plus efficace et a
diffusé une distribution source de son travail via Internet. La
première version de Linux (version 0.1 en août 1991) était née.
Cette première version était très limitée (elle ne
comportait même pas de gestionnaire des disquettes) et n'était
utilisable que sous Minix. Aussi, il est fort probable qu'elle ait été
utilisée par très peu de personnes. Néanmoins, un petit nombre de
"hackers" ont découvert, à cette époque, cet embryon de système et ont
vu en lui la base d'un système exploitable. Aussi, un certain nombre de
personnes ont commencé à travailler avec Linus Torvalds afin d'enrichir
le noyau.
Au cours des quatre dernières années, le développement
du noyau Linux, ainsi que des utilitaires nécessaires pour en faire un
système compatible avec Unix, a été mené de manière intensive par un
ensemble de programmeurs, situés aux quatre coins du monde,
communiquant via le réseau Internet. Ces développeurs ont implémenté de
nombreuses fonctionnalités qui font de Linux aujourd'hui un clone
efficace d'Unix pour micro-ordinateurs PC-386, Amiga et Atari.
Avant propos
Ce site est plus un pense bête pour moi qu'un site dédié directement à Linux
L'arborescence de Linux suit un modèle standardisé (FSSTND) : elle est presque la même entre les différentes distributions.
Bien entendu, tous les répertoires ne sont pas décrits en grand détail :
une installation minimale de Linux comporte plusieurs dizaines de milliers de fichiers...
l'arborescence de fichiers du système Linux |
/etc |
Contient les fichiers de configuration généraux de tous les programmes du système. |
/etc/rc.d |
Contient les commandes à exécuter au démarrage du système. |
/bin |
Contient
des commandes nécessaires lors du démarrage du système. Ces commandes
pourront par la suite être utilisées par les utilisateurs. |
/sbin |
Contient
des commandes nécessaires lors du démarrage du système, mais en général
inutiles pour les utilisateurs (soit parce qu'ils n'ont pas les droits
suffisants pour que ces programmes fassent quoi que ce soit d'utile
pour eux, soit parce que leur sortie ne les intéresse normalement pas).
|
/home |
Est
réservé à l'hébergement des comptes des utilisateurs (un sous-dossier
par personne). Il est ainsi facile de partager tous les comptes
personnels en réseau. L'administrateur root ne figure pas dans ce
répertoire, car en cas d'échec du réseau dans ce scénario il doit tout
de même pouvoir se loguer. |
/dev |
Ce
répertoire contient des fichiers spéciaux (de type caractère ou bloc)
permettant d'accéder aux périphériques. On ne peut pas toujours les
éditer avec un éditeur de texte ; mais un programme peut effectuer
dessus d'autres opérations que la lecture/écriture et cela a un effet
sur le matériel (ex : changer la fréquence d'échantillonnage sur la
carte son, accéder directement à la mémoire vidéo...). Ces fichiers
sont munis de droits, ce qui permet à l'administrateur de décider qui a
accès à quels périphériques. |
/proc |
C'est
un pseudo-répertoire : en réalité, son contenu n'existe pas
physiquement sur le disque, mais est créé dynamiquement par le noyau
lui-même. On y trouve nombre d'informations techniques utiles,
notamment sur les périphériques reconnus par le système (numéro de
ports et interruptions), des statistiques du noyau, du réseau et des
processus en cours d'exécution, etc. |
/boot |
C'est
le répertoire qui contient le noyau. Il est lu et copié en mémoire au
démarrage du système, et ensuite les fichiers du noyau ne servent plus.
|
/usr |
Contient
tous les programmes et fichiers de données qui ont pour
caractéristiques : de ne pas être nécessaires au démarrage de la
machine (de sorte qu'on peut installer /usr sur un serveur réseau, ce
qui facilite grandement l'administration), et de ne jamais être
modifiés en fonctionnement normal de l'ordinateur (de sorte que /usr
peut être partagé en lecture seule, pour la sécurité et les
performances). |
/usr/bin |
commandes utilisables par tous les utilisateurs, et non nécessaires lors du démarrage du système; |
/usr/sbin |
Commandes réservées au super-utilisateur, et non nécessaires lors du démarrage du système; Contient les pages de manuel. |
/usr/doc |
Contient de nombreuses documentations et sources d'informations. |
/usr/share |
Contient
des fichiers de données dans un format portable (des textes, des
images, etc. mais pas de l'assembleur), qui pourraient être partagés en
réseau même entre des clients Linux qui n'ont pas tous le même type de
processeur (ce qui ferait gagner énormément de place sur un serveur
servant plusieurs types de client). La migration des fichiers de
/usr/lib vers /usr/share selon leur type est un processus lent, mais
qui arrive petit à petit dans les distributions. |
/usr/X11R6 |
Contient tous les fichiers du système X-Window (serveurs X, programmes graphiques, bibliothèques, etc.) |
/usr/local |
Lieu
où sont stockés les fichiers spécifiques au système installé
(installation locale) : il contient une arborescence similaire à celle
de /usr. Lorsque l'on récupère et installe un logiciel à partir des
sources, il convient de l'installer dans /usr/local parce que le
domaine /usr est géré par RPM et qu'il convient ne pas modifier les
fichiers des programmes dans son dos. |
/var |
Contient
des données mises à jour par différents programmes durant le
fonctionnement du système. Autrement dit : cette partition doit rester
accessible en écriture, au contraire de /usr, mais elle peut être
également partagée en réseau. |
/var/lock |
Fichiers de blocage, pour interdire par exemple deux utilisations simultanées du modem par deux processus. |
/var/spool |
Files d'attente de différents services (imprimantes, messagerie électronique...) : par exemple,les courriers électroniques de sont déposés dans le fichier /var/spool/mail/.
Contient les fichiers de rapport constitué de messages datés émis par
les différents démons et le noyau. Ils sont classés par thème ; le
fichier /etcsyslog.conf permet de modifier leur répartition. |
/tmp |
Contient les données temporaires des différents programmes (parfois, /tmp est un lien symbolique vers /var/tmp). |
Ne pas oublier le man suivi de la commande exp: man tar
Commandes d'informations |
date |
Affiche la date et l'heure. |
who |
Affiche la liste des utilisateur connectés. |
who i am |
Qui je suis ? |
cal |
Affiche le calendrier. |
uname |
Affiche le nom et les carractéristique du système. |
env |
Affiche l'enviromenent. |
alias |
Affiche les alias. |
ls /usr/bin |
Affiche la liste des commandes externes et standards. |
man |
Affiche le manuel de la commande. |
pwd |
Affiche le répertoire courrant. |
df |
Affiche la place restant libre sur les disque. |
Commandes de gestion de fichiers.
|
ls -l |
Affiche les attributs d'un fichier. |
cp |
Copie un fichier. |
rm |
Détruit un fichier. |
cat ou more |
Affiche le contenu d'un fichier texte. |
file |
Affiche le type d'un fichier. |
diff |
Comparent des fichiers |
vi ou ed |
Editent un fichier texte. |
touch |
Crée un fichier vide ou met à jour la date de modification d'un fichier. |
Commandes de gestion de repertoires. |
cd |
Change de répertoire. |
ls |
Affiche le contenu du répertoire. |
rmdir |
Détruit un répertoire. |
mkdir |
Crée un répertoire. |
cp |
Copie des fichiers dans un répertoire. (cp fichier ... chemin) |
Commandes de gestion d'arborescence. |
ls -R |
Affiche les fichiers d'une arborescence. |
du |
Affiche la taille d'une arborescence. |
df |
Affiche la place restant libre sur les disques. |
find |
Recherche de fichiers dans une arborescence. |
cp -r |
Copie une arborescence |
rm -rf |
Supprime une arborescence |
Les commandes de droits. |
ls -l |
Affiche les droits. |
chmod |
Change les droits d'un fichier. |
chown |
Change le propriétaire d'un fichier. |
umask |
Positionne les droits par défaut. |
chgrp |
Change le groupe d'un fichier. |
newgrp |
Change le groupe courant. |
id |
Permet de connaitre le groupe courant. |
su |
Change l'identité de l'utilisateur. |
Les commandes de sauvegardes. |
tar |
La commande de sauvegarde la plus répandue. |
cpio |
La commande de sauvegarde qui utilise les redirections. |
pax |
La commande de sauvegarde ISO. |
dd |
Sauvegarde bloc à bloc de ou vers un périphérique. |
compress ou pack |
Compresse un fichier. |
uncompress ou unpack |
Décompresse un fichier. |
Commandes diverses. |
exit |
Met fin à la session. |
passwd |
Modifier son mot de passe. |
echo |
Affiche un message à l'écran. |
bc |
Calculatrice. |
wait |
Attend la fin d'une taches d'arrière-plan. |
calendar |
Affiche l'agenda du jour. |
alias |
Crée le synonyme d'une commande. |
unalias |
Détruit un alias. |
script |
Mémorise l'istorique d'une session. |
sh |
Exécute un shell intéractif ou un script. |
export |
Met une variable dans l'environement. |
stty |
Configure le terminal. |
Les problèmes
Les causes de pannes sont diverses.
Il peut se produire qu'une application ne démarre pas ou bien que la procédure de démarrage de Linux s'arrête.
Voici une liste des problèmes les plus importants:
- Problème liés au démarrage.
- Il faut absolument les prévoir.
- Anticipation.
Enregistrez les paramètres stockés dans l'eprom de votre machine.
- Géométrie des disques.
- Configuration de la mémoire
- Réaliser régulièrement des sauvegardes de vos fichiers
- Concervez les supports d'installation
- Mémorisez le bloc de boot de votre disque de démarrage
- Concervez une copie de /etc/inittab et des scripts de démarrage (les RC)
Une application ne réagit plus.
Il faut dans ce cas, l'arrêter.
Si l'application est complexe, on doit l'arrêter via son script :
cd /etc/rc.d/init.d
./le_Nom stop
Dans les autres cas, on utilise la commande kill.
ps -ef | grep Le_Nom
458 ? 00:00:00 Le_Nom
kill 458
Ou si l'application ne réagit toujours pas:
kill -9 458
Une sauvegarde paraît corrompu.
La restauration d'une sauvegarde peut ne pas fonctionner, que faire ?
Insister, on ne doit pas juger sur un seul essai, le mieux étant de
changer de lecteur ou de système et de rapatrier les données via le
réseau.
Un utilisateur à perdu son password.
L'administrateur "root" lui attribue un nouveau mot de pass
passwd le_nom_utilisateur
Root à perdu son password.
L'administrateur "root" démarre le système en mode maintenance, sans avoir fournir de password.
Il a aussi tout intérêt de créer un autre compte ayant les mêmes droits que root
useradd -u 0 -o le_Nom_Du_Compte
passwd le_Nom_Du_Compte
Root à supprimer par erreur le(s) fichiers passwd ou group.
Il suffit de booter sur une disquette sytème et de copier le fichier /etc/passwd- ou /etc/group-.
Seul le(s) dernier(s) users seront à recréer.
- Formatage d'une disquette
Comment formater une disquette
C'est très simple la commande mkfs est la pour cela.
mkfs -t msdos /dev/fd0 Le -t permet indiquer le type de format.
Comment créer une disquette système
C'est très simple la commande mkbootdisk est la pour cela.
mkbootdisk --device /dev/fd0 2.6.3-7mdk le 2.6.3-7mdk correspond à la version du noyau de votre système.
Pour connaitre la version du noyau il faut utiliser la commande uname -a
Création d'une disquette d'installation réseau en ftp ou http
Pour
cela il faut aller sur le cdrom N°1 de la distrubution à installer et
de ce rendre dans le dossier images pour utiliser les fichiers
network.img et network_drivers.img et de créer la(les) disquette(s) en
utilisant la commande dd
dd if=network.img of=/dev/fd0
- Montage et démontage disque
Point de montage
Vous voulez démonter votre lecteur de cdrom mais un autre utilisateur l'utilise mais vous ne savez pas qui.
La commande fuser permet de trouver l'utilisateur mais aussi de démonter en forçant le démontage.
Recherche de l'utilisateur fuser -v /le_point_de_montage
Forçer le démontage fuser -k /le_point_de_montage
- Recherche et suppression de fichier
Rechercher et supprimer une série de fichier
Vous voulez supprimer une série de fichier par exemple les fichiers core
Utilisez la commande find
find / -type f -name core -exec rm -f {} \;
Localiser les fichiers pour une recherche rapide
Vous pouvez utiliser la commande locate qui permettra de localiser rapidement un fichier.
Pour créer une base de données locate -u
Puis pour localiser locate le_fichier
Ou est le fichier bin
Vous pouvez utiliser la commande whereis qui affichera le chemin d'un fichier bin.
Je ne connais pas le chemin du bin de mysql whereis mysql
Restituer les permisions lors de la restauration d'un fichier tar
C'est juste une option de la commande tar mais elle est bien pratique lors de la restauration de votre fichier home par exemple.
tar -xvpf le_fichier_archive.tar
Installation d'un pilote
Copier le fichier module puis utiliser insmod suivi du fichier module
|
|