真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux沒有卷組命令,linux新建卷組

我裝的linux 系統(tǒng)中沒有make命令,沒有很多命令,比如init 、reboot、shutdown等等,怎么辦?能安裝rpm,

1、使用find命令查找/etc目錄下名字是inittb的文件,執(zhí)行find? /etc/? -name? ?inittab,-name為參數(shù),表示名字,執(zhí)行后如圖所示。

成都創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、臨淄網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場景定制商城系統(tǒng)網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為臨淄等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

2、在當(dāng)前目錄下,找到文件名是inittab的文件,首先進(jìn)入目錄,執(zhí)行find .? -name inittab,其中"." 表示當(dāng)前目錄。

3、查找名字是tmp的文件夾,執(zhí)行命令find? ?/etc -typd d? -name tmp ,其中/etc表示在etc目錄下搜索,-type d表示執(zhí)行指定為文件夾。

4、找到/tmp目錄下的.log文件,并將其刪除掉,執(zhí)行命令find /tmp? -type f? -name *.log? -exec rm -rf {} \,其中-type f表示執(zhí)行文件類型,-exec表示執(zhí)行命令。

5、查找/var/log目錄下30天以前修改的文件,執(zhí)行命令find /var/log -type f -mtime? +30, 如果是-30則表示30天以內(nèi),執(zhí)行結(jié)果如圖。

Linux拷貝文件的命令!

給你一個(gè)鏈接地址吧,你找的應(yīng)該是在這個(gè)頁面里的這句話:

# cp -avx /home/* /mnt/newhome

即:

解決方案的開始

在開始轉(zhuǎn)換之前,首先在硬盤驅(qū)動(dòng)器的結(jié)尾處對未使用的空間進(jìn)行分區(qū)。我使用 cfdisk 創(chuàng)建了一個(gè) 35 GB 的分區(qū) (/dev/hda5),然后將分區(qū)的分區(qū)類型設(shè)置成 "8E"(正規(guī) LVM 分區(qū)類型)。在這一更改后,我進(jìn)行了重新引導(dǎo)以強(qiáng)制重新讀取分區(qū)表。在重新引導(dǎo)后,我的分區(qū)表如下:

# sfdisk -l

Disk /dev/hda: 89355 cylinders, 16 heads, 63 sectors/track

Units = cylinders of 516096 bytes, blocks of 1024 bytes, counting from 0

Device Boot Start End #cyls #blocks Id System

/dev/hda1 * 0+ 247 248- 124960+ 83 Linux

/dev/hda2 248 743 496 249984 82 Linux swap

/dev/hda3 744 20119 19376 9765504 83 Linux

/dev/hda4 20120 89354 69235 34894440 5 Extended

/dev/hda5 20120+ 89354 69235- 34894408+ 8e Linux LVM

既然有了空的 35 GB 的分區(qū),我就準(zhǔn)備為 LVM 初始化它。以下是過程 -- 首先,我將 35 GB 初始化成 物理卷;然后,使用這個(gè)物理卷創(chuàng)建一個(gè) 卷組 ,最后,在卷組上分配一些范圍,創(chuàng)建將包含新文件系統(tǒng)并存放當(dāng)前 /home 中所有文件的 邏輯卷。

為開始這個(gè)過程,我使用 pvcreate 命令將 /dev/hda5 初始化成物理卷:

# pvcreate /dev/hda5

pvcreate -- physical volume "/dev/hda5" successfully created

pvcreate 在 /dev/hda5 上設(shè)置一個(gè)特殊的“記帳”區(qū)域,稱作 VGDA(“卷組描述符區(qū)域”)。LVM 使用該區(qū)域來記錄物理范圍是如何分配的,以及其它一些操作。

下一步是創(chuàng)建卷組并向該卷組添加 /dev/hda5。卷組將充當(dāng)范圍池(許多存儲(chǔ)塊)。創(chuàng)建卷組之后,創(chuàng)建所需數(shù)量的邏輯卷。我決定將卷組稱為 "main":

# vgcreate main /dev/hda5

vgcreate -- INFO: using default physical extent size 4 MB

vgcreate -- INFO: maximum logical volume size is 255.99 Gigabyte

vgcreate -- doing automatic backup of volume group "main"

vgcreate -- volume group "main" successfully created and activated

vgcreate 命令執(zhí)行幾個(gè)操作。除了創(chuàng)建 "main" 卷組以外,它還設(shè)置 /dev/hda5,使它使用 4 MB 的范圍,4 GB 是缺省范圍大小。這意味著在卷組上創(chuàng)建的所有邏輯卷都可以以 4 MB 為增量單位來進(jìn)行擴(kuò)充或縮減。

