LVM work!?。?/h1>

1、創建一個至少有兩個PV組成的大小為20G的名為testvg的VG;要求PE大小為16MB, 而后在卷組中創建大小為5G的邏輯卷testlv;掛載至/users目錄.


    (1)查看分區大小

[root@localhost ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  7.2G  0 rom  /mnt/media
sda      8:0    0  120G  0 disk 
├─sda1   8:1    0  200M  0 part /boot
├─sda2   8:2    0 48.8G  0 part /
├─sda3   8:3    0    2G  0 part [SWAP]
├─sda4   8:4    0    1K  0 part 
└─sda5   8:5    0  200M  0 part /testdir
sdc      8:32   0   20G  0 disk 
├─sdc1   8:33   0   10G  0 part 
└─sdc2   8:34   0   10G  0 part 
sdb      8:16   0   20G  0 disk 
├─sdb1   8:17   0   10G  0 part 
└─sdb2   8:18   0   10G  0 part

    (2)創建pv、vg、lv、掛載

[root@localhost ~]# pvcreate /dev/sd{b,c}1     //創建pv
Physical volume "/dev/sdb1" successfully created
Physical volume "/dev/sdc1" successfully created

[root@localhost ~]# vgcreate -s 16M testvg /dev/sd{b,c}1    //創建卷組
Volume group "testvg" successfully created

[root@localhost ~]# lvcreate -L 5G -n testlv testvg        //創建lv,并指定大小為5G
Logical volume "testlv" created.

[root@localhost ~]# mke2fs -t ext4 /dev/testvg/testlv    //格式化lv,(lv掛載之前必須要格式化才能使用)

[root@localhost ~]# mkdir /users        //創建掛載目錄

[root@localhost ~]# mount /dev/testvg/testlv /users/    //掛載lv

    (3)查看pv、vg、lv、掛載信息

[root@localhost ~]# pvs
  PV         VG     Fmt  Attr PSize  PFree 
  /dev/sdb1  testvg lvm2 a--u 10.00g  5.00g
  /dev/sdc1  testvg lvm2 a--u 10.00g 10.00g
[root@localhost ~]# vgs
  VG     #PV #LV #SN Attr   VSize  VFree 
  testvg   2   1   0 wz--n- 20.00g 15.00g
[root@localhost ~]# lvs
  LV     VG     Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  testlv testvg -wi-ao---- 5.00g       
                                             
[root@localhost ~]# mount 
/dev/mapper/testvg-testlv on /users type ext4 (rw)

 2、 新建用戶archlinux,要求其家目錄為/users/archlinux,而后su切換至archlinux用戶,復制/etc/pam.d目錄至自己的家目錄

    (1)創建用戶,并指定家目錄

[root@localhost ~]# useradd -d /users/archlinux archlinux
[root@localhost ~]# ls /users/
archlinux  lost+found

[root@localhost ~]# su - archlinux
[archlinux@localhost ~]$ cp -r /etc/pam.d/ .    //此時在家目錄
[archlinux@localhost ~]$ ls    
pam.d                   //文件已經復制過來

3、擴展testlv至7G,要求archlinux用戶的文件不能丟失

    (1)查看vg,lv信息,并進行擴展,查看文件大小是否變化

[root@localhost ~]# vgs
  VG     #PV #LV #SN Attr   VSize  VFree 
  testvg   2   1   0 wz--n- 20.00g 15.00g
  
[root@localhost ~]# lvs
  LV     VG     Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  testlv testvg -wi-ao---- 5.00g                    
                                
[root@localhost ~]# lvextend -L +2G /dev/testvg/testlv 
  Size of logical volume testvg/testlv changed from 5.00 GiB (320 extents) to 7.00 GiB (448 extents).
  Logical volume testlv successfully resized.
[root@localhost ~]# resize2fs /dev/testvg/testlv
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/testvg/testlv is mounted on /users; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/testvg/testlv to 1835008 (4k) blocks.
The filesystem on /dev/testvg/testlv is now 1835008 blocks long.

[root@localhost ~]# df -TH
........
/dev/mapper/testvg-testlv
                     ext4     7.3G   12M  6.9G   1% /users
                     
[root@localhost ~]# su - archlinux       //切換用戶
[archlinux@localhost ~]$ du -sh pam.d/    //計算archlinux用戶當前的pam.d目錄大小,為96k
96Kpam.d/
[archlinux@localhost ~]$ du -sh /etc/pam.d/      //計算/etc/pam.d目錄大小,為96k,并無變化
96K/etc/pam.d/

4、收縮testlv至3G,要求archlinux用戶的文件不能丟失

    收縮5步驟:

        (1)如已經掛載使用,則需要解掛載

        (2)強制檢測文件系統是否有問題

        (3)縮小文件系統大小

        (4)所有lv大小

        (5)掛載使用

[root@localhost ~]# umount /users

[root@localhost ~]# e2fsck -f /dev/testvg/testlv 

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/testvg/testlv: 45/458752 files (0.0% non-contiguous), 64476/1835008 blocks

[root@localhost ~]# resize2fs /dev/testvg/testlv 3G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/testvg/testlv to 786432 (4k) blocks.
The filesystem on /dev/testvg/testlv is now 786432 blocks long.
[root@localhost ~]# lvreduce -L 3G  /dev/testvg/testlv 
  WARNING: Reducing active logical volume to 3.00 GiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce testvg/testlv? [y/n]: y
  Size of logical volume testvg/testlv changed from 7.00 GiB (448 extents) to 3.00 GiB (192 extents).
  Logical volume testlv successfully resized.
  
[root@localhost ~]# mount /dev/testvg/testlv /users/

[root@localhost ~]# df -Th
Filesystem           Type     Size  Used Avail Use% Mounted on
/dev/sda2            ext4      48G  894M   45G   2% /
tmpfs                tmpfs    491M     0  491M   0% /dev/shm
/dev/sda1            ext4     190M   31M  150M  17% /boot
/dev/sda5            ext4     190M  1.6M  179M   1% /testdir
/dev/sr0             iso9660  7.3G  7.3G     0 100% /mnt/media
/dev/mapper/testvg-testlv
                     ext4     2.9G  7.7M  2.7G   1% /users

5、對testlv創建快照,并嘗試基于快照備份數據,驗正快照的功能

[root@localhost ~]# vgs
  VG     #PV #LV #SN Attr   VSize  VFree 
  testvg   2   1   0 wz--n- 20.00g 17.00g
[root@localhost ~]# lvs
  LV     VG     Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  testlv testvg -wi-ao---- 3.00g      
                                              
[root@localhost ~]# lvcreate -L 1G -s -n testsnapshot /dev/testvg/testlv 
  Logical volume "testsnapshot" created.
[root@localhost ~]# lvs
  LV           VG     Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  testlv       testvg owi-aos--- 3.00g                                                    
  testsnapshot testvg swi-a-s--- 1.00g      testlv 0.00  
                                 
[root@localhost ~]# su - archlinux 
[archlinux@localhost ~]$ cd pam.d/
[archlinux@localhost pam.d]$ ls
chfn         fingerprint-auth     other             remote     smartcard-auth     sshd        sudo-i
chsh         fingerprint-auth-ac  passwd            run_init   smartcard-auth-ac  ssh-keycat  su-l
config-util  login                password-auth     runuser    smtp               su          system-auth
crond        newrole              password-auth-ac  runuser-l  smtp.postfix       sudo        system-auth-ac
[archlinux@localhost pam.d]$ du -sh
96K.
[archlinux@localhost pam.d]$ rm -rf r*
[archlinux@localhost pam.d]$ du -sh
80K.
[archlinux@localhost pam.d]$ exit
logout
[root@localhost ~]# lvs
  LV           VG     Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  testlv       testvg owi-aos--- 3.00g                                                    
  testsnapshot testvg swi-a-s--- 1.00g      testlv 0.01

原創文章,作者:Lii,如若轉載,請注明出處:http://www.www58058.com/42553

(0)
LiiLii
上一篇 2016-09-01 08:49
下一篇 2016-09-01 08:49

相關推薦

  • Linux基礎——文件管理

    Linux基礎——文件管理 文件管理及常用命令詳解       Linux文件系統是以/為基本的倒置樹狀結構,我們來進一步學習下文件或者目錄的操作和管理命令:  目錄相關操作:cd、pwd、mkdir、rmdir 目錄及文件檢索:ls 復制、移動、刪除:cp、mv、rm…

    Linux干貨 2016-09-27
  • 學以致用

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp – copy files and directories 復制文件或目錄 使用格式: 單文件復制 cp [OPTION]… [-T] SOURCE DEST 如果DEST不存在,即創建文件并復制源文件數據流; 如果DEST存在,且為非目錄文件時,將覆蓋…

    Linux干貨 2016-10-13
  • 進程和計劃任務

    一、進程概念    內核的功用:進程管理、文件系統、網絡功能、內存管理、驅動程序、 安全功能等 v Process:  運行中的程序的一個副本(文件),是被載入內存的一個指令集合,在內存中運行,系統指定一個內存空間和PID編號;進程ID(Process ID ,PID )號碼被用來標記各個進程;存在生命周期 &nbsp…

    Linux干貨 2016-11-27
  • 用戶管理命令之NBA版

    用戶管理命令之NBA版 本文純屬扯淡,如有不嚴謹之處,還請海涵。 1 groupadd 作用:創建一個屬組 格式:groupadd [選項] 屬組名 選項: -:選項為空 創建新屬組 -g:指定組GID,默認是GID+1 實例 1.1 添加屬組team,指定組ID為1111      groupadd -g …

    Linux干貨 2017-03-27
  • 構建私有CA

    構建私有CA 我們采用openssl這個軟件來實現 所有首先我們來看下該軟件的配置文件 實現環境 centos 7.2 [root@redhat7 ~]# rpm -qc openssl  //可以看到該命令沒有任何輸出,我們可以思考該軟件包還存在其他的支包 [root@redhat7 ~…

    Linux干貨 2016-09-28
  • 一鍵獲取MySQL賬戶及相關的權限

    有時候,運維同學可能在做grant授權時候,給的用戶權限太高了,有風險。因此,我們接手服務器后有必要檢查一遍用戶權限。 #!/bin/bash# 一鍵獲取MySQL賬戶及相關的權限 user=’root’ password=’123456′ MYSQL_CMD=’/usr/local/mysql/b…

    Linux干貨 2017-05-07
欧美性久久久久