Spliter /home entre SSD et HDD + questions chiffrement

Tags: #<Tag:0x00007f993dbf6de0> #<Tag:0x00007f993dbf6cf0>

Salut à tous,

actuellement sur ma machine j’ai un

Disque SDD
sda 1 : 30 GB racine Windows
sda2 : 20 GB /
sda3 /boot

Disque HDD
sdb 1 : 50 GB data Windows
sdb2 : 250 GB /home
sdb3 : 16GB /swap

Je souhaite rajouter un disque dur SDD pour installer ma racine /
(je compte refaire une install bullseye, car mon ancien système est bloqué par des conflits de dépendances).

Vu les prix, je me dirige sur un disque SSD de 250GB.
Je me dis, tant qu’à faire, je peux y caler ma partition /home.

Pour récupérer de l’espace sur le disque dur HDD (que je vais garder) je me demandais si c’était envisageable de créer une partition /home/Téléchargement, /home/Documents etc sur le HDD, alors que le reste de la /home serait sur le SDD?

Est-il raisonnable de procéder comme ça ?
Concrètement, comment faire ? Passer par LVM ?

Je me tâte presque à faire une install chiffrée, avec LVM, mais je sais que j’avais déjà galéré en dual-boot avec Windows (j’avais fini par y réussir, mais ça date).

Sur le système précèdent j’utilisais ecrypts pour chiffrer juste un dossier, mais il me semble que ce n’est plus le système conseillé actuellement. Comment faites-vous pour chiffrer un dossier qui se déchiffre avec PAM ?

Je pensais passer par une clé live et copier le contenu de ma /home actuel sur une nouvelle partition du nouveau futur disque SDD /home (je prévois 180Gb, contre 60Gb pour la racine).

Avez-vous des conseils ? Des tutos à suivre ?

Merci beaucoup pour chaque suggestion !!

Alors, la solution la plus simple serait de mettre tout ton home sur une partition et de gérer les exceptions selon une des deux méthodes :

  • soit tu crées un lien symbolique vers un autre endroits où serait montée la partition avec ces dossier
  • soit tu crées un dossier vide dans lequel du fait un montage en pontage (avec l’option de montage bind)

Si ton système permet le LVM, mets du LVM, dans le doute, même si ça n’aura peut-être aucun intérêt.
Le LVM, c’est bon, mangez-en.

Mets ta Debian dans un LVM chiffré et laisse Windows dans son coin. Pense à la partition non chiffrée pour le démarrage de la machine.

Bonjour

Pour tenter d’éviter tout risque de confusion :

Est-ce qu’il s’agit :

  • du répertoire /home/
  • ou bien du répertoire personnel du compte utilisateur concerné
    dont la valeur est assignée à la variable $HOME ?

Quoi qu’il en soit, j’ai préféré ne pas utiliser les fichiers de configuration de mon compte utilisateur sur debian 11 XFCE avec ceux de debian 11 Gnome ni avec ceux de Ubuntu (etc.),
et donc, chacun de ces systèmes (debian, ubuntu, etc.) installé sur ma machine a ses propres fichiers de configuration dans le répertoire personnel de mon compte utilisateur.

j’ai préféré juste remplacer par des liens symboliques chacun des répertoires de mon compte utilisateur qui contiendrait des données indépendantes du système (debian, ubuntu, etc.)

et j’ai mis les répertoires liés qui contiennent ces données
dans un système de fichiers indépendant du système de fichiers racine
(et qui peut, bien sûr, être dans une partition d’un autre disque).

ce qui me permet d’utiliser ces mêmes données depuis ces différents systèmes (debian, ubuntu, etc.) sans avoir à déplacer ces données
puisqu’il me suffit de créer les mêmes liens sur chacun des nouveaux systèmes installés
et de monter le système de fichiers contenant les données.


Sur chacun de ces systèmes installés, j’ai créé le répertoire /donnees/
que j’utilise comme point de montage pour le système de fichiers qui contient mes données,
et dans le répertoire personnel de mon compte utilisateur sur chacun de mes systèmes installés,
j’ai créé les liens suivants :

michel@debbull:~$ ls -l ~ | grep ^l
lrwxrwxrwx 1 michel michel        25 29 oct.  19:14 Documents -> /donnees/michel/Documents
lrwxrwxrwx 1 michel michel        22 29 oct.  19:14 Images -> /donnees/michel/Images
lrwxrwxrwx 1 michel michel        24 29 oct.  19:14 machVirt -> /donnees/michel/machVirt
lrwxrwxrwx 1 michel michel        26 29 oct.  19:14 mesScripts -> /donnees/michel/mesScripts
lrwxrwxrwx 1 michel michel        23 29 oct.  19:14 Musique -> /donnees/michel/Musique
lrwxrwxrwx 1 michel michel        23 29 oct.  19:14 partage -> /donnees/michel/partage
lrwxrwxrwx 1 michel michel        33 29 oct.  19:14 Téléchargements -> /donnees/michel/Téléchargements
lrwxrwxrwx 1 michel michel        23 29 oct.  19:14 Vidéos -> /donnees/michel/Vidéos
michel@debbull:~$ 

