linux磁盘分区管理

来源:互联网 发布:网络的安全机制有哪些 编辑:程序博客网 时间:2024/05/16 01:11

Linux磁盘分区管理

磁盘管理


Linux磁盘管理好坏管理直接关系到整个系统的性能问题。
Linux磁盘管理常用四个命令为df、du和fdisk,free,blkid。
• df:列出文件系统的整体磁盘使用量
• du:检查磁盘空间使用量
• fdisk:用于磁盘分区
•free:可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。
• blkid:查看磁盘uuid,type


命令介绍

df

df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。语法:    df [-ahikHTm] [目录或文件名]选项与参数:•   -a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;•   -k :以 KBytes 的容量显示各文件系统;•   -m :以 MBytes 的容量显示各文件系统;•   -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;•   -H :以 M=1000K 取代 M=1024K 的进位方式;•   -T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;•   -i :不用硬盘容量,而以 inode 的数量来显示1.用于显示磁盘分区上的可使用的磁盘空间    df  -ah 2.统计目录(或文件)所占磁盘空间的大小。du –sh  file/directory


fdisk

磁盘分区命令1.查看当前系统识别了几块硬盘:fdisk -l 2.fdisk  /dev/设备 新建分区[root@localhost ~]# fdisk  /dev/sdb        划分/dev/sdb Welcome to fdisk (util-linux 2.23.2).Changes will remain in memory only, until you decide to write them.Be careful before using the write command.Command (m for help): m         获取帮助Command action   a   toggle a bootable flag   b   edit bsd disklabel           设定设备标签   c   toggle the dos compatibility flag   d   delete a partition           删除设备   g   create a new empty GPT partition table   G   create an IRIX (SGI) partition table   l   list known partition types       列出设备类型   m   print this menu   n   add a new partition          新建   o   create a new empty DOS partition table   p   print the partition table        显示分区表   q   quit without saving changes      退出分区工具   s   create a new empty Sun disklabel   t   change a partition's system id       改变分区功能标签   u   change display/entry units   v   verify the partition table   w   write table to disk and exit     保存更改的分区表   x   extra functionality (experts only)Command (m for help):nPartition type:p            指定划分设备的分区类型   p   primary (0 primary, 0 extended, 4 free)   e   extendedPartition number (1-4, default 1):1 指定使用的分区表号First sector (1-530, default 530):enter 分区起始快,选择默认Using default value 530Command (m for help): p         显示分区表Disk /dev/sdb: 4362 MB, 4362985472 bytesUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk label type: dosDisk identifier: 0x7c2200a8   Device Boot      Start         End      Blocks   Id  System/dev/vdb1           1            530    4257193   83  Linux     ##被划分出来的分区Command (m for help):  wq                       ##保存更改方式并退出[root@diskctrl ~]# partprobe           同步分区表[root@diskctrl ~]# cat /proc/partitions    查看系统能识别的分区major minor  #blocks  name8        0   10533536 sda8        1   102400  sda18        2   10429440 sda28       16   4260728 sdb8       17   4257193 sdb1

free
free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区

-b:以Byte为单位显示内存使用情况;-k:以KB为单位显示内存使用情况;-m:以MB为单位显示内存使用情况;-o:不显示缓冲区调节列;-s<间隔秒数>:持续观察内存使用状况;-t:显示内存总和列;-V:显示版本信息。

blkid

blkid: 查询或查看磁盘设备的相关属性    UUID    TYPE    LABEL

dd

linux创建一定大小文件命令if=数据来源of=数据存储目标bs=1count=2seek=#: 创建数据文件时,跳过的空间大小;

dd if=/dev/zero of=/var/swapfile bs=1M count=24

磁盘修复及基本信息查看命令


e2label: 用于查看或定义卷标    e2label 设备文件 卷标: 设定卷标tune2fs: 调整文件系统的相关属性    -j: 不损害原有数据,将ext2升级为ext3;    -L LABEL: 设定或修改卷标;     -m : 调整预留百分比;    -r : 指定预留块数;    -o: 设定默认挂载选项;acl    -c :指定挂载次数达到#次之后进行自检,0或-1表关闭此功能;    -i : 每挂载使用多少天后进行自检;0或-1表示关闭此功能;    -l: 显示超级块中的信息;dumpe2fs: 显示文件属性信息    -h: 只显示超级块中的信息fsck: 检查并修复Linux文件系统    -t FSTYPE: 指定文件系统类型    -a: 自动修复e2fsck: 专用于修复ext2/ext3文件系统    -f: 强制检查;    -p: 自动修复;

