bonjour,
je dois retrouver le disque ou est installé le système pour tester ensuite si c'est un SSD ou HDD,
MAIS
problèmes avec LUSK (voire même avec LVM? non testé)
j'utilisais df :
mais avec lusk ca ne marche pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part disk=$(df --output="source,target" | grep "/$" | cut -c 6-8 )
df --output="source,target" me retourne un /dev/mapper/....
j'ai donc essayé avec lsblk :
ce qui me donne :#lsblk -o "name,mountpoint" -pa
/dev/sda
├─/dev/sda1 /boot
├─/dev/sda2
│ └─/dev/mapper/cryptManjaro /
├─/dev/sda3
└─/dev/sda5 [SWAP]
mais prendre toujours ligne -1 ne me parait vraiment pas bon (si j'ai un home crypté aussi et placé avant par exemple).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 disk=$(df --output="source,target" | grep "/$" | cut -c 6-8 ) [[ "$disk" == "map" ]] && disk=$(lsblk -o "name,mountpoint" -pa | grep "/$" -B1 | head -n 1 | cut -c12-14)
Une "bonne" solution serait de remonter de "/$" jusqu'a la ligne débutant par le caractère "/" ? il me semble que c'est facile avec sed mais la c'est hors de mes compétences.
Sinon il existe peut être une solution plus directe avec quelque chose du type :
mais la il faut utiliser sudo et reste le cas avec LVM : aucune idée si ca marche ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 partition=$(df --output="source,target" |grep "/$" | cut -d / -f 3) if [[ "$partition" == "mapper" ]]; then partition=$(sudo cryptsetup status $(df --output="source,target" |grep "/$"|cut -d' ' -f1 |cut -d/ -f4 ) | grep device | cut -d/ -f3) fi disk=${partition:0:3}
Partager