精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>《FreeBSD使用大全》第二版>>3.2.1 浏览目录树

主题:3.2.1 浏览目录树
发信人: sungang(笨刚)
整理人: sungang(2003-09-16 11:28:13), 站内信件
3.2.1 浏览目录树

由于整个文件系统是一个完整的目录树,因此任意时刻,用户进行操作的时候,都位于该目录树的一个位置,这个位置被称为当前目录。

$ pwd

/home/user


系统指令pwd能告诉用户,当前目录的位置。

这里是使用用户user登陆进系统的(该用户是在安装时添加的),而当前目录为/home/user,从这里可以看出,这个目录与用户之间的内在关系。事实上,系统在添加用户的同时,也为这个用户创建一个目录,用来让这个用户保存自己的个人数据和文件,这样,系统虽然同时有多个用户存在,却也不会出现混淆。这个个人的目录被称为个人的主目录(Home Directory),习惯上所有用户的Home目录被放到/home目录下,以便查找和管理。

$ ls 

$ ls /home

user

可以使用ls来查看目录中的内容,如果没有任何参数的ls是查看当前目录的内容,否则查看指定目录的内容。上例中由于当前目录为个人的Home目录,目前没有内容,而/home目录下存在user这个子目录。

$ cd ..

$ pwd

/home

另一个非常重要的命令是cd,它能用来改变当前目录的位置。

使用上述命令,就可以浏览整个系统中的所有内容。

$ ls /

total 8188

-rw-r--r--   1 root  wheel      574 Mar 21  2000 .cshrc

-rw-r--r--   1 root  wheel      251 Mar 21  2000 .profile

-r--r--r--   1 root  wheel     4735 Mar 21  2000 COPYRIGHT

drwxr-xr-x   2 root  wheel     1024 Jan 29  2001 bin

drwxr-xr-x   3 root  wheel      512 Jan 29  2001 boot

drwxr-xr-x   2 root  wheel      512 Jul 18  2000 cdrom

lrwxr-xr-x   1 root  wheel       11 Jul 18  2000 compat -> /usr/compat

drwxr-xr-x   5 root  wheel    13312 Feb 25 11:10 dev

drwxr-xr-x   2 root  wheel      512 Jul 18  2000 dist

drwxr-xr-x  15 root  wheel     2048 Jan 31  2001 etc

lrwxrwxrwx   1 root  wheel        9 Jul 18  2000 home -> /usr/home

-r-xr-xr-x   1 root  wheel  2797646 Feb 25 11:08 kernel

-rwxr-xr-x   1 root  wheel  2777025 Mar 21  2000 kernel.GENERIC

-r-xr-xr-x   1 root  wheel  2729126 Feb 23 09:13 kernel.old

drwxr-xr-x   1 root  wheel     4096 Jan  1  1980 mnt

drwxr-xr-x   2 root  wheel     2560 Feb 25 11:12 modules

drwxr-xr-x   2 root  wheel     2560 Jan 28  2001 modules.old

dr-xr-xr-x   1 root  wheel      512 Aug  1 21:35 proc

lrwxr-xr-x   1 root  wheel       10 Jul 18  2000 root -> /home/root

drwxr-xr-x   2 root  wheel     2048 Jan 29  2001 sbin

drwxr-xr-x   4 root  wheel     1024 Dec 19  2000 stand

lrwxr-xr-x   1 root  wheel       11 Jan 29  2001 sys -> usr/src/sys

drwxrwxrwx   7 root  wheel      512 Aug  1 21:31 tmp

drwxr-xr-x  19 root  wheel      512 Jan 28  2001 usr

drwxr-xr-x  18 root  wheel      512 Mar 21  2000 var

/目录:目录树的根,用于保存系统的内核文件等一些系统密切的文件;

/dev目录:用于保存系统的设备文件,占用大致固定的硬盘空间;

/etc目录:用于保存系统的配置文件,包括passwd等非常重要的文件;

/bin和/sbin目录:保存了用于系统维护目的的执行文件,其中/sbin中的文件通常直接用于系统维护,/bin为提供管理员使用系统的基本工具,这两个基本目录中的内容为系统维护提供了基本工具,即使其他目录中的数据受到了破坏,这些程序应该也能正常运行,进行系统维护任务;

/tmp目录:用于存放程序运行产生的临时文件,这个目录是每个用户都可写的,当系统运行较大型的服务程序时,会要求较大的/tmp空间,有时会超过/tmp的限制,此时就需要根据情况扩大/tmp的可占用空间;

/usr目录:用于保存系统在多用户状态下正常运行时使用的多种文件,其中/usr/bin放置系统执行文件,/usr/sbin放置系统维护程序,/usr/local放置非标准的应用程序,/usr/share放置系统中的文档和其他数据文件,/usr/src中放置系统的源代码,/usr/X11R6放置X Window系统、应用程序和数据文件;

/var目录:用于保存系统运行时产生和使用的数据文件,例如/var/log目录用于放置系统日志,/var/db/pkg目录用于放置系统软件包的安装记录。很多应用程序也使用它来放置数据文件,如news服务器等。这个目录下文件会随系统的运行而不断变化,其中的很多文件会不断增大,占用大量的磁盘空间。因此,它所占用的空间需要根据服务的类型进行分配。

/home目录:使用它用于维护用户的个人目录,它的大小由用户数量及用户的活跃程度决定,也需要有足够的空间才能提供正常的服务。出于空间分配的考虑,通常使用/usr/home作为真实的个人主目录的保存位置,而使用连接的方式使/home指向/usr/home,也能提供访问。

这些目录开始就设计为保存不同类别的数据,根据数据和文件的重要性和空间需求分配目录,后续章节中我们会详细讨论/bin,/sbin与/usr/bin,/usr/sbin的区别和划分到不同目录的原因。最基本的原因是,有些程序是系统相关的,而另一些程序与系统关系不密切,与提供的服务相关,使用不同的目录保存文件可以用于分隔不同的任务,分隔系统风险,增加可靠性,对于用作服务器的FreeBSD系统是必需的。

Unix的树状目录结构十分标准,那类文件应该放置到那个目录中都有一定的习惯。当然在不同的Unix中,具体文件的位置也有细微的差别,事实上在Unix发展的过程中,标准目录树结构的也有几次较大的改动,因此不同类型的Unix,目录的习惯位置也不完全一致,例如Sun Solaris习惯上使用/opt目录来保存第三方软件。

由于FreeBSD有统一的版本,所有的开发者都使用同一个源代码树,而且使用统一的Packages Collection机制来维护应用软件,因此FreeBSD的目录结构更为整齐、干净。

[关闭][返回]