赞
踩
目录
在Linux系统中,一切皆文件:open(),read(),wrete(),close()
设备文件:关联至一个设备驱动程序,进而能够跟与之应对硬件设备进行通信
设备号码:
主设备号:major number, 标识设备类型
次设备号:minor number, 标识同一类型下的不同设备
设备类型:
块设备:block,存取单位“块”,磁盘
字符设备:char,存取单位“字符”,键盘
磁盘空间管理总共分三步:
分区 格式化(安装文件系统) 挂载(可临时或永久)
扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据(扇区越多容量越大) 存放数据的最小单位 512字节
磁道:同一盘片不同半径的同心圆
柱面:不同盘片相同半径构成的圆(柱面和磁道数量相同
硬盘存储容量=磁头数(8个2进制)×磁道(柱面)数×每道扇区数(6个二进制)×每扇区字节数
1柱面=512 * 扇区数/磁头数×磁道=51263255=7.84M
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
IDE:133MB/s,并行接口,早期家用电脑
SCSI:640MB/s,并行接口,早期服务器
SATA:6Gbps,SATA数据端口与电源(长的电源,数据线短的)端口是分开的,即需要两条线,一条数据线,一条电源线
SAS:6Gbps,SAS是一整条线,数据端口与电源端口是一体化的,SAS中是包含供电线的,而SATA中不包含供电线。SATA标准其实是SAS标准的一个子集,二者可兼容,SATA硬盘可以插入SAS主板上,反之不行。
M.2:
光纤接口
LFF:3.5寸,一般见到的那种台式机硬盘的大小
SFF:Small Form Factor 小形状因数,2.5寸,注意不同于2.5寸的笔记本硬盘
L、S分别是大、小的意思,目前服务器或者盘柜采用sff规格的硬盘主要是考内虑增大单位密度内的磁盘容量、增强散热、减小功耗
3.5寸的大磁盘不能换成2.5寸的小磁盘,而2.5寸小磁盘可以更换3.5寸的大磁盘。
机械硬盘(HDD):Hard Disk Drive,即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。
机械硬盘中所有的盘片都装在一个旋转轴上,每张盘片之间是平行的,在每个盘片的存储面上有一个磁头,磁头与盘片之间的距离比头发丝的直径还小,所有的磁头联在一个磁头控制器上,由磁头控制器负责各个磁头的运动。磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。数据通过磁头由电磁流来改变极性方式被电磁流写到磁盘上,也可以通过相反方式读取。硬盘为精密设备,进入硬盘的空气必须过滤
固态硬盘(SSD):Solid State Drive,用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。
固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也与普通硬盘一致相较于HDD,SSD在防震抗摔、传输速率、功耗、重量、噪音上有明显优势,SSD传输速率性能是HDD的2倍相较于SSD,HDD在价格、容量占有绝对优势硬盘有价,数据无价,目前SSD不能完全取代HHD
在使用Windows系统的时候是可以不分区的,但是在Linux中一定要分区,才可以使用硬盘。
优点:
1)优化I/O性能 读写
2)实现磁盘空间配额限制
3)隔离系统和程序(如双系统)
4)安装多个OS(操作系统)
5)采用不同的文件系统
缺点:
1)只能分连续的空间(必须是连续的分区)
2)一旦分好区之后,无法增加减少空间,空间固定了
3)inode号一旦分区好后,就会固定不变
分区技术:mbr分区(老技术),gpt分区(新技术)
mbr分区与gpt分区主要区别:
mbr分区只能标识2T以下的硬盘 使用fdisk工具进行分区
gpt分区可以标识2T以上的硬盘 使用gdisk工具进行分区
MBR磁盘采用MBR分区表,由于MBR用4个字节存储分区总扇区数,最大可以表示2的32次方,一个扇区512字节,那么分区的容量或者磁盘容量都不能超过2TB。
常见的硬盘可以划分为主分区、扩展分区和逻辑分区,通常情况下主分区只有四个,而 扩展分区可以看成是一个特殊的主分区类型,在扩展分区中可以建立逻辑分区。主分区一般 用来安装操作系统,扩展分区则多用来存储文件数据
MBR(主引导记录):是硬盘上的第一个扇区,想要读取磁盘数据,需要从该扇区开始。
MBR一共512字节
前446字节:开机引导程序,引导硬件找到系统
后64字节:分区表,表明了分区的范围,分区从哪里开始到哪里结束
最后两字节:表示结束位
MBR分区只能分4个分区,一个分区表占16字节
分区分类:主分区,扩展分区,逻辑分区
主分区:可以直接使用,用来安装操作系统或存储文件等
扩展分区:不可以直接使用,需要在划分逻辑分区,可以使分区超过四个
逻辑分区:存在扩展分区内,可以直接使用,用来存储文件,分区的序号从5开始
GPT:GUID(Globals Unique Identifiers) partition table 支持128个分区,使用64位,支持8Z(512Byte/block )64Z ( 4096Byte/block)
使用128位UUID(Universally Unique Identifier) 表示磁盘和分区 GPT分区表自动备份在头和尾两份,并有CRC校验位UEFI (Unified Extensible Firmware Interface 统一可扩展固件接口)硬件支持GPT,使得操作系统可以启动
内核中的模块:ext4, xfs, vfat
Linux的虚拟文件系统:VFS
用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat
ext4是Linux系统常见的文件类型
ntfs是Windows系统常见的文件类型
查看当前系统支持的文件类型
cat /proc/filesystems
lsblk 列出块设备
fdisk 管理MBR分区
gdisk 管理GPT分区
parted 高级分区操作,可以是交互式或非交互式(parted的操作是实时生效的,谨慎使用)
partprobe 重新设置内存中的内核分区表版本,适合于除了CentOS 6以外的其他版本 5,7,8
格式:fidsk - l [磁盘设备] #查看磁盘信息
fidsk [磁盘设备] 对磁盘进行分区相关操作
m 打印出菜单
p 打印出当前分区表
n 新建一个分区
d 删除一个分区
t 改变分区的属性,系统ID
w 保存
q 不保存退出
分区步骤:
1)在虚拟机中为系统添加硬盘
此处可能默认选项有所不同,选择SCSI(S)
最后一定要点“确定”
2)刷新Linux中的接口或者重新启动(本次实验采用刷新接口的方法)
使用以下命令刷新:
[root@localhost ~]#echo "- - -" > /sys/class/scsi_host/host0/scan
[root@localhost ~]#echo "- - -" > /sys/class/scsi_host/host1/scan
[root@localhost ~]#echo "- - -" > /sys/class/scsi_host/host2/scan刷新完后使用以下命令列出块设备:
lsblk
3)对新硬盘进行分区
fdisk /dev/sdb
4)新建主分区
命令:n
5)新建扩展分区
命令:n
6)新建逻辑分区
7)保存并退出
w 命令
创建文件系统(格式化)常用选项
-t {ext2|ext3|ext4|xfs} 指定文件系统类型
-b {1024|2048|4096} 指定块 block 大小
-L ‘LABEL’ 设置卷标
-j 相当于 -t ext3, mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3-i
-i # 为数据空间中每多少个字节创建一个inode;不应该小于block大小
-N # 指定分区中创建多少个inode
-I 一个inode记录占用的磁盘空间大小,128---4096
-m # 默认5%,为管理人员预留空间占总空间的百分比
-O FEATURE[,...] 启用指定特性-O ^FEATURE 关闭指定
在linux中默认使用xfs类型的文件
格式:mkfs.xfs /dev/sdb1
设备名
mount [ -t 类型 ] 存储设备 挂载点目录
mount -o loop ISO镜像文件 挂载点目录
挂载规则
一个挂载点同一时间只能挂载一个设备
一个挂载点同一时间挂载了多个设备,只能看到最后一个设备的数据,其它设备上的数据将被隐藏
一个设备可以同时挂载到多个挂载点
通常挂载点一般是已存在空的目录
挂载选项:
-t fstype 指定要挂载的设备上的文件系统类型,如:ext4,xfs
-r readonly,只读挂载
-w read and write, 读写挂载,此为默认设置,可省略
-n 不更新/etc/mtab,mount不可见
-a 自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中有
auto功能)
-L 'LABEL' 以卷标指定挂载设备
-U 'UUID' 以UUID指定要挂载的设备
-B, --bind 绑定目录到另一个目录上
-o options:(挂载文件系统的选项),多个选项使用逗号分隔
-o options:(挂载文件系统的选项),多个选项使用逗号分隔
async 异步模式,内存更改时,写入缓存区buffer,过一段时间再写到磁盘中,效率高,但不安全
sync 同步模式,内存更改时,同时写磁盘,安全,但效率低下
atime/noatime 包含目录和文件
diratime/nodiratime 目录的访问时间戳
auto/noauto 是否支持开机自动挂载,是否支持-a选项
exec/noexec 是否支持将文件系统上运行应用程序
dev/nodev 是否支持在此文件系统上使用设备文件
suid/nosuid 是否支持suid和sgid权限
remount 重新挂载
ro/rw 只读、读写
user/nouser 是否允许普通用户挂载此设备,/etc/fstab使用
acl/noacl 启用此文件系统上的acl功能
loop 使用loop设备
_netdev 当网络可用时才对网络资源进行挂载,如:NFS文件系统
defaults 相当于rw, suid, dev, exec, auto, nouser, async
例一:使挂载的设备只读
mount -o ro /dev/sdb1 /mnt
例二:使挂在设备可读可写
mount -o ro,rw /dev/sdb1 /mnt
临时挂载
mount /dev/sdb1 /mnt
永久挂载
永久挂载需要修改/etc/fstab文件
建议永久挂载使用UUID号挂载设备
末行模式下使用 .!blkid /dev/sdb1
将其格式改为如下:
UUID=2eae1b02-987a-4593-a6b4-0a356c90b5c8 /mnt xfs defaults 0 0
umount 设备名或挂载点
卸载时,可以使用设备,也可以使用挂载点
fuser - v MOUNT_POINT
查看正在访问指定文件系统的进程
fuser - km MOUNT_POINT
终止所有正在访问指定文件系统的进程
fask 命令
-a 自动修复
-r 交互式修复错误
e2fsck:ext系列文件专用的检测修复工具
xfs_repair:xfs文件系统专用检测修复工具
swap
特殊的文件系统,缓解内存不足,为了个别应为程序加内存有点浪费
添加交换分区的空间
mkswap + 分区
swapon +分区 开启 -a 全部
swapoff +分区 关闭 -a 全部
添加交换分区的空间的步骤:
1)创建swap分区
2)保存退出
3)格式化
查看原swap空间
free -h
4)添加swap空间
swapon /dev/sdb2
swapoff +分区 关闭 -a 全部
swapon +分区 开启 -a 全部
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。