磁盘格式化
- /etc/filesystems 查看系统支持哪些文件系统格式
[root@yong-02 ~]# cat /etc/filesystems
xfs //centos7默认文件系统
ext4 //centos6
ext3 //centos5
ext2
nodev proc
nodev devpts
iso9660
vfat
hfs
hfsplus
*
怎么查看一个分区的系统文件格式 mount:
[root@yong-02 ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=926656k,nr_inodes=231664,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,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/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
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/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mapper/centos-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=32,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=12142)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=187548k,mode=700)
mke2fs命令
- 设置文件系统格式;常见的选项:
- -t 系统文件类型
- -b 块大小,每个数据块占用的空间大小,每个数据库支持1024B,2048B以及4096B。
- -m 预留大小 1就是1%
- -L 标示分区标签 label
- -i 设定inode的大小,多少个块对应1个inode,默认4个块,16k
- -N 设定inode的数量
[root@yong-02 ~]# mke2fs -t ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310720 blocks ##大概为4个块对应1个inode
65536 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 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
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
[root@yong-02 ~]# blkid /dev/sdb1
/dev/sdb1: UUID="37275f57-b045-4159-97b3-dfa8fd78cd8d" TYPE="ext4"
查看分区类型为ext4
- mke2fs -t ext4 /dev/sdb1====mkfs.ext4 /dev/sdb1 结果相同
- mke2fs 不支持把分区格式化成xfs类型,只能使用mkfs.xfs
[root@yong-02 ~]# mkfs.xfs /dev/sdb1
mkfs.xfs: /dev/sdb1 appears to contain an existing filesystem (ext4).
mkfs.xfs: Use the -f option to force overwrite.
mkfs.xfs /dev/sdb1 设置系统类型为xfs时,会报错,必须加上-f 选项;
[root@yong-02 ~]# mkfs.xfs -f /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=327680 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=1310720, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
- -i 设置inode,设置成2个块对应1个inode,inode变多
[root@yong-02 ~]# mke2fs -i 8192 -t ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 1310720 blocks ##大概为2个块对应1个inode
65536 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
- mke2fs -b 设置块大小,什么情况块设置大呢,一般用在大文件视频之类的,小文件块最好设置小一点。
[root@yong-02 ~]# mke2fs -b 8192 -t ext4 /dev/sdb1
Warning: blocksize 8192 not usable on most systems.
mke2fs 1.42.9 (28-Dec-2013)
mke2fs: 8192-byte blocks too big for system (max 4096)
无论如何也要继续? (y,n) y
Warning: 8192-byte blocks too big for system (max 4096), forced to continue
warning: 80 blocks unused.
文件系统标签=
OS type: Linux
块大小=8192 (log=3)
分块大小=8192 (log=3)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 655280 blocks
32764 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=671006720
10 block groups
65528 blocks per group, 65528 fragments per group
32768 inodes per group
Superblock backups stored on blocks:
65528, 196584, 327640, 458696, 589752
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (16384 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
- mke2fs -m 指定分区预留的空间,mkfs.xfs 不支持 -m选项。
[root@yong-02 ~]# mke2fs -m 0.1 -t ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310720 blocks
1310 blocks (0.10%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 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
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
- 注意:扩展分区是不能够格式化的,他是一个壳,里面的逻辑分区才能格式化
- 我们可以不分区直接格式化。
- mkfs.xfs -f /dev/sdb
磁盘挂载
-
磁盘分区和格式化后,我们要做的是挂载,只有挂载后才能将数据写进磁盘中,在挂在分区前,需要建立一个挂在点,这个挂载点是以目录的形式出现,一旦把某个分区挂载到这个目录下,在往这个目录下写数据时,就都会写到该分区中,所以在挂载该分区前,挂载点下必须是空目录。其实目录不为空并不影响所挂载分区的使用,但一旦挂载上,该目录下以前的数据就看不到了(数据并非丢失),卸载该分区后,数据恢复。
-
一个挂载点只能给一个分区进行服务,假设有两个分区放在一个挂载点下,只能服务第二个分区,第二个会覆盖第一个,但是卸载掉第二个,第一个分区的数据就会出现
mount命令
mount命令可以查看当前系统已经挂载的所以分区,分区文件系统的类型,挂载点及一些选项信息。
挂载
- mount [分区] [挂载点]
[root@yong-02 ~]# mount /dev/sdb1 /mnt
[root@yong-02 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 18G 1.1G 17G 7% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 916M 0 916M 0% /dev/shm
tmpfs 916M 8.6M 908M 1% /run
tmpfs 916M 0 916M 0% /sys/fs/cgroup
/dev/sda1 197M 121M 77M 62% /boot
tmpfs 184M 0 184M 0% /run/user/0
/dev/sdb1 4.8G 20M 4.8G 1% /mnt
- umount 卸载
[root@yong-02 ~]# mount /dev/sdb1 /mnt
[root@yong-02 ~]# cd /mnt
[root@yong-02 mnt]# umount /dev/sdb1
umount: /mnt:目标忙。
(有些情况下通过 lsof(8) 或 fuser(1) 可以
找到有关使用该设备的进程的有用信息)
这个时候我们要退出这个目录,在卸载
[root@yong-02 mnt]# cd
[root@yong-02 ~]# umount /dev/sdb1
或者使用-l 选项
[root@yong-02 ~]# mount /dev/sdb1 /mnt
[root@yong-02 ~]# cd /mnt
[root@yong-02 mnt]# umount -l /dev/sdb1
开机自动挂载
第一种方法:vim /etc/fstab 直接将相关的挂载信息直接写入文件中
mount -a 会自动加载配置文件所有的配置
mount -o noatime,rw /dev/sdb1 /mnt 利用-o指定一些选项,如果不指定就为defaults
mount 可以查看加载了哪些相关选项
# /etc/fstab
# Created by anaconda on Tue Mar 6 20:09:24 2018
#
# 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
#第一段 第二段 第三段 第四段 第5段 第六段
#设备分区名或UUID 挂载点 系统文件类型 挂在选项 是否数据备份 开机是否检测磁盘
#defaults=rw,suid,dev,exec,auto,nouser,asyc
/dev/mapper/centos-root / xfs defaults 0 0
UUID=28cfd06d-4704-4964-9522-265bca82e8f8 /boot xfs defaults 0 0
UUID=feb65e38-9bc4-45a1-98a3-1f32f3df9705 swap swap defaults 0 0
~
[root@yong-02 ~]# blkid /dev/sda1: UUID="28cfd06d-4704-4964-9522-265bca82e8f8" TYPE="xfs" /dev/sda2: UUID="feb65e38-9bc4-45a1-98a3-1f32f3df9705" TYPE="swap" /dev/sda3: UUID="QKR4ER-jzMu-4zPP-NLgf-bjo3-RzrU-GrPErX" TYPE="LVM2_member" /dev/sr0: UUID="2017-09-06-10-51-00-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" /dev/mapper/centos-root: UUID="5d00946e-bea5-48f1-af3e-5bb66d92c443" TYPE="xfs" /dev/sdb: UUID="ecae3cbf-e4ae-49fc-8633-98d33947d12b" TYPE="xfs" [root@yong-02 ~]# mount UUID="ecae3cbf-e4ae-49fc-8633-98d33947d12b" mount: 在 /etc/fstab 中找不到 UUID=ecae3cbf-e4ae-49fc-8633-98d33947d12b ##可以把这个UUID写到 /etc/fstab里面去
写入配置文件/etc/fstab后要mount -a
-a 会将/etc/fstab里面的所有分区挂在上第二种方法:vim /etc/rc.local 其他启动会加载哪些设置
可以将mount /dev/sdb1 /mnt/ 命令直接写入/etc/rc.local文件,重启系统时文件会自动执行命令挂载了 。blkid 获取分区的uuid和table
手动增加swap空间
如果需要虚拟内存不够的情况,就必须增加一个虚拟磁盘,增加虚拟磁盘的基本思路: 建立swapfile-> 格式化为swap格式->启用该虚拟磁盘
- 建立swapfile
[root@yong-02 ~]# dd if=/dev/zero of=/tmp/newdisk2 bs=1M count=100
记录了100+0 的读入
记录了100+0 的写出
104857600字节(105 MB)已复制,4.21749 秒,24.9 MB/秒 ##写入快慢和磁盘有关系
dd命令:操作磁盘;if指定源(一般是写/dev/zero,它是UNIX系统特有的一个文件,它可以源源不断的提供“0”)of指定目标文件,bs定义块大小,count定义块的数量,bs和count这个两个参数决定了目标文件大小,目标文件大小=bs*count。
- 格式化
[root@yong-02 ~]# mkswap -f /tmp/newdisk2
正在设置交换空间版本 1,大小 = 102396 KiB
无标签,UUID=4750e78f-2452-4d4c-961f-d35df56304f0
文件格式化后,就可以挂载使用
- free -m 查看内存使用情况
[root@yong-02 ~]# free -m
total used free shared buff/cache available
Mem: 1831 138 1255 8 437 1509
Swap: 2047 0 2047
- 加载
[root@yong-02 ~]# swapon /tmp/newdisk2
swapon: /tmp/newdisk2:不安全的权限 0644,建议使用 0600。
[root@yong-02 ~]# blkid /tmp/newdisk2
/tmp/newdisk2: UUID="4750e78f-2452-4d4c-961f-d35df56304f0" TYPE="swap"
[root@yong-02 ~]# chmod 0600 /tmp/newdisk2 ##改权限0600
[root@yong-02 ~]# free -m
total used free shared buff/cache available
Mem: 1831 138 1255 8 437 1509
Swap: 2147 0 2147
Swap已经加上去了 100M
卸载swap
[root@yong-02 tmp]# swapoff /tmp/newdisk2
[root@yong-02 tmp]# free -m
total used free shared buff/cache available
Mem: 1831 138 1408 8 284 1511
Swap: 2047 0 2047