Installera Linux på en flash-enhet

Ett fullfjädrat operativsystem på ett litet externt medium är mycket bekvämt. Du kan köra systemet på nästan vilken dator som helst och ha alla dina filer och data alltid till hands, och du behöver inte längre ha ett stort antal system på huvudenheten.

Det är av dessa skäl som många datoranvändare är intresserade av hur Linux är installerat på ett USB-minne, är det möjligt och om möjligt hur man implementerar allt korrekt. I den här artikeln kommer vi att försöka svara på sådana frågor. Vi kommer också att analysera installationsprocessen i detalj på ett USB-minne för en av de mest populära distributionerna - Ubuntu.

Trots alla fördelar med att använda ett operativsystem från ett USB-minne, säger många att detta inte är nödvändigt. Och inte förgäves, eftersom sådan intensiv användning av en flash-enhet helt enkelt kan förstöra den.

Icke-flyktigt flashminne har en betydande nackdel - det är ett begränsat antal överskrivningar av en cell med data. Det finns inga begränsningar för antalet dataläsningar, och skrivgränsen är mycket betydande - tiotals miljoner gånger. För den avsedda användningen av flashenheter är detta inte kritiskt, eftersom inspelningsfrekvensen inte är särskilt hög där och flashenheten håller länge.

Men när du installerar systemet på en flashenhet, kärnan, filsystemet, program sparar ständigt sina temporära filer, arbetar ständigt med data och skriver något till disken, situationen kompliceras ytterligare av filsystemsjournalisering, eftersom den loggar data om eventuella filändringar i loggen, vilket ytterligare ökar antalet överskrivningar av flash-enhetsblock.

Man kan säga att det finns SSD:er tillverkade med samma teknik som används i datorer. Men allt är inte helt rätt, SSD: er är designade för en sådan belastning, eftersom de har en omskrivningsgräns på flera miljarder, såväl som möjligheten att hot-swap redan misslyckade block med backup.

Därför, när du går med på att installera ett operativsystem på en USB-flashenhet, måste du förstå att flashenheten kommer att fungera mycket mindre än den kunde. Men allt är inte så dåligt, du kan utföra vissa optimeringar som gör att systemet skriver mindre information till disken. Om du håller med om risken kommer vi att titta på hur man installerar Linux på ett USB-minne.

Installera Linux på en flash-enhet

Operativsystemet Linux låter användaren göra vad de vill, och om du vill ha Linux på en flash-enhet går det också bra. Vi behöver inte ens ta till några specialverktyg.

Vi kommer att överväga hela processen med hjälp av exemplet med Ubuntu och allt kommer att göras med det officiella installationsprogrammet. Vi kommer inte att vara intresserade av den vanliga inspelningen av en bild till disk eller arbete från RAM. I slutändan kommer vi att få exakt ett fullfjädrat operativsystem på en flash-enhet.

Gör först allt som vanligt, välj språk, programinställningar och uppdateringar. Skillnaderna börjar vid diskpartitioneringsstadiet. Här måste du välja det manuella alternativet, eftersom den automatiska markeringen inte tillåter oss att göra det vi behöver.

Det kommer att finnas en anmärkning här, det är nödvändigt att systemet inte laddas från USB-minnet som du ska installera det på, annars kommer du inte att kunna installera ubuntu på USB-minnet. Det vill säga, förutom installationsprogrammet måste en annan ren flashenhet anslutas till systemet. Om allt gjordes korrekt, kommer förutom huvuddisken /dev/sda en flashenhet /dev/sdb att dyka upp i uppmärkningsfönstret:

För en flash-enhet kommer dess storlek, disketikett att anges, och troligen kommer den också att ha bara en partition. Denna sektion måste tas bort för att få ledigt utrymme.

Den första partitionen måste skapas med filsystemet FAT32 och det är den första så att Windows kan arbeta med den. Till exempel, om du har en 16 GB flash-enhet, då kan 5-4 GB ges för data. Monteringspunkten för denna partition är /home:

Det andra avsnittet används för systemfiler, här behöver vi minst åtta gigabyte. Filsystemet är bättre att ta Btrfs, eftersom vi inte behöver journalföra ext4, och btrfs har komprimering och optimering för ssd. Ange / som monteringspunkt:

Den sista åtgärden i det här steget i guiden är att ange enheten för starthanteraren, det måste vara samma flashenhet som du installerar systemet på.

Optimera Ubuntu för att köras på en flash-enhet

Installationen av Ubuntu på en flash-enhet är klar, men nu måste vi bara få det att fungera på ett sådant sätt att vi kan skriva data till disken som ett minimum. Allt detta måste göras i ett redan installerat system.

De flesta av inställningarna kommer att göras i filen /etc/fstab, först aktiverar vi komprimering av alla filer och optimering för ssd i btrfs, som används som roten. Vi använde /dev/sdb2-partitionen för roten, eftersom vi använde /dev/sdb1 för /home:

/dev/sdb1 / btrfs errors=remount-ro,noatime,nodiratime,compress=lzo,ssd,commit=60 0 1

Du kan ha diskar i fstab namngivna av UUID, då måste du hitta posten som anger monteringspunkten / och btfs-filsystemet, och därför redan ändra det. Tänk på alternativen:

  • errors=remount-ro- montera om skrivskyddad under fel;
  • ingen tid- uppdatera inte filens åtkomsttid;
  • nodiratime- uppdatera inte mappåtkomsttiden;
  • komprimera=lzo- använd lzo-komprimering, detta är den snabbaste zlib-algoritmen som ger mer komprimering men tar längre tid;
  • commit=60- som standard skriver filsystemet all information om filändringar var 30:e sekund till disken, men med denna parameter kan du ange ditt eget värde, men inte mer än 300;
  • ssd- en uppsättning optimeringar för solid state-enheter.

Vissa mappar där temporära systemfiler oftast skrivs kan flyttas till RAM, för detta lägger du till följande rader i slutet av filen /etc/fstab:

tmpfs /tmp tmpfs rw,storlek=100m 0 0
tmpfs /kör tmpfs rw 0 0
tmpfs /var/lock tmpfs rw 0 0
tmpfs /var/log tmpfs rw,size=10m 0 0

Kärnan skriver inte omedelbart data till disken, utan cachar den i minnet och skriver den när disken inte är laddad eller den inte längre kan lagras i minnet. Filer /proc/sys/vm/ används för att konfigurera parametrarna för att spola data till disk. Inställningarna nedan minskar antalet poster genom att öka förbrukningen av RAM.

Maximal tid mellan dataskrivning till disk:

sudo sysctl -w vm.laptop_mode=120
$ sudo sysctl -w vm.dirty_writeback_centisecs=12000
$ sudo sysctl -w vm.dirty_expire_centisecs=12000

Den maximala mängden minne för cachen i procent:

sudo sysctl -w vm.dirty_ratio=10

Skriv data till disk när endast % av minnet är ledigt:

sudo sysctl -w vm.dirty_background_ratio=1

Efter dessa inställningar är installationen av ubuntu på en flash-enhet klar, systemet är mer eller mindre redo att användas på en flash-enhet och kommer inte att skada det så mycket. Men glöm ändå inte att säkerhetskopiera viktig data då och då, eftersom allt kan gå sönder vid det mest olämpliga ögonblicket.

Dela med sig