Salut,
marco123 a écrit :salut !
Alors linux est très protégé contrairement aux anciens windows ( ce qui a changé )
pour faire simple, sur un linux quel qu’il soit tu as 3 partitions totalement indépendantes.
Mheu non
Seule root (/) est obligatoire : il est même possible d'avoir tout l'OS et les données sur cette partition (ce qui n'est pas une super idée).
La partition de swap est facultative ... et en tous cas ne devrait en aucun cas être sur une carte SD.
Pour le reste, tout est "
au bon vouloir de l'admin système".
Rony a écrit :Je cherche à comprendre la logique de l'arborescence Linux.
A titre d'exemple, je vais te faire voir ce que j'ai sur mon BananaPI.
C'est un peu déconcertant au début car tu peux monter n'importe quel disque quasiment n'importe où dans l'arborescence ... Mais c'est aussi extrêmement puissant et flexible.
La première chose à savoir, c'est que le fichier /etc/fstab contient les points de montage, c'est à dire à quel endroit monter les disques (au sens large du terme) :
Code : Tout sélectionner
laurent@torchwood ~ $ cat /etc/fstab
# /etc/fstab: static file system information.
# <fs> <mountpoint> <type> <opts> <dump/pass>
/dev/mmcblk0p1 /boot auto noauto,noatime 1 2
/dev/mmcblk0p2 / ext3 noatime 0 1
/dev/sda1 none swap sw 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
/dev/fd0 /mnt/floppy auto noauto 0 0
/dev/sda2 /mnt/sata auto noatime 0 1
/mnt/sata/var /var none bind
/mnt/sata/home /home none bind
/mnt/sata/web /web none bind
none /var/tmp tmpfs defaults 0 0
none /tmp tmpfs defaults 0 0
Déjà, toute ligne commençant par un '#' est un commentaire.
- La première colonne indique la source du point de montage (où se trouvent physiquement les données) et tout ce qui se trouve dans /dev est un composant physique (device ... d'où le nom).
- La seconde où le disque sera monté c'est à dire où tu trouveras tes données
- Le reste ... pas important ici.
Ainsi, on voit que le root
/ se trouve dans
/dev/mmcblk0p2 qui est la 2nd partions de ma carte SD.
Généralement, sur nos *PI qui bootent sur des SD, on crée une partition de boot différente du / : c'est parce qu'elle est au format MS-DOS pour qu'elle puisse être écrite depuis un m$ si pour une raison ou une autre le système ne peut plus booter. C'est le
/boot qui se correspond à la 1er partition de ma SD.
A noter que cette partition ne sert qu'au démarrage et n'est généralement pas monté une fois le système
booté.
Petite subtilité ici : hormis /, les points de montage se présentent comme de simples répertoires lors-qu’aucun disque n'y est attaché.
Ainsi :
Le repertoire /boot est vide lorsque sa partition n'est pas montée.
Code : Tout sélectionner
torchwood laurent # mount /boot
torchwood laurent # ls /boot
script.bin uEnv.txt uImage
torchwood laurent #
Le mount la ... monte
Le 2nd ls affiche maintenant le contenu de ma partition /boot
La ligne
indique que le système trouvera une swap (espace mémoire supplémentaire stocké sur disque) sur la partition sda1. Comme il ne s'agit pas d'un système de fichier, il n'y a pas de point de montage.
Comme je l'ai dit cette partition est parfaitement optionnelle sous Linux (j'ai une tablette sous Linux qui n'en a pas car juste une SD), est est obligatoire sous d'autres OS.
En aucun cas, cette swap ne doit être sur la SD ... sinon elle ne vivra pas bien vielle.
Monte mon disque Sata à l'emplacement /mnt/sata.
Mon but étant d'avoir strictement aucune écriture sur disque (hormis lors du boot), j'ai mis les lignes suivantes :
Code : Tout sélectionner
/mnt/sata/var /var none bind
/mnt/sata/home /home none bind
/mnt/sata/web /web none bind
Qui montent des répertoires systèmes vers des sous répertoires de mon disque
Bon, en clair :
/var est l'endroit où entre autre le système stocke ses logs, donc beaucoup d'écriture, donc pas bien pour la SD.
C'est pourquoi il crée un lien qui fait que l'arbo
/var est stockée physiquement dans le répertoire
/mnt/sata/var
Donc :
Code : Tout sélectionner
torchwood laurent # ls -l /var
total 32
drwxrwx--- 5 root named 4096 21 avril 11:29 bind
drwxr-xr-x 7 root root 4096 22 févr. 2015 cache
drwxr-xr-x 3 root root 4096 27 août 14:53 db
drwxr-xr-x 2 root root 4096 11 nov. 2015 empty
drwxr-xr-x 20 root root 4096 29 août 21:10 lib
lrwxrwxrwx 1 root root 9 23 nov. 2014 lock -> /run/lock
drwxr-xr-x 7 root root 4096 29 août 21:10 log
lrwxrwxrwx 1 root root 15 12 sept. 2014 mail -> /var/spool/mail
lrwxrwxrwx 1 root root 4 23 nov. 2014 run -> /run
drwxr-xr-x 5 root root 4096 22 févr. 2015 spool
drwxrwxrwt 2 root root 40 1 janv. 2010 tmp
drwxr-xr-x 3 www root 4096 21 déc. 2014 www
torchwood laurent # ls -l /mnt/sata/var/
total 36
drwxrwx--- 5 root named 4096 21 avril 11:29 bind
drwxr-xr-x 7 root root 4096 22 févr. 2015 cache
drwxr-xr-x 3 root root 4096 27 août 14:53 db
drwxr-xr-x 2 root root 4096 11 nov. 2015 empty
drwxr-xr-x 20 root root 4096 29 août 21:10 lib
lrwxrwxrwx 1 root root 9 23 nov. 2014 lock -> /run/lock
drwxr-xr-x 7 root root 4096 29 août 21:10 log
lrwxrwxrwx 1 root root 15 12 sept. 2014 mail -> /var/spool/mail
lrwxrwxrwx 1 root root 4 23 nov. 2014 run -> /run
drwxr-xr-x 5 root root 4096 22 févr. 2015 spool
drwxr-xr-t 3 root root 4096 20 août 11:00 tmp
drwxr-xr-x 3 www root 4096 21 déc. 2014 www
Enfin, il y a 2 répertoires qui servent à stocker des fichiers temporaires ... pour éviter de bousiller ma SD et accélérer certaines actions (entre autres les compilations), je les est mis en
tmpfs qui est un fs qui est stocké en mémoire.
Code : Tout sélectionner
none /var/tmp tmpfs defaults 0 0
none /tmp tmpfs defaults 0 0
Voila, j'espère que ca reste bitable
marco123 a écrit :Par exemple le /home se trouve sur quel disque et partition ?
Ben
df est ton ami :
Code : Tout sélectionner
torchwood laurent # cd /home
torchwood home # df .
Sys. de fichiers blocs de 1K Utilisé Disponible Uti% Monté sur
/dev/sda2 76432536 10104156 62445780 14% /home
marco123 a écrit :J'ai par exemple un chemin Linux style /etc/network/trucMachin.txt sur ma carte sd ou se trouve mon os, si maintenant je lis ma carte sur Windows, où se trouvera ce fichier ?
Dans un endroit qui n'est pas accessible : m$ se prenant pour le centre du monde, ils n'ont pas jugé utile de lire les filesystem d'autres OS. m$w est donc incapable de trouver ton fichier.
Si tu as ce genre d'échange à faire, soit tu passe par un montage réseau, soit par un clef USB ou encore (et je te le déconseille) tu peux créer une partition NTFS ou DOS qui sera alors lisible des 2 cotés ... mais c'est une TRES MAUVAISE IDEE d'y mettre autre chose que des fichiers a transférer car NTFS comme DOS sont à des années lumières de n'importe quel FS unix, tant niveau perf que fonctionnalité.