设为首页 收藏本站
查看: 1248|回复: 0

[经验分享] Linux分区管理

[复制链接]

尚未签到

发表于 2019-2-17 13:17:17 | 显示全部楼层 |阅读模式
之前介绍磁盘存储 这次来实现如何管理磁盘、怎么来分区、创建文件系统等

管理分区命令
  1、lsblk 列出当前所有挂载设备

[root@centos6 ~]#lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  3.7G  0 rom  
sdb      8:16   0   20G  0 disk
sda      8:0    0  200G  0 disk
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0 48.8G  0 part /
├─sda3   8:3    0 29.3G  0 part /data
├─sda4   8:4    0    1K  0 part
└─sda5   8:5    0    3G  0 part [SWAP]
sdc      8:32   0   20G  0 disk
  2、fdisk 创建mbr分区,也支持gpt分区,不过还在测试阶段,gpt分区有专门的分区命令 gdisk 用法和fdisk一样

  fdisk -l [-u] [device....]   查看分区
fdisk /dev/sdb 管理分区  
子命令(在用fdisk /dev/sdb进行分区时用到的选项)
1、p ----------分区列表  
3、m----------获取帮助
2、t  ----------更改分区类型  
3、n  ---------创建新分区  
4、d ----------删除分区  
5、v ----------校验分区  
6、u ----------转换单位  
7、w ----------保存并退出  
8、q ----------不保存并退出


[root@centos6 ~]#fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x769c63d5.
........
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
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): n
Command action
e   extended
p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-2610, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): +1G
Command (m for help): p
Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
.......
Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         132     1060258+  83  Linux

  3、parted 的操作都是实时生效的,小心使用  

  用法:parted [ 选项 ].....[ 设备 [ 命令 [参数]...]...]


# 要对当前设备/dev/sdb 做gpt格式分区
#parted /dev/sdb mklabel gpt
Warning: The existing disk label on /dev/sdb will be destroyed and all data
on this disk will be lost. Do you want to continue?
Yes/No? yes                                                               
Information: You may need to update /etc/fstab.  
# 查看当前/dev/sdb信息
[root@centos6 ~]#parted /dev/sdb print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number  Start  End  Size  File system  Name  Flags
# 直接对/dev/sdb 分主分区 立马生效
[root@centos6 ~]#parted /dev/sdb mkpart primary 1 200   
# 删除/dev/sdb 下的第2个分区
[root@centos6 ~]#parted /dev/sdb rm 2
# 列出分区信息
[root@centos6 ~]#parted -l
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number  Start   End     Size    Type      File system     Flags
1      1049kB  1075MB  1074MB  primary   ext4            boot
2      1075MB  53.5GB  52.4GB  primary   ext4
3      53.5GB  85.0GB  31.5GB  primary   ext4
4      85.0GB  215GB   130GB   extended
5      85.0GB  88.2GB  3228MB  logical   linux-swap(v1)
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
..........

  4、分区创建好之后,需要同步分区表,用到的命令有partx、partprobe

  1、partx 用于CentOS6 系统


[root@centos6 ~]#partx -a /dev/sba
[root@centos6 ~]#kpartx -a -f /dev/sda
# 删除其中某一个分区
[root@centos6 ~]#lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  200G  0 disk
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0 48.8G  0 part /
├─sda3   8:3    0 29.3G  0 part /data
├─sda4   8:4    0    1K  0 part
├─sda5   8:5    0    3G  0 part [SWAP]
├─sda6   8:6    0    1G  0 part
└─sda7   8:7    0    1G  0 part
sdb      8:16   0   20G  0 disk
sdc      8:32   0   20G  0 disk
sr0     11:0    1  3.7G  0 rom  
[root@centos6 ~]#partx -d --nr 7 /dev/sda
[root@centos6 ~]#lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  200G  0 disk
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0 48.8G  0 part /
├─sda3   8:3    0 29.3G  0 part /data
├─sda4   8:4    0    1K  0 part
├─sda5   8:5    0    3G  0 part [SWAP]
└─sda6   8:6    0    1G  0 part
sdb      8:16   0   20G  0 disk
sdc      8:32   0   20G  0 disk
sr0     11:0    1  3.7G  0 rom  
  2、partprobe centos5、7系统使用


