精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>《FreeBSD使用大全》第二版>>4.4.2 调整文件系统的目录结构

主题:4.4.2 调整文件系统的目录结构
发信人: sungang(笨刚)
整理人: sungang(2003-09-16 12:26:49), 站内信件
4.4.2 调整文件系统的目录结构

系统安装时在目录树上安装了不同的文件系统,随着时间的推移,有些目录使用的文件系统就会被文件数据占满,而有些目录下的文件系统却很少使用,使得文件系统不太适合系统的需求,此时或者增加新的硬盘设备,或者将文件在不同文件系统中进行调整。

例如,如果FreeBSD系统被用作一台News服务器,读者发表文章将保存在/var目录所在的文件系统,而缺省情况/var目录空间有限,那么这个目录就会被占满。如果不断在系统中安装各种应用软件,那么/usr/local目录所在的文件系统会被占满,等等。管理者就需要根据实际情况进行调整,可以使用df命令来查看文件系统的当前状态信息。

# df 

Filesystem  512-blocks     Used     Avail  Capacity  Mounted on

/dev/wd0s3a      63550    50822      7644     87%    /

/dev/wd0s3f    1693228   977436    580334     63%    /usr

/dev/wd0s3e      59454     6772     47926     12%    /var

profs                8        8         0    100%    /proc

/dev/wd0s1     2055744  2032096     23648     99%    /mnt/dosc

df报告的信息包括这个文件系统的大小和剩余空间(包括使用大小、剩余大小和已使用空间的百分比),如果一个文件系统中的剩余空间不足,而另一个文件系统还剩余足够的空间,就可以通过调整来充分利用现有空间。

有时,df报告已使用空间的百分比会超过100%,这是由于UFS文件系统中有一些冗余空间可用,这个空间的大小可以在创建文件系统的时候指定。这样就给用户一个机会,可以不必因为文件系统满而中断当前正在写文件的操作,而 可以清除同一个文件系统中其他不必要的文件,在这个文件系统中腾出存储空间,从而保证数据最后能被可以正确的保存在文件系统中。

调整文件系统空间的基本方法是使用符号连接,可以先将该文件系统中的一个子目录中数据全部转移或复制到其他文件系统中的另一个目录中,然后将原有目录改名或删除,再建立一个对新目录的符号连接来达到目的。例如可以将/usr/local目录转移到另一个安装到/disk2的文件系统中:

# cd /usr/local

# tar cf - * | (cd /disk2; tar xf -)

# mv /usr/local /usr/local.old

# ln -s /disk2/local /usr/local

为了保证数据安全和完整,这里例子中没有使用mv直接移动数据,而是使用tar将数据复制到另一个目录中,之所以使用tar而非cp -R命令,是为了保证复制文件和目录时保留它们的属主、权限控制属性的一致性。

[关闭][返回]