文章目录
- 3.Linux 磁盘管理命令
- 3.4 fdisk:磁盘分区
- 案例练习
- 3.5 mount:挂载文件系统
- 案例练习
- 3.6 umount:卸载文件系统
- 案例练习
- 3.7 mkfs:建立各种文件系统
- 案例练习
- 3.8 mkfs.ext2:建立一个 Ext2/Ext3 文件系统
- 案例练习
3.Linux 磁盘管理命令
3.4 fdisk:磁盘分区
-
作用:fdisk 命令用来进行磁盘分区。
-
用法:fdisk [选项] device
-
主要选项如下:
命令 描述 -l
查看指定设备的分区表状况。 -b SSZ
将指定的分区大小输出到标准输出上,单位为区块。 -u
搭配“-l”参数列表,会用分区数目取代柱面数目来表示每个分区的起始地址。 device
进行这些操作的设备名称。
说明 fdisk 是各种 Linux 发行版本中最常用的分区工具,是被定义为 Expert 级别的分区 工具。它还包括一个二级选单,首先输入命令,然后出现问答式界面,用户通过在这 个界面中输入命令参数来操作 fdisk,如图所示
选单详细介绍如下。
a:设定硬盘启动区。
b:编辑一个 BSD 类型分区。
c:编辑一个 DOS 兼容分区。
d:删除一个分区。
l:查看指定设备的分区表状况。
m:显示 fdisk 命令各个参数的说明。
o:创建一个 DOS 分区。
n:设定新的硬盘分区。
p:打印分区信息。
s:创建一个空 Sun 分区表。
t:改变硬盘分区类型。
q:结束分区,不保存操作内容。
v:校验硬盘分区表。
w:结束分区,保存操作内容。
x:进入高级操作模式。
案例练习
(1)查看所有硬盘及其分区情况。
# fdisk -l
Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 1044 8281507+ 8e Linux LVM
(2)使用 fdisk 为系统添加新硬盘。
以添加 IDE 接口硬盘为例,操作步骤如下。
① 物理安装。
注意 在新添加硬盘的时候,不要随便动以前的硬盘接口,否则系统就无法启动了。将 硬盘挂在计算机上以后,启动计算机,能够进入 BIOS 中去查看主板有没有认出新加 载的硬盘.
② 启动计算机到 Linux 下面,使用命令“fdisk –l”能够看到刚刚安装上去的硬盘,下一 步对硬盘进行分区和格式化。
fdisk /dev/hhdb
③ 进入 fdisk 模式。
Command (m for help):p //查看新硬盘的分区
Command (m for help):n //创建新分区
Command action
e extended //输入 e 为创建扩展分区
p primary partition (1-4)//输入 p 为创建主分区,这里选择 p
Partion number(1-4):1 //第一个扩展分区,按需求最多能够分 4 个主分区
First Cylinder(1-1014,default 1): 1 //第一个主分区起始的磁盘块数
Last cylindet or +siza or +sizeM or +sizeK: +1871MB //可以是以 MB 为单位的数
字或磁盘块数,输入+1024MB 表示分区大小为 1GB
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
操作过程如图(使用硬盘分区程序 fdisk )
④ 建立好硬盘分区后,执行命令,对硬盘进行格式化操作。
# mke2fs /dev/hdb1
⑤ 挂载到目录。硬盘格式化之后,可利用 mount 命令将该硬盘分区挂载到一个目录上。 先创建该目录,如要挂载的目录名为/disk2,依次执行“mkdir disk2”、“mount /dev hdb1/disk2” 命令,就可以使用该新硬盘了。
⑥ 设置启动时自动挂载。按照上面的操作,每次计算机启动都必须执行 mount 命令进行 挂载才可使用,这样做很麻烦,可以通过修改/etc/fstab 配置文件使计算机在启动时自动挂载该 硬盘分区。修改完配置文件后重新启动计算机,系统就会自动挂载该分区。至此,就可以方便 地使用添加的硬盘了。
3.5 mount:挂载文件系统
-
作用:挂载文件系统。
-
用法:mount[-lhV]
mount-a[选项]
mount[选项] [–source]<源>|[–target]<目录>
mount[选项]<源><目录>
mount<操作><挂载点>[<目标>] -
主要选项如下:
命令 描述 -a,--all
挂载 fstab 中的所有文件系统。 -c,--no-canonicalize
不对路径规范化。 -f,--fake
空运行;跳过 mount(2)系统调用。 -F,--fork
对每个设备禁用 fork(和-a 选项一起使用)。 -T,--fstab<路径>
/etc/fstab 的替代文件。 -i,--internal-only
不调用 mount.<类型>助手程序。 -l,--show-labels
列出所有带有指定标签的挂载。 -n,--no-mtab
不写/etc/mtab。 -o,--options<列表>
挂载选项列表,以英文逗号分隔。 -O,--test-opts<列表>
限制文件系统集合(和-a 选项一起使用)。 -r,--read-only
以只读方式挂载文件系统(同-o ro)。 -t,--types<列表>
限制文件系统类型集合。 --source<源>
指明源(路径、标签、UUID)。 --target<目标>
指明挂载点。 -v,--verbose
打印当前进行的操作。 -V,--version
显示版本信息并退出。 -w,--rw,--read-write
以读/写方式挂载文件系统(默认)。 -h,--help
显示此帮助并退出。 -V,--version
输出版本信息并退出。 源如下:
命令 描述 -L,--label<标签>
同 LABEL= -U,--uuid<uuid>
同 UUID=。 LABEL=<标签>
按文件系统标签指定设备。 UUID=<uuid>
按文件系统 UUID 指定设备。 PARTLABEL=<标签>
按分区标签指定设备。 PARTUUID=<uuid>
按分区 UUID 指定设备。 操作如下:
命令 描述 <设备>
按路径指定设备。 <目录>
绑定挂载的挂载点(参阅–bind/rbind)。 <文件>
用于设置回环设备的常规文件。 -B,--bind
挂载其他位置的子树(同-obind)。 -M,--move
将子树移动到其他位置。 -R,--rbind
挂载其他位置的子树及其包含的所有挂载。 --make-shared
将子树标记为共享。 --make-slave
将子树标记为从属。 --make-private
将子树标记为私有。 --make-unbindable
将子树标记为不可绑定。 --make-rshared
递归地将整个子树标记为共享。 --make-rslave
递归地将整个子树标记为从属。 --make-rprivate
递归地将整个子树标记为私有。 --make-runbindable
递归地将整个子树标记为不可绑定。
案例练习
(1)USB 磁盘挂载。
mount 命令最重要的功能是挂载磁盘,目前使用的磁盘包括 IDE/SCSI 硬盘、IDE/SCSI 光 盘、USB 磁盘。以 USB 磁盘为例,其挂载方法如下:
#fdisk -l #查看 USB 磁盘设备号,一般是/dev/sda1#
#mkdir /mnt/usb #建立一个挂载目录#
mount –t vfat /dev/sda1 /mnt/usb
(2)使用光盘驱动器。
一般情况下,只有超级用户可以使用 mount 命令,下面介绍如何让普通用户可以使用光盘 驱 动器。修改/etc/fstab 文件,加入如下一行:
#/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro,cao1 0 0
这样用户 cao1 也可以使用光盘驱动器了。
(3)查看已经加载的 VFAT 文件系统。
# mount -t vfat
(4)挂载/etc/fstab 配置文件中使用设备。
# mount -av
(5)网络文件系统挂载。
Linux 支持 NFS 网络文件系统,首先设置 NFS 网络文件系统,然后利用 mount 命令挂载 NFS 服务器的/home/cao 目录。
# mount -t nfs 192.168.1.4:/home/cao /home/nfs/cao
下面使用 df 命令查看挂载的目录,其中已经包括 NFS 服务器的共享目录,如图所示。
3.6 umount:卸载文件系统
-
作用:umount 命令用来卸除文件系统。
-
用法:umount [-hV]
umount -a [选项]
umount [选项] <源> | <目录> -
主要选项如下:
命令 描述 -a,--all
卸载所有文件系统。 -A,--all-targets
卸载当前名字空间内指定设备对应的所有挂载点。 -c,--no-canonicalize
不对路径规范化。 -d,--detach-loop
若挂载了回环设备,也释放该回环设备。 --fake
空运行;跳过 umount(2)系统调用。 -f,--force
强制卸载(遇到不响应的 NFS 系统时)。 -i,--internal-only
不调用 umount.<类型>辅助程序。 -n,--no-mtab
不写/etc/mtab。 -l,--lazy
立即断开文件系统,所有清理以后执行。 -O,--test-opts<列表>
限制文件系统集合(和-a 选项一起使用)。 -R,--recursive
递归卸载目录及其子对象。 -r,--read-only
若卸载失败,尝试以只读方式重新挂载。 -t,--types<列表>
限制文件系统集合。 -v,--verbose
打印当前进行的操作。 -h,--help
显示此帮助并退出。 -V,--version
输出版本信息并退出。
案例练习
卸载一个 USB 盘。
#umount /mnt/usb
说明 mount 加载设备的信息记录在/etc/mtab 文档中。使用 umount 命令卸载设备时,记 录将被清除。
3.7 mkfs:建立各种文件系统
-
作用:mkfs 命令用来在 Linux 下建立各种文件系统。
-
用法:mkfs [选项] [-t <类型>] [文件系统选项] <设备> [<大小>]
-
主要选项如下:
命令 描述 -t,--type=<类型>
文件系统类型;若不指定,将使用 Ext2。 fs-options
实际文件系统构建程序的参数。 <设备>
要使用设备的路径。 <大小>
要使用设备上的块数。 -V,--verbose
解释正在进行的操作;多次指定-V 将导致空运行(dry-run)。 -V,--version
显示版本信息并退出;将-V 作为–version 选项时必须是唯一选项。 -h,--help
显示此帮助并退出。 说明 mkfs 命令本身并不执行建立文件系统的工作,它是在 Linux 下各文件系统专用 程序(mkfs.fstype)的前端程序。各文件系统专用程序可以在/sbin、/sbin/fs、/sbin/fs.d 等目录中找到。mkfs.dos 用来创建 DOS 文件系统;mkfs.reiserfs 用来创建 ReiserFS 文 件系统;kfs.jfs 用来创建 JFS 文件系统;mkfs.vfat 用来创建 VFAT 文件系统。出于对 Linux 各个发行版本的兼容性,对于建立同一 Linux 文件系统的命令可能有不同的命 令名称,实际功能是相同的,如 mkfs.ext2、mkfs.ext3、mke2fs 都可用来创建 Ext2/Ext3 文件系统
案例练习
(1)在设备/dev/hda8 上建立 Ext3 文件系统。
# mkfs -t ext3 /dev/hda8
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
251392 inodes, 502023 blocks
25101 blocks (5.00%) reserved for the super user
First data block=0
16 block groups
32768 blocks per group, 32768 fragments per group
15712 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
(2)在设备/dev/hda7 上创建 XFS 文件系统。
#mkfs -t xfs /dev/hda7
meta-data=/dev/hda7 isize=256 agcount=16, agsize=156382 blks
= sectsz=512
data = bsize=4096 blocks=2502112, imaxpct=25
= sunit=0 swidth=0 blks, unwritten=1
naming =version 2 bsize=4096
log =internal log bsize=4096 blocks=2560, version=1
= sectsz=512 sunit=0 blks
realtime =none extsz=65536 blocks=0, rtextents=0
3.8 mkfs.ext2:建立一个 Ext2/Ext3 文件系统
-
作用:mkfs.ext2 命令用来建立一个 Ext2/Ext3 文件系统。
-
用法:mkfs.ext2 [选项] device [blocks]
-
主要选项如下:
命令 描述 -b block-size
指定区块大小,单位为字节。 -f fragment-size
指定不连续区段的大小,单位为字节。 -F
强制执行 mke2fs 命令。 -c
检查是否有损坏的区块。 -L volume-label
设置分区的卷标(最长 11 个字符)。 -M last-mounted-directory
记录最后一次挂入的目录。 -m reserved-blocks-percentage
指定给管理员保留区块的比例,默认值为 5%,这是 UNIX默认值的一半。 -N number-of-inodes
指定要建立的 inode 数目。 -i bytes-per-inode
指定“字节/inode”的比例。 -j
建立一个 Ext3 日志文件系统。 -r fs-revision
指定要建立的 Ext2 文件系统版本。 -l filename
从指定文件中读取文件系统损坏区块的信息。 -R raid_opts
设置磁盘阵列参数。 -q
执行时不显示任何信息。 -v
执行时显示详细信息。 device
设备名称。 blocks
区块数。
案例练习
(1)在第二个 SCSI 磁盘的第二个分区上创建一个 Ext2 文件系统。
# mkfs.ext2 /dev/sdb2
(2)检查第二个 IDE 磁盘第一个分区的坏块之后,创建一个文件系统,卷标设置为“cjh”, 保留 2%的空间,创建 1000 个 inode。
#mke2fs -L cjh -c -q -m 2 -N 1000 /dev/hdb1