Finalement, que je démarre debian 11 XFCE ou ubuntu, ou debian 11 gnome,
quand j’ouvre mon répertoire ~/Téléchargements/ je retrouve toujours les mêmes fichiers.

Mettre /home sur un SSD est un bon choix, cela permet de bénéficier de la rapidité du SSD lors des accès à /home (ouverture de session, lancement d’application ayant une configuration utilisateur, cache de navigateur…). Si la taille du SSD le permet, autant y mettre le maximum. Si certains fichiers occupent beaucoup d’espace et n’ont pas besoin d’un accès rapide (typiquement : photos, musiques, films), on peut les mettre sur un disque dur.

Concernant LVM, en simplifiant à l’extrême il est avantageux dans certaines types de situations :

  • pour gérer facilement des volumes logiques en nombre et/ou en taille variables et non connus à l’avance
  • pour étendre un ou plusieurs volumes logiques sur plusieurs partitions, disques ou ensembles RAID
  • pour chiffrer plusieurs volumes en même temps plutôt que chaque partition individuellement.

Dans le doute, on peut utiliser LVM au cas où on se retrouverait dans un de ces cas, mais LVM augmente la complexité et demande une certaine maîtrise pour la gestion courante comme pour le dépannnage.
Ici, LVM pourrait servir à agréger l’espace disque des deux SSD si l’écart éventuel entre leurs performances est sans importance. Certes il est possible de forcer l’allocation d’un volume logique dans un volume physique spécifique, mais je considère que cela va à l’encontre du principe général de LVM de découpler les volumes logiques et physiques.

Je ne vois pas en quoi l’utilisation de LVM ou du chiffrement pour Debian causerait des difficultés spécifiques en dual boot avec Windows.

Merci pour les réponses…

@MicP
On dirait que ta façon de faire est ce qui me correspond au mieux.

Du coup, tu crées les liens symboliques une fois l’installation terminée, c’est bien ça ?
Tu procèdes exactement pour arriver à ce résultat ?
Merci !

Bonjour

Quoi que tu choisisses comme méthode,
je te recommande de toujours suivre les conseils donnés par PascalHambourg


Dans le système de fichiers racine de mon système debian (et les autres),
j’ai créé un répertoire /donnees/ qui va me servir de point de montage pour le système de fichiers qui contiendra mes données.

J’ai prévu d’utiliser pour mes données un système de fichiers
qui a été créé dans la ou une des partitions de (par exemple) mon deuxième disque dur
et ce système de fichiers a pour UUID aaacd876-43dc-9f8e-ef98-5431dcba98fe

Pour pouvoir accéder à mes données, dans le fichier /etc/fstab de mon système Linux,
j’ajoute la ligne suivante :

UUID=aaacd876-43dc-9f8e-ef98-5431dcba98fe  /donnees  ext4  errors=remount-ro  0  2

Avec cette ligne ajoutée dans mon fichier /etc/fstab
à chaque démarrage suivant de mon système Linux,
le système de fichiers prévu pour mes données sera automatiquement monté
et accessible par le point de montage /donnees/

Mais à ce stade, je n’ai même pas besoin de redémarrer la machine,
pour que le système de fichiers de mes données soit monté,
il me suffit de lancer, avec les privilèges du compte root
la ligne de commande suivante :

mount -av
root@debbull:~# mount -av
/                         : ignoré
none                      : ignoré
/donnees                 : successfully mounted
root@debbull:~# 

Une fois monté, et pour pouvoir le reconnaître plus tard,
je créé ensuite un répertoire dans la racine du système de fichiers monté
en utilisant le nom de mon compte utilisateur personnel : michel

root@debbull:~# mkdir -v /donnees/michel/
mkdir: création du répertoire '/donnees/michel/'
root@debbull:~# 

et j’en attribue la propriété (et groupe) à mon compte utilisateur :

root@debbull:~# chown -v michel:michel /donnees/michel/
appartenance de '/donnees/michel/' modifiée de root:root en michel:michel
root@debbull:~# 

mon compte utilisateur michel a donc maintenant un plein accès à ce répertoire,
je n’ai donc plus besoin des privilèges du compte utilisateur root pour la suite des opérations.


