# Linux 常用命令-磁盘管理 ## cd > **功能:切换目录。** > > cd 命令用于切换当前工作目录至 dirName(目录参数)。 > > 其中 dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的 home 目录 (也就是刚 login 时所在的目录)。 ### 语法 ``` cd [dirName] ``` - dirName:要切换的目标目录。 ### 实例 跳到 /usr/bin/ : ``` cd /usr/bin ``` 跳到自己的 home 目录 : ``` cd ~ ``` 跳到目前目录的上上两层 : ``` cd ../.. ``` ## pwd > **功能:显示当前目录** > > pwd 命令用于显示工作目录。 > > 执行 pwd 指令可立刻得知您目前所在的工作目录的绝对路径名称。 ### 语法 ``` pwd [--help][--version] ``` **参数说明:** - --help 在线帮助。 - --version 显示版本信息。 ### 实例 查看当前所在目录: ``` # pwd /root/test #输出结果 ``` ## ls > **功能:显示目录内容。** > > ls 命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。 ### 语法 ``` ls [-alrtAFR] [name...] ``` **参数 **: - -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出) - -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出 - -r 将文件以相反次序显示(原定依英文字母次序) - -t 将文件依建立时间之先后次序列出 - -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录) - -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/" - -R 若目录下有文件,则以下之文件亦皆依序列出 ### 实例 列出根目录(\)下的所有目录: ``` # ls / bin dev lib media net root srv upload www boot etc lib64 misc opt sbin sys usr home lost+found mnt proc selinux tmp var ``` 列出目前工作目录下所有名称是 s 开头的文件,越新的排越后面 : ``` ls -ltr s* ``` 将 /bin 目录以下所有目录及文件详细资料列出 : ``` ls -lR /bin ``` 列出目前工作目录下所有文件及目录;目录于名称后加 "/", 可执行档于名称后加 "*" : ``` ls -AF ``` ## mkdir > **功能:创建目录。** > > mkdir 命令用于建立名称为 dirName 之子目录。 ### 语法 ``` mkdir [-p] dirName ``` **参数说明**: - -p 确保目录名称存在,不存在的就建一个。 ### 实例 在工作目录下,建立一个名为 AAA 的子目录 : ``` mkdir AAA ``` 在工作目录下的 BBB 目录中,建立一个名为 Test 的子目录。 若 BBB 目录原本不存在,则建立一个。(注:本例若不加 -p,且原本 BBB目录不存在,则产生错误。) ``` mkdir -p BBB/Test ``` ## stat > stat 命令用于显示文件/文件系统的详细信息。 ### 语法 ``` stat [文件或目录] ``` ### 实例 查看 testfile 文件的inode内容内容,可以用以下命令: ``` # stat testfile #输入命令 File: `testfile' Size: 102 Blocks: 8 IO Block: 4096 regular file Device: 807h/2055d Inode: 1265161 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2014-08-13 14:07:20.000000000 +0800 Modify: 2014-08-13 14:07:07.000000000 +0800 Change: 2014-08-13 14:07:07.000000000 +0800 ``` ## mount > **功能:挂载文件到一个虚拟盘或虚拟文件夹中。** > > mount 命令是经常会使用到的命令,它用于挂载 Linux 系统外的文件。 ### 语法 ``` mount [-hV] mount -a [-fFnrsvw] [-t vfstype] mount [-fnrsvw] [-o options [,...]] device | dir mount [-fnrsvw] [-t vfstype] [-o options] device dir ``` **参数说明:** - -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 ```