我们安装好linux系统后,linux系统也会像windows系统一样,自动生成很多的文件和目录,这些目录都包含了不同的含义。下面,我们就来介绍一下这些目录都代表着什么?以及,在命令行界面,我们如何在不同的目录之间切换。
一、linux系统目录结构。
我们这里介绍的是linux系统的常规目录结构,不管什么版本的linux系统,一般都会包括以下这些目录。
bin: linux命令目录(二进制)。
sbin: linux命令目录(起级管理员使用),s就是Super User的意思。
boot: linux启动目录,存有linux内核 (引导、长/皮鞋)。
dev: linux存放硬件目录,以抽象的文件形式存放(device设备)。
etc: linux配置文件目录。
lib: linux系统函数库文件目录,相当于window中的.dll文件。
mnt: linux挂载用,早期版本只有这一个挂载,建议挂载额外设备,如:U盘、移动硬盘和分区。
medie: linux挂载用,系统建议挂载媒体设备。
misc: linux挂载用,建议挂载NFS服务的共享目录。
opt: linux大型软件安装目录。
sys: linux虚拟文件系统,包含底层硬件的信息,保存在内存当中,主要保存内核相关信息。
tmp: linux存放临时文件,会定期自动删除。
usr: linux一般应用程序默认安装目录 【 unix soft resource 】。
var: linux动态数据及进程改变保存位置(如日志、邮件、缓存、网站 )。
home: linux用户的主目录家目录,子目录以用户名为文件夹名。
root: linux起级管理员目录。
proc: linux虚拟文件夹,存在于内存中,保存着系统的实时信息,如内存、CPU等硬件信息。
当然,不同的发行版本,有可能会或多或少地添加一些自己的目录。
二、如何在目录之间进行切换?
linux的目录切换命令,跟windows系统的dos下的命令基本上一样。如果使用过dos的,那在linux系统下切换目录就不是难事了。
1、切换到当前用户的家目录。我们只需要在命令行界面输入如下命令,就可以切换到当前用户的家目录:
cd
这时,我们可以在命令行界面中看到,当前目录是~ 位置,~代表的是当前用户的家目录。如下图:
2、切换到指定的目录。下面的命令是切换到 /home/目录,是以绝对路的形式来切换。
cd /home
如果我们已经在一个目录里了,要想切换到同级目录或上级目录的同级目录,就必须使用绝对路径。上面的命令切换后,当前目录换成了home。如下图:
3、切换到上一个目录。 切换到上一个目录,即切换到当前目录的前一个目录。命令如下:
cd -
我们当前目录是home,输入这个命令后,就又切回到当前用户家目录了。如下图:
4、切换到上一级目录。以相对路径的形式切换。命令如下:
cd ..
一个点代表的是自己,这里的两个点..代表的是上一级目录(父目录)。
5、切换到当前目录下的子目录。下面的这个命令是切换到当前目录下的gao目录里。
cd gao
如果要切换到其它用户的家目录,必须是管理员,普通用户没有这个权限。
6、切换到根目录。有时,我们进入目录比较深,有好几级了,这时,我们可以通过如下命令直接回到linux根目录
cd /
这里的/代表的就是linux系统的根目录,也是linux系统的最大的目录,上面介绍的所有目录都是存放在这个根目录里的。
好了,上面我们系统地介绍了一下linux系统的目录整体结构,以及如何在这些目录之间进行切换。操作很简单,相信大家也很容易就能上手。
㈡ 求Linux文件系统的目录结构
linux操作系统中的主要目录及目录内容由文件系统层次结构标准(英语:filesystem
hierarchy
standard,fhs)定义。
在fhs中,所有的文件和目录都出现在根目录"/"下,即使他们存储在不同的物理设备中。但是请注意,这些目录中的一些可能或可能不会在linux系统上出现,这取决于系统是否含有某些子系统,例如
x
window系统
的安装与否。
下面是fhs中所定义的一些目录,和目录的描述:
/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
本地增加的库
㈢ 史上最全kali Linux目录结构详解
www.dadengxiuli.com
/: 根目录,一般根目录下只存放目录,不要存放件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中
/bin:/usr/bin: 可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
/boot: 放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可
/dev: 存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom /mnt。
/etc: 系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。
注:亩悔空/etc/X11存放与x windows有关的设置。
/home: 系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据
/lib:/usr/lib:/usr/local/lib: 系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/moles。
/lost+fount: 系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。如加载硬盘于/disk 中,此目录下就会自动产生目录/disk/lost+found
/mnt:/media: 光盘默认挂载点,通常光盘挂前如载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。
/opt: 给主机额外安装软件所摆放的目录。如:FC4使用的Fedora 社群开发软件,如果想要自行安装新的KDE 桌面软件,可以将该软件安装在该目录下。以前的 Linux 系统中,习惯放置在 /usr/local 目录下
/proc: 此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等
/root: 系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。
www.dadengxiuli.com
/sbin:/usr/sbin:/usr/local/sbin: 放置系统管理员使用的可执行命令,迅瞎如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用。
/tmp: 一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
/srv: 服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内
/usr: 应用程序存放目录
/usr/bin 存放应用程序
/usr/share 存放共享数据
/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local:存放软件升级包
/usr/share/doc: 系统说明文件存放目录
/usr/share/man: 程序说明文件存放目录,使用 man ls时会查询/usr/share/man/man1/ls.1.gz的内容建议单独分区,设置较大的磁盘空间
/var: 放置系统执行过程中经常变化的文件,如随时更改的日志文件
/var/log,/var/log/message: 所有的登录文件存放目录
/var/spool/mail: 邮件存放的目录
/var/run: 程序或服务启动后,其PID存放在该目录下。建议单独分区,设置较大的磁盘空间
㈣ Linux操作系统文件系统基础知识详解
一
、linux文件结构
文件结构是文件存放在磁盘等存贮设备上的组织方法。主要体现在对文件和目录的组织上。
目录提供了管理文件的一个方便而有效的途径。
linux使用标准的目录结构,在安装的时候,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型。
/根目录
┃
┏━━┳━━━┳━━━┳━━━╋━━━┳━━━┳━━━┳━━━┓
┃
┃
┃
┃
┃
┃
┃
┃
┃
binhome
dev
etc
lib
sbin
tmp
usr
var
┃
┃
┏━┻━┓
┏━━┳━━┳━━┳━┻━┳━━┓
┃
┃
┃
┃
┃
┃
┃
┃
rc.d
cron.d
X11R6src
lib
local
manbin
┃
┏━━━┳━━┳━┻━┳━━━┓
┃
┃
┃
┃
┃
init.d
rc0.drc1.drc2.d
linux
bin
lib
src
linux采用的是树型结构。最上层是根目录,其他的所有目录都是从根目录出发而生成的。微软的DOS和windows也是采用树型结构,但是在DOS和
windows中这样的树型结构的根是磁盘分区的盘符,有几个分区就有几个树型结构,他们之间的关系是并列的。但是在linux中,无论操作系统管理几个磁盘分区,这样的目录树只有一个。从结构上讲,各个磁盘分区上的树型目录不一定是并列的。
如果这样讲不好理解的话,我来举个例子:
有一块硬盘,分成了4个分区,分别是/;/boot;/usr和windows下的fat
对于/和/boot或者/和/usr,它们是从属关系;对于/boot和/usr,它们是并列关系。
如果我把windows下的fat分区挂载到/mnt/winc下,(挂载??哦,别急,呵呵,一会就讲,一会就讲。)那么对于/mnt/winc和/usr或/mnt/winc和/boot来说,它们是从属于目录树上没有任何关系的两个分支。
因为linux是一个多用户系统,制定一个固定的目录规划有助于对系统文件和不同的用户文件进行统一管理。但就是这一点让很多从windows转到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文档
㈤ Linux目录结构
Windows操作系统抄的目录结构,是以盘符为单位,C盘、D盘、E盘等等,数据存储在各个盘符之下,而Linux操作系统最顶层只有一个根目录root,所有文件都存储在这一个根目录之下。
Windows操作系统若插入一个外部设备(U盘等),在系统中是多了一个盘符H,对H盘的操作就是对外部设备的操作。Linux操作系统是在根目录root下有一个名叫mnt的子目录,在这个目录下,会出现一个目录,假设为sdcard,称之为挂载点,对它的操作就是对外部设备的操作。
Windows操作系统某用户登录系统后,对所有文件都具有增删改查的权限,即:可以操作任意目录,假设将C盘下Windows目录删除,则会导致系统异常,安全性较差。Linux操作系统对权限要求比较严格,用户登录后并非对所有目录具有增删改查权限,默认的当前目录为根目录下的home目录下的soft01,称之为主目录,对这个目录具有最高权限,其余目录文件一般都是只读的,不能随意删除,这样就保证了安全性。
㈥ linux虚拟文件系统的关键数据结构有哪些
linux虚拟文件系统核心数主要有以下几个数据结构:
*
超级块结构(struct
super_block
{...}
)
该结构保存了一个被安装在linux系统上的文件系统的信息。对于基于磁盘的文件系统,该结构一般和保存在磁盘上的"文件系统控制块"对应。也就是说如果是磁盘文件系统,该结构保存的磁盘文件系统的控制信息。
*
inode结构(
struct
inode
{...}
)
该结构中存储的是一个特定文件的一般信息,对于一个基于磁盘的文件系统,该结构对应磁盘上的"文件数据控制块"。每一个inode结构都对应一个inode节点号,这个节点号是唯一的,它也唯一标识一个文件系统中的文件。
*
file结构(
struct
file
{...}
)
该结构中存储的是一个打开的文件和打开这个文件的进程间的交互信息。该结构保存在kernel的内存区,在打开文件时被创建,关闭文件时被释放。
*
dentry结构(
struct
dentry
{...}
)
该结构存储的是目录实体和对应的文件的关联信息。
㈦ linux 的文件系统是什么
楼上正解,Linux现在一般常使用的就是ext2、ext3、ext4(最新)的。交换分区SWAP