由于內(nèi)核限制的原因,范圍大小決定了邏輯卷的最大大小。您可以從上面的輸出中看出,4 MB 的范圍大小決定了邏輯卷大小限制為 256 GB,如果您向卷組添加幾個(gè)高容量驅(qū)動(dòng)器,這是很容易達(dá)到的邏輯卷組大小。如果每一個(gè)卷最后都大于 256 GB,我建議您在運(yùn)行 vgcreate 時(shí)指定更大一些的范圍大小。范圍的大小可以是從 8 KB 到 512 MB 之間的任何值,并且必須總是 2 的倍數(shù)。通過將范圍大小增加到 4 MB 以上,最大的物理卷大小將相應(yīng)地增加到最大為 1 Petabyte(盡管當(dāng)今現(xiàn)實(shí)世界中,x86 系統(tǒng)上的大小限制是 2 Terabytes)。例如,如果希望使用 32 MB 的范圍創(chuàng)建卷組,我會(huì)輸入:

# vgcreate -s 32M main /dev/hda5

32 MB 是個(gè)合適的范圍大小,因?yàn)?32 MB 的顆粒度仍然便于管理,并將引導(dǎo)的最大邏輯卷大小增加到 2 TB。創(chuàng)建卷組之后,可以通過輸入 "vgdisplay" 來查看其信息:

# vgdisplay

--- Volume group ---

VG Name main

VG Access read/write

VG Status available/resizable

VG # 0

MAX LV 256

Cur LV 0

Open LV 0

MAX LV Size 255.99 GB

Max PV 256

Cur PV 1

Act PV 1

VG Size 33.28 GB

PE Size 4 MB

Total PE 8519

Alloc PE / Size 0 / 0

Free PE / Size 8519 / 33.28 GB

VG UUID 2qC2H2-iA8s-qW6F-cwXx-JVIh-I6VC-VVCGmn

既然有了自己的卷組,我準(zhǔn)備創(chuàng)建邏輯卷。我決定在最初時(shí)將它的大小設(shè)置為 8 GB,并稱它作 "lv_home":

# lvcreate -L8G -nlv_home main

lvcreate -- doing automatic backup of "main"

lvcreate -- logical volume "/dev/main/lv_home" successfully created

然后,在邏輯卷上創(chuàng)建文件系統(tǒng):

# mkreiserfs /dev/main/lv_home

----------- MKREISERFSv2 -----------

Block size 4096 bytes

Block count 2097152

Used blocks 8275

Journal - 8192 blocks (18-8209), journal header is in block 8210

Bitmaps: 17, 32768, 65536, 98304, 131072, 163840,

196608, 229376, 262144, 294912, 327680, 360448,

393216, 425984, 458752, 491520, 524288, 557056,

589824, 622592, 655360, 688128, 720896, 753664,

786432, 819200, 851968, 884736, 917504, 950272,

983040, 1015808, 1048576, 1081344, 1114112,

1146880, 1179648, 1212416, 1245184, 1277952,

1310720, 1343488, 1376256, 1409024, 1441792,

1474560, 1507328, 1540096, 1572864, 1605632,

1638400, 1671168, 1703936, 1736704, 1769472,

1802240, 1835008, 1867776, 1900544, 1933312,

1966080, 1998848, 2031616, 2064384

Root block 8211

Hash function "r5"

ATTENTION: ALL DATA WILL BE LOST ON '/dev/main/lv_home'! (y/n)y

journal size 8192 (from 18)

Initializing journal - 0%....20%....40%....60%....80%....100%

Syncing..done.

既然創(chuàng)建了文件系統(tǒng),我就可以在 /mnt/newhome 上安裝它:

# mkdir /mnt/newhome

# mount /dev/main/lv_home /mnt/newhome

# df

Filesystem 1k-blocks Used Available Use% Mounted on

/dev/hda3 9765200 6989840 2775360 72% /

tmpfs 291388 0 291388 0% /dev/shm

/dev/main/lv_home 8388348 32840 8355508 1% /mnt/newhome

您可以從上面看出,我?guī)缀鯗?zhǔn)備復(fù)制 /home 中的所有數(shù)據(jù)。在開始之前,我把系統(tǒng)降低到運(yùn)行級別 1 以確保在復(fù)制 /home 中的文件時(shí),沒有用戶或進(jìn)程能夠訪問或修改它們:

# init 1

然后,開始復(fù)制文件:

# cp -avx /home/* /mnt/newhome

復(fù)制操作需要大約 10 分鐘的時(shí)間完成。然后,我將原始 /home 備份成 /home.old,這只是為在復(fù)制過程中有任何錯(cuò)誤而準(zhǔn)備的。創(chuàng)建一個(gè)新的安裝點(diǎn),然后在 /home 上重新安裝新 home:

# cd /

# mv home home.old

# mkdir home

