Cette astuce est applicable sur un périphérique de stockage, vide (sans partition) ou neuf, par exemple sur une clef USB Emtec de 8Gio ou un disque dur :

[root@blackbird ~]# fdisk -l /dev/sdb

Disque /dev/sdb : 8094 Mo, 8094744576 octets, 15810048 secteurs
Unités = secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Disk label type: dos
Identifiant de disque : 0x000b2458

Périphérique Amorce  Début        Fin      Blocs     Id  Système

La taille maximale du volume physique LVM sera donc de 8094Mio, comme indiqué ci-dessus. Je crée donc une partition primaire qui va occuper toute la place et servir de support à la couche d'encryption.

[root@blackbird ~]# parted /dev/sdb mkpart primaire 1 8094
Information: Ne pas oublier de mettre à jour /etc/fstab si nécessaire.

[root@blackbird ~]# fdisk -l /dev/sdb

Disque /dev/sdb : 8094 Mo, 8094744576 octets, 15810048 secteurs
Unités = secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Disk label type: dos
Identifiant de disque : 0x000b2458

Périphérique Amorce  Début        Fin      Blocs     Id  Système
/dev/sdb1            2048    15808511    7903232     83  Linux

On voit que la partition non-formatée occupe 15808511-2048=15806463 secteurs sur les 15 810 048 secteurs disponibles, ce qui est le maximum. Puis on initialise le volume LUKS sur la partition, et le contenu sera chiffré avec la phrase-passe.

[root@blackbird ~]# cryptsetup luksFormat /dev/sdb1

WARNING!
========
Cette action écrasera définitivement les données sur /dev/sdb1.

Are you sure? (Type uppercase yes): YES
Saisissez la phrase secrète :
Verify passphrase:

À partir d'ici, la première couche (le chiffrement) vient d'être appliquée. C'est aussi à partir d'ici que l'on peut choisir entre la création d'un système de fichier (EXT4 par exemple) sur le volume LUKS. On peut le faire, mais alors on va se retrouver avec le système obsolète des partitions primaires. Personnellement je préfére ajouter la couche LVM, qui offre une multitude d'avantages.

[root@blackbird ~]# cryptsetup luksOpen /dev/sdb1 luks-sdb1
Saisissez la phrase secrète pour /dev/sdb1 :
[root@blackbird ~]# pvcreate /dev/mapper/luks-sdb1
Physical volume "/dev/mapper/luks-sdb1" successfully created

Et c'est fini. Le volume physique LVM est vide et bien chiffré avec LUKS, en 10 minutes chrono.

Après, il suffira de créer sur le volume physique (PV) un groupe de volumes (VG) et d'y ajouter autant de volumes logiques (LV) que l'on souhaite. On peut aussi rattacher le PV à un VG existants sur nos disques durs, ce qui va l'agrandir (mais rendre la clé usb indispensable au démarrage).

Voici un exemple :

[root@blackbird ~]# vgcreate emtec8 /dev/mapper/luks-sdb1
Volume group "emtec8" successfully created
[root@blackbird ~]# lvcreate -L 1G -n lvbackup emtec8
Logical volume "lvbackup" created
[root@blackbird ~]# lvcreate -L 2G -n lv01 emtec8
Logical volume "lv01" created
[root@blackbird ~]# lvcreate -L 1G -n lv02 emtec8
Logical volume "lv02" created

Il faut savoir que lorsque l'on sélectionne l'option Chiffrer mon système lors de l'installation de Fedora, c'est cette même procèdure qui est appliquée. Sauf qu'à la fin, le fichier fstab est écrit afin d'avoir le montage automatique des LV, au moment du démarrage du système.

Pour contrôler le remplissage du VG :

[root@blackbird ~]# vgs emtec8
VG     #PV #LV #SN Attr   VSize VFree
emtec8   1   5   0 wz--n- 7,53g 544,00m

Il reste encore 544Mio de libre sur les 8Gio. Pour pouvoir utiliser les LV, il faut les formater avec un système de fichier (par exemple EXT4) :

# mkfs.ext4 /dev/mapper/emtec8-lv01

Et il ne reste plus qu'à monter les LV, tout en gardant à l'esprit que leur contenu sera lisible uniquement par une seule personne : Vous.