与其他操作系统一样,在Linux系统下用户的数据和程序也是以文件的形式保存的。所以在使用Linux的过程中,要经常对文件与目录进行操作。
(1)文件名与文件类型
文件名是一个文件的标识。Linux文件命名的规则与Windows下基本相同。它同样是由字母、数字、下画线、圆点组成,最大的长度是255个字符。
与 Windows 9x 一样,Linux 系统中也有普通文件和目录文件,不过目录文件在 Windows中被简称为目录。而在Linux系统中有一种特殊的文件,那就是设备文件。在Linux系统中,把每一个I/O设置都映射成为一个文件,可以像普通文件一样处理,这就使得文件与设备的操作尽可能统一。从用户的角度来说,对I/O设备的使用和一般文件的使用几乎一样,这样就可以不必了解I/O设备的细节。
(2)目录结构
与Windows下一样,在Linux中也是通过目录来组织文件的。但不同的是,在Linux下只有一个根目录,而不像Windows那样一个分区一个根目录。如果有多个分区的话,就需要将其他分区mount到根目录上来用。
大家回忆一下当时为 Linux 分区时,有一个选项要填,那就是 Mount Point,我们将其中一个写成了“/”,也就是根目录(这点与 Windows 相反,一个是“\”,一个是“/”,真是天生冤家)。其他的则可能是/home、/usr。
安装完系统后,你会发现/home、/usr就是根目录下面的home、usr目录。对了,整个分区就用于该目录了。
安装完Linux后有许许多多目录,下面我们就说明一些重要的。
/bin:存放着一百多个Linux下常用的命令、工具。
/dev:存放着Linux下所有的设备文件。
/home:用户主目录,每建一个用户,就会在这里新建一个与用户同名的目录,给该用户一个自己的空间。
/lost+found:顾名思义,一些丢失的文件可能会在这里找到。
/mnt:外部设备的挂接点,通常用cdrom与floppy两个子目录。它的存在简化了光盘与软盘的使用。你只需在塞入光盘后,运行 mount/mnt/cdrom,就可以将光盘上的内容 Mount到/mnt/cdrom 上,然后就可以访问了。不过你使用完成后,应该离开该目录,并执行umount/mnt/cdrom。同样,软盘就是mount/mnt/floppy和umount/mnt/floppy了。
/proc:这其实是一个假的目录,通过这里可以访问到内存里的内容。
/sbin:这里存放着系统级的命令与工具。
/usr:通常用来安装各种软件的地方。
/usr/X11R6 X Window 目录。
/usr/bin与/usr/sbin一些后安装的命令与工具。
/usr/include、/usr/lib 及/usr/share 则是存放一些共享链接库。
/usr/local 常用来安装新软件。
/usr/src Linux 源程序。
/boot:Linux就是从这里启动的。
/etc:这里存放着Linux大部分的配置文件。
/lib:静态链接库。
/root:root用户的主目录,这就是特权之一。
/var:通常用来存放一些变化中的东西。
/var/log:存放系统日志。
/var/spool:存放一些邮件、新闻、打印队列等。
学习目标 掌握 Shell 中检查磁盘中损坏区块的方法
语法 badblocks [-可选参数] 磁盘设备 [结束块 [起始块] ]
功能说明 badblocks 指令是磁盘检查命令,在此指令中必须指定将要检查的磁盘设备,而磁盘区块是不必需的。
参数说明 可选参数及其说明如下:


【其他相关参数】
/dev/hd:IDE 磁盘。
/dev/sd:SCSI 磁盘。
/dev/ed:ESDI 磁盘。
/dev/fd:软磁盘。
基础应用
范例474 检测磁盘是否有坏道。
[root@localhost ~]# badblocks /dev/fd0H1440 //检测整个磁盘是否有坏道
执行指令“badblocks /dev/fd0H1440”检测指定磁盘/dev/fd0H1440 是否有坏道。
范例475 检测磁盘的指定区块是否有坏道。
[root@localhost ~]# badblocks –b 1024 /dev/hda1 –o hda-badblocks //检测磁盘是否有坏道
[root@localhost ~]# cat hda-badblocks //查看信息
[root@localhost ~]#
执行指令“badblocks –b 1024 /dev/hda1 –o hda-badblocks”检测指定磁盘/dev/hda1 是否有坏道,同时将检查结果保存到文件hda-badblocks中。如果磁盘存在坏道查看文件将显示列表,如果没检测出坏道则无信息被列出。
学习目标 掌握应用 cfdisk 对磁盘进行分区的方法
语法 cfdisk [-可选参数] [外围设备代号]
功能说明 cfdisk 指令是磁盘分区程序。它是基于鼠标的具有互动式操作界面的硬盘分区程序。与传统的fdisk相比利用鼠标键来操控分区操作,使整个过程显得更为简单。
参数说明 可选参数及其说明如下:

基础应用
范例476 硬盘分区。
[root@localhost ~]# cfsik //进行硬盘分区
执行指令“cfsik”进入图形界面,这时屏幕上会显示系统上所有安装的硬盘,你可以使用上下键来选择希望进行分区的硬盘。
学习目标 了解使用 df 指令检查磁盘文件系统的信息
语法 df [-可选参数] [文件或设备]
功能说明 使用 df 指令查看磁盘空间的信息。指令可以查找指定文件系统的占有情况。如果指令中未指定文件名,将显示当前所有挂载的文件系统的可用空间。默认情况下,磁盘空间将以 1KB 为单位进行显示,除非环境变量 POSIXLY_ CORRECT 被指定,那样的话将以512字节为单位进行显示。
参数说明 可选参数及其说明如下:


基础应用
范例477 输出当前所有挂载的文件系统的可用空间。
[root@localhost ~]# df //显示磁盘信息
Filesystem 1K-blocks used Available use% Mounted on
/dev/mapper/VolGroupoo-LogVoloo
13077624 2493264 9909340 21% /
/dev/hda1 101086 11885 83982 13% /boot
tmpfs 257744 0 257744 0% /dev/shm
/dev/hdc 3926368 3926368 0 100% /media/CentOS_5.2_Final
[root@localhost ~]#
执行指令“df”显示当前所有挂载的文件系统的可用空间,其中第一列表示文件系统所在的设备名称和分区;第二列显示的是各个分区的数据大小,以1024作为基本的数据块;第三列表示已用数据块的大小;第四列表示可用数据块的大小,但第三列和第四列的数据块之和不一定等于第二列中的数据块;第五列显示普通用户空间使用的百分比;最后一列给出了文件系统的挂载目录。
范例478 以可读性较高的方式显示信息。
[root@localhost ~]# df -h //显示磁盘信息
Filesystem Size used Avail use% Mounted on
/dev/mapper/VolGroupoo-LogVoloo
13G 2.4G 9.5G 21% /
/dev/hda1 99M 12M 83M 13% /boot
tmpfs 252M 0 252M 0% /dev/shm
/dev/hdc 3.8G 3.8G 0 100% /media/CentOS_5.2_Final
[root@localhost ~]#
执行指令“df -h” 以可读性较高的方式显示当前所有挂载的文件系统的可用空间。
范例479 显示各文件系统的inode信息。
[root@localhost ~]# df -ia //显示磁盘信息
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/VolGroupoo-LogVoloo
3375104 93445 3281659 3% /
proc 0 0 0 - /proc
sysfs 0 0 0 - /sys
devpts 0 0 0 - /dev/pts
/dev/hda1 26104 34 26070 1% /boot
tmpfs 64436 1 64435 1% /dev/shm
none 0 0 0 - /proc/sys
fs/binfmt_misc
sunrpc 0 0 0 - /var/lib/
nfs/rpc_pipefs
/dev/hdc 0 0 0 - /media/
CentOS_5.2_Final
[root@localhost ~]#
执行指令“df –ia”显示各文件系统的全部 inode 信息。
范例480 显示文件系统的信息。
[root@localhost ~]# df -t ext2 //显示磁盘信息
Filesystem 1K-blocks used Available use% Mounted on
[root@localhost ~]#
执行指令“df -t ext2”显示当前磁盘的文件系统的信息。
学习目标 了解使用 eject 指令弹出光盘的方法
语法 eject [-可选参数] [设备]
功能说明 使用 eject 指令对已挂载的设备进行操作。
参数说明 可选参数及其说明如下:


基础应用
范例481 退出光盘。
[root@localhost ~]# eject /mnt/cdrom //退出光盘
[root@localhost ~]#
执行指令“eject /mnt/cdrom”退出光盘。
范例482 插入光盘。
[root@localhost ~]# eject /mnt/cdrom //插入光盘
[root@localhost ~]#
执行指令“eject -t /mnt/cdrom” 插入光盘。
学习目标 了解使用 du 指令查看目录或文件大小的方法
语法 du [-可选参数] [目录/文件]
功能说明 du指令能显示指定目录或文件的磁盘空间使用情况。如果指令中未指定目录或文件,将显示当前目录的磁盘占用情况。
参数说明 可选参数及其说明如下:


基础应用
范例483 显示当前目录所占用的磁盘空间。
[root@localhost yy]# du //显示当前目录所占用的磁盘空间
8 /home/yy/。mozilla/extensions
8 /home/yy/。mozilla/plugins
24 /home/yy/。mozilla
400 。
[root@localhost yy]#
执行指令“du” 显示当前目录所占用的磁盘空间。
范例484 显示指定文件占用的磁盘空间。
[root@localhost ~]# du ax //显示指定文件占用的磁盘空间
8 ax
[root@localhost ~]# du cop1 zt a1.txt.bak s1.tar //显示指定多个文件占用的磁盘空间
8 cop1
16 zt
8 a1.txt.bak
16 s1.tar
[root@localhost ~]#
执行指令“du ax”和指令“du cop1 zt a1.txt.bak s1.tar”分别显示指定文件 ax 和文件 cop1、zt、a1.txt.bak、s1.tar占用的磁盘空间。
学习目标 掌握使用 fdisk 指令对磁盘进行分区的方法
语法 fdisk [-可选参数] 设备名称
功能说明 fdisk 指令是 Linux 下管理分区的程序。应用该程序不仅可以创建磁盘分区,还可以对磁盘进行维护,改变分区类型。
参数说明 可选参数及其说明如下:

【fdisk程序指令】
a:设置/删除可引导分区标记。
d:删除指定分区。
l:列出分区类型。
m:显示 fdisk 程序指令。
n:新建分区。
p:列出当前分区信息。
q:退出 fdisk 分区,对更改不保存。
t:改变分区 ID。
v:检测当前分区信息。
w:退出 fdisk 分区,保存更改。
基础应用
范例485 显示本地磁盘的分区表。
[root@localhost ~]# fdisk -l //显示当前磁盘的情况
Disk /dev/hda: 15.0 GB, 15032385536 bytes
255 heads, 63 sectors/track, 1827 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391+ 83 Linux
/dev/hda2 14 78 522112 82 Linux swap
/dev/hda3 79 1827 14048843+ 83 Linux
[root@localhost ~]#
执行指令“fdisk –l”显示本地磁盘上的分区表。其中 id 代表的是分区类型,‘83’是 Linux文件系统正确的分区类型,‘82’是 Linux swap 分区的正确类型。
范例486 对系统中的新硬盘进行配置。
[root@localhost ~]# fdisk /dev/hdb //进入fdisk程序
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel.Changes will remain in memory only,
until you decide to write them.After that, of course, the previous
content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): n
Command action
e extended
p primary partition(1-4)
p
Partition number (1-4):2
First cylinder (1-512,default 1):1
Last cylinder or +size or +sizeM or +sizeK (1-512,default 512):+100M
Command (m for help): m
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality
Command (m for help): p
Disk /dev/hdb: 15.0 GB, 15032385536 bytes
255 heads, 63 sectors/track, 1827 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hdb1 1 13 104391+ 83 Linux
/dev/hda2 14 1827 14570955 8e Linux LVM
Command (m for help): w
[root@localhost ~]#
执行指令“fdisk /dev/hdb”对系统中的新硬盘进行配置,进入 fdisk 程序。在 Command (m for help): 后输入 fdisk 程序指令。
学习目标 通过 hdparm 指令提供的相关功能来显示和设置 IDE 或 SCSI 硬盘的参数
语法 hdparm [-可选参数] [设备]
功能说明 hdparm 指令为我们提供了一个通过命令行接口来显示和设置硬盘参数的方法,使工作变得更为简便。但该指令在早期的Linux内核下有些功能不能正常运行,用户要想使用该指令则需将自己的Linux内核版本升级到1.2.13或更高的版本。
参数说明 可选参数及其说明如下:

基础应用
范例487 显示硬盘参数。
[root@localhost ~]# hdparm -g /dev/hda //显示硬盘参数
/dev/hda:
geometry = 31068/15/63,sectors = 29360128,start = 0
[root@localhost ~]#
执行指令“hdparm -g /dev/hda”显示/dev/hda 硬盘的磁轨、磁头、磁区等参数。
范例488 显示硬盘参数。
[root@localhost ~]# hdparm –v /dev/hda //显示硬盘参数
/dev/hda:
mulctount = 64 (on)
Io_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 31068/15/63,sectors = 29360128,start = 0
[root@localhost ~]#
执行指令“hdparm -v /dev/hda”显示/dev/hda 硬盘的所有相关参数。
学习目标 能使用 mkswap 指令在文件或者设备上设置交换区
语法 mkswap [-可选参数] 设备 [区块大小]
功能说明 mkswap 指令可将磁盘设备或文件设置为 Linux 的交换区。在建立完交换区之后,要使用swapon指令开启swap。
参数说明 可选参数及其说明如下:

基础应用
范例489 设置交换区。
[root@localhost ~]# mkswap -L spnn /dev/hdb1
执行指令“mkswap –L spnn /dev/hdb1”设置交换区,同时指定一个供swapon使用的标签。
学习目标 学会应用 sfdisk 指令进行分区和该指令的相关操作
语法 sfdisk [-可选参数] 设备号
功能说明 sfdisk 指令不仅可以作为硬盘的分区工具,同时还能显示硬盘上的分区设置信息,以及对硬盘设备的分区进行检查。如果用户对现有的硬盘分区不太满意,还可以使用该指令对自己的硬盘进行重分区。
参数说明 可选参数的具体说明如下:

基础应用
范例490 显示分区信息。
[root@localhost ~]# sfdisk -l //显示磁盘的分区信息
Disk /dev/sda: 1044 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting
from 0
Device Boot Start End #cyls #blocks Id System
/dev/sda1 * 0+ 12 13- 104391 83 Linux
/dev/sda2 13 1826 1814 14570955 8e Linux LVM
/dev/sda3 0 - 0 0 0 Empty
/dev/sda4 0 - 0 0 0 Empty
[root@localhost zx]# fdisk -d //显示磁盘的分区信息
# partition table of /dev/had
unit: sectors
/dev/sda1 : start = 63, size = 208782, Id = 83, bootable
/dev/sda2 : start = 208845, size = 29141910, Id = 8e
/dev/sda3 : start = 0, size = 0, Id = 0
/dev/sda4 : start = 0, size = 0, Id = 0
[root@localhost ~]#
执行指令“sfdisk –l”和“sfdisk -d”,以不同的形式显示磁盘的分区信息。
学习目标 能使用 losetup 指令卸除/设置循环设备
语法 losetup [-可选参数] 文件
功能说明 losetup 指令可用来循环设备,通过把文件虚拟成区块设备来模拟整个文件系统,用户可以将其视为设备挂载到指定的目录下来使用。
参数说明 可选参数及其说明如下:

基础应用
范例491 卸除循环设备。
[root@localhost ~]# losetup /dev/loop2
执行指令“losetup /dev/loop2”停止设备 /dev/loop2。
实战思考
应用思考
使用指令losetup将指定文件虚拟化为设备,同时指定设备号和加密编码文件,然后按照设备的形式对其进行操作。
学习目标 了解 mbadblocks 指令检查 MS-DOS 文件系统的磁盘是否损坏的方法
语法 mbadblocks [-V] 设备号
功能说明 mbadblocks 是 mtools 工具指令,使用该指令可对 MS-DOS 文件系统的磁盘驱动器进行检查,然后标示出损坏的磁区。
参数说明 可选参数及其说明如下:

基础应用
范例492 磁盘检查。
[root@localhost ~]# mbadblocks device
执行指令“mbadblocks device” 进行磁盘检查。
学习目标 学会在 MS-DOS 文件系统中切换工作目录
语法 mcd [目录名]
功能说明 mcd 是 mtools 工具指令,使用该指令可在 MS-DOS 文件系统中进行工作目录切换。若直接输入指令,则显示当前所在磁盘与工作目录。
基础应用
范例493 显示当前工作目录。
[root@localhost ~]# mcd
A:
[root@localhost ~]#
执行指令“mcd” 显示当前工作目录。Mcd 命令或不跟参数时将回传当前目录。
学习目标 了解删除 MS-DOS 目录/文件的方法
语法 mdeltree [-v] [目录/文件]
功能说明 mdeltree 是 mtools 工具指令,使用 deltree 指令可删除 MS-DOS 文件系统中的目录及目录下所有子目录与文件。
参数说明 可选参数及其说明如下:

基础应用
范例494 删除MS-DOS文件。
[root@localhost ~]# mdeltree msdosfile
执行指令“mdeltree msdosfile” 删除 MS-DOS 文件 msdosfile。
学习目标 了解 mdu 指令查看 MS-DOS 目录所占用的磁盘空间的方法
语法 mdu [-可选参数] [目录]
功能说明 mdu 是 mstools 工具指令,执行 mdu 指令显示 MS-DOS 文件系统中目录所占用的磁盘空间。
参数说明 可选参数及其说明如下:

基础应用
范例495 显示D盘中文件目录所占用的磁盘空间。
[root@localhost ~]# mdu –a D:
学习目标 能使用 mformat 对 MS-DOS 文件系统的磁盘进行格式化
语法 mformat [-可选参数] [驱动器代号]
功能说明 mformat 是 mtools 工具指令,执行 mformat 指令可将指定的磁盘分区格式化为MS-DOS文件系统。
参数说明 可选参数及其说明如下:


基础应用
范例496 磁盘格式化。
[root@localhost ~]# mformat /dev/fd0
执行指令“mformat /dev/fd0” 格式化磁盘。
学习目标 学会运用指令 mkbootdisk 建立目前系统的启动盘
语法 mkbootdisk [-可选参数] 内核版本
功能说明 在系统安装完成后使用 mkbootdisk 指令可制作一张当前 Linux 系统的启动盘。在制作启动盘前,必须了解当前系统的内核版本。
参数说明 可选参数及其说明如下:


基础应用
范例497 制作当前系统的启动盘。
[root@localhost ~]# mkbootdisk -–device /dev/fd0 2.6.26-1
执行指令“mkbootdisk -–device /dev/fd0 2.6.26-1” 制作当前系统的启动盘。
学习目标 能进行命令行方式下的目录切换
语法 cd [目标目录]
功能说明 cd 指令可以切换当前目录到指定目录,但要求用户拥有该目录的权限。与DOS下的cd指令相比它们的用法和意思几乎完全相同,但DOS下的cd是“”,而Linux下是“/”。而且与DOS下的cd与“\”可以直接相接相比,在Linux系统下cd与“/”之间必须要有空格,否则系统会提示出错。
基础应用
范例498 切换到根目录。
[root@localhost /]# pwd //显示当前目录
/
[root@localhost ~]# cd /root //切换到根目录
[root@localhost ~]# pwd //显示当前目录
/root
[root@localhost ~]#
执行指令“cd /root” 切换当前目录到/root 根目录,cd /是切换到主目录而不是根目录。
范例499 切换到指定目录。
[root@localhost ~]# cd /usr/bin //切换目录到/usr/bin
[root@localhost bin]# pwd //显示当前目录
/usr/bin
[root@localhost bin]# cd /root //切换到根目录
[root@localhost ~]#
执行两次目录切换,第一次从根目录切换到指定目录/usr/bin,第二次从目录/usr/bin下切换回根目录。
范例500 切换到上层目录。
[root@localhost bin]# pwd //显示当前目录
/usr/bin
[root@localhost bin]# cd .. //返回上层目录
[root@localhost usr]# pwd //显示当前目录/
/usr
[root@localhost usr]#cd .. //返回上层目录
[root@localhost ~]#
执行两次指令“cd ..”最终返回到根目录/root 下。
学习目标 学会使用 dd 指令进行文件复制
语法 dd [-可选参数]
功能说明 dd 指令可复制指定输入文件到指定的输出文件或设备,并根据指定的转换在复制过程中进行格式转换。如果指令未指定输入文件,将从标准输入中读取数据。
参数说明 可选参数及其说明如下:

【文件转换关键字】
ASCII:把 EBCDIC 码转换成 ASCII 码。
ebcdic:把 ASCII 码转换成 EBCDIC 码。
ibm:把 ASCII 码转换成 alternate EBCDIC 码。
block:把变动位转换成固定的字符。
ublock:把固定位转换成变动位。
ucase:把小写字母转换成大写字母。
lcase:把大写字母转换成小写字母。
swab:交换每一对输入字节。
noerror:不因出错而停止处理。
基础应用
范例501 复制指定的输入文件到输出文件。
[root@localhost ~]# dd if=/root/anaconda-ks.cfg of=/home/yy/ar //复制文件
2+1 recoders in
2+1 recoders out
1159 bytes (1.2 KB) copied, 0.0007734 seconds, 1.5MB/s
[root@localhost ~]#
执行指令“dd if=/root/anaconda-ks.cfg of=/home/yy/ar”,复制文件/root/anaconda-ks.cfg 到指定路径的文件ar中。
范例502 在文件复制过程中指定输入/输出字节数。
[root@localhost ~]# dd if=/root/anaconda-ks.cfg of=/home/yy/arbs=128 //复制文件
9+1 recoders in
9+1 recoders out
1159 bytes (1.2 KB) copied, 0.000451001 seconds, 2.6MB/s
[root@localhost ~]#
执行指令“dd if=/root/anaconda-ks.cfg of=/home/yy/ar”并指定文件复制过程中的输入/输出字节数。
范例503 在文件复制过程中指定文件转换格式。
[root@localhost yy]# cat a1
Hello everyone
Hello everybody
How are you
Fine thank you and you
I fine too
Linux
Red hat Linux
[root@localhost yy]# dd if=a1 of=cop1 conv=swab //复制文件
0+1 recoders in
0+1 recoders out
98 bytes (98 B) copied, 0.000255707 seconds, 383MB/s
[root@localhost yy]# cat a1
eHll overeoyenh
leole evyrobydh
woa ery uo
ifent ahkny uoa dny uoi
f ni eot
oilun
xer dah tilun
x
[root@localhost yy]#
执行指令“dd if=a1 of=cop1 conv=swab” 复制文件,同时转换文件的格式。
学习目标 能把根目录更换成用户指定的目录
语法 chroot[-可选参数] 目录 [执行指令]
功能说明 chroot 指令可以用来改变操作系统当前用户的根目录环境,但要求用户指定的新的根目录下必须拥有操作系统的必要文件和结构。使用chroot指令可以对登录本系统的用户进行限制,同时也可以增加系统的安全性。
参数说明 可选参数及其说明如下:

基础应用
范例504 改变用户的根目录。
[root@localhost ~]#chroot /home/mn //改变根目录
执行指令“chroot /home/mn”改变用户的根目录后,等用户再登录时,系统默认的根目录将是/home/mn。
学习目标 能使用 mdir 指令显示 MS-DOS 目录
语法 mdir [-可选参数] 目录
功能说明 运行 mdir 指令将显示指定的 MS-DOS 文件系统中目录下的内容,mdir 指令是mtools工具指令。
参数说明 可选参数及其说明如下:

基础应用
范例505 显示MS-DOS目录。
[root@localhost ~]#mdir -w dosdirectory //以横排方式显示MS-DOS目录
运行指令“mdir - w dosdir”,以横排方式显示 MS-DOS 目录下的文件和子目录名称。
学习目标 能使用 dirname 指令显示路径
语法 dirname[选择性参数][路径]
功能说明 dirname 指令打印出指定路径除了名字之外的路径前缀。
参数说明 选择性参数的具体说明如下:

基础应用
范例506 显示文件指定路径除了名字之外的路径前缀。
[root@localhost ~]# dirname /home/kk/a.c //显示除了名字之外的路径前缀
/home/kk
[root@localhost ~]#
本例使用指令“dirname /home/kk/a.c”显示路径/home/kk/a.c 中除了文件名字 a.c 的路径前缀,也就是/home/kk,如上所示。
学习目标 了解 dir 显示目录信息的方法
语法 dirs [-可选参数]
功能说明 dirs指令用来显示当前目录的相关信息。Dirs –l指令与 pwd指令的功能相同,显示当前目录的完整路径。
参数说明 可选参数及其说明如下:

基础应用
范例507 显示当前目录信息。
[root@localhost ~]# dirs //显示堆栈中的记录
~
[root@localhost ~]# dirs –l
/root
执行指令“dirs”显示目录堆栈中的记录,指令“dirs –l”显示的是目录的完整路径。
学习目标 能使用 ls 指令查看目录内容
语法 ls [-可选参数] [目录]
功能说明 ls 指令可显示指定目录的内容,包括文件和子目录的名称。如果指令中未指定目录名,则显示当前目录的信息。
参数说明 可选参数及其说明如下:


基础应用
范例508 每列只显示一个文件或目录名称。
[root@localhost ~]# ls -1
=
123
a1
anaconda-ks.cfg
Desktop
had-bad-list
install.log
[root@localhost ~]#
执行指令“ls -1” 以每列只显示一个文件或目录名的方式,显示当前目录下的文件和子目录名。
范例509 显示文件或目录的详细信息。
[root@localhost ~]# ls –l
total 120
-rw-r--r-- 1 root root 28 11-29 09:27 =
-rw-r--r-- 1 root root 38 11-29 09:30 123
-rw-r--r-- 1 root root 132 11-29 09:35 a1
-rw-r--r-- 1 root root 1822 01-11 16:51 anaconda-ks.cfg
drwxr-xr-r 3 root root 4096 01-11 15:52 Desktop
-rw-r--r-- 1 root root 1822 01-11 16:51 had-bad-list
-rw-r--r-- 1 root root 4096 01-11 15:52 install.log
[root@localhost ~]# ll
total 120
-rw-r--r-- 1 root root 28 11-29 09:27 =
-rw-r--r-- 1 root root 38 11-29 09:30 123
-rw-r--r-- 1 root root 132 11-29 09:35 a1
-rw-r--r-- 1 root root 1822 01-11 16:51 anaconda-ks.cfg
drwxr-xr-r 1 root root 4096 01-11 15:52 Desktop
-rw-r--r-- 1 root root 1822 01-11 16:51 had-bad-list
-rw-r--r-- 1 root root 4096 01-11 15:52 install.log
[root@localhost ~]#
执行指令“ls -1”显示当前目录下的文件和子目录的详细信息,从范例中可以看出指令“ls -1”和“l1”的执行效果相同。
范例510 将列表输出到指定文件。
[root@localhost ~]# cat a2
A1
A1
[root@localhost ~]# ll > a2
[root@localhost ~]# cat a2
total 120
-rw-r--r-- 1 root root 28 11-29 09:27 =
-rw-r--r-- 1 root root 38 11-29 09:30 123
-rw-r--r-- 1 root root 132 11-29 09:35 a1
-rw-r--r-- 1 root root 1822 01-11 16:51 anaconda-ks.cfg
drwxr-xr-r 1 root root 4096 01-11 15:52 Desktop
-rw-r--r-- 1 root root 1822 01-11 16:51 had-bad-list
-rw-r--r-- 1 root root 4096 01-11 15:52 install.log
[root@localhost ~]# ll >> a2
total 120
-rw-r--r-- 1 root root 28 11-29 09:27 =
-rw-r--r-- 1 root root 38 11-29 09:30 123
-rw-r--r-- 1 root root 132 11-29 09:35 a1
-rw-r--r-- 1 root root 1822 01-11 16:51 anaconda-ks.cfg
drwxr-xr-r 1 root root 4096 01-11 15:52 Desktop
-rw-r--r-- 1 root root 1822 01-11 16:51 had-bad-list
-rw-r--r-- 1 root root 4096 01-11 15:52 install.log
total 120
-rw-r--r-- 1 root root 28 11-29 09:27 =
-rw-r--r-- 1 root root 38 11-29 09:30 123
-rw-r--r-- 1 root root 132 11-29 09:35 a1
-rw-r--r-- 1 root root 1822 01-11 16:51 anaconda-ks.cfg
drwxr-xr-r 1 root root 4096 01-11 15:52 Desktop
-rw-r--r-- 1 root root 1822 01-11 16:51 had-bad-list
-rw-r--r-- 1 root root 4096 01-11 15:52 install.log
[root@localhost ~]#
执行指令“ll >a2”将结果保存到文件 a2 中,然后执行指令“ll >>a2”将结果保存到文件a2的末尾。在上述指令中使用了Shell中的两个特殊字符。
【Shell的特殊字符】
通配符:
*:代表任意字符串。
?:代表单个字符。
[]:代表指定的字符范围,连续字符用连字符“-” :如[ac-ek],表示 acdek。
输入/输出重定向:
>:将指令执行结果输出到指定文件,如文件已存在,覆盖原文件内容,或重定向输出设备。
>>:将指令执行结果追加到指定文件的后面。
<:以指定文件的内容作为输入。
其他:
单引号:不处理任何变量和命令。
双引号:只处理变量,不处理命令。
反引号:命令处理。
学习目标 建立目录
语法 mkdir [-可选参数] 目录名
功能说明 mkdir 指令建立目录时,只有当指定的目录不存在才创建它。使用 mkdir 指令不仅能建立目录,同时还能设置该目录的权限。
参数说明 可选参数及其说明如下:

基础应用
范例511 创建一个新目录,同时指定目录的属性。
[root@localhost ~]# mkdir -m a=r wx
[root@localhost ~]# ll wx
dr--r--r-- 2 root root 4096 11-29 09:27 wx
[root@localhost ~]#
执行指令“mkdir -m a=r wx”创建一个新目录 wx,同时指定目录的属性。
学习目标 能使用 mlabel 指令显示/设置 MS-DOS 磁盘驱动器的标签名称
语法 mlabel [-可选参数] 驱动器号 [标签名]
功能说明 mlabel 指令是 mtools 工具指令,使用该指令可显示或设置指定 MS-DOS 磁盘驱动器的标签名称。
参数说明 可选参数及其说明如下:

基础应用
范例512 删除磁盘驱动器的标签名。
[root@localhost ~]# mlabel -c /dev/cd-rom
执行指令“mlabel –c /dev/cd-rom” 删除磁盘驱动器/dev/cd-rom 的标签名。
学习目标 能使用 mmd 指令在 MS-DOS 文件系统中建立目录
语法 mmd [目录...]
功能说明 mmd 指令是 mtools 工具指令,使用该指令可在 MS-DOS 的文件系统中建立目录。
基础应用
范例513 创建目录。
[root@localhost ~]# mmd c:/mydev
执行命令“mmd C:/mydev”将在磁盘中创建一个 mydev 目录。
范例514 创建多个目录。
[root@localhost ~]# mmd c:/mydev c:/mytest
执行命令“mmd C:/mydev C:/mytest”将在磁盘中创建目录 mydev 和目录 mytest。
学习目标 能使用 mmount 指令挂载 MS-DOS 文件系统
语法 mmount [驱动器代号] [mount 参数]
功能说明 mmount 指令是 mtools 工具指令,可将 MS-DOS 文件系统挂载到 Linux 目录中。具体应用方法与mount指令相同。
学习目标 了解 mpartition 指令建立/删除磁盘分区的方法
语法 mpartition [-可选参数] 驱动器代号
功能说明 mpartition 指令是 mtools 工具指令,使用该指令可建立或删除 MS-DOS 的磁盘分区。
参数说明 可选参数及其说明如下:

基础应用
范例515 创建分区。
[root@yingzheng ~]# mpartition –c c:
执行指令“mpartition –c c:”创建分区。
学习目标 能使用 mrd 指令删除 MS-DOS 文件系统中的目录
语法 mrd [目录...]
功能说明 mrd 指令是 mtools 工具指令,与 mmd 指令是一对,使用 mrd 指令可删除MS-DOS的目录。
基础应用
范例516 删除指定目录。
[root@yingzheng ~]# mrd c:/mytest
学习目标 了解 pwd 指令显示当前工作目录的方法
语法 pwd [-可选参数]
功能说明 pwd 指令可以用来获得用户当前所在目录的绝对路径。
参数说明 可选参数及其说明如下:

基础应用
范例517 显示当前工作目录的绝对路径。
[root@localhost yy]# pwd //显示当前目录的绝对路径
/home/yy
[root@localhost ~]#
执行指令“pwd”查看用户当前所在目录的绝对路径。
学习目标 了解还原 dump 备份文件的方法
语法 restore 必要参数 [-可选参数]
功能说明 使用 restore 指令可对已作过备份的文件进行恢复,这样就可以在源文件损坏时对其进行恢复。
参数说明 必要参数及其说明如下:

可选参数及其说明如下:

基础应用
范例518 从驱动器A中的备份文件恢复源文件。
[root@localhost ~]# restore A:C:/home/mary //恢复源文件
执行指令“restore A:C:/home/mary”利用备份文件恢复源文件。
范例519 数据恢复。
[root@localhost ~]# restore –r –f /home/mary/dcp
执行指令“restore –r –f /home/mary/dcp” 恢复数据。
学习目标 使用 lndir 指令建立源目录下文件和子目录的符号链接
语法 lndir [-可选参数] 源目录 [目标目录]
功能说明 执行 lndir 指令将在指定目标目录中建立与源目录下文件和子目录相对应的符号链接。如果没有指定的目标目录,则在当前目录中建立符号链接。在该指令中源目录必须使用绝对路径。
参数说明 可选参数及其说明如下:

基础应用
范例520 在指定目录中建立源目录下文件和子目录的符号链接。
[root@localhost yy]# lndir /home/yy/prog-c ab
/home/yy/prog-c/work.txt:
/home/yy/prog-c/project:
/home/yy/prog-c/project/src:
/home/yy/prog-c/project/src/user:
/home/yy/prog-c/project/src/user/class-def:
/home/yy/prog-c/project/src/user/can:
/home/yy/prog-c/project/src/user/can/can.c:
/home/yy/prog-c/project/src/user/can/can.h:
[root@localhost yy]#
执行指令“lndir /home/yy/prog-c ab”,在指定目标目录 ab 中建立与源目录/home/yy/prog-c下文件和子目录相对应的符号链接。
学习目标 了解 Shell 指令的目录删除方法
语法 rmdir [-可选参数] 目录
功能说明 rmdir 指令的功能与 rm 指令类似,但 rmdir 指令只能删除一个空目录。如果指定的删除目录的内容不为空,则显示错误信息。
参数说明 可选参数的具体说明如下:

基础应用
范例521 删除目录。
[root@localhost zx]# pwd //显示路径
/home/mary/test/zx
[root@localhost zx]# ll //显示目录内容
total 0
[root@localhost zx]# cd .. //返回上层目录
[root@localhost test]# ll //返回上层目录
total 8
drwxr-xr-x 2 root root 4096 jan 19 11:17 zx
[root@localhost test]# rmdir –p /home/yy/test/zx
[root@localhost test]# cd .. //返回上层目录
[root@localhost yy]# ll
total 352
-rw-r--r-- 1 root root 2 jan 4 2008 11
-rw------- 1 root root 72 jan 2 2008 a1.txt
-rw------- 1 root root 63 jan 2 2008 a1.txt
-rw------- 1 root root 162 jan 2 2008 a2.txt
-rw-r--r-- 1 root root 97 jan 2 2008 a.c
-rw-r--r-- 1 root root 67520 jan 2 2008 14:53 b1
drwxr-xr-x 2 root root 4096 jan 2 2008 Desktop
-rw-r--r-- 1 root root 71488 jan 1 2008 16:10 sr.tar
-rw-r--r-- 1 root root 142 jan 2 2008 09:11 tt.c
[root@localhost yy]#
执行指令“rmdir –p /home/yy/test/zx”,删除空目录 zx 的同时删除除了 zx 之外同样为空的目录test。
学习目标 掌握使用 tree 指令以树状图显示目录的内容
语法 tree [-可选参数] [目录]
功能说明 使用 tree 指令可显示指定目录下以及子目录下的所有文件。
参数说明 可选参数的具体说明如下:


基础应用
范例522 显示目录树。
[root@localhost ~]# tree //显示目录树
。
|-- 123
|-- 11
|-- =
|-- Desktop
| |-- new file。txt
| |-- new file。txt ~
| |-- yy
| |-- 17:00
| |-- a1.txt
| |-- a2.txt
| |-- ar.txt
| |-- tv
| |-- abs
| |-- bbs
| |-- cbs
| |-- cnn
| |-- kbs
| |-- sbs
| |-- men -> ./grub
| |-- initrd-2.6.11-1.1369_FC4.img
|-- install.log
|-- install.log.new
|-- install.log.syslog
|-- lib
|-- lib.a
|-- lib.new
|-- lost+found
|-- memtest86+-1.55.1
|-- nc
|-- nohup.out
|-- restoresymtable
|-- sushi
|-- System.map-2.6.11-1.1369_FC4
|-- abc
|-- anaconda-ks.cfg
|-- config-2.6.11-1.1369_FC4
|-- temp
|-- vmlinuz-2.6.11-1.1369_FC4
|-- wc
|-- work
5 directories, 56 files
[root@localhost ~]#
执行指令“tree”显示当前目录的目录树。
学习目标 了解指令的执行和挂载文件系统的方法
语法 automount [-可选参数] [挂载点映射类型[格式]映射[映射参数] ]
功能说明 automount 指令可以为 auto 文件系统配置挂载点。文件系统指的是文件存在的物理空间,在Linux系统中,我们把每个分区看作一个文件系统。而每个文件系统又有不同的目录结构,要想得到Linux文件系统总的目录结构,就需要通过挂载这些不同的分区即文件系统来实现。简而言之,就是将一个文件系统的顶层目录挂到一个文件系统的子目录上,使之成为一个整体的过程就是挂载。子目录就是所谓的挂载点,而且这个挂载点必须是一个目录,可以为空也可以不为空,但挂载后目录下以往的内容将不可用。automount指令和mount指令一样都不能建立挂载点,所以要求给出的挂载点一定是已经存在的目录名。
参数说明 可选参数及其说明如下:


【其他相关参数】
文件:映射一个通常的文字文件。
程序:映射一个可执行的程序。
yp:映射一个 NIS(YP)数据库。
nisplus:映射一个 NIS+数据库。
hesiod:映射一个 hesiod 数据库。
ldap:映射一个 ldap 参数。
格式:映射数据的格式。
映射:使用的映射文件的位置信息。
映射参数:所有不使用“-”选项的指令将被看作“-o”参数来挂载。
基础应用
范例523 直接输入命令。
[root@localhost ~]# automount
automount:programme is already running
[root@localhost ~]#
执行指令“automount”显示程序已经运行。
范例524 设置超时时间。
[root@localhost ~]#automount -t 9//设置超时时间
[root@localhost ~]#
执行指令“automount -t 9”设置超时时间。
学习目标 学会检查和修复指定的文件系统
语法 e2fsck [-可选参数] 磁盘
功能说明 e2fsck 指令可检查 ext2 文件系统的正确与否。
参数说明 可选参数及其说明如下:

【e2fsck执行的返回值】
0:没有发生任何错误。
1:文件系统发生错误,并已修正。
2:文件系统发生错误,并已修正。
4:文件系统发生错误,未修正。
8:运作时发生错误。
16:语法错误。
128:共享函数库发生错误。
基础应用
范例525 检查磁盘。
[root@localhost ~]# e2fsck /dev/hdb //检查磁盘
执行指令“e2fsck /dev/hdb”检查 ext2 文件系统,并执行默认的处理信息。
学习目标 能使用 mkdosfs 指令在 Linux 系统下建立 MS-DOS 文件系统
语法 mkdosfs [-可选参数] 设备 [区块数]
功能说明 运行 mkdosfs 指令将指定磁盘格式化为 MS-DOS 文件系统的格式。
参数说明 可选参数及其说明如下:

基础应用
范例526 创建一个MS-DOS文件系统,同时设置文件系统的磁盘标签。
[root@localhost ~]# mkdosfs –n Tdos /dev/fd0
执行指令“mkdosfs –n Tdos /dev/fd0” 将软盘格式化为 MS-DOS 文件系统,同时设置文件系统的磁盘标签为Tdos。
学习目标 建立 Linux 系统下的 ext2 文件系统
语法 mke2fs [-可选参数] 设备 [区块数]
功能说明 使用 mke2fs 指令建立 Linux 系统的 ext2 文件系统。
参数说明 可选参数及其说明如下:


基础应用
范例527 创建ext2文件系统。
[root@localhost ~]# mke2fs -c /dev/hdb1
执行指令“mke2fs -c /dev/hdb1”,在指定设备上创建 ext2 文件系统。
学习目标 能使用 mkfs 为指定的设备或者挂载点建立各种文件系统
语法 mkfs [-可选参数] 设备名 [区块数]
功能说明 mkfs 指令可用来在指定的设备上建立各种文件系统,它通过调用相关的程序来执行文件系统的构建,本身并不执行系统构建。
参数说明 可选参数及其说明如下:

基础应用
范例528 创建ext2文件系统。
[root@localhost ~]# mkfs –fs q /dev/hf0
执行指令“mkfs –fs q /dev/hf0” 在指定设备上创建 ext2 文件系统。
学习目标 建立 Linux 系统下的 ext2 文件系统
语法 mkfs.ext2 [-可选参数] 设备 [区块数]
功能说明 mkfs.ext2 指令的功能和 mke2fs 相同,都是用于建立 Linux 系统的 ext2 文件系统程序。详细用法见mke2fs指令。
学习目标 能在 Linux 系统下建立 MS-DOS 文件系统
语法 mkfs.msdos [-可选参数] 设备 [区块数]
功能说明 mkfs.msdos 指令的功能和 mkdosfs 相同,都是用于将指定磁盘格式化为MS-DOS文件系统的格式。详细用法见mkdosfs指令。
学习目标 学会建立要载入 ramdisk 的映像文件
语法 mkinitrd [-可选参数] 必要参数
功能说明 mkinitrd 指令可根据内核版本和指定参数,来制作用以自动加载和系统初始化的启动映像文件,生成映像文件。
参数说明 必要参数及其说明如下:

可选参数及其说明如下:


基础应用
范例529 在指定目录建立一个映像文件。
[root@localhost ~]# mkinitrd /boot/initrd-2.6.26-1.img 2.6.26-1
执行指令“mkinitrd /boot/initrd-2.6.26-1.img 2.6.26-1” 在指定路径下创建一个映像文件。
学习目标 能使用 mkisofs 指令生成 ISO 9660 映像文件
语法 mkisofs [-可选参数] 文件/目录
功能说明 mkisofs指令可将指令中指定的文件/目录根据给定的参数生成ISO 9660镜像文件。
参数说明 可选参数及其说明如下:


基础应用
范例530 制作iso9660映像。
[root@localhost ~]# mkisofs -o Yiso wc
INFO: UTF-8 character encoding detected by locale settings.
Assuming UTF-8 encoded filenames on source filesystem,
use -input-charset to override.
Total translation table size: 0
Total rockridge attributes bytes: 0
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
174 extents written (0 MB)
执行指令“mkisofs -o Yiso wc” 将指令中指定的文件 wc 生成映像文件 Yiso。
学习目标 了解 fsconf 来设置 red hat Linux 文件系统的相关功能
语法 fsconf [-可选参数]
功能说明 fsconf 是专门用来设置 Red Hat Linux 中各项设置的程序。
参数说明 可选参数及其说明如下:

学习目标 卸除文件系统
语法 umount [-可选参数] 文件系统
功能说明 umount 指令和 mount 指令是一对,使用 umount 指令可卸载经 mount 指令进行挂载的文件系统。这里特别提醒一下,umount卸载的对象一定是目前Linux目录中存在的文件系统,当然也可直接使用设备名或文件系统的挂载点来表示文件系统。
参数说明 可选参数及其说明如下:

基础应用
范例531 取消软区的挂载。
[root@localhost ~]# umount /mnt/floppy //取消软区的挂载
执行指令“umount /mnt/floppy”来取消经指令“mount –o ro /dev/fd0 /mnt/floppy”挂载的软区。同理,也可以使用该指令来卸载系统中所挂载的光驱以及其他的移动设备等。
学习目标 熟练掌握 mount 指令对指定设备的挂载方法
语法 mount [-可选参数] 必要参数
功能说明 使用mount指令可将指定设备挂载到已存在的目录。当文件系统挂载完成后,用户可通过对该目录进行操作,来实现对指定设备的文件读写等动作。
参数说明 必要参数及其说明如下:

可选参数及其说明如下:


基础应用
范例532 挂载一个光驱设备。
[root@localhost ~]# mount /dev/cdrom /mnt/cdrom
[root@yingzheng ~]# cd /mnt/cdrom
[root@yingzheng cdrom]# ls
ARMLinuxpatch-2.4.13-ac2-rmk1.bz2 ARMLinuxpatch-2.4.13-ac2-rmk1.bz2
ARMLinuxpatch-2.4.13-ac5-rmk1-broken.bz2 ARMLinuxpatch-2.4.13-ac5-rmk2.bz2
ARMLinux_gnutools diff-2.4.18-rmk7-pxa1.gz
Hardware uCLinux_gnutools
uCLinux-dist-20020927.tar.gz
v2.6
[root@yingzheng cdrom]
执行指令“mount /dev/cdrom /mnt/cdrom”,将指定光驱设备“/dev/cdrom”挂载到“/mnt/cdrom”下。因为mount指令不能建立挂载点,所以如果该挂载点不存在,应先建立该挂载点。完成挂载后,用户就可通过对目录“/mnt/cdrom”的操作来实现对光驱的读写。
范例533 以指定方式挂载设备。
[root@yingzheng ~]# mount –o ro /dev/fd0 /mnt/floppy
[root@yingzheng ~]#
执行指令“mount –o ro /dev/fd0 /mnt/floppy”,将指定软驱设备“/dev/ fd0”以只读方式挂载到“/mnt/floppy”下。现简要介绍“-o”参数挂载文件系统时的操作参数。
【挂载文件系统时的操作参数】
codepage:内码集。
iocharset:字符集。
ro:以只读方式挂载。
rw:以读写方式挂载。
nouser:一般用户无法挂载。
user:一般用户可挂载。
范例534 指定挂载设备的文件类型。
[root@yingzheng ~]# mount –t iso9660 /dev/cdrom /mnt/cdrom
[root@yingzheng ~]#
执行指令“mount –t iso9660 /dev/cdrom /mnt/cdrom” 指定挂载设备的文件类型为iso9660。现简要介绍“-t”参数挂载文件系统时的文件类型。
【文件类型】
msdos:fat16。
nfs:网路文件。
iso9660:CD-MOS 光盘标准文件。
hpfs:OS/2 文件系统。
auto:自动检测文件系统。
范例535 移出一个挂载到新目录。
[root@yingzheng ~]# ls /mnt/cdrom
ARMLinuxpatch-2.4.13-ac2-rmk1.bz2 ARMLinuxpatch-2.4.13-ac2-rmk1.bz2
ARMLinuxpatch-2.4.13-ac5-rmk1-broken.bz2 ARMLinuxpatch-2.4.13-ac5-rmk2.bz2
ARMLinux_gnutools diff-2.4.18-rmk7-pxa1.gz
Hardware uCLinux_gnutools
uCLinux-dist-20020927.tar.gz
v2.6
[root@yingzheng ~]# mount --move /mnt/cdrom /mnt/cd-rom
[root@yingzheng ~]# ls /mnt/cdrom
[root@yingzheng ~]# ls /mnt/cd-rom
ARMLinuxpatch-2.4.13-ac2-rmk1.bz2 ARMLinuxpatch-2.4.13-ac2-rmk1.bz2
ARMLinuxpatch-2.4.13-ac5-rmk1-broken.bz2 ARMLinuxpatch-2.4.13-ac5-rmk2.bz2
ARMLinux_gnutools diff-2.4.18-rmk7-pxa1.gz
Hardware uCLinux_gnutools
uCLinux-dist-20020927.tar.gz
v2.6
[root@yingzheng ~]#
执行指令“mount --move /mnt/cdrom /mnt/cd-rom”,将一个已挂载的设备从当前挂载点移动到指定的新挂载点。
语法 mkfs.minix[选择性参数][必要参数][选择性参数]
功能说明 mkfs 的一种实际构建工具。中间的必要参数是设备或者挂载点,后面的选择性参数是块大小。
参数说明 必要参数的具体说明如下:

选择性参数的具体说明如下:

基础应用
范例536 把软盘制作为Minix文件系统。
[root@yingzheng 100dpi]#mkfs /dev/fd0
学习目标 了解 stat 指令的文件信息查看功能
语法 stat [-可选参数] 文件
功能说明 stat 指令与 ls 指令相比能显示更详细的文件信息。
参数说明 可选参数的具体说明如下:

基础应用
范例537 stat指令显示指定的文件信息。
[root@localhost ~]# ll //显示文件信息
total 352
-rw-r--r-- 1 root root 2 jan 4 2008 11
-rw------- 1 root root 72 jan 2 2008 a1.txt
-rw------- 1 root root 63 jan 2 2008 a1.txt
-rw------- 1 root root 162 jan 2 2008 a2.txt
-rw-r--r-- 1 root root 97 jan 2 2008 a.c
-rw-r--r-- 1 root root 67520 jan 2 2008 14:53 b1
drwxr-xr-x 2 root root 4096 jan 2 2008 Desktop
-rw-r--r-- 1 root root 71488 jan 1 2008 16:10 sr
-rw-r--r-- 1 root root 142 jan 2 2008 09:11 tt.c
[root@localhost zx]# stat sr //显示文件信息
File: 'sr'
Size: 84 Blocks: 16 IO Block: 4096 regular File
Device: fd00h/64768d Inode: 1572898 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2009-01-19 11:15:02.000000000 +0500
Modify: 2009-01-01 12:39:01.000000000 +0500
Change: 2009-01-06 13:22:57.000000000 +0500
[root@localhost ~]# ls sr
sr
[root@localhost ~]#
执行指令“stat sr”显示文件 sr 的详细信息,其中包括文件的最后修改时间和最后访问时间等详细的文件信息。
范例538 显示文件系统的信息。
[root@localhost zx]# stat –f sr //显示文件信息
File: 'sr'
ID: 0 Namelen: 255 Type: ext2/ext3
Block Size:4096 Fundamental block size: 4096
Block: Total: 3269406 Free: 2645444 Available:2476689
Inodes: Total: 3375104 Free: 3281333
[root@localhost ~]#
执行指令“stat –f sr”显示文件 sr 的有关文件系统的信息,而非文件信息。
范例539 以简单的行模式显示文件信息。
root@localhost zx]# stat –t sr //显示文件信息
sr 84 16 81a4 fd00 1572898 1 0 0 1011456902 1009906741 1010341377
[root@localhost ~]#
执行指令“stat –t sr” 以简单的行模式显示文件信息。
学习目标 能关闭系统的 swap 交换区
语法 swapoff [-可选参数] [设备]
功能说明 swapoff 指令与 swapon 指令是一对,swapoff 指令可用于关闭系统交换分区。
参数说明 可选参数的具体说明如下:

基础应用
范例540 关闭交换分区。
[root@localhost ~]# swapoff /dev/hda2 //关闭交换分区
[root@localhost ~]#
执行指令“swapoff /dev/hda2”关闭交换分区/dev/hda2。
范例541 关闭所有交换分区。
[root@localhost ~]# swapoff -a //关闭交换分区
[root@localhost ~]#
执行指令“swapoff -a”关闭/etc/fstab 文件中设置为交换分区的所有设备。
学习目标 学会启动系统交换区
语法 swapon[[-可选参数] [设备]
功能说明 swapon 指令用来启动 Linux 系统中的交换分区,建立虚拟内存。
参数说明 可选参数的具体说明如下:


基础应用
范例542 开启/etc/fstab文件中的所有交换分区。
[root@localhost ~]# swapon -a //开启交换分区
[root@localhost ~]#
执行指令“swapon -a”将开启/etc/fstab 文件中的所有 swap 交换分区。
范例543 显示交换分区的信息。
[root@localhost ~]# swapon -s //显示交换分区
Filename Type Size Used Priority
/dev/hda2 partition 1048568 0 -2
[root@localhost ~]#
执行指令“swapon -s”显示交换分区的信息。
学习目标 学习应用 symlink 指令检查/维护目录中符号链接的方法
语法 symlinks [-可选参数] 目录
功能说明 使用 symlinks 指令不仅可以检查指定的单个目录中的符号链接,还可以检查多个目录中的符号链接,同时显示符号链接的类型。
【symlinks检查的符号链接类型】
absolute:符号链接使用了绝对路径。
dangling:原始文件已经不存在。
lengthy:符号链接的路径中包含了多余的“../”。
messy:符号链接的路径中包含了多余的“/”。
other_fs:原始文件位于其他文件系统中。
relative:符号链接使用了相对路径。
参数说明 可选参数的具体说明如下:


基础应用
范例544 显示指定目录下的符号链接。
[root@localhost ~]# symlinks -v /root //显示符号链接
[root@localhost ~]# symlinks -v /home/yy /home/mary //显示多个目录下的符号链接
absolute: /home/mary/ypbind -> /home/mary/ypbindyy
[root@localhost ~]#
学习目标 了解 mt 指令的基本用法
语法 mt[选择性参数][必要参数][选择性参数]
功能说明 mt 指令用来进行磁带驱动的操作。
参数说明 必要参数的具体说明如下:


选择性参数的具体说明如下:

基础应用
范例545 mt的版本信息查看。
[root@localhost ~]# mt -v //查看版本信息
GNU mt version 2.5
tonykorn97:~ # rpm -aq | grep mt
mtr-gtk-0.54-194.1
mtools-3.9.9-196.1
mtx-1.2.18rel-116.1
mt_st-0.7-419.1
qt3-non-mt-3.3.1-41.11
pmtools-20010730-172.3
mtr-0.54-194.1
[root@localhost ~]#
学习目标 掌握 quotastats 指令的基本应用
语法 quotastats
功能说明 quotastats 指令用来显示系统的磁盘空间限制的当前状态。
基础应用
范例546 显示磁盘配额限制的状态。
[root@localhost ~]# quotastats //显示磁盘配额限制的状态
Kernel quota version: 6.5.1
Number of dquot lookups: 0
Number of dquot drops: 0
Number of dquot reads: 0
Number of dquot writes: 0
Number of quotafile syncs: 19
Number of dquot cache hits: 0
Number of allocated dquots: 0
Number of free dquots: 0
Number of in use dquot entries (user/group): 0
[root@localhost ~]#
本例使用指令quotastats显示当前系统下磁盘配额限制的状态。
学习目标 掌握 raidstop 指令的用法
语法 raidstop[必要参数][选择性参数][磁盘]
功能说明 raidstop 指令用来关闭磁盘阵列。
参数说明 必要参数的具体说明如下:

选择性参数的具体说明如下:

基础应用
范例547 关闭所有的磁盘阵列。
[root@localhost ~]#raidstop -a //关闭所有的磁盘阵列
本例使用指令“raidstop –a”关闭所有软件控制的磁盘阵列。
学习目标 了解 sync 指令的基本用法
语法 sync[选择性参数]
功能说明 sync 指令将缓冲区数据写入磁盘。
参数说明 选择性参数的具体说明如下:

基础应用
范例548 将内存数据写入磁盘。
[root@localhost ~]# sync //将内存数据写入磁盘
本例使用指令sync将内存数据写入磁盘。