# umount /mnt/newhome

# mount /dev/main/lv_home /home

然后,應(yīng)該設(shè)置服務(wù)器以使我的新 /home 分區(qū)可以在每次啟動(dòng)機(jī)器時(shí)使用。首先修改 /etc/fstab 以使它包括新的 /home 項(xiàng):

# /etc/fstab: static file system information.

#

# fs mountpoint type opts dump/pass

/dev/hda3 / reiserfs defaults 1 1

/dev/main/lv_home /home reiserfs defaults 2 2

/dev/hda2 none swap sw 0 0

/dev/hda1 /boot reiserfs noauto 0 0

/dev/cdrom /mnt/cdrom iso9660 noauto,ro 0 0

proc /proc proc defaults 0 0

none /dev/pts devpts mode=620 0 0

tmpfs /dev/shm tmpfs defaults 0 0

然后,我對初始化腳本進(jìn)行了一些小小改動(dòng)。我修改了 "checkroot" 啟動(dòng)腳本,使以下命令可以在根分區(qū)重新安裝讀/寫后立即運(yùn)行:

/sbin/vgscan

/sbin/vgchange -a y

接下來,我修改了在關(guān)機(jī)時(shí)運(yùn)行的文件系統(tǒng)卸裝腳本,使以下命令在卸裝了所有文件系統(tǒng) 后立即運(yùn)行:

/sbin/vgchange -a n

完成了這些步驟后,我重新引導(dǎo)了機(jī)器,讓我高興的是一切都工作正常。在接下去的一天左右的時(shí)間里完全沒有問題,隨后我刪除了 /home.old 以釋放根文件系統(tǒng)上的一些空間。太棒了!到 LVM 的轉(zhuǎn)換成功了。

如何在LINUX下使用LVM

LVM是Logical Volume Manager(邏輯卷管理器)的簡寫,它為主機(jī)提供了更高層次的磁盤存儲(chǔ)管理能力。LVM可以幫助系統(tǒng)管理員為應(yīng)用與用戶方便地分配存儲(chǔ)空間。在LVM管理下的邏輯卷可以按需改變大小或添加移除。另外,LVM可以為所管理的邏輯卷提供定制的命名標(biāo)識(shí)。因此,使用LVM主要是方便了對存儲(chǔ)系統(tǒng)的管理,增加了系統(tǒng)的擴(kuò)展性。

一、準(zhǔn)備lvm環(huán)境

1.硬盤的準(zhǔn)備

添加了一塊硬盤/dev/hdb。

準(zhǔn)備了三個(gè)分區(qū),方案如下:容量為100M,僅為了實(shí)驗(yàn)準(zhǔn)備。

/dev/hdb1

/dev/hdb2

/dev/hdb3

2.轉(zhuǎn)換分區(qū)類型為lvm卷

fdisk /dev/hdb

t轉(zhuǎn)換為lvm卷類型

Device Boot Start End Blocks Id System

/dev/hdb1 1 208 98248+ 8e Linux LVM

/dev/hdb2 209 416 98280 8e Linux LVM

/dev/hdb3 417 624 98280 8e Linux LVM

然后w保存并且

#partprobe /*使用磁盤分區(qū)生效*/

二、lvm創(chuàng)建過程

1.從硬盤驅(qū)動(dòng)器分區(qū)中創(chuàng)建物理卷(physical volumes-PV)。

2.從物理卷中創(chuàng)建卷組(volume groups-VG)

3.從卷組中創(chuàng)建邏輯卷(logical volumes-LV),并分派邏輯卷掛載點(diǎn),其中只有邏輯卷才可以寫數(shù)據(jù)。

lvm的最大的特點(diǎn)就是可以動(dòng)態(tài)的調(diào)整分區(qū)的大小,并且可以隨著分區(qū)容量的增長而增加磁盤空間的容量。

LVM配置與創(chuàng)建

三、LVM的物理卷PV

1.相關(guān)命令

pvcreate 創(chuàng)建PV

pvscan 掃描PV

pvdisplay 顯示PV

pvremove 刪除PV

partprobe

2.創(chuàng)建物理卷

如果以上容量不夠,可以再添加其它分區(qū)到物理卷中。

[root@redhat ~]# pvcreate /dev/hdb1 /dev/hdb2

Physical volume “/dev/hdb1″ successfully created

Physical volume “/dev/hdb2″ successfully created

[root@redhat ~]# pvscan

PV /dev/hdb1 lvm2 [95.95 MB]

PV /dev/hdb2 lvm2 [95.98 MB]

Total: 2 [191.92 MB] / in use: 0 [0 ] / in no VG: 2 [191.92 MB]

[root@redhat ~]# pvdisplay

— NEW Physical volume —

PV Name /dev/hdb1

VG Name

