Linux mount

Allikas: Kuutõrvaja

Sissejuhatus

2879430437 975b4e8d5f.jpg

Nagu teada asuvad Linux'i puhul kõik failid ühtses kataloogipuus (aga nt. MS Windows'ites kasutatakse partitsioonide tähistamiseks nn. kettatähti: A, B on pehmeketta seadmed ja C, D, E ... Z - kõvaketaste partitsioonid).

Linuxi puhul on tähelepanuväärne see, et ta suudab lugeda ja kirjutada peale enda Second Extended (ext2, ext3, ext4) failisüsteemi ka paljusid teisi levinud failisüsteeme (mh. FAT pikkade ja lühikeste nimedega, OS2 HPFS, minix). Et see tõesti nii oleks on vaja vastav tugi kernelisse sisse või mooduliteks kompileerida. Soovitavalt mooduliteks. Muuseas, moodulid asuvad kataloogis /lib/modules/... ja kui seal on nt. fail vfat.o, siis on tõenäoliselt võimalik lugeda kirjutada W95 partitsiooni. Seda kas moodul on kasutusel saab näha käsuga lsmod; ja kui ei ole kasutusel, siis aitab käsk modprobe vfat. Jne.

Linux käsitleb pehme- ja kõvakettaid kaunis võrdväärsete seadmetena. Vähemalt selles mõttes, et enne floppy ketta seadmesse panekut ja peale väljavõtmist tuleb täita samad käsud,et mis kõvaketta juurde ja tagant ühendamisel.

Failisüsteem on vahend andmete organiseerimiseks andmekandjal. Failisüsteem asub tavaliselt infokandjale (kõvaketas, USB pulk) partitsioonil ja tema poole pöördutakse seadmenimega. Näiteks esimese IDE kanali teise kõvaketta kolmas partitsioon kannab nime

       b - esimene IDE kanal teine ketas (nn primary slave, esimene ketas algab tähega a)
       |
       |
/dev/hdb3
      | |
      | |
      | 3 - kolmas partitsioon
      | 
      hd - ata hard disk (sata kettad algavad sd lühendiga)


Kui te ei tea täpselt millised partisioonid on kõvakettale moodustatud kasutage järelevaatamiseks programmi fdisk

# fdisk /dev/hdb

Ettevaatust fdiski kasutamisel, peale vaatamise saab sellega ka partitsioone muuta.

Failisüsteemide kasutamine eeldab, et vastav toetus on tuuma kompileeritud. Et näha milliseid failisüsteeme masin parasjagu toetab vaadake tuuma moodulite kataloogi /lib/modules/2.2.xx või uurige faili /proc/filesystems sisu.

UNIXi kataloogistruktuur on traditsiooniline ja seal ei kõnelda ketastest (A:\, C:\ jne). Kõikide võimalike andmekandajate pöördutakse sisenedes vastavasse kataloogi. Seda millise kataloogi all külgeühendatud failisüteem asub nimetatakse külgeühendamiskohaks.

Peale andmekandja kasutamist ja enne selle seadmest väljavõtmist tuleb ta lahti ühendada, näiteks kataloogi /floppy alla ühendatud pehmeketta failisüsteemi lahtiühendamine käib nii

bash# umount /floppy

Seejärel võib pehmeketta seadmest välja võtta. Kui failisüsteemi keegi kasutab, näiteks mõni fail on avatud lugemiseks, siis ei saa seda lahti ühendada. Kasutage programmi fuser failisüteemi kasutuse uurimiseks ja vastavate protsesside lõpetamiseks.

Parasjagu külgeühendatud failisüsteeme näeb käsuga df

Failisüsteemide külgeühendamine toimub programmiga mount mille süntaks on selline

mount [-t failisüsteemi_tüüp] [-o võtmed] seadme_nimi külgeühendamiskoht

Floppy ketta ühendamine

4. kontrollige kas seadmel on bad block'e:

# badblocks -v /dev/fd0

5. Tehke kettale fsck:

# fsck /dev/fd0

4. Vajadusel looge failisüsteem

kõvaketta ja floppy peale nii:

süsteemi tüüp        käsk
ext2                mke2fs  /dev/fd0
ext2                mke2fs  /dev/hda1
msdos               mkdosfs   - " -   (praktiliselt soovitatakse teha vastav
                                      partitsioon ja failisüsteem dos'i enda fdiski ja format'iga)

5. Looge mount point ehk kataloog kuhu alla seadme failisüsteem ühendub

Linuxis on universaalseks kohaks kuhu võib kiirelt ajutisi failisüsteeme külge haakida /mnt, kui on aga vaja rohkem kui 1 seade külge haakida tuleb tekitada uusi harusid.

kõigi seadmete puhul

mkdir /soovitud_nimi

Näiteks

mkdir /a
mkdir /floppy
mkdir /hda2_ext
mkdir /hda3_msdos
mkdir /hda4_vfat

6. Mount'ime seadme külge:

vastavalt mountitavale süsteemile tuleb teist parameetrit muuta:

failisüsteem                    käsk

ext2 (linux)                    mount -t  ext2             /dev/fd0        /floppy
iso9660 (cdrom)                           iso9660          /dev/hda2       /hda2_ext2
msdos (lühikesed nimed)                   msdos            /dev/hda3       /hda3_msdos
vfat (pikad nimed)                        vfat             /dev/hda4       /hda4_vfat
image failid                              vfat -o loop     /img.fail       /a

7. Toimetame seadmel olevate failidega

8. Umount'ime seadme:

# umount /dev/fd0

9. Alles nüüd võib floppy või cd -rom'i plaadi välja võtta

2. Floppy kettad

Floppy'de peale tehakse tavaliselt kas vfat, msdos, ext2 või ei tehtagi failisüsteemi. Viimasel juhul kantakse info sinna/sealt:

# dd if=/bare.i    of=/dev/fd0
# dd if=/dev/fd0   of=/disk.image.144

Need mainitud failisüsteemid peavad olema kernelis või moodulitena olemas

# modprobe vfat
# modprobe msdos

Allpool on näiatud kuidas image faile mountida.

CD-ROM

CD-ROM'i dele kirjutatakse tavaliselt iso9660 failisüsteem. Ja seadmed ise on nn. IDE-ATAPI tüüpi. Et nendega tegelda tuleb vastav asi kernelisse kompileerida ja moodul vajadusel laadida 'modprob iso9660'

Füüsiliselt on vahest vaja seade ka arvutile külge ühendada

