三、 Linux 系统目录结构
/bin — 用来贮存用户命令。目录 /usr/bin 也被用来贮存用户命令。
/sbin — 许多系统命令(例如 shutdown)的贮存位置。目录 /usr/sbin 中也包括了许多系统命令。
/root — 根用户(超级用户)的主目录。
/mnt — 该目录中通常包括系统引导后被挂载的文件系统的挂载点。譬如,默认的光盘挂载点是 /mnt/cdrom/.
/boot — 包括内核和其它系统启动期间使用的文件。
/lost+found — 被 fsck 用来放置零散文件(没有名称的文件)。
/lib — 包含许多被 /bin/ 和 /sbin/ 中的程序使用的库文件。
目录 /usr/lib/ 中含有更多用于用户程序的库文件。
/dev — 贮存设备文件(注意,设备文件不是驱动程序。过去,在添加新磁盘或设备后,往往需要手动增加设备文件。现在通常我们不需要手动增加设备文件,运行一下service kudzu start ,系统就会自动配置相应的设备)。
/etc — 包含许多系统配置文件和目录。
/var — 用于贮存 variable(或不断改变的)文件,例如日志文件和打印机假脱机文件。
/usr — 包括与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件。
/proc — 一个虚拟的文件系统(不是实际贮存在磁盘上的),它包括被某些程序使用的系统信息。
/etc/rc.d — 启动的配置文件和脚本。
/tmp/ — 用户和程序的临时目录。所有系统用户均可读写。
/home — 用户主目录的默认位置。
/opt — 可选的(optional),可用来存放准备安装的文件。
四、 文件的连接
Linux 采用索引节点 inode 记录文件信息,每个文件或目录都唯一地对应 inode 数组中的一个元素。但一个元素可以与多个文件或目录名对应。文件名与索引节点号的对应称之为连接。
ln 命令用来对一个已经存在的文件建立连接。
例:cd /root
cp /etc/passwd .
ln /root/passwd /root/passwd.2
执行命令 ls –l 可在第二列看到连接数变为 2。
执行命令 ls –i 可以看到 passwd 和 passwd.2 具有相同的 inode。
这种通过相同 inode 共享同一个物理文件的方法称之为硬连接。
优点:可在不同目录通过不同路径访问同一个文件,节省磁盘空间又便于数据一致性;有一定防止误删除功能,只有同一个 inode 属于唯一一个连接时,数据才被物理删除。
缺点:不能连接目录,不能跨越不同文件系统(如分区、驱动器)。
加参数-s 执行 ln 命令可建立软连接,也称符号连接,如:
ln –s passwd passwd.2
执行 ls –l ,可看出 passwd.2 是 passwd 的符号连接。
passwd.2 和 passwd 是两个不同的文件,前者的文件数据是指向后者的路径。即便在源文件不存在的情况下也可建立符号连接。
五、 mv 命令
Linux 中没必要配备专门的文件更名命令,使用移动命令 mv 即
可完成文件的更名操作。mv 实际上是在创建一个新的硬连接后
删除旧的硬连接,以此实现文件的搬移或更名。如
mv passwd.2 passwd.b
执行 ls –i 命令可发现文件名变了但 inode 没变。
六、 获得帮助
①使用 man topic 命令查阅手册页,如欲了解 ls 命令,可:
man ls
man 命令只显示查找到的第一项。若同一主题的内容可在多个
部分找到(如 kill 既是 shell 命令又是系统调用),则需:
man –t 2 kill
⑵使用参数 - -help 可显示命令的帮助信息,如:
ls - -help 第四章 磁盘设备
一、 关于挂装的基本常识
·与 DOS/Windows 采用驱动器标识符(A:、B:、C:)使用磁盘设备的方法不同。Linux 采用单根目录树管理全部文件系统。磁盘设备必须挂载到系统目录树上才能使用。
(Linux 启动过程已完成对/、/ boot 和/swap 三个分区的挂装)
·所谓挂装,就是将该设备的文件系统作为一个分枝嫁接到主文件系统的过程。嫁接的位置称为挂装点。
·挂装点必须是个已经存在的目录。该目录可以不空,但用作挂装点后原内容将不可见,直到卸载为止。
·Linux 为用户的后续挂装专门提供了/mnt 目录,/mnt 下的目录用作挂装点。若无特别原因,应尽量遵循这一约定。
·只有 root 有权执行挂装与卸载操作。
·修改/etc/fstab 文件可实现启动时的自动挂装。
·gnome 和 KDE 环境支持光盘和软盘插入后的自动挂装。但在字符界面以及更多场合下,仍需用户手工挂装。
·挂装命令 mount,常用的语法格式是:
mount [-t 文件系统类型] [被挂装的设备文件] [挂装点]
常用的文件系统类型:
ext2 : Linux 的 ext2 文件系统
msdos : MS-DOS 的 FAT
vfat : Win95/98 的 VFAT
nfs : 网络文件系统
iso9660 : CD-ROM 光盘的标准文件系统
ntfs : WindowsNT 文件系统
auto : 自动检测文件系统的类型·卸载命令 umount,常用的语法格式是:
umount 挂装点或被挂装的设备文件
(如卸载光驱既可以 umount /mnt/cdrom 也可以 umount /dev/cdrom)
二、 应用实例:
①使用 CD-ROM:挂装:mount /dev/cdrom /mnt/cdrom卸载:umount /mnt/cdrom (挂装时也可使用-t iso9660 或-t auto 参数)②使用软盘:挂装:mount -t auto /dev/fd0 /mnt/floppy或 mount /dev/fd0 /mnt/floppy或 mount /mnt/floppy卸载:umount /mnt/floppy③使用 USB 盘:挂装:mount -t vfat /dev/sda1 /mnt/usb卸载:umount /mnt/usb说明:⑴Linux 将 USB 盘作为 SCSI 盘处理;⑵挂装前先要在/mnt 下创建一个 usb 目录;⑶必要是可先 fdisk –l /dev/sd? 查看 U 盘的设备名。④访问硬盘上的 DOS/Windows 分区先执行: fdisk –l /dev/hd?了解 DOS/Windows 主分区和逻辑分区所在的位置,如果Windows 有主分区 C 和逻辑分区 D 两个分区,一般是在hda1 和 hda5。以访问逻辑分区 D 为例:,挂装:mount -t auto /dev/hda5 /mnt/d卸载:umount /mnt/d当然/mnt/d 目录要事先存在。如下命令可避免 dos 盘上的汉字文件名出现乱码: mount -t auto –o iocharset=gb2312 /dev/hda5 /mnt/d若要使所有用户都对所挂装的/mnt/d 有读写权限,则需: mount –t vfat –o user,rw,exec,,umask-000 /dev/hda5 /mnt/d若仍无法写 DOS 分区,则可能需要设置挂装点权限: chmod a=rwx /mnt/d⑤使用 iso9660 映像文件:在/mnt 目录下建一个目录 iso;假设映像文件名为 a.iso,在/opt 目录下,则:挂装:mount -t iso9660 -o loop /opt/a.iso /mnt/iso卸载:umount /mnt/iso挂装期间,在/mnt/iso 目录中可对映像包括的文件进行操作。
三、 软盘操作
①格式化
先低格:fdformat /dev/fd0H1440
再 mformat a: 在低格过的软盘上建立 DOS 文件系统。
或 mkfs –t ext2 /dev/fd0 1440 建立 ext2 格式。
② 读写软盘
挂装后才能使用,取出软盘前一定先要卸载以保数据完整。
可用 Linux 命令对/mnt/floppy 进行软盘文件操作。另外
Linux 还提供了一套称之为 mtools 的访问 dos 软盘的工具,
用法类似 dos。主要有 mformat、mdir、mmd、mcd、mrd、
mcopy、mcomp、mdel、mdeltree、mattrib、mren、mtype、
mlabel 等,键入 mtools 回车可列出其命令清单。
③复制软盘
先存源盘映像 dd if=/dev/fd0 of =temp.img
再写到目标盘 dd if=temp.img of =/dev/fd0
(在一些资料中其举例常加参数 bs=1440k,实验不加也可)
复制软盘不必事先挂装。
四、 制作 ISO 光盘映像文件
将源文件用归入一个目录,如 myfiles;
mkisofs -L -l -v -r -o /tmp/outfile.iso myfiles
/tmp/outfile.iso 即是生成的 ISO 映像文件。
(-L 允许文件名的第一个字符为句号;-l 可使用 iso9660 32 字符长度的文件名,可能在 DOS 下无法正常读取; -v 执行
时显示详细信息; -r 使用 Rock Ridge Extensions,开放所有文件的读权限;-o 指定映像文件名称。)
五、 其它磁盘命令
① fdisk 磁盘分区命令。-l 参数用于列出指定的外设分区表。
② df 检查磁盘空间及利用状况
③ du 显示磁盘中目录或文件的大小
例:du –b /boot
显示/boot 目录的大小。-b 参数用以指定单位为字节。
④ dd 介质拷贝命令
用指定大小的块拷贝文件并进行指定的格式转换。
bs= 将输入 ibs 输出 obs 设定为指定的字节数
cbs= 每次只转换指定的字节数
conv= 指定文件的转换格式
count= 仅读取指定的扇区数
ibs= 指定每次读取的字节数
if= 输入文件名,省略则从标准设备输入
obs= 每次输出的字节数
of= 输出文件名,省略则输出到屏幕
seek= 输出数据跳过指定的扇区数。(扇长=obs)
skip= 读取跳过指定的扇区数。(扇长=ibs)