Bör tilläggas att du behöver köra samtliga dessa kommandon med sudo (eftersom det är systemförändringar). Dvs:
Innan vi kikar på kommandona är det viktigt att veta att i princip alla terminalbaserade (CLI)-program så kallar man först på programmet, sedan skjuter man in parametrar så programmet gör det man önskar. Så om vi börjar med första kommandot:
wipefs är ett program som i princip gör vad den heter. Den tar bort ett filsystem från en lagringsenhet (ssd, hdd, usb). En disk är rå innan ett filsystem installeras på den, så med wipefs river man bort filsystemlagret och får en rå diskenhet att arbeta med.
-a är en parameter, eller flagga som står för -all, dvs wipea bort alla filsystem som hittas på disken.
/dev/sdX är en specifk disk i din maskin. Det är väldigt viktigt att identifiera din USB-enhet innan du kör dessa kommandon, annars kan du göra din systemdisk korrupt. Det stora X är det vi behöver ta reda på. Linux namnger alla diskenheter med sd och sen en bokstav, börjar på a, så; /dev/sda, /dev/sdb, /dev/sdc osv. Beroende på typ av disk kan dem heta olika, tex i vissa distar heter NVMe-diskar /dev/nvme0 /dev/nvme1 osv. Partitioner på diskarna betecknas med ett p och en siffra.
Med kommandot:
Som står för list block devices kan du få en överblick på alla diskar och partitioner och monteringspunkter på din maskin.
sagan ~ $ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 931.5G 0 part
└─sda9 8:9 0 8M 0 part
sdb 8:16 0 931.5G 0 disk
├─sdb1 8:17 0 931.5G 0 part
└─sdb9 8:25 0 8M 0 part
nvme0n1 259:0 0 931.5G 0 disk
├─nvme0n1p1 259:1 0 977M 0 part /boot/efi
├─nvme0n1p2 259:2 0 7.6G 0 part [SWAP]
├─nvme0n1p3 259:3 0 61.1G 0 part /
└─nvme0n1p4 259:4 0 861.9G 0 part /home
Så ser det ut på min maskin. (Jag borde ha använt LVM...)
Du kan se att mitt root-filsystem ( / ) är installerat på nvme0n1p3 tex.
Kör lsblk och identifiera din USB-sticka. Sedan kan du använda ovanstående kommandon för att formatera och ta bort filsystemet från USBn.
Nu har du ett USB-minne med inget filsystem med rå blocklagring. Nästa steg är att skapa en bootbar partitionstabell på USB-enheten. Det gör vi med nästa verktyg, parted.
Nästa kommando:
parted --script /dev/sdX mklabel gpt
parted är ett enkelt program för att hantera partitioner. Ovan så kallar vi på det programmet med följande flaggor:
--script = Kommandot körs utan att fråga dig om saker
/dev/sdX = disken vi vill partitionerna
mklabel = skapar en label på partitionen för att identifera för mjukvara vad för partition det är
gpt = partitionstabellen som vi applicerar, i detta fallet gpt som stödjer UEFI boot.
Nu har vi partitionstabellen redo, men inget filsystem, så nästa steg blir att installera ett filsystem på vår USB.
Nästa kommando:
parted -a optimal /dev/sdX mkpart primary fat32 0% 100%
-a = alignment type, i princip beskriver man hur filsystemet ska appliceras på disken, rent fysiskt, eftersom olika diskar har olika sector-storlekar och kan bara hålla en viss mängd data. Man vill att blocken som håller data ska matcha sector-storleken på sin diskenhet, men även andra saker. Med denna metoden att använda procent slipper man det.*
optimal = typen av alignment type, den optimala
mkpart = skapar en partition
primary = specificerar typen av partition, antingen primary eller logisk, i vårt fall primary
fat32 = filsystemet som vi vill ska installeras på vår disk, fat32
0% = använd uttrymmet från början av disken
100% = till slutet av disken (dvs, använd hela diskens utrymme, detta gör att du inte behöver tänka på sector alignment)
Vill ge dig en eloge för att du kände dig obekväm med att köra kommandon som du inte var säker på vad dem gjorde, det är helt rätt. Ett tips är att använda man-sidorna i Linux. De absolut flesta kommandon/program så finns det en man-sida som förklarar det mesta.
Tex, för att få fram "manualen" för parted så skriver du i terminalen:
Sen stänger du ner läsaren (per default less) med q. Även less är en applikation med en man-sida för övrigt.
Om du känner dig osäker så bara fråga här så hjälper vi dig!
Lycka till!
* För mer info om alignment, sector storlekar och olika diskar, läs här.
Det är faktiskt väldigt bra kunskap att ha med sig än idag.