分区管理
swap分区管理:
fdisk命令中,调整分区类型为82;

创建交换分区:
mkswap /dev/sdb1

swap分区的管理


swapon -s       查看系统中的swap分区建立swap分区mkswap  /dev/sdb1   把/dev/vdb1格式化成swap格式swapon -a /dev/sdb1激活编辑vim /etc/fstab        开机自动激活/dev/sdb1   swap    swap    defautls    0 0

关闭swap分区,首先删除/etc/fstab中的swap自动激活条目swapoff /dev/sdb1    关闭激活的swap分区

回环设备loopback, 使用软件来模拟实现硬件

分区加密


[root@localhost~]cryptsetup    luksFormat /dev/sdb1WARNING!This will overwrite data on /dev/sdb1 irrevocably.Are you sure? (Type uppercase yes): YES         确定加密Enter passphrase:                   密码大于8位,并且不能太简单Verify passphrase:              确认密码[root@localhost~]# cryptsetup open /dev/sdb1  file 解密Enter passphrase for /dev/sdb1: [root@localhost~]# mkfs.xfs  /dev/mapper/file      用管理文件格式化设备[root@localhost~]# mount /dev/mapper/file  /mnt/   使用设备[root@localhost~]#umount   /mnt/     卸载设备 [root@localhost mnt]# cryptsetup close file        关闭设备加密层自动挂载加密设备[root@localhost~]# vim /etc/crypttab           设定开机解密解密后名称   设备  密码文件[root@localhost~]# vim /etc/fstab      开机自动挂载加密设备/dev/mapper/file    /mnt    xfs defaults    0 0[root@localhost~]# vim /root/passwd            系统自动读取密码记录文件解密密码[root@localhost~]# cryptsetup luksAddKey /dev/sdb1  /root/passwd       ##把密码记录文件与设备关联Enter any passphrase:                   设备解密密码

LVM逻辑卷


1.lvm名词lvm 逻辑卷,可以让设备自由伸缩的一个设备管理软件pv  物理卷vg  物理卷组pe  物理拓展,lvm最小的存储单元lvm 逻辑卷,时最终我们使用的可以伸缩的设备2.lvm的制作首先划分lvm所用到的设备,这些设备的功能id必须时linux LVM


1)lvm建立pvcreate /dev/sdb1      把物理分区做成物理卷pvs|pvdisplay           查看物理卷vgcreate vg0 /dev/sdb1      用制作好的/dev/sdb1这个物理卷制作一个物理卷组vg0vgs|vgdisplay           查看物理卷组lvcreate -L 200M -n lv0 vg0  在vg0这个组中建立出lv0设备 -L 指定设备大小 –n 指定设备名字lvs|lvdisplay           对逻辑卷设备进行查看

3.lvm设备的扩大###############针对xfs文件系统######################xfs文件系统只能扩大不能缩减1)lvm扩大lvextend —L 500M /dev/vg0/lv0       扩大lvm设备到500Mxfs_growfs  /dev/vg0/lv0        扩大xfs文件系统到设备大小2)vg扩大pvcreate /dev/vdb2          在pv中增加一块设备/dev/vdb2vgextend vg0 /dev/vdb2          ##把新建立的/dev/vdb2添加到vg0中 

##############针对ext文件系统####################ext文件系统可以扩大也可以缩减1)lvm扩大lvextend —L 2G /dev/vg0/lv0         扩大lvm设备到2Gresize2fs /dev/vg0/lv0              设定文件系统大小和设备同步2)vg扩大     pvcreate /dev/vdb3                      在pv中增加一块设备/dev/vdb3     vgextend vg0 /dev/vdb3                  把新建立的/dev/vdb2添加到vg0中      3)lvm缩减umount /dev/vg0/lv0             卸载设备,因为文件系统缩减不支持在线操作e2fsck -f /dev/vg0/lv0              测文件系统,确定文件系统中已有数据大小防止过度缩减resize2fs  /dev/vg0/lv0  1G         把文件系统缩减到1Glvreduce  -L 1G /dev/vg0/lv0            设备缩减到1G4)vg缩减在vg缩减时只能缩减没有被占用的设备pvmove  设备1 设备2             设备1上的所有数据移动到设备2上vgreduce    vg0 /dev/vdb1       把vg0中的/dev/vdb1删除pvremove    /dev/vdb1           把/dev/vdb1上的lvm管理信息删除