PV Size 95.95 MB

Allocatable NO

PE Size (KByte) 0

Total PE 0

Free PE 0

Allocated PE 0

PV UUID 2Ni0Tx-oeSy-zGUP-t7KG-Fh22-0BUi-iyPhhQ

— NEW Physical volume —

PV Name /dev/hdb2

VG Name

PV Size 95.98 MB

Allocatable NO

PE Size (KByte) 0

Total PE 0

Free PE 0

Allocated PE 0

PV UUID 2XLXfY-V3L2-Mtsl-79U4-ovuJ-YaQf-YV9qHs

四、創(chuàng)建LVM的卷組VG

1.相關(guān)命令

vgcreate 創(chuàng)建VG

vgscan 掃描VG

vgdispaly

vgextend

vgreduce

vgchange

vgremove

2.創(chuàng)建邏輯卷VG

[root@redhat ~]# vgcreate vg0 /dev/hdb1 /dev/hdb2

Volume group “vg0″ successfully created

[root@redhat ~]# vgscan

Reading all physical volumes. This may take a while…

Found volume group “vg0″ using metadata type lvm2

[root@redhat ~]# vgdisplay

LINUX常用命令3、su、df、du、磁盤分區(qū)

一、 su 、sudo 、限制root遠(yuǎn)程登陸

su- username

帶用戶環(huán)境切換用戶

su- -c"touch /tmp/123.txt"user1

以user1用戶創(chuàng)建/tmp/123.txt 文件

沒有家目錄的用戶可以用模板新建家目錄

mkdir-p /home/user4chownuser4:user4? /home/user4cp /etc/skel/.bash*/home/user4chown-R user4:user4 /home/user4/

普通用戶臨時(shí)授權(quán)root用戶權(quán)限去執(zhí)行一條命令

visudo

可以查看sudo配置文件

在命令前加入NOPASSWD: 執(zhí)行sudo時(shí)就不需要再輸入用戶的密碼

例子:

User_Alias USER=chen1,chen2

Cmnd_Alias SU=/usr/bin/su

USER ALL=(ALL) NOPASSWD:SU

禁止root用戶遠(yuǎn)程登陸

vi/etc/ssh/sshd_configPermitRootLoginno//修改此處systemctl restart sshd.service

二、df命令、du命令、磁盤分區(qū)

df-h

自動(dòng)適應(yīng)文件大小的單位,查看磁盤使用情況

free

可以查看swap的使用情況

df-i

查看各個(gè)分區(qū)inode的使用情況

有的時(shí)候明明磁盤的內(nèi)存還有剩余,但是卻無法寫入新文件,這時(shí)候就可能是inode用完了。

du-sh

自動(dòng)適應(yīng)單位顯示文件或文件夾大小

du不加后綴的時(shí)候和du -l 一樣,顯示文件夾下文件的大小

du-lh

自動(dòng)適應(yīng)單位顯示文件夾下文件的大小

fdisk-l

列出linux 的磁盤信息

fdisk/dev/sdb

m幫助,直接按p是查看分區(qū)情況 n新建分區(qū) p建立主分區(qū) e擴(kuò)展分區(qū) d刪除分區(qū),起始扇區(qū)默認(rèn)2048就可以啦,last 扇區(qū) +2G 就是將分區(qū)一的大小設(shè)置為2G;輸錯(cuò)命令用ctrl +u清除

BLOCKS是分區(qū)的大小,system是分區(qū)的類型,主分區(qū)和邏輯分區(qū)都是linux,擴(kuò)展分區(qū)是extended

主分區(qū)的分區(qū)號可以為空,而邏輯分區(qū)的分區(qū)號必須連續(xù);邏輯分區(qū)以sdb5開始,分區(qū)之后輸入w可以保存分區(qū),q則不保存操作直接退出

三、磁盤格式化、磁盤掛載、手動(dòng)增加swap空間

1.磁盤格式化

cat/etc/filesystems? //查看系統(tǒng)支持的文件格式,centos7默認(rèn)xfs,centos6默認(rèn)ext4

mount//查看系統(tǒng)的文件格式

mke2fs

-t指定文件格式 ext4 、ext3

-b指定塊大小,文件都比較大時(shí),塊可以大一點(diǎn),比如視頻、高清圖片

比較小時(shí)可以將塊設(shè)置小一點(diǎn),加快讀取速度

-m指定給root用戶預(yù)留的空間大小,1就是1%,0.1就是0.1%

-i指定多少字節(jié)占一個(gè)inode號

如果不指定-t文件格式,則默認(rèn)為ext2格式

mkfs.ext4/dev/sdb1? //將分區(qū)格式化為ext4格式mkfs.xfs? -f/dev/sdb1? //將分區(qū)格式化為xfs格式\

