Astuces de partitionnement et de montage préférées

15

Nous savons tous que le montage d'une nouvelle partition en tant que / home et peut-être / boot est extrêmement utile. Ou monter un répertoire distant en tant que / opt peut être idéal pour partager des outils système. Existe-t-il d'autres utilisations, peut-être plus ésotériques, pour des partitions ou des disques durs supplémentaires ou des méthodes astucieuses pour monter des volumes externes? Peut-être que même si quelqu'un a également des machines Windows * Shudder *, publiez quelques astuces intéressantes concernant le partitionnement et le montage du disque dur.

Falmarri
la source

Réponses:

12

FUSE (Filesystem in USErspace) permet à beaucoup de choses d'être accessibles en tant que fichiers ordinaires (pas une liste exhaustive par tous les moyens):

Il existe également de nombreux systèmes de fichiers FUSE qui présentent une vue d'un autre système de fichiers avec filtrage, renommage ou modification des métadonnées ou du contenu:

  • Conservez des copies de toutes les versions antérieures des fichiers avec copyfs , waybackfs , ...
  • Consigner chaque action avec logsfs
  • Crypter les fichiers de manière transparente avec encfs
  • Convertir du contenu audio avec mp3fs
  • Voir une vue en lecture seule ou modifier les autorisations avec bindfs
  • Voir une vue partielle en lecture seule avec filtrage rofs
  • Convertir des jeux de caractères de nom de fichier avec convmvfs
  • Obtenez une vue insensible à la casse avec ciopfs

Plus de possibilités sur le site FUSE et ailleurs. Vous pouvez également définir facilement les vôtres dans Erlang , Haskell , Lisp , Lua , Ocaml , Perl , Python , ...

Gilles 'SO- arrête d'être méchant'
la source
10

La plupart des unités ont un gestionnaire de volume logique . Utilise le.

  • Les systèmes de fichiers sont désormais désignés par des noms significatifs (comme /dev/mapper/darkstar-home) plutôt que par des lettres de lecteur (comme /dev/sda1, oups, c'est maintenant /dev/sdb1parce que j'ai démarré avec un disque externe branché) ou avec des UUID sûrs mais dénués de sens.

  • Vous souhaitez déplacer un système de fichiers vers un autre disque? Créez un volume physique sur le nouveau disque, ajoutez-le au groupe de volumes et déplacez le volume logique sur le nouveau volume physique. Tout se fait sans temps d'arrêt, aucun démontage requis.

  • Lorsque vous effectuez une sauvegarde, prenez un instantané du disque et exécutez votre sauvegarde à partir de l'instantané. De cette façon, la sauvegarde est une vue cohérente du système de fichiers (c'est-à-dire qu'il y a vraiment eu un moment où le système de fichiers était dans cet état). Cela ne s'applique pas aux sauvegardes naïves (par exemple, le fichier A est sauvegardé, puis un programme modifie d'abord A puis B, puis B est sauvegardé: la sauvegarde a le nouveau B et l'ancien A).

  • Besoin d'agrandir un système de fichiers? Les volumes logiques n'ont pas besoin d'être contigus, vous n'avez donc besoin que de suffisamment d'espace libre, peu importe où.

Gilles 'SO- arrête d'être méchant'
la source
8

Vous avez quelqu'un qui ne peut accéder à votre serveur que via ftp et est confiné à son répertoire personnel, mais vous vous rendez compte qu'il a besoin d'accéder à un autre répertoire qui ne se trouve pas dans son dossier personnel.

Par exemple, bob a un accès ftp à votre serveur Web, mais vous souhaitez également lui permettre d'afficher les fichiers journaux dans /var/logs/httpd/vhosts/bobssite.com/. C'est compliqué de tout reconfigurer pour qu'apache écrive les journaux de bobssite.com dans le dossier d'accueil de bobs, mais vous pouvez utiliser l'option de liaison pour remonter le dossier comme ceci

mkdir /home/bob/logs
mount --bind /var/logs/httpd/vhosts/bobssite.com /home/bob/logs/

Plus d'informations peuvent être trouvées ici .

Richard Holloway
la source
3
Vous pouvez également utiliser bindfs , qui est plus flexible: vous n'avez pas besoin d'être root pour l'utiliser, et il peut changer de propriétaire et d'autorisations à la volée.
Gilles 'SO- arrête d'être méchant'
7

La plupart des unités nettoient /tmpau démarrage. Si vous faites cela, il est inutile de stocker le contenu de /tmpsur le disque en premier lieu. De nombreux Unices permettent de stocker un système de fichiers en mémoire (les données seront écrites dans le swap si nécessaire). Pour une raison quelconque, même si Linux a tmpfspour cela, la plupart des distributions ne se montent pas /tmpcommetmpfs . Il est facilement résolu avec une ligne dans /etc/fstab:

