Helló mindenkinek! Nemrég egy látszólag egyszerű feladattal találkoztam — a Linux szerverem lemezméretének "forró" növelése.
A feladat leírása
Van egy felhőben lévő szerverem. Az én esetemben ez a Google Cloud — Compute Engine. Az operációs rendszer — Ubuntu. Jelenleg egy 30 GB-os lemez csatlakozik. Az adatbázis növekszik, a fájlok terjednek, ezért meg kell növelni a lemez méretét, mondjuk 50 GB-ra. Eközben semmit sem kapcsolunk ki, semmit nem indítunk újra.
Figyelem! Mielőtt elkezdenénk, készítsünk biztonsági mentést az összes fontos információról!
1. Először is, nézzük meg, mennyi szabad hely áll a rendelkezésünkre. A Linux konzolba beírjuk:
df -h 
Egyszerűen megfogalmazva, nekem van összesen 30 GB-om és most 7,9 GB szabad. Növelni kell.
2. Ezután megyek, és a szolgáltatóm konzolján keresztül csatlakoztatok még néhány GB-ot. A Google Cloud-ban ez egyszerűen, újraindítás nélkül történik. Belépek a Compute Engine -> Lemezek -> Kiválasztom a szerverem lemezét — ennek a méretét fogjuk megváltoztatni:

Belépek, rákattintok a "Szerkesztés" gombra és növelem a lemez méretét a kívánt méretekre (az én esetemben 50 GB-ra).
3. Tehát most már 50 GB-unk van. Ellenőrizzük ezt a szerveren a következő parancs segítségével:
sudo fdisk -l 
Látjuk az új 50 GB-unkat, de egyelőre csak 30 GB-ot tudunk használni.
4. Most eltávolítjuk a 30 GB-os aktuális partíciót, és létrehozunk egy újat 50 GB-os méretben. Lehet, hogy van több partíciód. Lehet, hogy több új partíciót is létre kell hoznod. Ehhez a művelethez az alábbi programot fogjuk használni, fdisk, ami lehetővé teszi a merevlemezek partícióinak kezelését. Fontos tudni, hogy mik azok a partíciók és mire valók — olvassuk el . A program elindításához fdisk a következő parancsot használjuk:
sudo fdisk /dev/sda5. Az interaktív módon belül a programban fdisk több műveletet hajtunk végre.
Először beírjuk:
p 
A parancs megjeleníti az aktuális partícióink listáját. Az én esetemben egy partíció van 30 GB-ra, és még 20 GB szabadonlévő hely, ha így lehet mondani.
6. Ezután beírjuk:
d 
Eltávolítjuk az aktuális partíciót, hogy létrehozhassunk egy újat az összes 50 GB-os méretre. A művelet előtt még egyszer ellenőrizzük, hogy készítettünk-e biztonsági mentést a fontos információinkról!
7. Ezután megadjuk a programnak:
n 
A parancs létrehoz egy új partíciót. Minden paramétert érdemes alapértelmezetten beállítani — egyszerűen a Enter gombot nyomható. Ha pedig különleges esetetek van, akkor adjátok meg a saját paramétereit. Ahogy a képernyőképen is látszik, létrehoztam egy partíciót 50 GB-ra — éppen amire szükségem van.
8. Végül megadom a programnak:
w 
Ez a parancs rögzíti a módosításokat és kilép. fdisk. Ne ijedjünk meg, hogy a partíciós táblázat olvasása nem sikerült. A következő parancs segít ezt orvosolni. Már csak egy lépés van hátra.
9. Kiléptünk fdisk és visszatértünk az alap Linux — sorba. Most beírjuk, ahogy előzőleg tanácsolták:
sudo partprobe /dev/sdaHa minden rendben van, nem fog megjelenni üzenet. Ha nem telepítette a programot, partprobe, akkor telepítse. Ez a program pontosan partprobe frissíti a partíciós táblázatokat, amely lehetővé teszi, hogy online bővítsük a partíciót 50 GB-ra. Folytassuk.
Tipp! A telepítést partprobe így végezheti el:
apt-get install partprobe
10. Most már csak annyit kell tennünk, hogy a partíció méretét átdefiniáljuk a program segítségével, resize2fs. Ez online végzi a feladatot — még ebben az időben is futottak a szkriptek és írtak a lemezre.
Program resize2fs átnézi a fájlrendszer metaadatait. Ehhez használja a következő parancsot:
sudo resize2fs /dev/sda1 
Itt az sda1 a partíciója neve. Többnyire ez az sda1, de előfordulhatnak kivételek. Legyen óvatos. Eredményül a program megváltoztatta a partíció méretét. Azt hiszem, ez siker.
11. Ellenőrizzük, hogy a partíció mérete megváltozott-e, és most 50 GB van-e. Ehhez ismételjük meg az első parancsot:
df -h 
Forrás: habr.com
