今天在继续看Linux命令的过程中突然有一个想法,发现自己对Linux的基本架构都不十分清楚……
学习起来肯定会比较晕,所以决定在学习Linux命令的同时,在对Linux的整体系统结构进行一个系统的认识。如何认识呢?肯定先从文件结构开始入手,所以继续百度知道……找到了一些关于Linux文件结构的文章,不过发现这些内容肯定都是出自同一篇,而且编辑者相当懒,好好的树型结构都粘贴乱了,所以自己决定整理一番~呵呵
,就有了下面这个情况啦!
首先是Linux的一些主要目录以及目录中的内容:
/bin 二进制可执行命令
/dev 设备特殊文件
/etc 系统管理和配置文件
/etc/rc.d 启动的配置文件和脚本
/home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
/lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件
/sbin 系统管理命令,这里存放的是系统管理员使用的管理程序
/tmp 公用的临时文件存储点
/root 系统管理员的主目录(呵呵,特权阶级)
/mnt 系统提供这个目录是让用户临时挂载其他的文件系统。
/lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
/proc 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/var 某些大文件的溢出区,比方说各种服务的日志文件
/usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:
/usr/X11R6 存放X window的目录
/usr/bin 众多的应用程序
/usr/sbin 超级用户的一些管理程序
/usr/doc linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的库
就是那个简单的树型目录示意图(咱可重新整理了哦~)
/根目录
┃
┏━━━┳━━━┳━━━┳━━━╋━━━┳━━━┳━━━┳━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃
in home dev etc lib sbin tmp usr var
┃
┏━┻━┓
┃ ┃
rc.d cron.d
┃
┏━━━┳━━━┳━┻━┳━━━━┓
┃ ┃ ┃ ┃ ┃
init.d rc0.d rc1.d rc2.d ……
然后在来一个/usr底下的文件树结构,因为是从网上整理的不知道再下面一层对不对,应该是没有啥问题吧~:
/usr
┃
┏━━━━┳━━━╋━━━┳━━━┳━━━┓
┃ ┃ ┃ ┃ ┃ ┃
X11R6 src lib local man bin
┃ ┃
┃ ┏━━━╋━━━┓
┃ ┃ ┃ ┃
linux bin lib src
其实上面这两个树目录的主要目的还是让自己知道Linux的文件到底是一个什么样的结构,另外,也能形象的表示出挂载这个概念。
啥是挂载呢?情况是这样的,linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。linux会将这些分属不同分区的、单独的文件系统按一定的方式形成一个系统的总的目录层次结构。这里所说的“按一定方式”就是指的挂载。将一个文件系统的顶层目录挂到另一个文件系统的子目录上,使它们成为一个整体,称为挂载。把该子目录称为挂载点。(哈哈哈~上面的图还是比较形象的)
另外,挂载还有一些需要注意的问题,什么呢?
1、首先挂载点必须是一个目录。
2、另外,一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。 (这是因为不同的分区需要不同的格式,我们经常需要在不同的分区中安装其他如XP,2000的操作系统,而这些系统所需要的格式是FAT32或NTFS,Linux是不支持的,所以分区挂载后的目录内容将不能使用)。
最后,说到挂载,在把挂载的命令搞定一下,正好就当熟悉Linux系统的命令了。挂载的命令是 mount ,格式是:
mount [-参数] [设备名称] [挂载点]
其中常用的参数就是下面这些啦:
-t<文件系统类型> 指定设备的文件系统类型,常见的有:
minix linux最早使用的文件系统
ext2 linux目前常用的文件系统
msdos MS-DOS的fat,就是fat16
vfat windows98常用的fat32
nfs 网络文件系统
iso9660 CD-ROM光盘标准文件系统
ntfs windows NT 2000的文件系统
hpfs OS/2文件系统
auto 自动检测文件系统
-o<选项> 指定挂载文件系统时的选项。有些也可用在/etc/fstab中。常用的有:
codepage=XXX 代码页
iocharset=XXX 字符集
ro 以只读方式挂载
rw 以读写方式挂载
nouser 使一般用户无法挂载
user 可以让一般用户挂载设备
另外一个需要注意的问题是,mount自己不会创建目录,所以挂载前一定要创建目录,否则将不能挂载。
先弄这些,晚上再搞定自动挂载的功能,哈哈哈~走上正道了吧?