Command (m for help): p
Disk /dev/sda: 214.7 GB, 214748364800 bytes, 419430400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000bcc63
Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200   176179199    87040000   8e  Linux LVM
/dev/sda3       176179200   178276351     1048576    5  Extended
/dev/sda5       176181248   177205247      512000   83  Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
#直接使用partprobe命令
[root@centos7 ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0  200G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   83G  0 part
├─centos-root 253:0    0   50G  0 lvm  /
├─centos-swap 253:1    0    3G  0 lvm  [SWAP]
└─centos-data 253:2    0   30G  0 lvm  /data
sr0              11:0    1  8.8G  0 rom  
[root@centos7 ~]# partprobe
Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.
[root@centos7 ~]# lsblk     
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0  200G  0 disk
├─sda1            8:1    0    1G  0 part /boot
├─sda2            8:2    0   83G  0 part
│ ├─centos-root 253:0    0   50G  0 lvm  /
│ ├─centos-swap 253:1    0    3G  0 lvm  [SWAP]
│ └─centos-data 253:2    0   30G  0 lvm  /data
├─sda3            8:3    0  512B  0 part
└─sda5            8:5    0  500M  0 part
sr0              11:0    1  8.8G  0 rom  

文件系统

   文件系统是操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件结构称为文件管理系统,简称文件系统  
 从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,安全控制,日志,压缩,加密等
 支持的文件系统:/lib/modules/uname–r/kernel/fs

[root@centos7 ~]# ls /lib/modules/`uname -r`/kernel/fs
binfmt_misc.ko.xz  dlm      gfs2           nfs_common  udf
btrfs              exofs    isofs          nfsd        xfs
cachefiles         ext4     jbd2           nls
ceph               fat      lockd          overlayfs
cifs               fscache  mbcache.ko.xz  pstore
cramfs             fuse     nfs            squashfs
  各种文件系统:
https://en.wikipedia.org/wiki/Comparison_of_file_systems

  文件系统分类

  1、linux文件系统  
  1.1、ext2(Extended file system) :适用于那些分区容量不是太大,更新也不频繁的情况,例如/boot 分区。
  1.2、ext3:是ext2 的改进版本,其支持日志功能,能够帮助系统从非正常关机导致的异常中恢复。它通常被用作通用的文件系统
  1.3、ext4:是ext 文件系统的最新版。提供了很多新的特性,包括纳秒级时间戳、创建和使用巨型文件(16TB)、最大1EB的文件系统,以及速度的提升
  1.4、xfs:SGI,支持最大8EB的文件系统
  1.5、btrfs(Oracle), reiserfs, jfs(AIX), swap  
2、光盘:ISO9660  
3、Windows: FAT32,exFAT,NTFS  
4、Unix: FFS(fast), UFS(unix), JFS2  
5、网络文件系统:NFS, CIFS  
6、集群文件系统:GFS2, OCFS2(oracle)  
7、分布式文件系统:fastdfs,ceph, moosefs, mogilefs, glusterfs, Lustre  
8、RAW:未经处理或者未经格式化产生的文件系统

  根据其是否支持"journal"功能:  
  日志型文件系统: ext3, ext4, xfs, ...  
      非日志型文件系统: ext2, vfat
  文件系统的组成部分:
  内核中的模块:ext4, xfs, vfat
  用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat
linux的虚拟文件系统:VFS  
查前支持的文件系统:cat /proc/filesystems

[root@centos7 ~]# cat /proc/filesystems
nodev   sysfs
nodev   rootfs
nodev   ramfs
nodev   bdev
nodev   proc
nodev   cgroup
nodev   cpuset
nodev   tmpfs
nodev   devtmpfs
nodev   debugfs
nodev   securityfs
nodev   sockfs
nodev   dax
nodev   pipefs
nodev   anon_inodefs
nodev   configfs
nodev   devpts
nodev   hugetlbfs
nodev   autofs
nodev   pstore
nodev   mqueue
nodev   selinuxfs
xfs
nodev   rpc_pipefs
VFS


文件系统选择


创建文件系统

  mkfs 命令
  mkfs.FS_TYPE/dev/DEVICE  
    ext4
    xfs
    btrfs
    vfat
    -L 'LABEL' 添加卷标


#格式化成ext4文件系统
[root@centos6 ~]#mkfs.ext4 /dev/sda6
#格式化成vfat文件系统
[root@centos6 ~]#mkfs.vfat /dev/sda6
#指定文件系统后加卷标
[root@centos6 ~]#mkfs -t ext4 -L '/mnt/sda6' /dev/sda6
mke2fs 1.41.12 (17-May-2010)
Filesystem label=/mnt/sda6
OS type: Linux
# 查看卷标及文件系统类型
[root@centos6 ~]#blkid
/dev/sda2: UUID="9d14df54-a9ce-4c41-bdbe-dc9d851d11d1" TYPE="ext4"
/dev/sda1: UUID="eb942a01-ecc7-40f4-ac87-8a1dbb07841e" TYPE="ext4"
/dev/sda3: UUID="e49f600c-7f88-4e84-aba2-bb85296647ad" TYPE="ext4"
/dev/sda5: UUID="b92b7eda-51dc-4e22-a0fc-09f72a542158" TYPE="swap"
/dev/sda6: LABEL="/mnt/sda6" UUID="201198ba-54ec-47ae-8b1f-bd0a2afa550f" TYPE="ext4"
...........
  mke2fs:  ext系列文件系统专用管理工具


选项:
-t {ext2|ext3|ext4}
-b {1024|2048|4096}
-L 'LABEL'
-j: 相当于-t ext3
mkfs.ext3 = mkfs-t ext3 = mke2fs -j = mke2fs -t ext3
-i#: 为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大小
-N #:指定分区中创建多少个inode
-I 一个inode记录占用的磁盘空间大小,128---4096
-m #: 默认5%,为管理人员预留空间占总空间的百分比
-O FEATURE[,...]:启用指定特性
-O ^FEATURE:关闭指定特性
mke2fs  /dev/sda6  默认使用ext2文件系统
[root@centos6 ~]#mke2fs /dev/sda6
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65952 inodes, 263292 blocks
13164 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=272629760
9 block groups
32768 blocks per group, 32768 fragments per group
7328 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
[root@centos6 ~]#blkid
/dev/sda2: UUID="9d14df54-a9ce-4c41-bdbe-dc9d851d11d1" TYPE="ext4"
/dev/sda1: UUID="eb942a01-ecc7-40f4-ac87-8a1dbb07841e" TYPE="ext4"
/dev/sda3: UUID="e49f600c-7f88-4e84-aba2-bb85296647ad" TYPE="ext4"
/dev/sda5: UUID="b92b7eda-51dc-4e22-a0fc-09f72a542158" TYPE="swap"
/dev/sda6: UUID="8ca19e66-2024-4e30-ab12-6e07e2782793" TYPE="ext2"
文件系统标签

   指向设备的另一种方法  
 与设备无关

  blkid:块设备属性信息查看  
  blkid[OPTION]... [DEVICE]  
    -U UUID: 根据指定的UUID来查找对应的设备

[root@centos6 ~]#blkid -U 8ca19e66-2024-4e30-ab12-6e07e2782793
/dev/sda6
      -L LABEL:根据指定的LABEL来查找对应的设备

[root@centos6 ~]#blkid -L /mnt/sda6
/dev/sda6
  findfs:查找分区
  findfs[options] LABEL=

#根据卷标来查找
[root@centos6 ~]#findfs LABEL=/mnt/sda6
/dev/sda6
    findfs[options] UUID=

#根据UUID查找
[root@centos6 ~]#findfs UUID=b92b7eda-51dc-4e22-a0fc-09f72a542158
/dev/sda5
  tune2fs
  tune2fs:重新设定ext系列文件系统可调整参数的值
    -l:查看指定文件系统超级块信息;super block
    -L 'LABEL':修改卷标
    -m #:修预留给管理员的空间百分比
    -j: 将ext2升级为ext3
    -O: 文件系统属性启用或禁用,–O ^has_journal
    -o: 调整文件系统的默认挂载选项,–o ^acl
    -U UUID: 修改UUID号




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-673599-1-1.html 上篇帖子: Linux 第22天 自习 Linux 任务计划 下篇帖子: 为何要学习 Linux?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表