LVM – Anleitung für Anfänger
Nun können wir unsere Logical Volumes einhängen. Ich möchte share in /var/share, backup in /var/backup und media in /var/media einhängen, dafür müssen wir zuerst diese Verzeichnisse erstellen:
mkdir /var/media /var/backup /var/share
Nun können wir unsere Logical Volumes einhängen:
mount /dev/fileserver/share /var/share
mount /dev/fileserver/backup /var/backup
mount /dev/fileserver/media /var/media
Lass Folgendes laufen
df -h
Du solltest Deine Logical Volumes in der Ausgabe angezeigt sehen:
server1:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 19G 665M 17G 4% /
tmpfs 78M 0 78M 0% /lib/init/rw
udev 10M 88K 10M 1% /dev
tmpfs 78M 0 78M 0% /dev/shm
/dev/sda1 137M 17M 114M 13% /boot
/dev/mapper/fileserver-share
40G 177M 38G 1% /var/share
/dev/mapper/fileserver-backup
5.0G 144K 5.0G 1% /var/backup
/dev/mapper/fileserver-media
1.0G 33M 992M 4% /var/media
Glückwunsch, Du hast gerade Dein erstes LVM System eingerichtet! Nun kannst Du wie gewöhnlich auf /var/share, /var/backup und /var/media schreiben und lesen.
Wir haben unsere Logical Volumes manuell eingehängt, aber natürlich möchten wir, dass sie automatisch eingehängt werden, wenn das System startet. Daher ändern wir /etc/fstab:
mv /etc/fstab /etc/fstab_orig
cat /dev/null > /etc/fstab
vi /etc/fstab
Setze Folgendes ein:
# /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/sda2 / ext3 defaults,errors=remount-ro 0 1 /dev/sda1 /boot ext3 defaults 0 2 /dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 /dev/fileserver/share /var/share ext3 rw,noatime 0 0 /dev/fileserver/backup /var/backup xfs rw,noatime 0 0 /dev/fileserver/media /var/media reiserfs rw,noatime 0 0 |
Wenn Du es mit unserem Backup der Originaldatei, /etc/fstab_orig, vergleichst, wirst Du feststellen, dass wir folgende Zeilen hinzugefügt haben:
/dev/fileserver/share /var/share ext3 rw,noatime 0 0
/dev/fileserver/backup /var/backup xfs rw,noatime 0 0
/dev/fileserver/media /var/media reiserfs rw,noatime 0 0
Nun starten wir das System neu:
shutdown -r now
Nachdem das System gestartet ist, lass Folgendes erneut laufen.
df -h
Unsere Logical Volumes sollten immer noch in der Ausgabe zu sehen sein:
server1:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 19G 665M 17G 4% /
tmpfs 78M 0 78M 0% /lib/init/rw
udev 10M 88K 10M 1% /dev
tmpfs 78M 0 78M 0% /dev/shm
/dev/sda1 137M 17M 114M 13% /boot
/dev/mapper/fileserver-share
40G 177M 38G 1% /var/share
/dev/mapper/fileserver-backup
5.0G 144K 5.0G 1% /var/backup
/dev/mapper/fileserver-media
1.0G 33M 992M 4% /var/media
4 Ändere Die Größe Der Logical Volumes Und Ihrer Dateisysteme
In diesem Kapitel lernen wir, wie wir die Größe unseres Logical Volumes share, das ein ext3 Dateisystem hat, ändern können. (Wie man die Größe der Logical Volumes mit xfs und reiserfs Dateisystemen ändert, erkläre ich an späterer Stelle.)
Zunächst müssen wir es aushängen:
umount /var/share
share sollte in der Ausgabe nicht mehr aufgelistet sein
df -h
server1:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 19G 665M 17G 4% /
tmpfs 78M 0 78M 0% /lib/init/rw
udev 10M 88K 10M 1% /dev
tmpfs 78M 0 78M 0% /dev/shm
/dev/sda1 137M 17M 114M 13% /boot
/dev/mapper/fileserver-backup
5.0G 144K 5.0G 1% /var/backup
/dev/mapper/fileserver-media
1.0G 33M 992M 4% /var/media
Lass uns nun share von 40GB auf 50GB vergrößern:
lvextend -L50G /dev/fileserver/share
server1:~# lvextend -L50G /dev/fileserver/share
Extending logical volume share to 50.00 GB
Logical volume share successfully resized
Bis jetzt haben wir nur share vergrößert, aber nicht das ext3 Dateisystem auf share. Das führen wir jetzt durch:
e2fsck -f /dev/fileserver/share
server1:~# e2fsck -f /dev/fileserver/share
e2fsck 1.40-WIP (14-Nov-2006)
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/fileserver/share: 11/5242880 files (9.1% non-contiguous), 209588/10485760 blocks
Notiere Dir die Gesamtanzahl von Blocks (10485760), wir brauchen sie wenn wir share später verkleinern.
resize2fs /dev/fileserver/share
server1:~# resize2fs /dev/fileserver/share
resize2fs 1.40-WIP (14-Nov-2006)
Resizing the filesystem on /dev/fileserver/share to 13107200 (4k) blocks.
The filesystem on /dev/fileserver/share is now 13107200 blocks long.
Lass uns share einhängen:
mount /dev/fileserver/share /var/share
und in der Ausgabe
df -h
sollte share nun 50GB anstelle von 40 aufweisen:
server1:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 19G 665M 17G 4% /
tmpfs 78M 0 78M 0% /lib/init/rw
udev 10M 88K 10M 1% /dev
tmpfs 78M 0 78M 0% /dev/shm
/dev/sda1 137M 17M 114M 13% /boot
/dev/mapper/fileserver-backup
5.0G 144K 5.0G 1% /var/backup
/dev/mapper/fileserver-media
1.0G 33M 992M 4% /var/media
/dev/mapper/fileserver-share
50G 180M 47G 1% /var/share
Das Verkleinern eines Logical Volumes erfolgt in umgekehrter Reihenfolge: Zuerst müssen wir das Dateisystem verkleinern bevor wir die Größe des Logical Volumes verkleinern. Lass uns nun share erneut auf 40GB verkleinern:
umount /var/share
df -h
server1:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 19G 665M 17G 4% /
tmpfs 78M 0 78M 0% /lib/init/rw
udev 10M 88K 10M 1% /dev
tmpfs 78M 0 78M 0% /dev/shm
/dev/sda1 137M 17M 114M 13% /boot
/dev/mapper/fileserver-backup
5.0G 144K 5.0G 1% /var/backup
/dev/mapper/fileserver-media
1.0G 33M 992M 4% /var/media
e2fsck -f /dev/fileserver/share
server1:~# e2fsck -f /dev/fileserver/share
e2fsck 1.40-WIP (14-Nov-2006)
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/fileserver/share: 11/6553600 files (9.1% non-contiguous), 251733/13107200 blocks
Wenn wir die Größe eines ext3 Dateisystems ändern (anstatt des verfügbaren Speicherplatzes) nimmt resize2fs die Anzahl der Blocks als Argument (Du kannst die neue Größe auch in MB definieren, etc. Siehe
man resize2fs
um mehr zu erfahren). Von unserer vorherigen Vorgehensweise wissen wir, dass 40GB 10485760 Blocks entspricht, also lassen wir dies laufen
resize2fs /dev/fileserver/share 10485760
server1:~# resize2fs /dev/fileserver/share 10485760
resize2fs 1.40-WIP (14-Nov-2006)
Resizing the filesystem on /dev/fileserver/share to 10485760 (4k) blocks.
The filesystem on /dev/fileserver/share is now 10485760 blocks long.
Wir haben das Dateisystem verkleinert, nun müssen wir auch das Logical Volume verkleinern:
lvreduce -L40G /dev/fileserver/share
server1:~# lvreduce -L40G /dev/fileserver/share
WARNING: Reducing active logical volume to 40.00 GB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce share? [y/n]: <– y
Reducing logical volume share to 40.00 GB
Logical volume share successfully resized
Die Warnung, dass Daten eventuell zerstört sind, können wir ignorieren, da wir das Dateisystem vorher verkleinert haben.
Lass uns nun share wieder einhängen:
mount /dev/fileserver/share /var/share