分區(qū)只有掛載了才可以使用mount查詢到,沒有掛載的分區(qū)可以用

blkid/dev/sdb1

mkfs.ext4 == mke2fs -t ext4

mkfs.ext4與mke2fs支持的選項(xiàng)相同

xfs格式只能用mkfs.xfs 創(chuàng)建

2.磁盤掛載

mount/dev/sdb? /mnt///將 /dev/sdb掛載到mnt下 mount UUID="2d8e7749-f2f7-4de5-b1b9-b6bf758d2f37"/mnt///這里的uuid是用blkid /dev/sdb 查到的

卸載磁盤

umount/dev/sdb

如果當(dāng)前目錄在/dev/sdb下則需要退出當(dāng)前分區(qū)

也可以直接用

umount-l/dev/sdb? umount-l/mnt/

mount

man mount 可以查看mount的具體用法

/defaults 可以查找默認(rèn)用法

找到下面這一行

Use default options: rw, suid, dev, exec, auto, nouser, and async.

rw讀寫權(quán)限

suid可以設(shè)置suid權(quán)限

dev,系統(tǒng)默認(rèn)不用管

exec可執(zhí)行

auto自動(dòng)掛載

nouser是否允許普通用戶掛載,默認(rèn)不允許

async 不實(shí)時(shí)同步內(nèi)存的東西到磁盤(減輕磁盤壓力)

mount -o remount,rw/dev/sdb? //重新掛載

vi/etc/fstab? //系統(tǒng)開機(jī)都掛載哪些文件

四、手動(dòng)增加虛擬內(nèi)存

ddif=/dev/zeroof=/tmp/newdisk? bs=1M count=100//創(chuàng)建虛擬磁盤

if指定源,一般寫/dev/zero,它是unix系統(tǒng)特有的一個(gè)文件,可以源源不斷的提供'0',of指定目標(biāo)文件,bs指定塊大小,count指定塊的數(shù)量

mkswap -f /tmp/newdisk//格式化為swapswapon? /tmp/newdisk//將新建的swap加載free-m//顯示內(nèi)存使用大小,-m指定單位為mswapoff? /tmp/newdisk//將虛擬內(nèi)存卸載

五、lvm

lvm創(chuàng)建過程

創(chuàng)建物理卷創(chuàng)建卷組創(chuàng)建邏輯分區(qū)格式化為需要的格式掛載分區(qū)

具體介紹日志

fdisk /dev/sdb

t 選擇分區(qū),8e //將分區(qū)轉(zhuǎn)換為lvm格式 ,w退出

創(chuàng)建物理卷

1.

yumprovides"/*/pvcreate"

通配查詢pvcreate命令的軟件包名

yum install -y lvm2//安裝lvm

partprobe //生成分區(qū)文件

2.

pvcreate/dev/sdb1pvcreate? /dev/sdb2pvcreate? /dev/sdb3

pvdisplay查看已經(jīng)創(chuàng)建的物理卷

創(chuàng)建卷組

1.pvs

可以直觀的查看物理卷有哪些

2.創(chuàng)建卷組,將sdb1和sdb2設(shè)置為一個(gè)卷組

vgcreatevg1 /dev/sdb1 /dev/sdb2

vgdisplay可以查看卷組信息

創(chuàng)建邏輯分區(qū)

lvcreate-L100M-n lv1 vg1

從vg1卷組中創(chuàng)建名字為lv1大小100M的邏輯分區(qū)

-L指定分區(qū)大小

-n指定分區(qū)名字

將分區(qū)格式化為ext4格式

mkfs.ext4 /dev/vg1/lv1

然后將文件掛載

mount/dev/vg1/lv1 /mnt

ext4擴(kuò)容邏輯分區(qū)

umount/mnt///卸載分區(qū)lvresize -L200M/dev/vg1/lv1? //擴(kuò)展分區(qū)e2fsck -f/dev/vg1/lv1? //檢查磁盤是否有錯(cuò)誤resize2fs/dev/vg1/lv1? //更新邏輯分區(qū)大小,不然重新掛載會(huì)無法識(shí)別擴(kuò)容的大小

ext4縮容

umount/mnt///卸載分區(qū)e2fsck -f/dev/vg1/lv1? ? //檢查磁盤是否有錯(cuò)誤resize2fs/dev/vg1/lv1 100M? //將分區(qū)縮小為100Mlvresize -L100M/dev/vg1/lv1? ? //重新設(shè)置卷大小

xfs擴(kuò)容

1.擴(kuò)容與縮容不會(huì)更改分區(qū)中的文件,xfs只可以擴(kuò)容不可以縮容;

2.如果磁盤已經(jīng)掛載要先umount 卸載

然后格式化為xfs.

mkfs.xfs-f/dev/vg1/lv1

