Linux磁盘与文件系统管理
df
df(disk free)
功能说明:显示磁盘的相关信息。
语 法:df [-ahHiklmPT][--block-size=<区块大小>][-t <文件系统类型>][-x <文件系统类型>][--help][--no-sync][--sync][--version][文件或设备]
补充说明:df可显示磁盘的文件系统与使用情形。
参 数:
-a或--all 包含全部的文件系统。
--block-size=<区块大小> 以指定的区块大小来显示区块数目。
-h或--human-readable 以可读性较高的方式来显示信息。
-H或--si 与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes。
-i或--inodes 显示inode的信息。
-k或--kilobytes 指定区块大小为1024字节。
-l或--local 仅显示本地端的文件系统。
-m或--megabytes 指定区块大小为1048576字节。
--no-sync 在取得磁盘使用信息前,不要执行sync指令,此为预设值。
-P或--portability 使用POSIX的输出格式。
--sync 在取得磁盘使用信息前,先执行sync指令。
-t<文件系统类型>或--type=<文件系统类型> 仅显示指定文件系统类型的磁盘信息。
-T或--print-type 显示文件系统的类型。
-x<文件系统类型>或--exclude-type=<文件系统类型> 不要显示指定文件系统类型的磁盘信息。
--help 显示帮助。
--version 显示版本信息。
[文件或设备] 指定磁盘设备。
du
du(disk usage)
功能说明:显示目录或文件的大小。
语 法:du [-abcDhHklmsSx][-L <符号连接>][-X <文件>][--block-size][--exclude=<目录或文件>][--max-depth=<目录层数>][--help][--version][目录或文件]
补充说明:du会显示指定的目录或文件所占用的磁盘空间。
参 数:
-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或--dereference-args 显示指定符号连接的源文件大小。
-h或--human-readable 以K,M,G为单位,提高信息的可读性。
-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。
-k或--kilobytes 以1024 bytes为单位。
-l或--count-links 重复计算硬件连接的文件。
-L<符号连接>或--dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
-m或--megabytes 以1MB为单位。
-s或--summarize 仅显示总计。
-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。
--exclude=<目录或文件> 略过指定的目录或文件。
--max-depth=<目录层数> 超过指定层数的目录后,予以忽略。
--help 显示帮助。
--version 显示版本信息。
ln
ln(link)
功能说明:连接文件或目录。
语 法:ln [-bdfinsv][-S <字尾备份字符串>][-V <备份方式>][--help][--version][源文件或目录][目标文件或目录] 或 ln [-bdfinsv][-S <字尾备份字符串>][-V <备份方式>][--help][--version][源文件或目录...][目的目录]
补充说明:ln指令用在连接文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则会把前面指定的所有文件或目录复制到该目录中。若同时指定多个文件或目录,且最后的目的地并非是一个已存在的目录,则会出现错误信息。
参 数:
-b或--backup 删除,覆盖目标文件之前的备份。
-d或-F或--directory 建立目录的硬连接。
-f或--force 强行建立文件或目录的连接,不论文件或目录是否存在。
-i或--interactive 覆盖既有文件之前先询问用户。
-n或--no-dereference 把符号连接的目的目录视为一般文件。
-s或--symbolic 对源文件建立符号连接,而非硬连接。
-S<字尾备份字符串>或--suffix=<字尾备份字符串> 用"-b"参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,预设的字尾备份字符串是符号"~",您可通过"-S"参数来改变它。
-v或--verbose 显示指令执行过程。
-V<备份方式>或--version-control=<备份方式> 用"-b"参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,这个字符串不仅可用"-S"参数变更,当使用"-V"参数<备份方式>指定不同备份方式时,也会产生不同字尾的备份字符串。
--help 在线帮助。
--version 显示版本信息。
fdisk
fdisk
功能说明:磁盘分区。
语 法:fdisk [-b <分区大小>][-uv][外围设备代号] 或 fdisk [-l][-b <分区大小>][-uv][外围设备代号...] 或 fdisk [-s <分区编号>]
补充说明:fdisk是用来磁盘分区的程序,它采用传统的问答式界面,而非类似DOS fdisk的cfdisk互动式操作界面,因此在使用上较为不便,但功能却丝毫不打折扣。
参 数:
-b<分区大小> 指定每个分区的大小。
-l 列出指定的外围设备的分区表状况。
-s<分区编号> 将指定的分区大小输出到标准输出上,单位为区块。
-u 搭配"-l"参数列表,会用分区数目取代柱面数目,来表示每个分区的起始地址。
-v 显示版本信息。
mkfs
mkfs(make file system)
功能说明:建立各种文件系统。
语 法:mkfs [-vV][fs][-f <文件系统类型>][设备名称][区块数]
补充说明:mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。
参 数:
fs 指定建立文件系统时的参数。
-t<文件系统类型> 指定要建立何种文件系统。
-v 显示版本信息与详细的使用方法。
-V 显示简要的使用方法。
mkswap
功能说明:设置交换区(swap area)。
语 法:mkswap [-cf][-v0][-v1][设备名称或文件][交换区大小]
补充说明:mkswap可将磁盘分区或文件设为Linux的交换区。
参 数:
-c 建立交换区前,先检查是否有损坏的区块。
-f 在SPARC电脑上建立交换区时,要加上此参数。
-v0 建立旧式交换区,此为预设值。
-v1 建立新式交换区。
[交换区大小] 指定交换区的大小,单位为1024字节。
swapon
功能说明:启动系统交换区(swap area)。
语 法:swapon [-ahsV][-p <优先顺序>][设备]
补充说明:Linux系统的内存管理必须使用交换区来建立虚拟内存。
-a 将/etc/fstab文件中所有设置为swap的设备,启动为交换区。
-h 显示帮助。
-p<优先顺序> 指定交换区的优先顺序。
-s 显示交换区的使用状况。
-V 显示版本信息。
swapoff
功能说明:关闭系统交换区(swap area)。
语 法:swapoff [设备]
补充说明:swapoff实际上为swapon的符号连接,可用来关闭系统的交换区。
mke2fs
mke2fs(make ext2 file system)
功能说明:建立ext2文件系统。
语 法:mke2fs [-cFMqrSvV][-b <区块大小>][-f <不连续区段大小>][-i <字节>][-N <inode数>][-l <文件>][-L <标签>][-m <百分比值>][-R=<区块数>][ 设备名称][区块数]
补充说明:mke2fs可建立Linux的ext2文件系统。
参 数:
-b<区块大小> 指定区块大小,单位为字节。
-c 检查是否有损坏的区块。
-f<不连续区段大小> 指定不连续区段的大小,单位为字节。
-F 不管指定的设备为何,强制执行mke2fs。
-i<字节> 指定"字节/inode"的比例。
-N<inode数> 指定要建立的inode数目。
-l<文件> 从指定的文件中,读取文件西中损坏区块的信息。
-L<标签> 设置文件系统的标签名称。
-m<百分比值> 指定给管理员保留区块的比例,预设为5%。
-M 记录最后一次挂入的目录。
-q 执行时不显示任何信息。
-r 指定要建立的ext2文件系统版本。
-R=<区块数> 设置磁盘阵列参数。
-S 仅写入superblock与group descriptors,而不更改inode able inode bitmap以及block bitmap。
-v 执行时显示详细信息。
-V 显示版本信息。
fsck
fsck(file system check)
功能说明:检查文件系统并尝试修复错误。
语 法:fsck [-aANPrRsTV][-t <文件系统类型>][文件系统...]
补充说明:当文件系统发生错误四化,可用fsck指令尝试加以修复。
参 数:
-a 自动修复文件系统,不询问任何问题。
-A 依照/etc/fstab配置文件的内容,检查文件内所列的全部文件系统。
-N 不执行指令,仅列出实际执行会进行的动作。
-P 当搭配"-A"参数使用时,则会同时检查所有的文件系统。
-r 采用互动模式,在执行修复时询问问题,让用户得以确认并决定处理方式。
-R 当搭配"-A"参数使用时,则会略过/目录的文件系统不予检查。
-s 依序执行检查作业,而非同时执行。
-t<文件系统类型> 指定要检查的文件系统类型。
-T 执行fsck指令时,不显示标题信息。
-V 显示指令执行过程。
badblocks
功能说明:检查磁盘装置中损坏的区块。
语 法:badblocks [-svw][-b <区块大小>][-o <输出文件>][磁盘装置][磁盘区块数][启始区块]
补充说明:执行指令时须指定所要检查的磁盘装置,及此装置的磁盘区块数。
参 数:
-b<区块大小> 指定磁盘的区块大小,单位为字节。
-o<输出文件> 将检查的结果写入指定的输出文件。
-s 在检查时显示进度。
-v 执行时显示详细的信息。
-w 在检查时,执行写入测试。
[磁盘装置] 指定要检查的磁盘装置。
[磁盘区块数] 指定磁盘装置的区块总数。
[启始区块] 指定要从哪个区块开始检查。
mount
名称 : mount
使用权限 : 系统管理者或/etc/fstab中允许的使用者
使用方式 :
mount [-hV]
mount -a [-fFnrsvw] [-t vfstype]
mount [-fnrsvw] [-o options [,...]] device | dir
mount [-fnrsvw] [-t vfstype] [-o options] device dir
说明 :
将某个档案的内容解读成档案系统,然后将其挂在目录的某个位置之上。当这个命令执行成功后,直到我们使用 umnount 将这个档案系统移除为止,这个命令之下的所有档案将暂时无法被调用。
这个命令可以被用来挂上任何的档案系统,你甚至可以用 -o loop 选项将某个一般的档案当成硬盘机分割挂上系统。这个功能对于 ramdisk,romdisk 或是 ISO 9660 的影像档之解读非常实用。
参数
-V
显示程序版本
-h
显示辅助讯息
-v
显示较讯息,通常和 -f 用来除错。
-a
将 /etc/fstab 中定义的所有档案系统挂上。
-F
这个命令通常和 -a 一起使用,它会为每一个 mount 的动作产生一个行程负责执行。在系统需要挂上大量 NFS 档案系统时可以加快挂上的动作。
-f
通常用在除错的用途。它会使 mount 并不执行实际挂上的动作,而是模拟整个挂上的过程。通常会和 -v 一起使用。
-n
一般而言,mount 在挂上后会在 /etc/mtab 中写入一笔资料。但在系统中没有可写入档案系统存在的情况下可以用这个选项取消这个动作。
-s-r
等于 -o ro
-w
等于 -o rw
-L
将含有特定标签的硬盘分割挂上。
-U
将档案分割序号为 的档案系统挂下。-L 和 -U 必须在/proc/partition 这种档案存在时才有意义。
-t
指定档案系统的型态,通常不必指定。mount 会自动选择正确的型态。
-o async
打开非同步模式,所有的档案读写动作都会用非同步模式执行。
-o sync
在同步模式下执行。
-o atime
-o noatime
当 atime 打开时,系统会在每次读取档案时更新档案的『上一次调用时间』。当我们使用 flash 档案系统时可能会选项把这个选项关闭以减少写入的次数。
-o auto
-o noauto
打开/关闭自动挂上模式。
-o defaults
使用预设的选项 rw, suid, dev, exec, auto, nouser, and async.
-o dev
-o nodev-o exec
-o noexec
允许执行档被执行。
-o suid
-o nosuid
允许执行档在 root 权限下执行。
-o user
-o nouser
使用者可以执行 mount/umount 的动作。
-o remount
将一个已经挂下的档案系统重新用不同的方式挂上。例如原先是唯读的系统,现在用可读写的模式重新挂上。
-o ro
用唯读模式挂上。
-o rw
用可读写模式挂上。
-o loop=
使用 loop 模式用来将一个档案当成硬盘分割挂上系统。
范例
将 /dev/hda1 挂在 /mnt 之下。
#mount /dev/hda1 /mnt
将 /dev/hda1 用唯读模式挂在 /mnt 之下。
#mount -o ro /dev/hda1 /mnt
将 /tmp/image.iso 这个光碟的 image 档使用 loop 模式挂在 /mnt/cdrom之下。用这种方法可以将一般网络上可以找到的 Linux 光 碟 ISO 档在不烧录成光碟的情况下检视其内容。
#mount -o loop /tmp/image.iso /mnt/cdrom
相关命令umount
umount
功能说明:卸除文件系统。
语 法:umount [-ahnrvV][-t <文件系统类型>][文件系统]
补充说明:umount可卸除目前挂在Linux目录中的文件系统。
参 数:
-a 卸除/etc/mtab中记录的所有文件系统。
-h 显示帮助。
-n 卸除时不要将信息存入/etc/mtab文件中。
-r 若无法成功卸除,则尝试以只读的方式重新挂入文件系统。
-t<文件系统类型> 仅卸除选项中所指定的文件系统。
-v 执行时显示详细的信息。
-V 显示版本信息。
[文件系统] 除了直接指定文件系统外,也可以用设备名称或挂入点来表示文件系统。
dump
功能说明:备份文件系统。
语 法:dump [-cnu][-0123456789][-b <区块大小>][-B <区块数目>][-d <密度>][-f <设备名称>][-h <层级>][-s <磁带长度>][-T <日期>][目录或文件系统] 或 dump [-wW]
补充说明:dump为备份工具程序,可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。
参 数:
-0123456789 备份的层级。
-b<区块大小> 指定区块的大小,单位为KB。
-B<区块数目> 指定备份卷册的区块数目。
-c 修改备份磁带预设的密度与容量。
-d<密度> 设置磁带的密度。单位为BPI。
-f<设备名称> 指定备份设备。
-h<层级> 当备份层级等于或大雨指定的层级时,将不备份用户标示为"nodump"的文件。
-n 当备份工作需要管理员介入时,向所有"operator"群组中的使用者发出通知。
-s<磁带长度> 备份磁带的长度,单位为英尺。
-T<日期> 指定开始备份的时间与日期。
-u 备份完毕后,在/etc/dumpdates中记录备份的文件系统,层级,日期与时间等。
-w 与-W类似,但仅显示需要备份的文件。
-W 显示需要备份的文件及其最后一次备份的层级,时间与日期。
restore
功能说明:还原(Restore)由倾倒(Dump)操作所备份下来的文件或整个文件系统(一个分区)。
语 法:restore [-cCvy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>] 或 restore [-chimvy][-b <区块大小>][-f <备份文件>][-s <文件编号>] 或 restore [-crvy][-b <区块大小>][-f <备份文件>][-s <文件编号>] 或 restore [-cRvy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>] 或 restore [chtvy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>][文件...] 或 restore [-chmvxy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>][文件...]
补充说明:restore 指令所进行的操作和dump指令相反,倾倒操作可用来备份文件,而还原操作则是写回这些已备份的文件。
参 数:
-b<区块大小> 设置区块大小,单位是Byte。
-c 不检查倾倒操作的备份格式,仅准许读取使用旧格式的备份文件。
-C 使用对比模式,将备份的文件与现行的文件相互对比。
-D<文件系统> 允许用户指定文件系统的名称。
-f<备份文件> 从指定的文件中读取备份数据,进行还原操作。
-h 仅解出目录而不包括与该目录相关的所有文件。
-i 使用互动模式,在进行还原操作时,restore指令将依序询问用户。
-m 解开符合指定的inode编号的文件或目录而非采用文件名称指定。
-r 进行还原操作。
-R 全面还原文件系统时,检查应从何处开始进行。
-s<文件编号> 当备份数据超过一卷磁带时,您可以指定备份文件的编号。
-t 指定文件名称,若该文件已存在备份文件中,则列出它们的名称。
-v 显示指令执行过程。
-x 设置文件名称,且从指定的存储媒体里读入它们,若该文件已存在在备份文件中,则将其还原到文件系统内。
-y 不询问任何问题,一律以同意回答并继续执行指令。
mkisofs
mkisofs(make iso file system)
功能说明:建立ISO 9660映像文件。
语 法:mkisofs [-adDfhJlLNrRTvz][-print-size][-quiet][-A <应用程序ID>][-abstract <摘要文件>][-b <开机映像文件>][-biblio <ISBN文件>][-c <开机文件名称>][-C <盘区编号,磁区编号>][-copyright <版权信息文件>][-hide <目录或文件名>][-hide-joliet <文件或目录名>][-log-file <记录文件>][-m <目录或文件名>][-M <开机映像文件>][-o <映像文件>][-p <数据处理人>][-P <光盘发行人>][-sysid <系统ID >][-V <光盘ID >][-volset <卷册集ID>][-volset-size <光盘总数>][-volset-seqno <卷册序号>][-x <目录>][目录或文件]
补充说明:mkisofs可将指定的目录与文件做成ISO 9660格式的映像文件,以供刻录光盘。
参 数:
-a或--all mkisofs通常不处理备份文件。使用此参数可以把备份文件加到映像文件中。
-A<应用程序ID>或-appid<应用程序ID> 指定光盘的应用程序ID。
-abstract<摘要文件> 指定摘要文件的文件名。
-b<开机映像文件>或-eltorito-boot<开机映像文件> 指定在制作可开机光盘时所需的开机映像文件。
-biblio<ISBN文件> 指定ISBN文件的文件名,ISBN文件位于光盘根目录下,记录光盘的ISBN。
-c<开机文件名称> 制作可开机光盘时,mkisofs会将开机映像文件中的全-eltorito-catalog<开机文件名称>全部内容作成一个文件。
-C<盘区编号,盘区编号> 将许多节区合成一个映像文件时,必须使用此参数。
-copyright<版权信息文件> 指定版权信息文件的文件名。
-d或-omit-period 省略文件后的句号。
-D或-disable-deep-relocation ISO 9660最多只能处理8层的目录,超过8层的部分,RRIP会自动将它们设置成ISO 9660兼容的格式。使用-D参数可关闭此功能。
-f或-follow-links 忽略符号连接。
-h 显示帮助。
-hide<目录或文件名> 使指定的目录或文件在ISO 9660或Rock RidgeExtensions的系统中隐藏。
-hide-joliet<目录或文件名> 使指定的目录或文件在Joliet系统中隐藏。
-J或-joliet 使用Joliet格式的目录与文件名称。
-l或-full-iso9660-filenames 使用ISO 9660 32字符长度的文件名。
-L或-allow-leading-dots 允许文件名的第一个字符为句号。
-log-file<记录文件> 在执行过程中若有错误信息,预设会显示在屏幕上。
-m<目录或文件名>或-exclude<目录或文件名> 指定的目录或文件名将不会房入映像文件中。
-M<映像文件>或-prev-session<映像文件> 与指定的映像文件合并。
-N或-omit-version-number 省略ISO 9660文件中的版本信息。
-o<映像文件>或-output<映像文件> 指定映像文件的名称。
-p<数据处理人>或-preparer<数据处理人> 记录光盘的数据处理人。
-print-size 显示预估的文件系统大小。
-quiet 执行时不显示任何信息。
-r或-rational-rock 使用Rock Ridge Extensions,并开放全部文件的读取权限。
-R或-rock 使用Rock Ridge Extensions。
-sysid<系统ID> 指定光盘的系统ID。
-T或-translation-table 建立文件名的转换表,适用于不支持Rock Ridge Extensions的系统上。
-v或-verbose 执行时显示详细的信息。
-V<光盘ID>或-volid<光盘ID> 指定光盘的卷册集ID。
-volset-size<光盘总数> 指定卷册集所包含的光盘张数。
-volset-seqno<卷册序号> 指定光盘片在卷册集中的编号。
-x<目录> 指定的目录将不会放入映像文件中。
-z 建立通透性压缩文件的SUSP记录,此记录目前只在Alpha机器上的Linux有效。