pvck

pvck命令用来检测物理卷的LVM元数据的一致性。默认情况下,物理卷中的前4个扇区保存着LVM卷标,可以使用--labelsector选项指定其他的位置(例如:数据恢复时)。

语法

pvck(选项)(参数)

选项

-d:调试模式;
-v:详细信息模式;
--labelsector:指定LVE卷标所在扇区。

参数

物理卷:指定要检查的物理卷对应的设备文件。

实例

使用pvck命令检查物理卷/dev/sdb1。在命令行中输入下面的命令:

pvck -v /dev/sdb1    #检查物理卷元数据
Scanning /dev/sdb1  
Found label on /dev/sdb1, sector 1, type=LVM2 001  
Found text metadata area: offset=4096, size=192512 
Found LVM2 metadata record at offset=125952,  
size=70656, offset2=0 size2=0

pvchange

pvchange命令允许管理员改变物理卷的分配许可。如果物理卷出现故障,可以使用pvchange命令禁止分配物理卷上的PE。

语法

pvchange(选项)(参数)

选项

-u:生成新的UUID;
-x:是否允许分配PE。

参数

物理卷:指定要修改属性的物理卷所对应的设备文件。

实例

使用pvchange命令禁止分配指定物理卷上的PE。在命令行中输入下面的命令:

pvchange -x n /dev/sdb1     #禁止分配"/dev/sdb1"上的PE

输出信息如下:

Physical volume "/dev/sdb1" changed  
1 physical volume changed / 0 physical volumes not changed

pvs

pvs命令用于输出格式化的物理卷信息报表。使用pvs命令仅能得到物理卷的概要信息,如果要得到更加详细的信息可以使用pvdisplay命令。

语法

pvs(选项)(参数)

选项

--noheadings:不输出标题头;
--nosuffix:不输出空间大小的单位。

参数

物理卷:要显示报表的物理卷列表。

实例

使用pvs命令显示系统中所有物理卷的信息报表。在命令行中输入下面的命令:

pvs                    #输出物理卷信息报表 

输出信息如下:

PV         VG     fmt  Attr PSize   PFree  
/dev/sdb1  vg1000 lvm2 --   100.00M 100.00M  
/dev/sdb2         lvm2 --   101.98M 101.98M

lvreduce

lvreduce命令用于减少LVM逻辑卷占用的空间大小。使用lvreduce命令收缩逻辑卷的空间大小有可能会删除逻辑卷上已有的数据,所以在操作前必须进行确认。

语法

lvreduce(选项)(参数)

选项

-L:指定逻辑卷的大小,单位为“kKmMgGtT”字节;
-l:指定逻辑卷的大小(LE数)。

参数

逻辑卷:指定要操作的逻辑卷对应的设备文件。

实例

使用lvreduce命令减少指定的逻辑卷的空间大小。在命令行中输入下面的命令:

[root@localhost ~]# lvreduce -L -50M /dev/vg1000/lvol0     #将逻辑卷的空间大小减少50M

输出信息如下:

......省略部分输出内容......  
Do you really want to reduce lvol0? [y/n]: y  #确认操作  
  Reducing logical volume lvol0 to 252.00 MB  
  Logical volume lvol0 successfully resized

lvremove

lvremove命令用于删除指定LVM逻辑卷。如果逻辑卷已经使用mount命令加载,则不能使用lvremove命令删除。必须使用umount命令卸载后,逻辑卷方可被删除。

语法

lvremove(选项)(参数)

选项

-f:强制删除。

参数

逻辑卷:指定要删除的逻辑卷。

实例

使用lvremove命令删除指定的逻辑卷。在命令行中输入下面的命令:

[root@localhost ~]# lvremove /dev/vg1000/lvol0    #删除逻辑卷"lvol0"

输出信息如下:

Do you really want to remove active logical 
volume "lvol0"? [y/n]: y    #确认删除
  Logical volume "lvol0" successfully removed

lvresize

lvresize命令用于调整LVM逻辑卷的空间大小,可以增大空间和缩小空间。使用lvresize命令调整逻辑卷空间大小和缩小空间时需要谨慎,因为它有可能导致数据丢失。

语法

lvresize(选项)(参数)

选项

