目录
磁盘管理
怎么在linux中添加并使用硬盘
1.分区
2.格式化(安装文件系统)
3.挂载
1.磁盘
1.1 磁盘基本概念
扇区
硬盘的最小存储单位,两个磁道之间的区域是扇区,固定大小512B,
8个扇区组成一块,4K;读数据是一块一块读取,所以硬盘是块设备
磁道
同心圆
硬盘存储容量
=磁头数(8个二进制)x磁道数(柱面数 )x扇区数(6个二进制)x512B
1.2 硬盘接口类型
IDE 133MB/s,并行接口
SATA 640MB/s,并行接口
SCSI 6Gbps
SAS 6Gbps
M.2 笔记本固态硬盘接口
光纤接口
SSD 固态硬盘
HDD 机械硬盘
1.3 磁盘第一个扇区的内容
1.MBR 占446B
主引导记录(作用:引导硬件找到操作系统)
2.分区表 占64B
作用:规定了分区的大小及范围
一个分区占16B,只能分4个主分区
3.结束位 占2B
55 aa
1.4 /dev/sda5 含义
/dev/hda5
/dev/sda5
/dev/vda5
/dev/ 存放所有硬件设备的目录
hd 接口类型,hd-IDE
sd 接口类型,sd-scsi
vd 接口类型,vd-虚拟机
a 代表第一块硬盘
5 表示第五个分区
1.5 分区步骤
① 添加硬盘
② 分区
③ 格式化,安装文件系统
④ 挂载
2. 添加硬盘
给虚拟机添加硬盘后,lsblk查看硬盘,如果没有新添加的硬盘时,使用以下命令刷新硬盘接口
# 命令刷新(建议),本质上刷新主板上连接到硬盘的三个接口
alias scan='echo "- - -" > /sys/class/scsi_host/host0/scan ; echo "- - -" > /sys/class/scsi_host/host1/scan ; echo "- - -" > /sys/class/scsi_host/host2/scan'
将alias写入"~/.bashrc"或者"/etc/profile",最好是写到"~/.bashrc"
用source ~/.bashrc立即生效
# 重启刷新(不建议),生产环境中不可能重启系统
reboot
3. 分区
3.1 为什么要分区?
① 优化I/O读写性能
② 实现磁盘空间配额限制
③ 提高修复速度
④ 隔离系统和程序
⑤ 安装多个操作系统OS
⑥ 采用不同的文件系统
3.2 分区基本概念
主分区
可以直接使用,安装操作系统、存储文件、安装软件等
主分区的编号范围是1-4
问题:现在我想分5个分区,怎么办?
使用扩展分区技术
扩展分区不能直接使用,它的存储空间只有1K,存放逻辑分区表,包含逻辑分区的信息
扩展分区属于特殊的主分区
逻辑分区
可以直接使用,可以存储文件,分区编号从5开始,逻辑分区的范围不可能超过扩展分区的范围
3.3 linux系统分区技术手段
MBR 支持2TB以下的硬盘分区 fdisk
GPT 支持2T以上的硬盘分区 gdisk
parted 即时生效,只要按下回车键,就会生效
3.4 fdisk
3.4.1 作用
查看或管理磁盘分区
3.4.2 选项
-l
3.4.3 查看硬盘的分区情况(不建议用fdisk查看硬盘信息)
# 查看所有硬盘的详细信息
fdisk -l
# 查看指定硬盘的详细信息
[root@localhost ~]# fdisk -l /dev/sdc
磁盘 /dev/sdc:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xb8b6d37c
设备 Boot Start End Blocks Id System
/dev/sdc1 2048 10487807 5242880 83 Linux
/dev/sdc4 10487808 20973567 5242880 5 Extended
/dev/sdc5 10489856 20727807 5118976 83 Linux
[root@localhost ~]#
3.4.4 查看硬盘信息(推荐)
# lsblk 查看系统硬件设备的分区情况
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 60G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 59G 0 part
├─centos-root 253:0 0 38.3G 0 lvm /
├─centos-swap 253:1 0 2G 0 lvm [SWAP]
└─centos-home 253:2 0 18.7G 0 lvm /home
sdb 8:16 0 20G 0 disk
sdc 8:32 0 20G 0 disk
├─sdc1 8:33 0 5G 0 part /mnt/sdc1
├─sdc4 8:36 0 1K 0 part
└─sdc5 8:37 0 4.9G 0 part /mnt/sdc5
sr0 11:0 1 4.2G 0 rom
[root@localhost ~]#
# blkid 查看磁盘格式化后的uuid号
[root@localhost ~]# blkid
/dev/mapper/centos-root: UUID="5607813c-56a3-497d-9529-723911d0b4eb" TYPE="xfs"
/dev/sda2: UUID="MBMRvJ-oGHv-XLan-or2D-Jwdm-8kQ1-xUshCL" TYPE="LVM2_member"
/dev/sda1: UUID="54c1f48d-9761-4c6e-ae44-b40c7da6a8ca" TYPE="xfs"
/dev/mapper/centos-swap: UUID="e502c993-fffb-4544-a874-71839cd7a3f6" TYPE="swap"
/dev/sr0: UUID="2017-09-06-10-51-00-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/sdb: PTTYPE="dos"
/dev/sdc1: UUID="05472d31-a12f-47bc-a9a2-a2984300916d" TYPE="xfs"
/dev/sdc5: UUID="98f00546-dcf5-4bde-8c04-2c9116169830" TYPE="xfs"
/dev/mapper/centos-home: UUID="42cac8cf-585a-4726-9ea0-501cbda8a9c6" TYPE="xfs"
3.4.5 硬盘分区界面
fdisk /dev/sdb # 会进入交互界面,对磁盘进行分区
交互模式中常用的命令
m # 帮助
n # 新建分区
p # 打印分区列表
d # 删除分区
t # 改变分区类型
w # 保存退出
q # 直接退出
ctrl+退格键 # 退格
3.5 使用fdisk分区步骤
3.5.1 创建主分区步骤
第一步:新建主分区
第二步:查看主分区分区情况
第三步:保存并退出分区界面,只要不保存,分区不生效
新建swap分区
三步
改一下分区类型 82 swap分区
mkswap 设备名
swapon 设备名
swapon -a 停止所有swap分区
3. 文件系统
3.1 基本概念
系统 是一个复杂的程序,调度硬件
文件系统 也是一种程序,管理文件
文件系统是将文件的内容翻译成自然语言
没有文件系统,连开机都开不了
centos 6 默认 ext4
centos 7 默认 xfs
fat32 单个文件不能超过4G
NTFS 单个文件不能超过64G
3.2 硬件设备在/dev目录下
[root@localhost ~]# ll /dev/sd*
brw-rw---- 1 root disk 8, 0 10月 31 18:07 /dev/sda
brw-rw---- 1 root disk 8, 1 10月 31 18:07 /dev/sda1
brw-rw---- 1 root disk 8, 2 10月 31 18:07 /dev/sda2
brw-rw---- 1 root disk 8, 16 10月 31 18:07 /dev/sdb
brw-rw---- 1 root disk 8, 32 10月 31 18:07 /dev/sdc
brw-rw---- 1 root disk 8, 33 10月 31 18:07 /dev/sdc1
brw-rw---- 1 root disk 8, 36 10月 31 18:07 /dev/sdc4
brw-rw---- 1 root disk 8, 37 10月 31 18:07 /dev/sdc5
[root@localhost ~]#
8 表示设备类型
8后面的数字代表第几类的第几块设备
0 第一块硬盘
1 第一块硬盘的第一个分区,第1块设备
37 第37块硬件设备
3.3 查看已安装xfs文件系统的硬件设备信息
[root@localhost ~]# xfs_info /dev/sda1
meta-data=/dev/sda1 isize=512 agcount=4, agsize=65536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]#
3.4 查看已安装ext文件系统的硬件设备信息
dumpe2fs /dev/sda1
3.5 查看当前系统支持的文件类型
[root@localhost ~]# 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 pipefs
nodev anon_inodefs
nodev configfs
nodev devpts
nodev hugetlbfs
nodev autofs
nodev pstore
nodev mqueue
xfs
nodev rpc_pipefs
nodev nfsd
[root@localhost ~]#
3.6 支持的文件系统
[root@localhost ~]# ls /lib/modules/`uname -r`/kernel/fs
binfmt_misc.ko.xz cifs ext4 gfs2 mbcache.ko.xz nls udf
btrfs cramfs fat isofs nfs overlayfs xfs
cachefiles dlm fscache jbd2 nfs_common pstore
ceph exofs fuse lockd nfsd squashfs
[root@localhost ~]#
3.7 文件系统类型
xfs文件系统
存放文件和目录数据的分区
高性能的日志型文件系统
CentOS 7系统中默认使用的文件系统
swap 交换文件系统
为Linux系统建立交换分区
linux支持的其他文件系统类型
NTFS
fat32
fat16
ext4
jfs
3.8 创建文件系统
4. 挂载与解挂载 mount与umount
4.1 作用
将外部硬件和内部的文件绑定与解绑
4.2 挂载规则
一个挂载点同一时间只能挂载一个设备
一个挂载点同一时间挂载了多个设备,只能看到最后一个设备的数据
一个设备可以同时挂载到多个挂载点
通常挂载点一般是已存在的空目录
4.3 用法
mount 挂载
# 挂载
mount /dev/sdc1 /mnt/sdc1
umount 解挂载
# 解挂载
umount /dev/sdc1 /mnt/sdc1
mount -o ro
mount -o ro /dev/sdb1 /mnt
# 设置挂载的文件系统的权限,默认是rw,还有ro只读
# ro read only
重新挂载
# 第一种方式:先解挂载,再挂载(不推荐)
umount /dev/sda /mnt
mount /dev/sda /mnt
# 重新挂载已挂载的文件系统(推荐),这不会耽误用户使用该挂载点
mount -o remount,ro /mnt
查看已挂载的信息
mount
在没有光驱的情况下,直接将光驱文件进行挂载
mount -o loop ISO镜像文件 挂载点
查看/mnt文件目录是否为挂载点
findmouont /mnt
查看哪个终端在使用挂载点
fuser -v /mnt
[root@localhost ~]# fuser -v /mnt/sdc1
用户 进程号 权限 命令
/mnt/sdc1: root kernel mount /mnt/sdc1
root 13823 ..c.. bash
[root@localhost ~]#
强制踢掉正在使用挂载点的终端
fuser -km /mnt 强制踢出
[root@localhost ~]# fuser -km /mnt/sdc1
/mnt/sdc1: 13823c
[root@localhost ~]#
4.4 永久挂载(自动挂载)
写配置文件,文件位置 /etc/fstab
如果这个文件写错,会导致开不了机,所以,写完配置文件后,一定要用mount -a 查看是否挂载上
如果报错,一定不能重启;如果重启,在等待加载的界面按“ctrl+d”
永久挂载(自动挂载步骤)
[root@localhost ~]# vim /etc/fstab
/dev/mapper/centos-swap swap swap defaults 0 0
UUID=05472d31-a12f-47bc-a9a2-a2984300916d /mnt/sdc1 xfs defaults 0 0
设备路径/设备编号(uuid) 挂载点 文件系统格式 权限 0(不备份) 0(开机不检查)
4.5 问题
为什么解不了挂载?
① 有人在用
② 磁盘坏了
建议使用UUID挂载,不建议使用/dev/sdb1挂载,为什么不建议使用/dev/sdb1这种方式写设备名?
当其中一个分区被删除时,后面的分区会顶上来,那么分区名也会变
比如:分了sdb5、sdb6、sdb7三个分区,当删除了sdb6后,sdb7会顶上来,变成新的sdb6
5. 磁盘实验作业
5.1 分别采用临时挂载和永久挂载方式,创建主分区
第一步:进入分区界面
第二步:创建大小 为5G的主分区1,并显示分区情况
第三步:格式化,创建文件系统
第4.1步:临时挂载(临时挂载,重启挂载失效)
第4.2步:永久挂载(永久挂载,临时挂载二选一,永久挂载,永久有效)
vim /detc/fstab
5.2 分别采用临时挂载和永久挂载方式,创建扩展分区、逻辑分区
第一步:① 进入分区界面
② 创建扩展分区
③ 创建逻辑分区
④ 显示分区情况,w保存并退出
第二步:给逻辑分区创建文件系统
第3.1步:临时挂载
第3.2步:永久挂载
vim /etc/fstab
系统 系统应用程序正常运行
cpu 负载
内存 剩余情况
磁盘 大小 df 读写性能 iotat
网络 是否通顺
lscpu 查看cpu信息
top 任务管理器
free 查看内存使用情况
面试题
服务器开机很顺畅,运行三天后卡顿严重,怎么解决?
清缓存,缓存太多了导致卡顿
ss -antp | grep 80
80 http apache nginx tomcat
/boot 只能使用主分区,不能使用逻辑分区
标签:管理,分区,文件系统,dev,挂载,磁盘,root,硬盘 From: https://www.cnblogs.com/wuyao-bk/p/17810664.html