磁盘分类:
并口设备:IDE硬盘
识别的名称:hdX 例如: hda hdb hdc ...
hda识别的第一块硬盘:
hda1代表了第一块硬盘上的第1个分区
串口设备:sata scsi
识别的名称:sdx 例如: sda sdb sdc ..
sda1 sda2 sda3 ...表示分区
硬盘的构造:
常见的硬盘转数:5400 7200 10000 12000 15000
盘片、主轴、空气过滤片、音圈马达、机械臂、磁头、停泊区、永磁铁
逻辑概念:
磁道:当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道
扇区:磁盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区。硬盘的读写以扇区为基本单位。512字节
柱面:磁道延伸到多个盘片,就成为柱面 大小为8MB
(一)磁盘分区: 基本分区
1.分区
2.通知内核
3.格式化
4.挂载使用
1.分区: fdisk
1.1查看分区:
#fdisk -l [硬盘名]
#fdisk -l查看所有硬盘的分区情况
#fdisk -l /dev/sdb自己新增加的一块硬盘
Disk /dev/sdb: 214.7 GB, 214748364800 bytes
/dev/sdb是硬盘名称;硬盘大小
255 heads, 63 sectors/track, 26108 cylinders
255个虚拟磁头,63扇区/磁道;26108柱面
Units = cylinders of 16065 * 512 = 8225280 bytes
单位: 一个柱面有16065个扇区,一共8MB
Sector size (logical/physical): 512 bytes / 512 bytes
扇区的大小: 逻辑和物理上,都是512字节
I/O size (minimum/optimal): 512 bytes / 512 bytes
I/O的大小,也为512字节
Disk identifier: 0x00069993
硬盘的设备码,标识符
Device Boot Start End Blocks Id System
设备 引导分区 起始点 结束点 占用大小id号 系统类型
/dev/sdb1 1 128 1028128+ 83 Linux
注意:以上的分区是按柱面分,起始点和结束都是柱面的位置
如果在Boot的位置出现了*,代表在该分区下安装了操作系统
1.2分区:
注意:默认fdisk使用柱面分区,-cu代表使用扇区分区
#fdisk [-cu]硬盘名称
#fdisk [-cu] /dev/sdb
Command (m for help): m查看帮助
Command action可用的命令
d删除
l查看所有支持的分区类型
m打印当前的帮助
n添加一个新分区
p打印分区表,打印硬盘分区情况
q不保存退出
t修改分区的系统ID
w保存并退出
Command (m for help): n新建分区
Command action处理动作
e extended扩展分区
p primary partition (1-4)主分区
输入一个p
Partition number (1-4): 2选择的分区号
First cylinder (129-26108, default 129):回车
注释:分区的起始点,直接回车使用默认
Last cylinder, +cylinders or +size{K,M,G} (129-26108, default 26108): +100M
注释:+100代表使用100个柱面;+100M分区大小为100M
Command (m for help): p查看分区情况
Command (m for help): w保存并退出
#fdisk -l /dev/sdb在系统命令行验证
创建逻辑分区 :
#fdisk /dev/sdb
Command (m for help): n
e注释:创建扩展分区
3注释:选择的分区号
回车
回车
注释:将所有空间都给了扩展分区
Command (m for help): n
l logical (5 or over)
p primary partition (1-4)
输入:l 创建逻辑分区
回车 选择默认起始点
+200M结束点,大小为200M
Command (m for help): w保存并退出
2.通知内核:
rhel6中:
#partx -a硬盘
#partx -a /dev/sdb
error adding partition 5内核已经识别了分区5
rhel7中: rhel5中
#partprobe [硬盘]
#partprobe
3.格式化:高级格式化
低级格式化:一般都是由厂商做的,通常要装载MBR
高级格式化:创建文件系统
文件系统: 负责文件的解析和结构;常见文件系统fat,ntfs,ext3,ext4,xfs...
3.1格式化化命令: mkfs --> make file system
#mkfs -t文件系统类型 分区名称
#mkfs -t ext4 /dev/sdb2
注释:ext4是文件系统类型;/dev/sdb2是分区名称
显示的内容:
block size = 1024bytes块大小,是给用户使用的最小单元
28224 inodes, 112452 blocks共有28224个inode号,每个文件必须要有一个inode号;有112452个磁盘块
5622 blocks (5.00%) reserved for the super user共有5622个块被保留了,默认是5%的比例,管这部分空间叫元数据区域;其中就保存了inode
14 block groups共有14个块组
8192 blocks per group,8192 fragments per group 每个组中有8192个块
2016 inodes per group每个组中有2016个inode号
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729都有哪些备份超级块,超级块服务将来分配和使用磁盘块
注意:在文件系统中,一般编号为第一个的块,都是超级块
#mkfs.ext4 /dev/sdb5
注意:mkfs.ext4 等同于 mkfs -t ext4
4.挂载使用: 就是给文件系统找个入口(目录)
挂载: 就是创建个目录,将文件系统设备和目录对应上
4.1临时挂载: mount
挂载:
使用格式:#mount 设备(分区) 挂载点
例:
#mkdir /test1
#mount /dev/sdb2 /test1(挂载点)
注释:要将/dev/sdb2跟/test1目录对应上,一旦对应成功,将来进入到/test1中,就相当于进入到了/dev/sdb2中
查看验证:mount 或者 df -Th
#mount
#df -Th
Filesystem Type Size Used Avail Use% Mounted on
文件系统(设备) 类型 大小 使用 可用 百分比 挂载点
/dev/sdb2 ext4 103M 1.6M 96M 2% /test1
创建文件认证:
#cd /test1
#echo hello /dev/sdb2 > hello.txt
#mkdir /test2
#mount /dev/sdb2 /test2再挂载到另外一个目录上
#cd /test2
#cat hello.txt
注意: 一个设备可以有多个挂载点,每个挂载点都是该设备的入口
卸载:umount
#umount设备
或者#umount 挂载点
#umount /test2
umount: /test2: device is busy设备忙,因为有人正在使用中
从/test2目录中退出,保证没有人使用/test2即可
#umount /test2可以卸载
4.2永久挂载: /etc/fstab
a.靠设备的uuid 最安全可靠
b.靠设备名 相对安全
c.设备的卷标 最不安全
4.2.1靠uuid挂载:设备的唯一标识,是全球唯一
查看设备uuid:
#blkid
/dev/sdb2: UUID="d19e7be2-6809-42f4-aecb-b7c75c2bad12" TYPE="ext4"
注释:/dev/sdb2就是设备;UUID是该设备的ID号;TYPE是文件系统类型
挂载文件的设定:/etc/fstab
#vim /etc/fstab
设备名(uuid,卷标) 挂载点 文件系统类型 挂载选项 开机检测 启动次序
例:
#vim /etc/fstab
UUID="d19e7be2-6809-42f4-aecb-b7c75c2bad12" /test2 ext4 defaults 0 0
注释: 要将/dev/sdb2挂载到/test2下;defaults代表了8个挂载选项,可以使用man mount去搜索defaults;第一个0的位置代表了是否检测,0是不检测;第二个0的位置,代表启动次序,0代表没有次序,所有0的最后挂载
#mount -a手动读取该文件,实现挂载
#df -Th验证
4.2.2靠设备名挂载:
#vim /etc/fstab
/dev/sdb2 /test3 ext4 defaults 0 0
#mount -a
#df -Th验证
4.2.3靠卷标挂载:
查看卷标:
#e2label分区名(文件系统名称)
#e2label /dev/sdb2
设定卷标:
#e2label分区名 卷标名称
#e2label /dev/sdb2 loring
使用卷标挂载:
#vim /etc/fstab
LABEL=loring /test4 ext4 defaults 0 0
#mount -a
#df -Th
(二).靠服务进行自动挂载: autofs服务
1.准备工作:
#rpm -q autofs
autofs-5.0.5-113.el6.x86_64看见该软件,代表已经安装了
如果看不见:
#mount /dev/cdrom /mnt挂载光盘
#vim /etc/yum.repos.d/local.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
#yum install -y autofs可以安装该软件
2.服务的管理:
启动服务:#service 服务名 start
#service autofs start
关闭服务:#service 服务名 stop
#service autofs stop
重启服务:#service 服务名 restart
#service autofs restart
查看服务状态:#service 服务名 status
#service autofs status
重新加载服务:#service 服务名 reload
注意:并不是所有的服务,都能被重新加载
下次开机自启动:
#chkconfig服务名 on
#chkconfig autofs on保证下次开机自启动
查看开机自启:
#chkconfig --list服务名
#chkconfig --list autofs
autofs 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
注释: 代表在第2、3、4、5四个启动级别上,autofs会自动启动
设定只在某些级别上启动:
#chkconfig autofs on --level 35
注释:代表在第3和第5级别会启动该服务
关闭开机自启动:
#chkconfig服务名 off
#chkconfig autofs off
扩展:rhel6的启动级别
#vim /etc/inittab该文件中保存的是启动级别
# Default runlevel. The runlevels used are:
以下就是rhel6中7个默认运行级别
# 0 - halt关机
# 1 - Single user mode单用户模式
# 2 - Multiuser, without NFS多用户,不支持网络文件系统
# 3 - Full multiuser mode完全的单用户模式,字符界面
# 4 - unused未被使用,保留
# 5 - X11图形化的多用户
# 6 - reboot重启
id:5:initdefault:只有该行生效了,工作在第5级别
#init 3临时切换到第3级别,是字符界面
3.配置autofs服务,实现自动挂载:
autofs服务优点: 可以让文件系统,随用随挂载,不用就自动卸载
规划:
要将/dev/sdb2 挂载到/haha/hehe/abc
3.1编辑/etc/auto.master文件:
#vim /etc/auto.master
/haha/hehe /etc/auto.loring
注意:/haha/hehe是挂载点abc的上一级目录;/etc/auto.loring是辅助配置文件,必须交auto.XXX,XXX是名称,任意指定
3.2编辑辅助配置文件: 上面/etc/auto.master中定义的auto.loring文件
注释:辅助配置文件,就是用来定义挂载
#vim /etc/auto.loring
abc -fstype=ext4,rw :/dev/sdb2
注意:abc是挂载点;-fstype去指定类型和挂载选项; :/dev/sdb2设备,本地设备必须有冒号
3.3重启autofs服务,让配置生效:
#service autofs restart重启
3.4验证:
#df -Th还没有挂载,是因为没有使用
#cd /haha
#ls还可以看见hehe的目录
#cd hehe
#ls发现没有任何目录和文件
默认当abc没有挂载,或者是卸载了,abc目录会被隐藏
#cd abc要进入到挂载点中
#df -Th
发现/dev/sdb2已经挂载到了/haha/hehe/abc中,abc目录也出现了
3.5修改挂载的超时时间: 多久不用,就会自动卸载
#vim /etc/autofs.conf
timeout = 30 找到该行,修改值为30秒
如果发现/etc/autofs.conf没有,或者是里面没有timeout,那么去编辑如下文件:
#vim /etc/sysconfig/autofs
timeout = 30
#service autofs restart重启服务生效
#cd /haha/hehe/abc
#df -Th挂载成功
#cd /root切换到未使用abc的状态,等待30秒
#df -Th发现会自动卸载
扩展: 破解rhel6密码,在单用户模式下破解
重启系统-->按任意键截停-->按e键,进行编辑-->找到kernel一行,再按e键进行编辑-->在进入界面的末尾,添加一个 空格和1;然后按回车 --> 再按b,启动,进入到单用户模式-->修改密码,然后退出
修改密码:#echo redhat | passwd --stdin root
#reboot重启计算机