-L:指定逻辑卷的大小,单位为“kKmMgGtT”字节;
-l:指定逻辑卷的大小(LE数)。

参数

逻辑卷:指定要删除的逻辑卷。

实例

使用lvresize命令调整最大的逻辑卷大小。在命令行中输入下面的命令:

[root@localhost ~]# lvresize -L +200M /dev/vg1000/lvol0     #将逻辑卷空间增加200M

输出信息如下:

Extending logical volume lvol0 to 280.00 MB
Logical volume lvol0 successfully resized

vgremove

vgremove命令用于用户删除LVM卷组。当要删除的卷组上已经创建了逻辑卷时,vgremove命令需要进行确认删除,防止误删除数据。

语法

vgremove(选项)(参数)

选项

-f:强制删除。

参数

卷组:指定要删除的卷组名称。

实例

使用vgremove命令删除LVM卷组"vg1000"。在命令行中输入下面的命令:

[root@localhost ~]# vgremove vg1000    #删除卷组"vg1000"
Volume group "vg1000" successfully removed

lsblk

lsblk命令用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息。块设备有硬盘,闪存盘,cd-ROM等等。lsblk命令包含在util-linux-ng包中,现在该包改名为util-linux。这个包带了几个其它工具,如dmesg。要安装lsblk,请在此处下载util-linux包。Fedora用户可以通过命令sudo yum install util-linux-ng来安装该包。

选项

-a, --all            显示所有设备。
-b, --bytes          以bytes方式显示设备大小。
-d, --nodeps         不显示 slaves 或 holders。
-D, --discard        print discard capabilities。
-e, --exclude <list> 排除设备 (default: RAM disks)。
-f, --fs             显示文件系统信息。
-h, --help           显示帮助信息。
-i, --ascii          use ascii characters only。
-m, --perms          显示权限信息。
-l, --list           使用列表格式显示。
-n, --noheadings     不显示标题。
-o, --output <list>  输出列。
-P, --pairs          使用key="value"格式显示。
-r, --raw            使用原始格式显示。
-t, --topology       显示拓扑结构信息。

实例

lsblk命令默认情况下将以树状列出所有块设备。打开终端,并输入以下命令:

lsblk

NAME   MAJ:MIN rm   SIZE RO type mountpoint
sda      8:0    0 232.9G  0 disk 
├─sda1   8:1    0  46.6G  0 part /
├─sda2   8:2    0     1K  0 part 
├─sda5   8:5    0   190M  0 part /boot
├─sda6   8:6    0   3.7G  0 part [SWAP]
├─sda7   8:7    0  93.1G  0 part /data
└─sda8   8:8    0  89.2G  0 part /personal
sr0     11:0    1  1024M  0 rom

7个栏目名称如下:

  1. NAME:这是块设备名。
  2. MAJ:MIN:本栏显示主要和次要设备号。
  3. RM:本栏显示设备是否可移动设备。注意,在本例中设备sdb和sr0的RM值等于1,这说明他们是可移动设备。
  4. SIZE:本栏列出设备的容量大小信息。例如298.1G表明该设备大小为298.1GB,而1K表明该设备大小为1KB。
  5. RO:该项表明设备是否为只读。在本案例中,所有设备的RO值为0,表明他们不是只读的。
  6. TYPE:本栏显示块设备是否是磁盘或磁盘上的一个分区。在本例中,sda和sdb是磁盘,而sr0是只读存储(rom)。
  7. MOUNTPOINT:本栏指出设备挂载的挂载点。

默认选项不会列出所有空设备。要查看这些空设备,请使用以下命令:

lsblk -a

lsblk命令也可以用于列出一个特定设备的拥有关系,同时也可以列出组和模式。可以通过以下命令来获取这些信息:

lsblk -m

该命令也可以只获取指定设备的信息。这可以通过在提供给lsblk命令的选项后指定设备名来实现。例如,你可能对了解以字节显示你的磁盘驱动器大小比较感兴趣,那么你可以通过运行以下命令来实现:

lsblk -b /dev/sda

等价于

lsblk --bytes /dev/sda

你也可以组合几个选项来获取指定的输出。例如,你也许想要以列表格式列出设备,而不是默认的树状格式。你可能也对移除不同栏目名称的标题感兴趣。可以将两个不同的选项组合,以获得期望的输出,命令如下:

lsblk -nl

要获取SCSI设备的列表,你只能使用-S选项。该选项是大写字母S,不能和-s选项混淆,该选项是用来以颠倒的顺序打印依赖的。

lsblk -S

lsblk列出SCSI设备,而-s是逆序选项(将设备和分区的组织关系逆转过来显示),其将给出如下输出。输入命令:

lsblk -s

du

du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。

语法

du [选项][文件]

选项

-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-k或--kilobytes 以KB(1024bytes)为单位输出。
-m或--megabytes 以MB为单位输出。
-s或--summarize 仅显示总计,只列出最后加总的值。
-h或--human-readable 以K,M,G为单位,提高信息的可读性。
-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。
-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。
--exclude=<目录或文件> 略过指定的目录或文件。
-D或--dereference-args 显示指定符号链接的源文件大小。
-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。
-l或--count-links 重复计算硬件链接的文件。

实例

显示目录或者文件所占空间:

[root@localhost test]# du
608 ./test6
308 ./test4
4 ./scf/lib
4 ./scf/service/deploy/product
4 ./scf/service/deploy/info
12 ./scf/service/deploy
16 ./scf/service
4 ./scf/doc
4 ./scf/bin
32 ./scf
8 ./test3
1288 .

只显示当前目录下面的子目录的目录大小和当前目录的总的大小,最下面的1288为当前目录的总大小

显示指定文件所占空间:

[root@localhost test]# du log2012.log
300 log2012.log

查看指定目录的所占空间:

[root@localhost test]# du scf
4 scf/lib
4 scf/service/deploy/product
4 scf/service/deploy/info
12 scf/service/deploy
16 scf/service
4 scf/doc
4 scf/bin
32 scf

显示多个文件所占空间:

[root@localhost test]# du log30.tar.gz log31.tar.gz
4 log30.tar.gz
4 log31.tar.gz

只显示总和的大小:

[root@localhost test]# du -s
1288 .

[root@localhost test]# du -s scf
32 scf

[root@localhost test]# cd ..
[root@localhost soft]# du -s test
1288 test

blkid

在Linux下可以使用blkid命令对查询设备上所采用文件系统类型进行查询。blkid主要用来对系统的块设备(包括交换分区)所使用的文件系统类型、LABEL、UUID等信息进行查询。要使用这个命令必须安装e2fsprogs软件包。

语法

blkid -L | -U
blkid [-c ] [-ghlLv] [-o] [-s ][-t ] [-w ] [ ...]
blkid -p [-s ] [-O ] [-S ][-o] ...
blkid -i [-s ] [-o] ...

选项

-c <file>   指定cache文件(default: /etc/blkid.tab, /dev/null = none)
-d          don't encode non-printing characters
-h          显示帮助信息
-g          garbage collect the blkid cache
-o <format> 指定输出格式
-k          list all known filesystems/RAIDs and exit
-s <tag>    显示指定信息,默认显示所有信息
-t <token>  find device with a specific token (NAME=value pair)
-l          look up only first device with token specified by -t
-L <label>  convert LABEL to device name
-U <uuid>   convert UUID to device name
-v          显示版本信息
-w <file>   write cache to different file (/dev/null = no write)
<dev>       specify device(s) to probe (default: all devices)
Low-level probing options:
-p          low-level superblocks probing (bypass cache)
-i          gather information about I/O limits
-S <size>   overwrite device size
-O <offset> probe at the given offset
-u <list>   filter by "usage" (e.g. -u filesystem,raid)
-n <list>   filter by filesystem type (e.g. -n vfat,ext3)

实例

1、列出当前系统中所有已挂载文件系统的类型:

sudo blkid

2、显示指定设备 UUID:

sudo blkid -s UUID /dev/sda5

3、显示所有设备 UUID:

sudo blkid -s UUID

4、显示指定设备 LABEL:

sudo blkid -s LABEL /dev/sda5

5、显示所有设备 LABEL:

sudo blkid -s LABEL

6、显示所有设备文件系统:

sudo blkid -s TYPE

7、显示所有设备:

sudo blkid -o device

8、以列表方式查看详细信息:

sudo blkid -o list