XFS的擴(kuò)容不需要先卸載,直接擴(kuò)容即可

lvresize -L200M /dev/vg1/lv1? xfs_growfs/dev/vg1/lv1? //更新分區(qū)大小

關(guān)于擴(kuò)容縮容的總結(jié)

ext4可以擴(kuò)容和縮容而且需要卸載后操作,xfs只可以擴(kuò)容,不需要卸載

ext4擴(kuò)容

lvresize -L 100M /dev/vg1/lv1e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1

縮容

e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1 100Mlvresize -L 100M /dev/vg1/lv1

xfs擴(kuò)容

lvresize-L100M/dev/vg1/lv1xfs_growfs /dev/vg1/lv1

在分區(qū)空間用完之后就需要擴(kuò)容卷組,然后再擴(kuò)容

卷組擴(kuò)容

vgextendvg1 /dev/sdb3

將 /dev/sdb3加入到vg1卷組

linux里lvm 用來干什么

對于Linux用戶而言,在安裝一臺(tái)Linux機(jī)器的時(shí)候,遇到的問題之一就是給各分區(qū)估計(jì)和分派足夠的硬盤空間。無論對一個(gè)正在為服務(wù)器尋找空間的系統(tǒng)管理員,還是一個(gè)磁盤即將用盡的普通用戶來說,這都是一個(gè)非常常見的問題。解決的方法通常是使用符號鏈接,或者一些調(diào)整分區(qū)大小的工具(比如parted)。但是,這只是一個(gè)暫時(shí)性的解決辦法,不久,我們又會(huì)面臨同樣的問題。

如果你是一個(gè)站點(diǎn)的系統(tǒng)管理員,管理著數(shù)量眾多的、連接在Internet之上的服務(wù)器,那么你每關(guān)機(jī)一分鐘,都會(huì)給公司帶來很大損失。此外,使用這種方法,在修改了分區(qū)表之后,每一次都得重新啟動(dòng)系統(tǒng)。LVM(邏輯卷管理程序)可以幫助我們解決這些問題。

LVM簡介

Linux LVM可以使管理工作更加輕松。相對于硬盤和分區(qū),LVM是從更高的層次來看待存儲(chǔ)空間的。在使用LVM之前,先來看一些將要使用到的相關(guān)概念。

物理卷

物理卷是指硬盤分區(qū)或者從邏輯上看起來和硬盤分區(qū)類似的設(shè)備(比如RAID設(shè)備)。

邏輯卷

一個(gè)或者多個(gè)物理卷組成一個(gè)邏輯卷。對于LVM而言,邏輯卷類似于非LVM系統(tǒng)中的硬盤分區(qū)。邏輯卷可以包含一個(gè)文件系統(tǒng)(比如/home或者/usr)。

卷組

一個(gè)或者多個(gè)邏輯卷組成一個(gè)卷組。對于LVM而言,卷組類似于非LVM系統(tǒng)中的物理硬盤。卷組把多個(gè)邏輯卷組合在一起,形成一個(gè)可管理的單元。

document.body.clientWidth-450) {this.height=(document.body.clientWidth-450)*this.height/this.width;this.width=document.body.clientWidth-450}" border="0"

LVM工作方式

下面來看一看LVM到底是怎樣工作的。每一個(gè)物理卷都被分成幾個(gè)基本單元,即所謂的PE(Physical Extents)。PE的大小是可變的,但是必須和其所屬卷組的物理卷相同。在每一個(gè)物理卷里,每一個(gè)PE都有一個(gè)惟一的編號。PE是一個(gè)物理存儲(chǔ)里可以被LVM尋址的最小單元。

每一個(gè)邏輯卷也被分成一些可被尋址的基本單位,即所謂的LE(Logical Extents)。在同一個(gè)卷組中,LE的大小和PE是相同的,很顯然,LE的大小對于一個(gè)卷組中的所有邏輯卷來說都是相同的。

在一個(gè)物理卷中,每一個(gè)PE都有一個(gè)惟一的編號,但是對于邏輯卷這并不一定是必需的。這是因?yàn)楫?dāng)這些PE ID號不能使用時(shí),邏輯卷可以由一些物理卷組成。因此,LE ID號是用于識(shí)別LE以及與之相關(guān)的特定PE的。正如前面所提到的,LE和PE之間是一一對應(yīng)的。每一次存儲(chǔ)區(qū)域被尋址訪問或者LE的ID被使用,都會(huì)把數(shù)據(jù)寫在物理存儲(chǔ)設(shè)備之上。