Samasugune on lugu ka kõvaketta partitsioonidega:

Lülitage arvutil vool välja, ühendage kõvaketas juurde, vajadusel paigutage jumpereid ümber ja detectige CMOS SETUP'ist uus vint ära. Seejärel bootige linux üles ja samad sammud nagu floppy puhul.

CDROM -iga on sama asi: kui CD peab enne mountimist sees olema ja seda ei tohi välja võtta enne umount'i.

Soovides CD/DVD plaadist koopiat teha tuleb anda lihtsalt käsk

# dd if=/dev/cdrom of=/kaust/ketas.iso

Ning kettale tekib iso fail mida saab siis vastavalt mountida või teisele plaadile paigaldada.

Kõvaketas

Kõvaketta partitsioonide mountimine toimub sarnaselt eeltoodutele. Kõvakettaga tegelemisel on linuxi puhul tänuväärne see, et isegi partitsioonide ja failisüsteemide muutmisel ei pea arvutit rebootima nagu, praegu ei tule keelele, aga on üks teine OS.

Külla aga saab badblocks'iga kontrollida bad blocke. Ja vee on üks abiks programm:

# fuser  -v -m /dev/hda6
                     USER       PID ACCESS COMMAND
/dev/hda6            root         1 .rce.  init
                     root         9 .rce.  update
                     root        10 frce.  kerneld
                     root        30 frce.  kerneld
                     root        65 .rce.  klogd
                     root        66 frce.  syslogd
                     root        68 frce.  rpc.portmap
                     root        70 frce.  inetd
                     root        72 .rce.  rpc.mountd
                     root        74 .rce.  rpc.nfsd
                     root        76 frce.  crond
                     root        82 frce.  sendmail
                     root        89 frce.  bash
                     root        90 frce.  agetty
                     root        91 frce.  agetty
                     root        92 frce.  agetty
                     root        93 frce.  agetty
                     root        94 frce.  agetty

Teadupärast annavad käsub umount ja mount vahet busy veateate - siit on aga näha mis seis on.

Ning käsk fsck (file system check) võimaldab kontrollida failisüsteemi korrasolekut. NB! enne tuleb failisüsteem umount'ida.

# fsck /dev/hda8
Parallelizing fsck version 1.10 (24-Apr-97)
e2fsck 1.10, 24-Apr-97 for EXT2 FS 0.5b, 95/08/09
/dev/hda8 is mounted.  Do you really want to continue (y/n)? no

check aborted.

# umount /dev/hda8
# fsck /dev/hda8
Parallelizing fsck version 1.10 (24-Apr-97)
e2fsck 1.10, 24-Apr-97 for EXT2 FS 0.5b, 95/08/09
/dev/hda8: clean, 5358/665840 files, 605366/665248 blocks

Kasutades -C 0 näeb tegevuse progressi, nt

# e2fsck -C 0 -f /dev/c_data/test 
e2fsck 1.41.11 (14-Mar-2010)
Pass 1: Checking inodes, blocks, and sizes
/dev/c_data/test: |=                                       \  2.0%

Image file

See on tõeliselt 'weird'- linux võimaldab mountida image file. Toome näite floppy kohta:

1. teeme /dev/fd0 -s olevat vfat failisüsteemiga floppyst image faili (floppy ei pruugi olla mountitud)

selleks on kolm võimalust, kasutage vaid ühte!

# cat /dev/fd0 > /img.144
# dd if=/dev/fd0 of=/img.144
# cp /dev/fd0 /img.144

