Linux学习教程,本文我们来学习一下Linux的文件系统。
Linux的文件、目录、程序是使用bash操作的主要对象。
文件
Linux中一切都是文件、普通的文件、设备文件、管道也是文件的形式。一切操作都是文件为基础的。DOS操作系统早期也是模拟这种方式,不过有很多漏洞(比如C:/con/con会蓝屏)
文件是有属性的,有一个属性表示这个文件是不是目录,有3个属性表示这个文件的访问权限,还有一些表示从这个文件派生出的文件属性。
目录
目录是管理文件的手段,不同的文件要分门别类才容易找到。严格的说,目录也是一种文件,是具有目录属性的文件。
文件和目录都有所有者和所有组。叫UID和GID,对应的,有3个属性表示相应的权限。后面写到ls和chmod有详细地说明。
程序
程序是可以执行的代码,有些是直接交给内核或者CPU执行的,有些是通过其他程序执行的(解释脚本),可以运行的程序都有一个可执行的属性。
linux只有一个文件树,整个文件系统是以一个树根"/"为起点的,所有的文件和外部设备都以文件的形式挂结在这个文件树上,包括硬盘,软盘,光驱,调制解调器等,这和以"驱动器盘符为基础的MS-Windows系统是大不相同的.
我们能够接触到的linux发行版本的根目录大都是以下结构:
/bin /etc /lost+found /sbin /var /boot /root
/home /mnt /tmp /dev /lib /proc /usr
/bin和/sbin
使用和维护UNIX和Linux系统的大部分基本程序都包含在/bin和/sbin里,这两个目录的名字之所以包含bin,是因为可执行的程序都是二进制文件(binary files).
/bin目录通常用来存放用户最常用的基本程序,如:login、Shells、文件操作实用程序、系统实用程序、压缩工具。
/sbin目录通常存放基本的系统和系统维护程序,如:fsck、fdisk、mkfs、shutdown、lilo、init。
存放在这两个目录中的程序的主要区别是:/sbin中的程序只能由root(管理员)来执行.
/etc
这个目录一般用来存放程序所需的整个文件系统的配置文件,其中的一些重要文件如下:
passwd、shadow、fstab、hosts、motd、profile、shells、services、lilo.conf
/lost+found
这个目录专门是用来放那些在系统非正常菪机后重新启动系统时,不知道改网哪里恢复的“流浪”文件的。
/boot
这个目录下面存放着和系统启动有关系的各种文件,包括系统的引导程序和系统核心部分。
/root
这是系统管理员(root)的主目录。
/home
系统中所有用户的主目录都存放在/home中,它包含实际用户(人)的主目录和其他用户的主目录.Linux同UNIX的不同之处是,Linux的root用户的主目录通常是在/root或/home/root,而UNIX通常是在/。
/mnt
按照约定,像CD-ROM,软盘,Zip盘,或者Jaz这样的可以动介质都应该安装在/mnt目录下,/mnt目录通常包含一些子目录,每个子目录是某种特定设备类型的一个安装点。例如:
/cdrom /floppy /zip /win ....
如果我们要使用这些特定设备,我们需要用mount命令从/dev目录中将外部设备挂接过来。在这里大家可能看到了有一个win的目录,这是我的机子上面做的一个通向windows文件系统的挂接点,这样我通过访问这个目录就可以访问到我在windows下面的文件了。但如果你的windows文件系统是NTFS格式,那么这个办法就不行了。
/tmp和/var
这两个目录用来存放临时文件和经常变动的文件。
/dev
这是一个非常重要的目录,它存放着各种外部设备的镜像文件,其中有一些内容我们是要牢牢记住的。例如第一个软盘驱动器的名字是fd0;第一个硬盘的名字是hda,硬盘中的第一个分区是hda1,第二个分区是hda2;第一个光盘驱动器的名字是hdc;此外,还用modem和其他外设的名字,在这么多的名字中,我们只需要记住最最常用的那几个外设就可以了。
/usr
按照约定,这个目录用来存放与系统的用户直接相关的程序或文件,这里面有每一个系统用户的主目录,就是相对于他们的小型“/”。
/proc
这个目录下面的内容是当前在系统中运行的进程的虚拟镜像,我们在这里可以看到由当前运行的进程号组成的一些目录,还有一个记录当前内存内容的kernel文件。
新闻热点
疑难解答