tmpfs  /tmp  tmpfs  mode=1777

Par défaut, le système de fichiers peut atteindre jusqu'à la moitié de votre RAM. Si vous avez beaucoup de swap, vous voudrez peut-être lui permettre de contenir des fichiers plus gros, par exemple pour autoriser jusqu'à 2 Go:

tmpfs  /tmp  tmpfs  mode=1777,2g

(L'agrandissement du système de fichiers a une surcharge négligeable; l'utilisation de la mémoire virtuelle augmente selon les besoins. C'est toujours une bonne idée d'avoir une limite car un programme galopant pourrait le remplir très rapidement, et il vaut mieux /tmpmanquer de mémoire que de manquer de mémoire. disponible pour les processus.)

Gilles
la source
Vous voudrez peut-être ajouter size=512MBou quelque chose de similaire aux options. Par défaut, tmpfs prend la moitié de votre RAM, ce qui est plus que ce que vous pourriez souhaiter pour un petit système de fichiers jetable réduit
tante
1
Pourquoi voudriez-vous réduire la taille maximale du système de fichiers encore plus que la valeur par défaut (ce qui est très conservateur: vous voudrez peut-être stocker des fichiers jusqu'à la taille de votre mémoire virtuelle)? (Notez que la mémoire requise pour le système de fichiers est la mémoire requise pour stocker les données et les métadonnées réelles, plus quelque chose comme 10 à 100 Ko de surcharge (mesurée sur un système Ubuntu 10.04 i386 essentiellement inactif).)
Le SO de Gilles - arrête d'être mauvais '28
5

Si votre système d'exploitation le prend en charge, créez tous vos systèmes de fichiers sur des matrices RAID 1, même s'ils ne sont pas répliqués. De cette façon, si vous avez besoin de transférer le système de fichiers sur un autre disque, vous pouvez le faire en ligne et rapidement en ajoutant la partition du deuxième disque à la baie, en reconstruisant la baie et en supprimant le premier disque.

Certains systèmes LVM peuvent refléter des volumes, vous n'avez donc pas besoin d'autres couches. ZFS le fait sans aucune aide externe.

Gilles 'SO- arrête d'être méchant'
la source
2

Liés à la performance:

Évitez d'écrire le temps d'accès aux fichiers:

-o noatime

Lié à l'utilisabilité:

Vous pouvez utiliser d'autres noms d'appareils, par exemple des étiquettes ou des uuids.

Par exemple pour identifier mon lecteur MP3 j'utilise ce nom d'appareil dans mon fstab:

UUID=0C9F-6901

Vous pouvez imprimer les uuids des appareils connectés via la commande blkid.

De même, vous pouvez définir une étiquette au moment mkfs ou plus tard via e2fstune et des outils comparables. Ensuite, vous pouvez utiliser

LABEL=mylabel

dans le fstab ou sur la ligne de commande.

maxschlepzig
la source
2

Un vieux. Gardez votre logiciel sur un disque et vos données sur un autre. Par conséquent, vous pouvez rechercher les deux en même temps. Rend l'accès au disque plus rapide.

HandyGandy
la source
1

J'aime avoir une partition séparée pour toutes les données personnelles que je n'ai pas à sauvegarder, par exemple les paiements svn, les copies de données qui résident principalement sur un autre serveur, etc.

fschmitt
la source
1

Montez une image .iso en tant que système de fichiers en boucle. Je garde un certain nombre de fichiers .iso autour, et cela peut être un moyen pratique de copier des fichiers de référence sur l'image disque.

stefan@host1:~ $ ls -ld ubuntu-10.04-server-amd64.iso
-rw-r--r-- 1 stefan staff 710412288 2010-06-27 11:51 ubuntu-10.04-server-amd64.iso
stefan@host1:~ $ mkdir ./ubuntu-10.04-server-amd64
stefan@host1:~ $ sudo mount -o loop ubuntu-10.04-server-amd64.iso ./ubuntu-10.04-server-amd64
stefan@host1:~ $ ls ubuntu-10.04-server-amd64
cdromupgrade  doc      isolinux    pics  preseed             ubuntu
dists         install  md5sum.txt  pool  README.diskdefines

Ou, si je veux lire une copie hors ligne du manuel d'installation, je peux le faire à partir de la ligne de commande:

stefanl @ host1: ~ $ links ubuntu-10.04-server-amd64 / doc / install / manual / en / index.html

Stefan Lasiewski
la source