lvm快照lvcreate -L 20M -n lv0-backup -s /dev/vg0/lv0       给/dev/vg0/lv0建立快照,-L 指定快照大小,-n指定快照名字 -s指定快照模板设备mount /dev/vg0/lv0-backup   /userdate当快照设备里的数据被更改,如果想还原,删除快照设备,在重新建立快照即可lvm删除lvremove---->vgremove----->pvremove

磁盘配额


1.磁盘配额时限制用户向设备中写入数据的大小,或者个数2.此这定针对与设备的,3.做法mount -o usrquota,grpquota /dev/sdb1  /pub  激活配额功能参数quotaon -ugv /pub               开启配额edquota -u li                   设定lee的配额repquota -a                 root可以执行,查看用户配额信息quota                       配额限制用户查看自己配额信息命令4.开机自动激活配额vim /etc/fstab/dev/sdb1   /pub        xfs defaults,usrquota,grpquota  0 05.关闭配额删除vim /etc/fstab中的配额参数quotaoff -ugv 设备

raid 磁盘阵列


建立3个分区,并设定3个分区的功能标签位raid
mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}

-C  建立-a  文件不存在建立文件-l  raid级别-n  设备个数-x  闲置设备个数cat /proc/mdstat    设备信息mdadm -D /dev/md0   设备配置信息mdadm /dev/md0  -f /dev/vdb1    损坏设备1mdadm /dev/md0 -r /dev/vdb1     移除设备1mdadm /dev/md0 -a /dev/vdb1 复设备1mdadm -S /dev/md0       停止设备

分区格式化文件类型


mkfs: make file system    -t FSTYPE mkfs -t ext2 = mkfs.ext2mkfs -t ext3 = mkfs.ext3专门管理ext系列文件:mke2fs    -j: 创建ext3类型文件系统    -b BLOCK_SIZE: 指定块大小,默认为4096;可用取值为1024、2048或4096;    -L LABEL:指定分区卷标;    -m : 指定预留给超级用户的块数百分比-i : 用于指定为多少字节的空间创建一个inode,默认为8192;这里给出的数值应该为块大小的2^n倍;    -N : 指定inode个数;    -F: 强制创建文件系统;    -E: 用户指定额外文件系统属性; 

分区的挂载


挂载:将新的文件系统关联至当前根文件系统
卸载:将某文件系统与当前根文件系统的关联关系预以移除;

mount:挂载mount 设备 挂载点设备:    设备文件:/dev/sda5    卷标:LABEL=“”    UUID: UUID=“”挂载点:目录    要求:        1、此目录没有被其它进程使用;        2、目录得事先存在;        3、目录中的原有的文件将会暂时隐藏;可以挂载iso镜像;目录;以及磁盘文件


文件系统的配置文件/etc/fstab,OS在初始时,会自动挂载此文件中定义的每个文件系统要挂载的设备  挂载点     文件系统类型      挂载选项        转储频率(每多少天做一次完全备份)       文件系统检测次序(只有根可以为1)       /dev/sr0        /mnt/yum    iso9660     defaults        0 0mount -a:挂载/etc/fstab文件中定义的所有文件系统


mount: 显示当前系统已经挂载的设备及挂载点mount [options] [-o options] DEVICE MOUNT_POINT    -a: 表示挂载/etc/fstab文件中定义的所有文件系统    -n: 默认情况下,mount命令每挂载一个设备,都会把挂载的设备信息保存至/etc/mtab文件;使用—n选项意味着挂载设备时,不把信息写入此文件;    -t FSTYPE: 指定正在挂载设备上的文件系统的类型;不使用此选项时,mount会调用blkid命令获取对应文件系统的类型;    -r: 只读挂载,挂载光盘时常用此选项    -w: 读写挂载    -o: 指定额外的挂载选项,也即指定文件系统启用的属性;        remount: 重新挂载当前文件系统        ro: 挂载为只读        rw: 读写挂载

挂载完成后,要通过挂载点访问对应文件系统上的文件;

umount: 卸载某文件系统    umount 设备    umount 挂载点  卸载注意事项:    挂载的设备没有进程使用;fuser: 验正进程正在使用的文件或套接字文件    -v: 查看某文件上正在运行的进程    -k:kill杀掉此进程    -m:关于此进程的信息

fuser -km MOUNT_POINT:终止正在访问此挂载点的所有进程


原创粉丝点击