你可能會(huì)覺得奇怪,有關(guān)邏輯卷和邏輯卷組的所有元數(shù)據(jù)都存到哪兒去了。類似的在非LVM系統(tǒng)中,有關(guān)分區(qū)的數(shù)據(jù)是存儲(chǔ)在分區(qū)表中,而分區(qū)表被存儲(chǔ)在了每一個(gè)物理卷的起始位置。VGDA(卷組描述符區(qū)域)功能就好象是LVM的分區(qū)表,它存儲(chǔ)在每一個(gè)物理卷的起始處。

VGDA由以下信息組成:

·一個(gè)PV描述符

·一個(gè)VG描述符

·LV描述符

·一些PE描述符

當(dāng)系統(tǒng)啟動(dòng)LV時(shí),VG被激活,并且VGDA被加載至內(nèi)存。VGDA幫助識(shí)別LV的實(shí)際存儲(chǔ)位置。當(dāng)系統(tǒng)想要訪問存儲(chǔ)設(shè)備時(shí),由VGDA建立起來的映射機(jī)制就用于訪問實(shí)際的物理位置來執(zhí)行I/O操作。

開始工作

下面具體看一看如何使用LVM。

第一步:配置內(nèi)核。在安裝LVM之前,內(nèi)核之中應(yīng)該有LVM模塊,可以使用以下的步驟來完成:

#cd /usr/src/linux

#make menuconfig

選擇Multi-device Support (RAID and LVM)子菜單,選中以下兩個(gè)選項(xiàng):

[*] Multiple devices driver support (RAID and LVM)

* Logical volume manager (LVM) Support.

復(fù)制代碼

注:如果在安裝Linux系統(tǒng)時(shí)已經(jīng)安裝了LVM相關(guān)軟件包,上面幾步操作可以省略掉,直接到第二步.

第二步:檢查驅(qū)動(dòng)器上空閑硬盤空間的總量。這可以通過以下命令來未完成:

# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/hda1 3.1G 2.7G 398M 87% /

/dev/hda2 4.0G 3.2G 806M 80% /home

/dev/hda5 2.1G 1.0G 1.1G 48% /var

第三步:在硬盤上創(chuàng)建一個(gè)LVM分區(qū)。使用fdisk或者其它的分區(qū)工具來創(chuàng)建一個(gè)LVM分區(qū)。Linux LVM的分區(qū)類型為8e。

# fdisk /dev/hda

press p (to print the partition table) and n (to create a new partition)

第四步:創(chuàng)建一個(gè)物理卷。下述命令將在分區(qū)的起始處創(chuàng)建一個(gè)卷組描述符:

# pvcreate /dev/hda6

pvcreate -- -physical volume "/dev/hda6" successfully created

# pvcreate /dev/hda7

pvcreate- -- physical volume "/dev/hda7" successfully created

第五步:創(chuàng)建一個(gè)卷組。通過下面的方法創(chuàng)建一個(gè)新的卷組,并且添加兩個(gè)物理卷:

# vgcreate test_lvm /dev/hda6 /dev/hda7

vgcreate- -- INFO: using default physical extent size 4 MB

vgcreate- -- INFO: maximum logical volume size is 255.99 Gigabyte

vgcreate- -- doing automatic backup of volume group "test_lvm"

vgcreate- -- volume group "test_lvm" successfully created and activated

上述命令將創(chuàng)建一個(gè)名為test_lvm,包含有/dev/hda6和/dev/hda7兩個(gè)物理卷的卷組。使用下面命令來激活卷組:

# vgchange -ay test_lvm

使用“vgdisplay”命令來查看所建立卷組的細(xì)節(jié)信息。

# vgdisplay

--- Volume group ---

VG Name test_lvm

VG Access read/write

VG Status available/resizable

VG # 0

MAX LV 256

Cur LV 1

Open LV 0

MAX LV Size 255.99 GB

Max PV 256

Cur PV 2

Act PV 2

VG Size 3.91 GB

PE Size 4 MB

Total PE 1000

Alloc PE / Size 256 / 1 GB

Free PE / Size 744 / 2.91 GB

VG UUID T34zIt-HDPs-uo6r-cBDT-UjEq-EEPB-GF435E

第六步:創(chuàng)建一個(gè)邏輯卷。使用lvcreate命令在卷組中創(chuàng)建一個(gè)邏輯卷:

# lvcreate -L2G -nlogvol1 test_lvm

第七步:創(chuàng)建文件系統(tǒng)。在該邏輯卷上選擇使用reiserfs日志文件系統(tǒng):

# mkreiserfs /dev/test_lvm/logvol1

使用mount命令來加載新創(chuàng)建的文件系統(tǒng)。

# mount -t reiserfs /dev/test_lvm/logvol1 /mnt/lv1

第八步:在/etc/fstab和/etc/lilo.conf中添加一個(gè)入口。在/etc/fstab中加入以下入口,在啟動(dòng)時(shí)加載文件系統(tǒng):