Il me faut maintenant déplacer le répertoire /home/michel/Téléchargements dans le répertoire /donnees/michel/ et créer ensuite le lien qui va le remplacer.

michel@debbull:~$ mv ~/Téléchargements  /donnees/michel/  &&  ln  -sv  /donnees/michel/Téléchargements  ~
'./Téléchargements' -> '/donnees/michel/Téléchargements/'
michel@debbull:~$ 

Le répertoire ~/Téléchargements a donc été remplacé par un fichier lien du même nom :

michel@debbull:~$ ls -l ~/Téléchargements
lrwxrwxrwx 1 michel michel 33 29 oct.  19:14 /home/michel/Téléchargements -> /donnees/michel/Téléchargements
michel@debbull:~$ 

Et en utilisant ce lien, je peux accéder au contenu du répertoire lié,
par exemple, pour en lister le contenu :
ls -l ~/Téléchargements/


Et je fais la même chose pour chacun de mes autres répertoires de données :

michel@debbull:~$ mv  ~/Vidéos  /donnees/michel/  &&  ln  -sv  /donnees/michel/Vidéos  ~
michel@debbull:~$ mv  ~/Musique  /donnees/michel/  &&  ln  -sv  /donnees/michel/Musique  ~

etc…


C’est extrêmement plus long à expliquer et à décrire qu’à faire,

… parce que ensuite,
quand je viens d’installer un tout nouveau système debian ou ubuntu sur la même machine (en dual boot) et si l’UID de mon compte utilisateur est toujours 1000 (c’est l’UID du premier compte utilisateur non privilégié créé) je n’aurai qu’à lancer, depuis le nouveau système installé et le compte utilisateur michel
les deux lignes de commandes suivantes :

su -c 'echo -e "\nUUID=aaacd876-43dc-9f8e-ef98-5431dcba98fe  /donnees  ext4  errors=remount-ro  0  2" >> /etc/fstab && mkdir /donnees/ && mount -av'
for rep in Documents Images Musique Téléchargements Vidéos partage; do rmdir -v "~/$rep" && echo ln -sv "/donnees/michel/$rep" ~; done
1 J'aime

Sauf erreur de ma part, cette commande crée le lien dans le répertoire courant donc n’est correcte que si ce dernier est ~ (ce qui est le cas ici).

Oui, c’est bien le cas,
mais merci, tu as raison, je vais quand même modifier mon précédent message pour y ajouter cette précision dans la formulation des lignes de commandes que j’ai proposées, comme ça, il n’y aura que des chemins absolus.

Merci beaucoup pour les explications détaillées :slight_smile:

Je vais faire ça alors…!!

Pour avoir un dossier chiffré, vous pensez que ecryptfs est toujours une bonne solution ou elle est dépassée ?
(vaudrai-il mieux que je crée un nouveau thread, peut-être ?) → je vais faire ça, ça va être plus lisible pour le forum
J’avais procédé à peu près comme ça : ecryptfs : Chiffrer son dossier personnel - Wiki - Wiki
Je le mettrais pareil en /donnees…en espérant que ça ne complique pas les choses (à priori non)

Encore merci pour vos retours ultra-enrichissants, précis et avisés :upside_down_face:

Je ne saurai pas répondre car je n’utilise pas de chiffrement.

Salut,

au fait, je me demandais, il ne serait pas plus simple de tout simplement modifier le fichier ~/.config/user-dirs.dirs

# This file is written by xdg-user-dirs-update
# If you want to change or add directories, just edit the line you're
# interested in. All local changes will be retained on the next run.
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
# absolute path. No other format is supported.
# 
XDG_DESKTOP_DIR="$HOME"
XDG_DOWNLOAD_DIR="$HOME/Scaricati"
XDG_TEMPLATES_DIR="$HOME/Modelli"
XDG_PUBLICSHARE_DIR="$HOME/Pubblici"
XDG_DOCUMENTS_DIR="$HOME/Documenti"
XDG_MUSIC_DIR="$HOME/Musica"
XDG_PICTURES_DIR="$HOME/Immagini"
XDG_VIDEOS_DIR="$HOME/Video"

Et mettre le path de l’ancienne /home (dans le HDD) ?
Juste il faut que le disque s’automount au démarrage…

C’est aussi possible,
mais quand on voudra lister le contenu du répertoire personnel de son propre compte utilisateur
on ne verra pas les répertoires qui sont indiqués dans le fichier
~/.config/user-dirs.dirs
et puis je ne suis pas sûr que tous les programmes ont étés conçus pour utiliser le contenu de ce fichier.