Linux磁盘管理
一.硬盘分区
1.外部存储器的表示方法
(1)硬盘
l IDE /dev/hdxy
l SCSI/USB /dev/sdxy
(2)软盘(/dev/fdx)
(3)CD-ROM(/dev/cdrom)
2.fdisk分区工具的使用
(1) fdisk的启动方法
#fdisk [参数] 设备文件
参数:-l 显示指定存储设备的分区信息
-s 显示指定存储设备的大小
实例:#fdisk /dev/hda
Command(m for helpo):
(2) fdisk命令详解
m:获取帮助
n: 新建分区
p:显示分区表
d:删除分区
w:写入分区表
t:改变分区文件系统类型
v:检验分区
l:显示fdisk所支持的文件系统代码
q:退出
a:添加引导标记
o:创建空的DOS分区表
(3)应用实例
空闲空间 |
要求将一个接在IDE1接口主盘位置上20G的空闲硬盘划分一个容量为6G,文件系统为ext2的主分区、两个容量分别为7G,文件系统为ext2的逻辑分区具体步骤如下:
#fdisk /dev/hda
command (m for help):n 新建分区
extended(e) 扩展分区
primary (p) 主分区
p 按p 表示建立主分区
first cylinder(1-3002 default 1):按回车键(设置分区起始柱面,回车表示取默认值)
last cylinder(1-3002 +size +sizeM ….):+6000M(设置分区结束柱面,+6000M表示从起始柱面开始向后6000M结束)
command(m for help):n
extended(e)
primary(p)
e 按e键表示建立扩展分区
first cylinder(834-3002 default 834):按回车
last cylinder(834-3002 ……………...):按回车(表示取默认值3002)
command(m for help):n
first cylinder(834-3002 default 834):按回车
last cylinder(834-3002 ……………...):+7000
command(m for help):n
first cylinder(2100-3002 default 834):按回车
last cylinder(2100-3002 ……………...):按回车(表示取默认值3002)
command (m for help): w 写盘退出
注:
l 第一个逻辑区的分区号为5
l 在安装过程中建立分区,如果没有主分区时所建立的前三个分区为主分区
3.parted分区工具的使用
(1)启动parted
#parted [设备文件]
实例:#parted
(parted)
(2)parted命令详解
check :执行文件的简单检查
cp :复制文件系统
help:获取帮助
mklabel:创建磁盘标签
mkfs:创建文件系统
mkpart:创建分区
mkpartfs:创建分区并创建指定类型的文件系统
move:移动分区
print:显示分区表
resize:调整分区的大小
rm:删除分区
select:选择设备
set:设置分区标记
quit:退出parted
(3)应用实例
主分区 |
逻辑区1 |
空闲空间 |
显示分区表,并删除逻辑区1,重新将扩展分区划分为两个逻辑区,具体操作如下:
#parted /dev/hda
(parted)print
(parted)mkpart
Partition type? Primary/extended/logical:
Filesystem type?[ext2]
Satr:
End:
二.文件系统的管理
1.文件系统的介绍
(1)什么是文件系统
文件系统是用来管理和组织保存在磁盘驱动器上数据的系统软件
(2)三种常用文件系统介绍
l ext2文件系统
ü 标准的Linux文件系统,采用异步工作方式,如果操作突然中断会引起数据丢失
ü 发生不正常关机后会调用fsck工具恢复损坏的元数据,此操作需花费大量的时间
ü 先写文件数据,再先元数据
l ext3文件系统
ü ext2的升级版本,一种日志式文件系统
ü ext3向下兼容ext2,两者之间可以任意切换
采用日志恢复技术,恢复速度快,发生不正常关机后不调用fsck检查文件系统
ü 优化了硬盘驱动器的头运动,速度比ext2快
l reiserfs文件系统
ü 采用先进的日志机制,是一种日志式文件系统
ü 速度比ext3快很多,但它不兼容ext2文件系统
ü 支持海量磁盘
l swap文件系统
ü 作为交换分区使用,充当虚拟内存
ü 由操作系统管理, 没有加载点
l Vfat文件系统
ü 兼容dos的文件系统,包括fat12,fat16,fat32
2.文件系统的建立
(1)mkfs [参数] 分区
功能:建立各种类型的文件系统并格式化
参数:-t 文件系统类型 :指定建立的文件系统类型
-c:建立文件系统之前检查有无坏道
-v:显示详细情况
实例:
#mkfs /dev/hda3
#mkfs -t ext3 /dev/hda3 指定ext3文件系统
#mkfs -t msdos /dev/sda1
#mkfs -t vaft -F 32 /dev/sda6
(2)mkswap 分区/块文件
功能:用于建立交换文件系统
实例:
#mkswap /dev/hda8
#dd if=/dev/zero of=/swapfile bs=1024 count=1024
…………………块复制并定义大小为1024x1024
#mkswap /swapfile
#swapon /swapfile 激活swap分区
注:swapoff <文件名|分区> //关闭swap分区
3.装载文件系统
(1)手工装载
格式:mount [参数] 设备名 装载点
参数:
-t:文件系统类型
-f:测试装载,显示装载信息,不是真的装载
-n:装载文件系统,但不写入/etc/mtab文件
-r: 以只读方式加载
-w:以读写方式加载
-a:加载/etc/fstab文件配置的所有文件系统
-L:指定加载分区的卷标
-o 指定装载选项
iocharset=cp936: 显示文件系统中的中文
ro : 只读
rw : 读写
loop : 装载一个iso文件
remount : 重新加载
exec : 允许执行二进制文件
noexec : 禁止执行二进制文件
suid : 支持suid功能
nosuid : 禁止使用suid功能
usrquota : 支持用户磁盘配额
grpquota :支持组磁盘配额
defaults :默认选项
实例:
#mount /dev/cdrom /mnt/cdrom
#mount -t vfat /dev/fd0
#mount -t ext3 /dev/sda1 /usb
#mount -o remount,usrquota /dev/sda5
(2)自动装载文件系统
①修改/etc/rc.d/rc.local
实例:
#vi /etc/rc.d/rc.local
/bin/mount /dev/hda8 /mnt/hd8
②修改/etc/fstab
Fstab 文件系统内容与字段的说明:
/dev/hda5 /h5 ext2 defaults 0 0
① ② ③ ④ ⑤ ⑥
l none: 用于特殊的文件系统(如:proc文件系统)
标签: 分区的卷标
l 装载点( 交换分区来说,装载点为swap)
l 装载的文件系统的类型
l 装载选项
l 备份标记:指定是否支持dump备份,0表示不备份
l 检查顺序:指用fsck检查文件系统时先后顺序,0表示不检查
注:
l 一个设备可以被同时装载到不同的目录中
l 一个目录也可以同时装载不同的设备
l /etc/mtab用于记录系统己装载的文件系统
4.卸载文件系统
格式:umount [参数] 〈装载点/装载的设备〉
参数: -t 类型:指定卸载文件系统的类型
-a :指定卸载所有的文件系统(正在使用的文件系统不能被卸载)
实例:#umount /dev/cdcrom
#umount -t vfat /dev/sda4
5.检测文件系统
格式: fsck [参数] [设备文件/装载点]
参数: -r :在修复前询问是否修复
-a :自动修复
-A :检查所有文件系统
实例: #fsck /dev/hda6
#fsck -a /dev/sda4
注:被检测的文件系统/设备应处于未装载状态
6.转换文件系统
(1)ext2-ext3
#tune2fs -j 设备
(2)ext3-ext2
#tune2fs -O ^has_journal 设备
注:被转换的文件系统应处于未装载状态
7.显示或指定ext2/ext3分区的卷标
格式:#e2label 分区设备文件 [新卷标]
实例:#e2label /dev/sda5
#e2label /dev/sda5 soft
三.磁盘配额
1.认识磁盘配额
(1)什么是磁盘配额
限定用户/组在文件系统中的使用空间
(2)限制的方式
l 软限制:用户达到最大配额时,在规定时间可以继续存储(默认为7天)
l 硬限制:用户达到最大配额时,就不允许使用
(3)限制的单位
l 块(block):每块容量为1KB
l 节点数(inodes):文件的个数
2.配置过程
(1)安装quota软件包(默认支持磁盘配额)
# rpm -ivh quota.3.0.2-8.i386.rpm
相关文件:/sbin/quotacheck 生成配额文件
/sbin/quotaon 启动磁盘配额
/sbin/quotaoff 关闭磁盘配额
/usr/sbin/edquota 设定用户/组配额
/usr/bin/quota 显示用户/组的配额信息
(2)修改/etc/fstab文件(设/dev/hdd10分区,装载点为home)
# vi /etc/fstab(在要进行磁盘配额的分区的装载选项中加上usrquota和grpquota)
/dev/hda8/home ext2dafaulfs,usrquota,grpquota 0 0
(3)重启计算机
#init 6
(4)在进行配额的文件系统的装载点下,创建配额文件
# touchaquota.user(创 建空的用户配额文件)
#touch aquota.group(创建空的组配额文件)
(5)生成标准的配额文件
# quotacheck [参数] [装载点]
参数:-a 所有的配额的文件系统
-u 生成用户配额文件
-g 生成组配额文件
-m 强制以读写检查文件系统
-c 检查文件系统
-v 显示执行过程
实例:#quotacheck –avug
#quotacheck -uv /home(在/home装载点中创建用户配额文件)
#quotacheck –mcvug /
(6)启动配额
# quotaon [参数] [装载点]
参数:-a 所有配额的文件系统
-u 启用用户配额
-g 启用组配额
-v 显详细信息
实例:# quotaon –avug (启动所有配额分区的用户和组配额)
# quotaon –u /home (启动/home分区的用户配额)
(7)编辑用户和组配额信息
# edquota [参数] [用户名/组名]
参数: -u 用户名 编辑用户的配额
-g 组名 编辑组的配额
-p 复制用户/组配额
-t 设置软限制的超时时间
实例:
# edquota u1(设置用户u1的配额值)
file system blocks soft hard inodes soft hard
(文件系统)(己用块数) (软限制)(硬限制)(已用节点数)(节点软限制)(硬限制)
/home 0 0 0 0 0 0
# edquota –g guo (设置组guo配额值)
file system block soft hard inods soft hard
(文件系统)(己用块数) (软限制)(硬限制)(已用节点数)(节点软限制)(硬限制)
/home 0 0 0 0 0 0
3.其它命令
(1)quotaoff
功能:关闭配额
格式:quotaoff [参数] [装载点]
参数:与quotaon相同
实例:#quotaoff -avug (关闭所有分区的用户配额和组配额)
#quotaoff –ug /home(关闭/home分区的用户和组配额)
(2)quota
功能:产生配额的信息摘要
格式:# quota [用户]|[组名]
实例:#quota(显示当前用户使用情况)
#quota u1(显示u1用户的使用情况)
(3)du
功能:显示目录中文件的空间大小
格式:du [参数][文件名]
参数:
-b 以byte为单位,统计文件的容量
-k 以KB为单位,统计文件的容量
实例:#du 显示当前路径下文件的容量
# du /etc
(4)df
功能:统计分区的使用情况
格式:df [参数] [分区号/装载点]
参数:-m 以MB为单位,统计使用情况
实例: # df 显示当前所有己装载的分区使用情况
# df /home 显示/home分区的使用情况