1、如何查看系统磁盘分区
lsblk ---查看树状结构分区表
如果想要查看分区的文件系统类型,可以加上 -f 参数
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 59G 0 part
│ └─centos-root 253:0 0 140G 0 lvm /
└─sda3 8:3 0 140G 0 part
└─centos-root 253:0 0 140G 0 lvm /
sr0 11:0 1 1024M 0 rom
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
fd0
sda
├─sda1 xfs e2f55491-7ebc-49f0-aa44-33d5c96927c3 /boot
├─sda2 LVM2_member hF2Taf-LKer-gLk2-9f3c-kDTS-5iaF-2MVgKC
│ └─centos-root xfs df554de6-70f3-4c0a-96c9-2304ae0ea8a3 /
└─sda3 LVM2_member j4nPCD-a3VF-VRC5-0QRm-gorE-92jB-bOLX8c
└─centos-root xfs df554de6-70f3-4c0a-96c9-2304ae0ea8a3 /
sr0
[root@localhost ~]#
fdisk -l ---查看详细的分区表
这里打印的信息比较全面,我这里只有一块盘,加入有多个盘在使用这个命令查看的话,打印的信息会非常多,对刚刚接触linux的小伙伴其实很不友好,建议使用lsblk简洁明了。
[root@localhost ~]# fdisk -l
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: 0x0000715f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 125829119 61864960 8e Linux LVM
/dev/sda3 125829120 419430399 146800640 83 Linux
Disk /dev/mapper/centos-root: 150.3 GB, 150319661056 bytes, 293593088 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
df -h ---查看文件系统的使用情况
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 3.9G 81M 3.8G 3% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/mapper/centos-root 140G 64G 77G 46% /
/dev/sda1 1014M 150M 865M 15% /boot
tmpfs 783M 0 783M 0% /run/user/0
[root@localhost ~]#
2、分区工具
(1)fdisk (支持2T一下磁盘分区,2T以上需要用parted工具)
#fdisk /dev/sdb
进入fdisk交互菜单
m ---显示帮助
n ---创建新的分区
p ---打印分区表(fdisk -l 同)
d ---删除分区
t ---修改分区文件系统类型编号
l ---列示所有文件系统类型及编号
w ---保存退出
q ---不保存退出
最简单的就是 进入后使用n创建新分区,一路回车都使用默认,当然也可以根据实际需求配置分区大小。我这里将21G都分到了/dev/sdb1下。
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 59G 0 part
│ └─centos-root 253:0 0 140G 0 lvm /
└─sda3 8:3 0 140G 0 part
└─centos-root 253:0 0 140G 0 lvm /
sdb 8:16 0 21G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]#
[root@localhost ~]# fdisk /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.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x5ecc1203.
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): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-44040191, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-44040191, default 44040191):
Using default value 44040191
Partition 1 of type Linux and of size 21 GiB is set
Command (m for help): p
Disk /dev/sdb: 22.5 GB, 22548578304 bytes, 44040192 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: 0x5ecc1203
Device Boot Start End Blocks Id System
/dev/sdb1 2048 44040191 22019072 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 59G 0 part
│ └─centos-root 253:0 0 140G 0 lvm /
└─sda3 8:3 0 140G 0 part
└─centos-root 253:0 0 140G 0 lvm /
sdb 8:16 0 21G 0 disk
└─sdb1 8:17 0 21G 0 part
sr0 11:0 1 1024M 0 rom
[root@localhost ~]#
(2)加载分区表
# reboot
或者
# partprobe ---动态加载分区表
(3)制作文件系统
# mkfs -t ext4 /dev/sdb1
或者
# mkfs.ext4 /dev/sdb1
这个要等待一会。
[root@localhost ~]# mkfs -t ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1376256 inodes, 5504768 blocks
275238 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2153775104
168 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
[root@localhost ~]#
(4)挂载使用
# mkdir /data1
# mount /dev/sdb1 /data1 ---先写设备文件再写挂载点
[root@localhost ~]# mkdir /data1
[root@localhost ~]#
[root@localhost ~]# mount /dev/sd
sda sda1 sda2 sda3 sdb sdb1
[root@localhost ~]# mount /dev/sdb1 /data1/
[root@localhost ~]#
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 3.9G 81M 3.8G 3% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/mapper/centos-root 140G 64G 77G 46% /
/dev/sda1 1014M 150M 865M 15% /boot
tmpfs 783M 0 783M 0% /run/user/0
/dev/sdb1 21G 45M 20G 1% /data1
[root@localhost ~]#
(5)卸载
# umount /dev/sdb1 ---指定设备文件
或者
# umount /data1 ---指定挂载点
[root@localhost ~]# umount /dev/sdb1
[root@localhost ~]#
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 3.9G 81M 3.8G 3% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/mapper/centos-root 140G 64G 77G 46% /
/dev/sda1 1014M 150M 865M 15% /boot
tmpfs 783M 0 783M 0% /run/user/0
[root@localhost ~]#
(6)查看挂载表
# mount
两个分区可以挂载到一个挂载点下,但是后挂载的会覆盖先挂载,挂载点尽量是空目录
[root@localhost ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,size=3992552k,nr_inodes=998138,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,noquota)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=27,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=13672)
mqueue on /dev/mqueue type mqueue (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
/dev/sda1 on /boot type xfs (rw,relatime,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=800912k,mode=700)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,relatime)
[root@localhost ~]#
3、实现分区开机自动挂载
文件系统配置文件
vim /etc/fstab
设备UUID/设备文件 挂载点 文件系统类型 挂载权限 dump备份 磁盘检测
/dev/sdb1 /data1 ext4 defaults 1备份 0不检
0不备份 1检 /
2检非 /
写完/etc/fstab文件后,下一步进行验证,使用 mount -a命令进行验证,不建议直接reboot,如果/etc/fstab文件写的有问题,系统在启动过程中会进入救援模式。
所以,在大家写完 /etc/fstab文件后,建议大家使用 mount -a 命令进行挂载验证,没问题后,需要重启确认的话,再执行reboot命令。
4、挂载报错总结
假如设备文件写错了,执行mount -a后会提示,我们只有/dev/sdb1,没有sdb2
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 59G 0 part
│ └─centos-root 253:0 0 140G 0 lvm /
└─sda3 8:3 0 140G 0 part
└─centos-root 253:0 0 140G 0 lvm /
sdb 8:16 0 21G 0 disk
└─sdb1 8:17 0 21G 0 part
sr0 11:0 1 1024M 0 rom
[root@localhost ~]#
[root@localhost ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Fri Jul 31 14:52:31 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=e2f55491-7ebc-49f0-aa44-33d5c96927c3 /boot xfs defaults 0 0
/dev/sdb2 /data1 ext4 defaults 0 0
[root@localhost ~]#
[root@localhost ~]# mount -a
mount: special device /dev/sdb2 does not exist
[root@localhost ~]#
假如挂载点写错了,执行mount -a后会提示,只有/data1挂载点,没有/data挂载点
[root@localhost ~]# ls /data*
[root@localhost ~]#
[root@localhost ~]# ls -ld /data*
drwxr-xr-x 2 root root 6 Sep 16 10:08 /data1
[root@localhost ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Fri Jul 31 14:52:31 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=e2f55491-7ebc-49f0-aa44-33d5c96927c3 /boot xfs defaults 0 0
/dev/sdb1 /data ext4 defaults 0 0
[root@localhost ~]#
[root@localhost ~]# mount -a
mount: mount point /data does not exist
[root@localhost ~]#
假如文件系统写错了,执行mount -a后会提示,错误的文件系统类型,我们是ext4 ,fstab文件里写的是ext3
[root@localhost ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Fri Jul 31 14:52:31 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=e2f55491-7ebc-49f0-aa44-33d5c96927c3 /boot xfs defaults 0 0
/dev/sdb1 /data1 ext3 defaults 0 0
[root@localhost ~]# mount -a
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
[root@localhost ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
fd0
sda
├─sda1 xfs e2f55491-7ebc-49f0-aa44-33d5c96927c3 /boot
├─sda2 LVM2_member hF2Taf-LKer-gLk2-9f3c-kDTS-5iaF-2MVgKC
│ └─centos-root xfs df554de6-70f3-4c0a-96c9-2304ae0ea8a3 /
└─sda3 LVM2_member j4nPCD-a3VF-VRC5-0QRm-gorE-92jB-bOLX8c
└─centos-root xfs df554de6-70f3-4c0a-96c9-2304ae0ea8a3 /
sdb
└─sdb1 ext4 a7a98712-76df-4c5f-a02e-19deb10920b8
sr0
[root@localhost ~]#