Linux管理员手册(3)--存贮介质应该周期性地用badblocks 命令检查坏块它输出找到的所有坏块的编号的列表。列表给fsck 记录在文件系统数据结构中,使操作系统存储数据时不使用这些坏块。举例: $ badblocks /dev/fd0H1440 1440 > bad-blocks /dev/fd0H1440: ***** FILE SYSTEM WAS MODIFIED ***** 如果badblocks报告一个块已经使用,e2fsck 将试着将此块移到其他地方。如果该块真的坏了,而不是在坏块边缘,文件内容可能丢失。 Fighting fragmentation 文件写到磁盘时,不一定在连续的块中。没在连续块中的文件叫碎片。因为磁盘的读写头回更多地移动,读碎片文件会花较长的时间。虽然如果有好的读前缓冲系统不会有什么问题,但最好还是避免碎片。 Ext2文件系统试图使碎片最少,即使不能将一个文件的所有块存在连续扇区中,也尽量靠近。 Ext2通常有效地安排里文件其他块最近的空闲块,因此很少需要关心碎片问题。 Ext2文件系统有一个消除碎片程序,请看参考书目中的 [TV]。 有许多MSDOS消碎片程序在文件系统中移动块以消除碎片。其他一些文件系统,消碎片必须通过备份-重产生-回存文件系统来完成。对于所有文件系统,消碎片应该备份文件系统,因为很多原因可能在消碎片过程中导致错误。 一些其他工具对管理文件系统有用。 df (Disk Free)显示一个或多个文件系统的空闲磁盘空间。 du (Disk Usage)显示一个目录和其内的所有文件使用了多少磁盘空间。这用于发现磁盘空间浪费。 sync 强制将磁盘缓冲的所有未写块写入磁盘(见 5.6)。这一般无须手工完成,由守护进程update 自动完成。这在有些情况下很有用,例如,如果update 或其辅助进程bdflush 死了,或你不能等运行update 必须马上 关闭电源。 对ext2文件系统的其他工具 除了产生文件系统的mke2fs 和检查文件系统的e2fsck 直接或通过与文件系统类型无关的前端存取外,Ext2文件系统还有几个有用的工具。 tune2fs 调整文件系统参数。一些有趣的参数有: 最大mount数。当文件系统被mount过多少次以后,即使标志是干净的,e2fsck 强制检查。对用于开发或测试的系统,应该降低这个限制数。 最大检查间隔。到达这个间隔时间,即使标志是干净的,e2fsck 强制检查。如果文件系统不是经常mount,可以不使能这个功能。 保留给root的块数。Ext2给root保留一些块,这样如果文件系统满了,还可能无须删除任何东西做系统管理。保留量确省是5%,这在大多数磁盘上不会造成浪费。当然,软盘没有理由保留块。 参阅tune2fs 手册页 dumpe2fs 显示一个ext2文件系统的信息,大部分来源于超级块。有些输出信息是技术性的,要求对文件系统工作的理解(见附录 ), 但许多即使是一般管理员是也易于理解的。 debugfs 是一个文件系统调试器。它允许直接存取磁盘上的文件系统数据结构,可用于修复fsck 不能自动修复的磁盘。它也可用于恢复被删除的文件。但是,debugfs 非常要求你理解你所干的事,错误的理解和操作将破坏你的所有数据。 dump 和restore 可用于备份一个ext2文件系统。它们是传统UNIX备份工具的ext2版。关于更有关备份的信息见 9章。 没有文件系统的磁盘 并非所有磁盘或分区都作为文件系统使用。例如对换分区,就没有文件系统。许多软盘作为磁带仿真使用,所以tar 或其他文件可以直接写到原始磁盘,而不是文件系统。Linux启动软盘不包括文件系统,只是原始核心。 不用文件系统的优点是有更多的磁盘可用空间,因为文件系统需要一些记录。也更容易与其他系统兼容;例如tar 文件格式在所有系统上相同,而文件系统则在大多数系统上不同。如果需要,你会很快使用没有文件系统的磁盘。可启动的 Linux软盘无需文件系统,虽然有也可能。 使用原始磁盘的一个原因是做映象拷贝。比如,如果磁盘包含部分损坏的文件系统,那么在修复前做一个完全拷贝是个好主意,因为如果你修错了,可以重来。做映象拷贝的一个方法是用 dd : $ dd if=/dev/fd0H1440 of=floppy-image 第一个dd 给软盘做了一个完全映象到文件 floppy-image , 第二个把映象写到软盘。 (假设用户在第二个命令前换了软盘。否则这个命令对可能没用。) 分配磁盘空间 分区概要 传统的方法是有个(相对)小的根文件系统,包括 /bin , /etc , /dev , /lib , /tmp , 和其他系统启动和运行需要的东西。这种方法,根文件系统(在它自己的分区或硬盘上)是所有系统启动需要的东西。理由是如果根文件系统小而不常用,系统崩溃时它就不太容易损坏,而且崩溃时也易于修复。然后给/usr 目录树、用户主目录(经常在/home )、对换空间产生单独的分区或使用单独的硬盘。分离的用户主目录(存用户文件)在其自己的分区中易于备份,因为一般无须备份程序(/usr 中)。网络环境中,这样可以使多台计算机共享/usr (例如使用NFS) 这样每台机器可以节约数十、数百兆的磁盘空间。 多分区的问题是将整个磁盘的空闲空间分割成若干小片。现在,由于磁盘和操作系统已经很可靠,许多人更倾向与一个分区存所有文件。当然,这样可能比备份、回存小分区痛苦些。 对于小硬盘(假设你不做核心开发),最好的方法可能是只要一个分区。对于大硬盘,分几个大分区可能更好。尤其在某种情况下出现错误时。 (注意这里说的小和大是相对的,根据你对磁盘空间的需求而言。) 上一篇:Linux管理员手册(4)--内存管理 下一篇:Linux管理员手册(1)--系统概述 更多相关文章
|
推荐文章
精彩文章
|