web-dev-qa-db-fra.com

Liens symboliques sur les répertoires du système de fichiers entre différents lecteurs?

J'essaie d'installer Ubuntu 16.04 sur mon SanDisk iSSD intégré de 24 Go avec un autre lecteur secondaire de 500 Go, comme indiqué dans: Comment démarrer Ubuntu à partir d'un lecteur SSD qui ne peut pas être sélectionné comme périphérique d'amorçage?

Même si la réponse de Gertvdijk est excellente, je ne comprends toujours pas les liens symboliques qu’il mentionne.

Je veux créer des dossiers qui utilisent beaucoup d’espace, par exemple /sbin/ pour stocker les informations sur le plus grand lecteur. Disons que je fais /sbin/ un lien symbolique vers /folder/on/large/drive/ avec: ln -s /sbin/ /folder/on/large/drive

Est-ce que ça va faire l'affaire? Si j'utilisais apt-get install pour installer un programme et que je voulais placer des fichiers dans /sbin/ serait-il automatiquement placé dans /folder/on/large/drive à la place?

Ou bien mount --bind /sbin/ /folder/on/large/drive fonctionnerait-il mieux?

3
kung

Réponse courte: L'un ou l'autre devrait fonctionner correctement pour cela.

Réponse plus longue: Tant que tout fonctionne, ils doivent fonctionner de manière presque identique. La seule différence serait dans ce qui se passe si, pour une raison quelconque, ils ne fonctionnent pas .

Pensez à un lien symbolique comme un fichier "Shortcut". En gros, il s’agit simplement d’un petit fichier qui vous indique où aller ensuite, et le système d’exploitation (généralement) gère automatiquement cette redirection.

Un montage, en revanche, modifie directement votre vue du système de fichiers - chaque fois que vous demandez un fichier depuis un répertoire monté, le noyau vous envoie simplement le fichier actuel .

Au cas où le système de fichiers cible serait indisponible, les liens symboliques et les montages se comporteraient différemment. Un lien symbolique pointera vers un lieu qui n'existe pas - et les choses vont probablement commencer à générer des erreurs. Cependant, un montage échouera immédiatement car il n'y a pas de système de fichiers à monter. Ensuite, toute tentative de lecture ou d'écriture à partir de celui-ci passera directement au répertoire (probablement vide) qui était supposé être recouvert par le montage.

Pages de manuel: ln (1) , mount (8)

Cela dit, je vous déconseillerais personnellement de déplacer tout fichier critique du système (comme /sbin) du lecteur principal. Le déplacement de /home (ou de certains de ses sous-répertoires) sur un deuxième disque est toutefois une pratique très courante et acceptée.

1
Ethan Marmaduke