2. veendume, et kernelis on loobback sees (mitte see mis puutub network'i :)

make menuconfig; Floppy, IDE and other block devices -> Loopback device support
vajadusel modprobe loop

3. mountime image faili /a alla

bash# mount -t vfat -o loop /img.144 /a
mount: Could not find any loop device, and, according to /proc/devices,
       this kernel does not know about the loop device.
       (If so, then recompile or `insmod loop.o'.)

# modprobe loop
# mount -t vfat -o loop /img.144 /a
# df
Filesystem         1024-blocks  Used Available Capacity Mounted on
/dev/hda6             991000  895730    44066     95%   /
/dev/hda2            1023856  996400    27456     97%   /nt.40
/dev/hda5             310264  292016    18248     94%   /os2
/img.144                1423    1111      312     78%   /a

Ja töö lõpetamisel umount!

4. seadme image kasutamine

Järgnev kehtib eeldusel, et toimetamised mahuvad ära nn 32bit sisse.

Olgu kõvakettaseadmel /dev/hdb kolm partitsiooni ning on tehtud kogu seadmest image fail

# fdisk -l -u hdb.img
...
34 heads, 61 sectors/track, 0 cylinders, total 0 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot      Start         End      Blocks   Id  System
hdb.img1              61      232287      116113+  83  Linux
hdb.img2          232288      485315      126514   83  Linux
hdb.img3          485316      549609       32147   83  Linux

Soovides ühendada külge sellest image failist teisel partitsioonil olevat failisüsteemi, tuleb öelda

mount -o loop,offset=118931456 hda.img /yhenduspunkt

arvestades asjaolu, et 512*232288 = 118931456

Tõmmise, millel on ilma partitsioonitabelita nö otse tehtud ext3 failisüsteem, ühendamiseks /etc/fstab abil sobib kasutada nt sellist rida

/mnt/tommis.img  /mnt/tommis ext3 loop 0 2

Suured kataloogid eraldi partitsioonidel

Niisiis oletame, et meil on kaks kõvaketast partitsioonidega:

/dev/hda1 - swap, 96 M
/dev/hda2 - root, 600 M
/dev/hda3 - /home, kasutajate kodukataloogid, 2 000 M
/dev/hdb1 - /usr kataloogi alla jäävad failid 1200 M

Selgitused:

swap on arvuti nö. mälu pikendus ja seda kasutab ta 'iseenesest' peale inistsialiseerimist rc scriptides:

# mkwap /dev/hda1
# swapon /dev/hda1

root on see partitsioon kus asub kernel /vmlinuz ja enamus juurika kataloogidest (/etc, /bin, /root, /dev)

Tavaliselt on nii, et kasutajate kodukataloogid moodustavad küllalt suure struktuuri ja süsteemi uuendamisel või ümbersättimisel on mugavam, kui see asub kas füüsiliselt erineval kettal või vähemalt eraldi partitsioonil mida on nii kergem backup'pida.

Toodud näite olukorra kohta öeldakse, et hda3 on mount'itud juurika /home kataloogiks. Seda tehakse praktiliselt nii:

1. luuakse juurikale tühi /home kataloog: 
(Tõsi, tavaliselt on ta sel olemas, sel juhul tuleks tema sisu kopeerida teise nime alla: ) 	mkdir   /home (mv /home /home_old; mkdir /home)
2. Mountime tühja failisüsteemiga partitsiooni /dev/hda3 -e /home -ks  	mount -t ext2 /dev/hda3 /home
3. Vajadusel liigutame vana tagasi:  	mv /home_old /home

Tulemuseks on see, et failid mis asuvad /home'ist allpool asuvad reaalselt teises partitsioonis kui muu juurikas.

Sarnaselt on toimitud /usr kataloogiga.

/etc/fstab

See on fail kus on kirjas millised kataloogid mountida külge süsteemi bootimisel; tüüpiliselt näeb see fail välja selline:

/dev/hda7       swap        swap        defaults                                   0   0
/dev/hda6       /           ext2        defaults,usrquota                          0   1
/dev/hda2       /nt.40      vfat        defaults                                   0   2
/dev/hda5       /os2        vfat        defaults                                   0   2
/dev/hda8       /hda8       ext2        defaults                                   0   2
/dev/fd0        /floppy     ext2        noauto                                     0   0
/dev/fd0        /a          vfat        noauto                                     0   0
/dev/hdd        /cdrom      iso9660     ro,noauto                                  0   0
none            /proc       proc        defaults                                   0   0
laura:/         /fromlaura  nfs         noauto,rsize=8192,wsize=8192,timeo=14,intr 0   0

Selgitused:

tulp

   1: seade kus füüsiliselt mountitav asi asub
   2: kataloog kuhu seade läheb
   3: failisüsteem
   4: nn. optionid
   5: dump info 
   6: fsck info

optionid:

defaults on defaults noauto tähendab, et failisüsteemi ei laeta kohe külge aga hiljem piisab anda nt vfat floppy jaoks käsk: mount /a ro on 'read only' usrquota näitab, et seadet kontrollib quota

eelviimane tulp:

soovitatakse panna tavaliselt 0, seda väärtust kasutab program dumpe2fs oma salapärastel eesmärkidel

viimane tulp:

root'il soovitatakse panna 1 teistel 2

need arvud näitavad check'imise järjekorda bootimisel omal moel. Kui panna 0 siis fsck ei pööra talle tähelepanu. Muide, fstab-i failisüsteemid laadib /etc/rc.d/rc.S -i rida

# /sbin/mount -avt nonfs

UUID kasutamine

Plokkseadme nn /dev kataloogi failinime asemel saab kasutada ka plokkseadme UUID väärtust, nt

UUID=7cd6e9de-18d1-4d55-8d46-4d96ce8f492d /boot ext3 defaults 0 2

UUID eeliseks on, et ta on seotud nt konkreetsel füüsilisel kõvakettal asuva failisüsteemiga.

LABEL kasutamine

TODO

losetup

Programmiga losetup saab korraldada faili käsitlemise plokkseadmena. Näiteks moodustame faili

 # dd if=/dev/zero of=/data/plokkseadmefail.img bs=1024x1024 count=4x1024

ning seostame ta seadmega /dev/loop0

 # losetup /dev/loop0 /data/plokkseadmefail.img

Kõiki losetup abil tekitaud plokkseadmeid näeb käsuga

 # losetup -a
 /dev/loop0: [fe0c]:22439673 (/data/plokkseadmefail.img)

Seadet /dev/loop0 saab käsitleda seejärel nagu tavalist plokkseadet, näiteks saab sinna moodustada failisüsteemi, tekitada partitsioone, kasutada mdadm või lvm juures.

Moodustatud plokkseadme saab eemaldada öeldes

 # losetup -d /dev/loop0

kpartx utiliidi kasutamine

Mitmeid partitsioone sisaldava tõmmisfaili kasutamiseks on abi programmist kpartx

 # apt-get install kpartx

Tõmmisest partitsioonide nimekirja küsimine

 # kpartx -l tommisefailinimi.img
 loop1p1 : 0 19631367 /dev/loop1 63

Tõmmise partitsioonidele vastavate seadmete tekitamiseks tuleb öelda

 # kpartx -a tommisefailinimi.img

Tekkinud seadmete kasutamiseks, nt külge ühendamiseks sobib öelda

 # mount -o ro /dev/mapper/loop1p1 /mnt/tommis-hda1

Mäppingute kustutamine (kusjuures oluline on kasutada täpselt sama path'i mida kasutati ühendamisel)

 # kpartx -d tommisefailinimi.img
 loop deleted : /dev/loop0

Kui plokkseadmele on moodustad nö otse failisüsteem, st ilma partitsioonitabelit tekitamata, siis paistab selline seade nt sarnaselt

# parted /dev/system/xl-deb-7-91.arendus.kit-disk p
Model: Linux device-mapper (linear) (dm)
Disk /dev/dm-10: 2147MB
Sector size (logical/physical): 512B/512B
Partition Table: loop

Number  Start  End     Size    File system  Flags
 1      0.00B  2147MB  2147MB  ext3

kus

  • Partitsioonitabeli tüüp - loop

Sellise failisüsteemi külgeühendamiseks pole vaja kpartx programmi kasutada, piisab niisama öelda

# mount /dev/system/xl-deb-7-91.arendus.kit-disk /mnt/xl-deb-7-91

partprobe utiliidi kasutamine

Kui kõvaketta osa partitsioone on kasutuses, nt /dev/sda1 osaleb mdadm RAID lülituses ja on soov ilma arvutit rebootimata nt sama ketta /dev/sda2 eemaldada ja asendada suuremaga (eeldades, et /dev/sda seadmel on kasutamata ruumi), siis sobib selleks järgmine protseduur

  • veenduda, et /dev/sda2 partitsioon ei ole kasutuses
  • fdisk, parted vms programmi abil kustutada olemasolev /dev/sda2 ja tekitada uus
  • cat /proc/partitios näitab tuuma ettekujutust ketta partitsioonitabelit
  • öelda
# partprobe /dev/sda
  • veenduda, et tuumal on uus ettekujutus

Analoogiline tegevus toimub lisades kasutuses ja partitsioneerimata ruumi sisaldavale kettale partitsiooni, nt lisades fdisk abil /dev/sda4

  • enne
# ls -ld /dev/sda*
brw-rw---- 1 root disk 8, 0 Aug 13 17:17 /dev/sda
brw-rw---- 1 root disk 8, 1 Aug 13 17:20 /dev/sda1
brw-rw---- 1 root disk 8, 2 Aug 13 12:29 /dev/sda2
brw-rw---- 1 root disk 8, 3 Aug 13 17:20 /dev/sda3
  • peale 'partprobe /dev/sda' ütlemist
# ls -ld /dev/sda*
brw-rw---- 1 root disk 8, 0 Aug 13 17:17 /dev/sda
brw-rw---- 1 root disk 8, 1 Aug 13 17:20 /dev/sda1
brw-rw---- 1 root disk 8, 2 Aug 13 12:29 /dev/sda2
brw-rw---- 1 root disk 8, 3 Aug 13 17:20 /dev/sda3
brw-rw---- 1 root disk 8, 4 Aug 13 17:20 /dev/sda4

Krüptitud plokkseadme kasutamine

Kõvakettal olevaid andmeid saab krüptida mitmes kihis, alates plokkseadme plokkidest (need 512B suurused tükid) kuni failisüsteemis asuvate üksikute failide krüptimiseni. Järnev käsitleb plokkseadme (nt partitsiooni või LVM voluumi) krüptimist

Paigaldage vajalik tarkvara

 # apt-get install cryptsetup

Eeldusena peab olema kasutada partitsioon või LVM voluum, näiteks /dev/sda2

 # cryptsetup -y create data /dev/sda2
 Enter passphrase:
 Verify passphrase:

Moodusteme failisüsteemi

 # mke2fs -j /dev/mapper/data

Ning ühendame külge

 # mount /dev/mapper/data /data

Selleks, et alglaadimisel toimuks failisüsteemi külgeühendamine automaatselt tuleb sisestada faili /etc/crypttab rida

 data /dev/sda2 none cipher=aes

Ning faili /etc/fstab rida

 /dev/mapper/data /data ext3 defaults 0 1

Alglaadimise käigus küsitakse parooli ja seejärel toimub krüptitud failisüsteemi kasutamine nagu tavalise failisüsteemi puhul.

fdisk partitsioonil asuva ext3 failisüsteemi suuruse muutmine

ext3 failisüsteemi suurendamine

Olgu lähtepunktiks sellise msdos partitsioonitabeliga plokkseade

# parted /dev/vdc p
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 17.2GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      32.3kB  255MB   255MB   primary
 2      255MB   4557MB  4302MB  primary  ext3

Eesmärgiks on suurendada /dev/vdc2 failisüsteemi, selleks tuleb

  • ühendada failisüsteem lahti (kusjuures suurendamine on võimalik ka külgeühendatud olekus) ning öelda
# e2fsck -f /dev/vdc2
  • kustutada fdisk või parted abil olemasolev partitsioon
  • moodustada fdisk või parted abil sama algusega, aga suurem partitsioon
  • suurendada resize2fs programmiga failisüsteem
# resize2fs -p /dev/vdc2
  • monteerida failisüsteem ning kasutada

ext3 failisüsteemi vähendamine

Olgu lähtepunktiks sellise msdos partitsioonitabeliga plokkseade

# parted /dev/vdc p
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 17.2GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      32.3kB  255MB   255MB   primary
 2      255MB   4557MB  4302MB  primary  ext3

Eesmärgiks on vähendada /dev/vdc2 failisüsteemi, millest on kasutusel 500MB suurusele 1.2G, selleks tuleb

  • ühendada failisüsteem lahti ning öelda
# e2fsck -f /dev/vdc2
  • vähendada failisüsteem, suurus peab olema suurem kui kasutusel olev maht
# resize2fs -p /dev/vdc2 1G
  • kustutada fdisk või parted abil olemasolev partitsioon
  • moodustada fdisk või parted abil sama algusega, aga arvutuste lihtsustamiseks natuke suurem partitsioon kui failisüsteemi uus suurus, nt 1.2G
  • suurendada resize2fs programmiga failisüsteem
# resize2fs -p /dev/vdc2
  • monteerida failisüsteem ning kasutada

LVM voluumil asuva ext3 failisüsteemi suuruse muutmine

Plokkseadmele moodustatud ext3 failisüsteemi suurust saab muuta resize2fs utiliidi abil kusjuures praktiliselt on tarvis reeglina võimalust muuta failisüsteemi all oleva plokkseadme suurust. Ehk kõige mugavam on seda teha kui failisüsteem asub LVM voluumil.

Näiteks on võimalik selline järgnevus

  • tekitame voluumi suurusega 4 GB
 # lvcreate -L4G -n vol1 test
  • moodustame voluumile failisüsteemi
 # mke2fs -j /dev/test/vol1

Märkused

  • Failisüsteemi suuruse muutmisega tegelemisel on oluline tähele panna, et failisüsteem ei pruugi kasutada kogu plokkseadet.
  • Failisüsteemile vastaval LVM voluumil ei tohis olla suuruse muutmise ajal snapshotte

ext3 failisüsteemi suurendamine

Suurust saab muuta

  • lahti ühendatud failisüsteemiga
  • külge ühendatud failisüsteemiga

Esmalt suurendame algselt 4 GB voluumi 8 GB suuruseks

# lvresize -L8G /dev/test/vol1
Extending logical volume vol1 to 8.00 GB
Logical volume vol1 successfully resized

Failisüsteemi suurendamiseks lahtiühendatud olekus tuleb esmalt teha fsck ning seejärel resize2fs, nt nii

# umount /dev/test/vol1
# e2fsck -f /dev/test/vol1
# resize2fs -p /dev/test/vol1

kus -p näitab progressi ning kui viimaseks argumendiks näidata arv, nt 6G, siis see määraks tekkiva failisüsteemi suuruse.

Failisüsteemi suurendamiseks külgeühendatud olekus täitma kogu uue suurusega voluumi sobib öelda (ilma eelnevalt e2fsck tegemata)

# resize2fs -p /dev/test/vol1
resize2fs 1.41.3 (12-Oct-2008)
Filesystem at /dev/test/vol1 is mounted on /data; on-line resizing required
old desc_blocks = 3, new_desc_blocks = 4
Performing an on-line resize of /dev/test/vol1 to 14680064 (4k) blocks.
The filesystem on /dev/test/vol1 is now 14680064 blocks long.

ext3 failisüsteemi vähendamine

2009 aastal saab ext3 failisüsteemi vähendada (ingl. k. shrink) ainult lahtiühendatud olekus. Vähendada saab mitte väiksemaks kui failisüsteemis on ruumi kasutusel. Tavaliselt vähendatakse failisüsteemi eesmärgil vabastada kõnealuse failisüsteemi aluselt plokkseadmelt (antud juhul Volume Grupilt) ruumi muuks kasutuseks, nt vähendame 48 GB suuruse failisüsteemi, mis kasutab 2.4 GB suurusele 16GB kusjuures 13.8 G jääb failisüsteemis vabaks, tegevus võiks koosneda nt sellistest sammudest

  • failisüsteem vähendatakse nõutud suurusest pisut väiksemaks, nt 10 G
  • plokkseade st antud juhul LVM köide vähendatakse suurusele 16 GB
  • failisüsteem suurendatakse kogu LVM köitele (st suurusele 16 GB)

Sellise tegevuse sooritamiseks tuleb failisüsteem esmalt lahti monteerida

 # umount /dev/vg/data_postgresql

Seejärel rakendada failisüsteemi kontroll, mille käigus failisüsteem defragmenteeritakse, -C 0 esitab progressi

# e2fsck -C 0 -f /dev/vg/data_postgresql 
e2fsck 1.41.12 (17-May-2010)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure                                           
Pass 3: Checking directory connectivity                                        
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/vg/data_postgresql: 1820/3145728 files (4.1% non-contiguous), 802405/12582912 blocks

Seejärel failisüsteemi suurus vähendatakse 10 GB suurusele

 # resize2fs -p /dev/vg/data_postgresql 10G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/vg/data_postgresql to 2621440 (4k) blocks.
Begin pass 2 (max = 6)
Relocating blocks             XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 384)
Scanning inode table          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 4 (max = 38)
Updating inode references     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/vg/data_postgresql is now 2621440 blocks long.

Seejärel märgitakse köide mitte-aktiivseks

# lvchange -a n /dev/vg/data_postgresql

ning vähendatakse LVM köite suurus 16 GB väärtusele (kusjuures tab ei lõpeta enam seadmenime, st tuleb omal välja kirjutada)

# lvresize -L16G /dev/vg/data_postgresql
  Reducing logical volume data_postgresql to 16.00 GiB
  Logical volume data_postgresql successfully resized

ja muuta LVM köide uuesti aktiivseks

# lvchange -a y /dev/vg/data_postgresql

Vähendatud LVM köite failisüsteemiga täitmiseks tuleb öelda

# resize2fs -p /dev/vg/data_postgresql 
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/vg/data_postgresql to 4194304 (4k) blocks.
Begin pass 1 (max = 48)
Extending the inode table     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/vg/data_postgresql is now 4194304 blocks long.

Lõpuks monteerida failisüsteem külge ja kasutada edasi

# mount /dev/vg/data_postgresql

Märkused

  • failisüsteemi maksimaalselt väikesele suurusele vähendamiseks sobib öelda, st tulemusena on ta 100% täis
 # umount /dev/test/vol1
 # e2fsck -f /dev/test/vol1
 # resize2fs -M /dev/test/vol1

ext3 failisüsteemi all oleva LVMi all oleva plokkseadme partitsiooni suuruse muutmine

Olgu lähtepunktiks selliste partitsioonidega plokkseade

# parted /dev/vdc p
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 17.2GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      32.3kB  255MB   255MB   primary  ext3
 2      255MB   4550MB  4295MB  primary               lvm

Kusjuures /dev/vdc2 on LVM PV millel on VG ning omakorda LV'd. Eesmärgiks on muuta teise partitsiooni suurust.

Suurendamine

Suurendamiseks tuleb failisüsteemi kasutamine lõpetada ning märkida kõited mitte-aktiivseks (tundub, et töötavas arvutis saab fdisk abil partitsioonid ära suurendada samuti, aga muudatuse kehtestamiseks tuleb nt rebootida)

# vgchange -a n koited

Seejärel tuleb

  • PV'le vastava partitsioon fdisk abil kustutada ning moodustada sama algusega uus suurem partitsioon
  • suurendada PV kusjuures nii suureneb automaatselt ka VG, LV suurused jäävad samaks
# pvresize /dev/vdc2
  • teha kõited kasutatavaks
# vgchange -a y koited
  • teha huvipakkuvale failisüsteemile fsck
# e2fsck -f /dev/koited/koide_2
  • suurendada vajaliku kõite suurust
# lvresize -L4G /dev/koited/koide_2
  • suurendada kõitel oleva failisüsteemi suurust
# resize2fs -p /dev/koited/koide_2
  • asuda kasutama

Vähendamine

Vähendamiseks tuleb

  • failisüsteemi kasutamine lõpetada ja mõne LV all olevat failisüsteemi vähendada
# e2fsck -f /dev/koited/koide_2
# resize2fs -p /dev/koited/koide_2 400M
  • märkida kõited mitte-aktiivseks
# vgchange -a n koited
  • vähendada LV, nt
# lvresize -L512M /dev/koited/koide_2
  • suurendada failisüsteem täis-suuruseni
# vgchange -a y
# resize2fs -p /dev/koited/koide_2
# vgchange -a n
  • vähendada PV
# pvresize /dev/vdc2 --setphysicalvolumesize 1536M
  • PV'le vastava partitsioon fdisk abil kustutada ning moodustada sama algusega uus väiksem partitsioon
  • suurendada PV partitsiooni täis-suuruseni
# pvresize /dev/vdc2
  • teha kõited kasutatavaks
# vgchange -a y koited
  • asuda kasutama

Märkused

  • Kui seadme lõpus on PE kasutuses saab nt sellise teate
pvresize /dev/cciss/c0d0p2 --setphysicalvolumesize 60G
/dev/block/104:2: cannot resize to 15359 extents as later ones are allocated.
0 physical volume(s) resized / 1 physical volume(s) not resized

NTFS failisüsteemi all oleva LVMi volüümi suuruse muutmine

Vähendamine

Olgu kasutuses Windows 7 operatsioonisüsteemiga virtuaalne arvuti, mille mitte-süsteemsele plokkseadmele (nt D:\> ketas) vastab host arvutis LVM köide. Windows 7 poolt vaadates on sellel köitel tõenäoliselt DOS fdisk label ning üks NTFS partitsioon. LVM köite suuruse vähendamiseks tuleb

  • vabastada failisüsteemis ruumi
  • Windows 7 keskkonnas shinkida failisüsteemi
  • failisüsteemi shrinkimise käigus vähendatakse ka partitsiooni
# fdisk -l /dev/vg_data/vga_win7_32_backup

Disk /dev/vg_data/vga_win7_32_backup: 200 GiB, 214748364800 bytes, 419430400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x25b98324

Device                                  Boot Start      End  Sectors  Size Id Type
/dev/vg_data/vga_win7_32_backup1       2048 30306303 30304256 14.5G  7 HPFS/NTFS/exFAT

Seejärel tuleb Windows 7 virtuaalne arvuti sulgeda ning lvresize abil vähendada lvm voluumi, usutavalt on turvaline uus suurus valida varuga. Ja Windows keskkonnas suurendada failisüsteem (ja partitsioon) kasutama kogu plokkseadet (st LVM voluumi).

MBR partitsioonitabeliga plokkseadme suuruse muutmine

MBR partitsioonitabeliga plokkseadme suurendamiseks reeglina piisab

  • plokkseadme kasutamine lõpetada, nt virtuaalne arvuti panna seisma
  • suurendada plokkseadmele vastav ressurss, nt LVM kõide hostis
  • käivitada virtuaalne arvuti
  • kasutada suuremana paistvat plokkseadet edasi, nt moodustada sinna uus MBR partitsioon või suurendada olemasolevaid

Primaarse partitsiooni lisamise teel

Kui plokkseadmel on extended partitsioon, siis võib olla mõistlikum sda5 ja sda2 kustutamise asemel lihtsalt moodustada juurde /dev/sd3

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1  *       2048   999423   997376  487M 83 Linux
/dev/sda2       1001470 33552383 32550914 15.5G  5 Extended
/dev/sda5       1001472 33552383 32550912 15.5G 8e Linux LVM

Command (m for help): n
Partition type
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
Select (default p): p
Partition number (3,4, default 3): 
First sector (999424-67108863, default 999424): 33552384
Last sector, +sectors or +size{K,M,G,T,P} (33552384-67108863, default 67108863): 

Created a new partition 3 of type 'Linux' and of size 16 GiB.

Tulemus paistab nii

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sda1  *        2048   999423   997376  487M 83 Linux
/dev/sda2        1001470 33552383 32550914 15.5G  5 Extended
/dev/sda3       33552384 67108863 33556480   16G 8e Linux LVM
/dev/sda5        1001472 33552383 32550912 15.5G 8e Linux LVM

Seejärel saab nt olemasolevat lvm'i extendida /dev/sda3 abil.

Kasulikud lisamaterjalid

Olemasolevate partitsioonide suurendamise teel

Olgu lähtepunkt selline, virtuaalne arvuti, kus kasutatakse /dev/vdb plokkseadet (8388607 on partitsiooni lõpp, arvuliselt ühe võrra väiksem seadme sektorite arvust)

# parted /dev/vdb
GNU Parted 3.2
Using /dev/vdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit s                                                           
(parted) p                                                                
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 8388608s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start     End       Size      Type      File system  Flags
 1      2048s     1050623s  1048576s  primary
 2      1050624s  8388607s  7337984s  extended
 5      1052672s  8388607s  7335936s  logical                lvm

Eesmärgiks on suurendada logical partitsioonil asuval lvm köitel asuvat ext4 failisüsteemi. Selleks tuleb esmalt lisada virtualiseerimise keskkonna haldusliideses /dev/vdb seadmele ruumi juurde, 8388608 -> 16777216

Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 16777216s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start     End       Size      Type      File system  Flags
 1      2048s     1050623s  1048576s  primary
 2      1050624s  8388607s  7337984s  extended
 5      1052672s  8388607s  7335936s  logical                lvm

Seejärel nihutada partitsioonide 2 ja 5 lõpp edasi (nt uude seadme lõppu, 16777215 on plokkseadme viimane sektor, 'size - 1')

(parted) resizepart 2 16777215
(parted) resizepart 5 16777215

tulemuseks

 Number  Start     End        Size       Type      File system  Flags
 1      2048s     1050623s   1048576s   primary
 2      1050624s  16777215s  15726592s  extended
 5      1052672s  16777215s  15724544s  logical                lvm

Suurendada lvm pv (automaatselt suureneb lvm volume grupp)

# pvresize /dev/vdb5

Suurendada lvm köide (-l +100%FREE tähendab, et suurendamiseks kasutatakse ära kõik vastava volume group'i vaba ressurss)

# lvextend -l +100%FREE /dev/data/www

või nt (ei ole eelmisega samaväärne üldiselt)

# lvextend -L+50G /dev/data/www

Suurendada failisüsteem

# resize2fs -p /dev/data/www

Kasulikud lisamaterjalid

XFS failisüsteemi kasutamine

XFS http://oss.sgi.com/projects/xfs/ on kaasaegne failisüsteem, kasutamiseks tuleb paigaldada xfs utiliidid öeldes

# emerge xfsprogs

XFS failisüsteemi moodustamine

Failisüsteemi moodustamiseks seadmele /dev/xvda2 sobib öelda

 # mkfs.xfs /dev/xvda2 
 meta-data=/dev/xvda2             isize=256    agcount=4, agsize=786432 blks
          =                       sectsz=512   attr=2
 data     =                       bsize=4096   blocks=3145728, imaxpct=25
          =                       sunit=0      swidth=0 blks
 naming   =version 2              bsize=4096  
 log      =internal log           bsize=4096   blocks=2560, version=2
          =                       sectsz=512   sunit=0 blks, lazy-count=0
 realtime =none                   extsz=4096   blocks=0, rtextents=0

XFS failisüsteemi kasutamisega on seotud sellised nn tuuma lõimed

 # ps aux | grep xfs
 root      4334  0.0  0.0      0     0 ?        S<   23:40   0:00 [xfslogd/0]
 root      4336  0.0  0.0      0     0 ?        S<   23:40   0:00 [xfslogd/1]
 root      4337  0.0  0.0      0     0 ?        S<   23:40   0:00 [xfsdatad/0]
 root      4338  0.0  0.0      0     0 ?        S<   23:40   0:00 [xfsdatad/1]
 root      4339  0.0  0.0      0     0 ?        S<   23:40   0:00 [xfs_mru_cache]
 root      4382  0.0  0.0      0     0 ?        S<   23:44   0:00 [xfsbufd]
 root      4384  0.0  0.0      0     0 ?        S<   23:44   0:00 [xfsaild]
 root      4385  0.0  0.0      0     0 ?        S<   23:44   0:00 [xfssyncd]

64 bit keskkonnas võib xfs kasutamisel tekkida sarnaseid probleeme, mida kirjeldab vestluslõim aadressil http://oss.sgi.com/archives/xfs/2005-06/msg00347.html.

Failisüsteemi automaatseks külgeühendamiseks sobib /etc/fstab failis kasutada nt rida

 /dev/xvda2     /srv/data          xfs         noatime,nodiratime,inode64,logbufs=8 1 2

kus

  • noatime - failide access time aega ei kasutata
  • nodiratime - kataloogide access time aega ei kasutata
  • inode64 - failisüsteemi inode numbrid võivad olla suuremad kui 32 bit
  • logbufs=8

Olemasoleva xfs failisüsteemi omaduste esitamiseks sobib öelda (ei ole kooskõlas ülaltoodud mkfs.xfs andmetega)

 xfs_info /dev/data/xfs
 meta-data=/dev/mapper/data-xfs    isize=256    agcount=4, agsize=268435455 blks
          =                       sectsz=512   attr=2
 data     =                       bsize=4096   blocks=1073741820, imaxpct=5
          =                       sunit=0      swidth=0 blks
 naming   =version 2              bsize=4096   ascii-ci=0
 log      =internal               bsize=4096   blocks=32768, version=2
          =                       sectsz=512   sunit=0 blks, lazy-count=0
 realtime =none                   extsz=4096   blocks=0, rtextents=0

XFS failisüsteemis asuvate kõikide kasutajate quota tabeli saamiseks tuleb anda käsk

# xfs_quota -x -c "report -nu"

XFSi probleemidest: Failid on asendunud 0 baidistega.

LVMi peale tehtud XFS failisüsteemi suurendamine

XFS failisüsteem peab olema suurendamisel külge monteeritud olekus. XFS failisüteemi suurendamiseks tuleb esmalt failisüteemi all olevat plokkseadet suurendada, nt LVM köite puhul öelda

# lvresize -L40G /dev/system/xfs 
 Extending logical volume xfs to 40.00 GiB
 Logical volume xfs successfully resized

ning seejärel öelda

# xfs_growfs /dev/system/xfs 
meta-data=/dev/mapper/system-xfs isize=256    agcount=6, agsize=1310720 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=7864320, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 7864320 to 10485760

XFS failisüteemi vähendamine

XFS failisüsteemi ei saa otseselt vähendada, http://xfs.org/index.php/XFS_FAQ#Q%3A_Is_there_a_way_to_make_a_XFS_filesystem_larger_or_smaller.3F, kaudselt on võimalik tekitada uus sobiva suurusega failisüstee ning kopeerida andmed sinna ümber ning kustutada algselt kasutuses olnud failisüsteem.

Reiser failisüsteemi kasutamine

Failisüsteemi plokkseadmele moodustamiseks tuleb süsteemipaigaldada reiserfsprogs pakett

 # apt-get install reiserfsprogs

ja öelda näiteks

 # mkreiserfs /dev/cciss/c0d0p2

/etc/fstab failis tuleb vastavalt kasutada rida

 /dev/cciss/c0d0p2 /srv reiserfs rw 0 0

Mount bind

nn mount bind võimaldab sama kataloogi sisu teha nähtavaks failisüsteemis mitmes kohas

 # mount --bind /tmp/src /tmp/dst

/etc/fstab failis sobib kasutada rida

 /tmp/src /tmp/dst none defaults,bind 0 0

AUFS

AUFS (Another Union File System) võimaldab koondada erinevate kataloogide sisu nähtavale ühe kataloogi alla. AUFS kasutamiseks tuleb paigaldada tuuma moodul ja utiliidid

 # apt-get install aufs-modules-2.6-amd64 aufs-tools

Kasutamine toimub nt selliselt

 # mount -t aufs -o dirs=/tmp/src/essa:/tmp/src/tessa none /tmp/dst

OpenBSD failisüsteemi kasutamine Linuxist

Esmalt vaadata, millese loogilise nime all vastav OpenBSD partitsioon esineb

# cat /proc/partitions

ja siis külge monteerida, nt

# mount -t ufs -o ro,ufstype=44bsd /dev/hda5 /tmp/hda5

USB pulk ja FAT 32 failisüsteem

# apt-get install dosfstools
# fdisk ... valida partitsiooni tüüp 'b'
# mkdosfs -F 32 -I /dev/sdc1

df programmi kasutamine

df abil saab küsida nimekirja süsteemile teada olevatest failisüsteemidest, nö füüsilistest kui muudest, nt Debian v. 7 Wheezy puhul esitatakse vaikimisi selline väljund

# df -h -T -a
Filesystem                         Type      Size  Used Avail Use% Mounted on
rootfs                             rootfs     12G  3.3G  8.1G  29% /
sysfs                              sysfs        0     0     0    - /sys
proc                               proc         0     0     0    - /proc
udev                               devtmpfs   10M     0   10M   0% /dev
devpts                             devpts       0     0     0    - /dev/pts
tmpfs                              tmpfs     195M  312K  195M   1% /run
/dev/mapper/system-root            ext3       12G  3.3G  8.1G  29% /
tmpfs                              tmpfs     5.0M     0  5.0M   0% /run/lock
tmpfs                              tmpfs     390M     0  390M   0% /run/shm
/dev/sda2                          ext3      504M  168M  311M  35% /boot
nfsd                               nfsd         0     0     0    - /proc/fs/nfsd

kus

  • -a - esitada info kõigi failisüsteemide kohta
  • -h - esitada suurused GB, MB vms ühikutes
  • -T - esitada lisaks failisüsteemi tüüp

Lisaks saab küsida andmeid nt teatud tüüpi failisüsteemide kohta, nt ainult devpts

# df -h -T -a -t devpts
Filesystem     Type    Size  Used Avail Use% Mounted on
devpts         devpts     0     0     0    - /dev/pts

Ketaste trimmimine

Tegemist tehnikaga mis mõeldud storage "thin provisioning" ja ssd ketaste jaoks ning tähendab seda, et kustutatud andmed eemaldatakse koheselt. Nt storagest loodud ning iSCSI vms tehnikaga jagatud kettal tähendab Thin Provisioning enabled, et antakse küll välja nt 20 TB-suurune kettaviilakas, aga "allocation" (ehk kasutatud) on vaid reaalselt seal peal olevate andmete maht ehk vaid paar terabaiti. Tavalisel moel jagatud kettal on kogu jagatud maht reserveeritud ning seda enam välja jagada ei saa. Samuti on võimalik määrata tase, kus maal "häiret antakse". Samas on vaja storagele anda teada, et mingid andmed on määratud kustutamisele (tavaliselt failisüsteem seda ei tee) ning siin tulebki mängu discard.

Ketta mountimisel tuleb mount käsule anda võti discard või siis aeg-ajalt fstrim käsk käima panna. Kui discard võti on mountimisel antud teatab süsteem kustutamisel automaatselt allolevale kettale, et info vaja eemaldada. Fstrim käsk on selleks, et tagasiulatuvalt kustutada ka see info, mis sai kustutatud enne mount võtme muutmist ehk discard lisamist.

scsi rescan

scsi rescan'ist on abi, kui on vaja töötava arvuti LVM ressurssi suurendada. Teatud tingimustel saab arvutile operatsiooni töötamise ajal lisada plokkseadmeid, nt ESXi virtuaalsele arvutile Hard Disk tüüpi seadme. Selleks, et operatsioonisüsteem saaks lisatud seadet asuda kasutama tuleb öelda nt

# echo "- - -" > /sys/class/scsi_host/host#/scan

kusjuures # voimalikud väärtused näeb ära vastava kataloogis sisust, tundub, et vale numbri kasutamine midagi halba ei tee, maksab alustada suuremast

..
# echo "- - -" > /sys/class/scsi_host/host2/scan
# echo "- - -" > /sys/class/scsi_host/host1/scan
...

scan nimeline fail kusjuures failisüsteemis ei eksisteeri, aga see ei sega seda echo käsku kasutamisel ja tulemuse saavutamisel. Tulemus paistab nt sedasi

[23416.047799] scsi 2:0:1:0: Direct-Access     VMware   Virtual disk     1.0  PQ: 0 ANSI: 2
[23416.047811] scsi target2:0:1: Beginning Domain Validation
[23416.048832] scsi target2:0:1: Domain Validation skipping write tests 
[23416.048836] scsi target2:0:1: Ending Domain Validation
[23416.048916] scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127)
[23416.050526] sd 2:0:1:0: [sdc] 167772160 512-byte logical blocks: (85.8 GB/80.0 GiB)
[23416.050566] sd 2:0:1:0: [sdc] Write Protect is off
[23416.050570] sd 2:0:1:0: [sdc] Mode Sense: 61 00 00 00
[23416.050623] sd 2:0:1:0: [sdc] Cache data unavailable
[23416.050626] sd 2:0:1:0: [sdc] Assuming drive cache: write through
[23416.050985] sd 2:0:1:0: [sdc] Cache data unavailable
[23416.050988] sd 2:0:1:0: [sdc] Assuming drive cache: write through
[23416.051241] sd 2:0:1:0: Attached scsi generic sg3 type 0
[23416.074279]  sdc: unknown partition table
[23416.074536] sd 2:0:1:0: [sdc] Cache data unavailable
[23416.074540] sd 2:0:1:0: [sdc] Assuming drive cache: write through
[23416.074637] sd 2:0:1:0: [sdc] Attached SCSI disk

Seejärel tuleb tekitada LVM PV

# pvcreate /dev/sdc

ja LVM VG suurendada

# vgextend pgdata /dev/sdc

Ning tulemusena on kasutada suurenenud ruumiga pgdata LVM volume grupp.

device rescan

Olemasoleva plokkseadme suuruse muudatuse operatsioonisüsteemile õpetamiseks sobib öelda

# echo 1>/sys/class/block/sdd/device/rescan

scsi seadme eemaldamine

scsi seadme kasutamine esmalt lõpetada failisüsteemi, lvm, mdadm jne poolt ning lõpus öelda kus ketta täht asendada sobivaga, nt vaadata lsscsi väljundist

# echo 1 > /sys/block/sdb/device/delete

Seejärel võib hotswap ketta arvutist eemaldada, virtuaalse ketta arvutist eemalda vms.

btrfs failisüsteemi kasutamine

2015 aasta suvel on nö hästi varustatud Linux distributsioonides olemas btrfs tugi, kerneli osa niigi, haldusutiliiditeda paigaldamiseks tuleb paigaldada nt APT paketihaldusega keskkonnas sarnane pakett

# apt-get install btrfs-tools

tulemusena tekib failisüsteemi

  • /sbin/btfrs - TODO
  • TODO

Plokkseadmele /dev/vdb failisüsteemi tekitamiseks sobib öelda

# mkfs.btrfs /dev/vdb
Btrfs v3.17
See http://btrfs.wiki.kernel.org for more information.

Turning ON incompat feature 'extref': increased hardlink limit per file to 65536
fs created label (null) on /dev/vdb
        nodesize 16384 leafsize 16384 sectorsize 4096 size 8.00GiB

Failisüsteemi monteerimiseks koos pakkimisega

# mount -o compression=lzo /dev/vdb /mnt/vdb

või fstab failis rida (kusjuures mount | grep btrfs näitab sama väljundit sõltumata kas compress on või pole sees)

/dev/sdb /mnt/sdb  btrfs defaults,compress=lzo 0 1

Tundub, et tavaliste sync, df jt utiliitide asemel on sobivam teha

# btrfs filesystem sync /mnt/sdb
FSSync '/mnt/sdb'
# btrfs filesystem df /mnt/sdb
Data, single: total=45.01GiB, used=44.91GiB
System, DUP: total=8.00MiB, used=16.00KiB
System, single: total=4.00MiB, used=0.00B
Metadata, DUP: total=1.00GiB, used=169.09MiB
Metadata, single: total=8.00MiB, used=0.00B
GlobalReserve, single: total=64.00MiB, used=0.00B

kus

  • Data, single - used väljendab, palju on kasutuses reaalselt
# btrfs filesystem show
Label: none  uuid: 26ef34be-1c0c-4578-88a1-bc0810b0ebd9
        Total devices 1 FS bytes used 45.07GiB
        devid    1 size 596.17GiB used 47.04GiB path /dev/sdb

Btrfs v3.17

Kasulikud lisamaterjalid

Märkused

  • Monteeritud failisüsteemi ühenduspunktil on monteeritud failisüsteemi juurika kasutaja:grupp.

Kasulikud lisamaterjalid