Mon dossier /usr
doit être déplacé vers une nouvelle partition. Comment puis-je faire cela sans effacer le contenu?
Cela peut-il être fait pendant que Ubuntu est en cours d’exécution, ou dois-je utiliser le LiveCD pour cela?
Il serait plus sûr d'utiliser un Live CD, mais vous pourriez faire:
/usr
ne change pas pendant cette opération./etc/fstab
pour que /usr
soit monté au prochain redémarrageVoir ci-dessous pour plus de détails sur chaque étape.
Notez que vous ne pouvez pas monter la nouvelle partition sur /usr
lors de son exécution car il y aura beaucoup de fichiers dans /usr
qui seront ouverts.
Je voudrais utiliser cp -a
. -a
est l'option d'archivage. À partir de la page de manuel :
-a, --archive
same as -dR --preserve=all
...
-d same as --no-dereference --preserve=links
...
-P, --no-dereference
never follow symbolic links in SOURCE
...
--preserve[=ATTR_LIST]
preserve the specified attributes (default:
mode,ownership,timestamps), if possible additional attributes:
context, links, xattr, all
...
-R, -r, --recursive
copy directories recursively
Vous devez connaître l'UUID de votre nouvelle partition. Vous pouvez voir la cartographie en faisant:
$ ls -l /dev/disk/by-uuid/
Et ajoutez ensuite cette ligne à /etc/fstab
:
UUID=634c31a5-e27c-4e33-ac67-2e22491a30c2 /usr ext4 defaults 0 2
Modifiez l'UUID en votre UUID, puis changez ext4
pour qu'il corresponde au type de système de fichiers que vous utilisez. Vous devez le savoir si vous avez configuré la partition.
Après le redémarrage, les anciens fichiers de /usr
sur la partition racine seront masqués par la nouvelle partition montée sur /usr
. Mais nous pouvons utiliser une astuce de montage pour récupérer les anciens fichiers puis les supprimer.
$ Sudo mount --bind / /mnt
$ Sudo rm -rf /mnt/usr/*
$ Sudo umount /mnt
Mais quelques légères erreurs de frappe (disons, si vous appuyez sur Entrée lorsque vous n’avez saisi que Sudo rm -rf /mnt
) risquent de provoquer un désastre; aucun accès physique à la machine et, par conséquent, étaient incapables de démarrer à partir d'un CD ou d'une clé USB.
Comme la plupart des bibliothèques utilisées sont dans/usr, je ne recommanderais pas de déplacer ce répertoire lors de l'exécution d'Ubuntu. En fait, vous obtenez probablement des messages d'erreur lorsque vous essayez de le faire. Par conséquent, le mieux est d'utiliser le LiveCD.
Vous pouvez utiliser plusieurs possibilités pour déplacer/copier les fichiers cp, rsync, etc. vous voulez vous assurer que tous les liens symboliques sont créés et pas seulement copiés. cp et rsync ont tous deux des options pour cela.
Après avoir déplacé les fichiers vers l’autre partition, vous devez ajouter un autre montage dans/etc/fstab pour monter la nouvelle partition sur/usr.
Attention: Je ne sais pas du tout ce que je fais, je ne fais que copier des commandes et faire ce que suggèrent les autres. C'est peut-être la mauvaise façon de le faire, mais cela fonctionne pour moi (du moins pour le moment).
Voici comment je l'ai fait (en suivant la réponse de Hamish et ses commentaires):
Copiez tous les fichiers de la partition nouvellement créée (remplacez-la par l'emplacement de votre partition, elle devrait ressembler à la mienne):
rsync -avz /usr /media/aleksandar/750b84e2-e65f-4309-ade5-5af0033a937c
À ce stade, je me suis rendu compte que tout était copié dans le dossier /usr
de la partition, qui ne fonctionnerait pas, alors j’ai tout copié (avec le gestionnaire de fichiers) de ce dossier à la racine de la partition, puis le dossier vide supprimé.
Editez /etc/fstab
(comme dans la réponse de Hamish, remplacez-le par votre UUID)
UUID=634c31a5-e27c-4e33-ac67-2e22491a30c2 /usr ext4 defaults 0 2
Une étape qui s’est avérée peu sage: j’ai changé le nom de la partition /usr
actuellement montée en /usrBACKUP
, pour que je sache que lorsque je redémarre le système, il redémarre en fait dans la partition nouvellement créée, et non dans la partition. le vieux. Après cela, tout s’est incrusté sur l’écran, et j’ai dû le mettre hors tension en appuyant longuement sur la touche marche/arrêt (le génie que je suis). Ignorez cette étape si vous ne voulez pas déranger votre système.
Redémarrez le système
Après le redémarrage, ouvrez System Monitor ou une application similaire pour voir si votre nouvelle partition /usr
est montée et pour vérifier si tout s'est déroulé comme prévu.
Après avoir vérifié que tout va bien, vous pouvez supprimer votre ancienne partition /usr
. Je garderai le mien au cas où quelque chose se passerait mal.