/dev/test_lvm/logvol1 /mnt/lv1 reiserfs defaults 1 1

如果沒有覆蓋原來的內(nèi)核,那么拷貝一份重新編譯后的內(nèi)核,并且在啟動(dòng)時(shí)選擇是否使用LVM。下面是LILO文件的內(nèi)容:

image = /boot/lvm_kernel_image

label = linux-lvm

root = /dev/hda1

initrd = /boot/init_image

ramdisk = 8192

添加以上內(nèi)容后,使用以下命令重新加載LILO:

#/sbin/lilo

第九步:修改邏輯卷的大小。可以使用lvextend命令方便地修改邏輯卷的大小,增加邏輯卷大小的方法如下:

# lvextend -L 1G /dev/test_lvm/logvol1

lvextend -- extending logical volume "/dev/test_lvm/logvol1" to 3GB

lvextend -- doing automatic backup of volume group "test_lvm"

lvextend -- logical volume "/dev/test_lvm/logvol1" successfully extended

類似的,減小邏輯卷大小的方法如下:

# lvreduce -L-1G /dev/test_lvm/lv1

lvreduce -- -Warning: reducing active logical volume to 2GB

lvreduce- -- This may destroy your data (filesystem etc.)

lvreduce -- -do you really want to reduce "/dev/test_lvm/lv1"? [y/n]: y

lvreduce- -- doing automatic backup of volume group "test_lvm"

lvreduce- -- logical volume "/dev/test_lvm/lv1" successfully reduced

復(fù)制代碼

總結(jié)

從上面的討論可以看到,LVM具有很好的可擴(kuò)展性,并且使用起來很直觀。一旦卷組建立起來以后,根據(jù)需求調(diào)整每一個(gè)邏輯卷的大小也非常容易。

LVM操作的相關(guān)命令:

fdisk -l :查看系統(tǒng)中都認(rèn)到了那些物理硬盤

pvdisplay:查看系統(tǒng)中已經(jīng)創(chuàng)建好的物理卷

pvcreate:創(chuàng)建一個(gè)新的物理卷

pvremove:刪除一個(gè)物理卷(也就是從物理卷中刪除一個(gè)LVM標(biāo)簽)

vgdisplay:查看系統(tǒng)中的卷組

vgcreate:創(chuàng)建一個(gè)新的卷組

vgreduce:從卷組中刪除一個(gè)物理卷(也就是縮小卷組)

vgremove:刪除一個(gè)卷組

lvdisplay:查看系統(tǒng)中已經(jīng)創(chuàng)建好的邏輯卷

lvcreate:創(chuàng)建一個(gè)新的邏輯卷

lvreduce:縮小邏輯卷(也就是從一個(gè)邏輯卷中減少一些LE)

lvremove:從系統(tǒng)中刪除一個(gè)邏輯卷

mkfs:基于邏輯卷創(chuàng)建一個(gè)相應(yīng)類型的文件系統(tǒng)

mkdir -p $mount_piont:創(chuàng)建一個(gè)掛載目錄

創(chuàng)建好的文件系統(tǒng)位于:

/dev/$create_vg_name/$lv_name

mount /dev/$create_vg_name/$lv_name $mount_piont:掛載文件系統(tǒng)

vgscan:讀取系統(tǒng)中創(chuàng)建的所有卷組

vgchange -a y :激活所有卷組 (開機(jī)執(zhí)行,redhat可在/etc/rc.d/rc.sysinit系統(tǒng)啟動(dòng)初始化腳本里可以找到)

vgchange -a n :關(guān)閉所有卷組(提示:必須在umount所有的文件系統(tǒng)后,才能成功執(zhí)行

裸設(shè)備使用:

1.先lvreate

2. raw /dev/raw/raw0 /dev/mapper/vgname-lvname

3.修改 /etc/sysconfig/rawdevices,添加:

/dev/raw/raw0 /dev/mapper/vgname-lvname

4.執(zhí)行命令; service rawdevices restart,使得/etc/sysconfig/rawdevices文件中的裸設(shè)備配置生效

5.執(zhí)行/sbin/schkconfig rawdevices on 使得系統(tǒng)重啟后,裸設(shè)備能自動(dòng)加載

6.修改裸設(shè)備的屬主,使得相應(yīng)權(quán)限的用戶對裸設(shè)備有讀寫權(quán)限

chown -R owner:group /dev/raw/raw0

7.將修改裸設(shè)備屬主修改命令加入到系統(tǒng)啟動(dòng)執(zhí)行腳本/etc/rc.local中,使得系統(tǒng)啟動(dòng)后裸設(shè)備的屬主保持不變.


文章題目:linux沒有卷組命令,linux新建卷組
網(wǎng)頁鏈接:http://weahome.cn/article/phsejs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部