对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识。当在使用Linux的时候,如果您通过ls–l / 就会发现,在/下包涵很多的目录,比如etc、usr、var、bin ... ...等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件。
文件系统在Linux下看上去就象树形结构,所以我们可以把文件系统的结构形象的称为树形结构。
文件系统的是用来组织和排列文件存取的,所以她是可见的,在Linux中,我们可以通过ls等工具来查看其结构,在Linux系统中,我们见到的都是树形结构;比如操作系统安装在一个文件系统中,他表现为由/起始的树形结构。linux文件系统的最顶端是/,我们称/为Linux的root,也就是Linux操作系统的文件系统。Linux的文件系统的入口就是/,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者。由于linux是开放源代码,各大公司和团体根据linux的核心代码做各自的操作,编程。
这样就造成在根下的目录的不同。这样就造成个人不能使用他人的linux系统的PC。因为你根本不知道一些基本的配置,文件在哪里。
这就造成了混乱。这就是FHS(FilesystemHierarchy Standard)机构诞生的原因。该机构是linux爱好者自发的组成的一个团体,主要是是对linux做一些基本的要求,不至于是操作者换一台主机就成了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/modules。/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世界里。
一切皆文件 1)linux的目录中有且只有一个根目录/, 2)linux的各个目录存放的内容是规划好的,不用乱放文件, 3)linux是以文件的形式管理我们的设备,因此linux系统。
一切皆文件, 4)linux的各个文件目录下存放什么内容,大家必须有一个认识, 5)你的脑海里应该有一颗linux的目录树。
Linux目录结构和Windows目录结构从实现机制来看是完全不同的:一种不同体现在目录与存储介质(磁盘,内存,DVD等)的关系上, Windows一直是以存储介质为主的 ,主要以盘符(C盘,D盘...)及分区来实现文件管理,然后下一层才是目录,所以目录就显得不是那么重要了,除系统文件意外的用户文件放在任何地方任何目录都是没有多大关系的。 UNIX/Linux恰好相反,UNIX是以目录为主的,Linux也继承了这一优良特性 。
Linux是以树形目录结构的形式来构建整个系统的,可以理解为一个用户可操作系统的骨架。
无论是目录结构还是操作系统内核都是存储在磁盘上的,但从逻辑上来说Linux的磁盘是“挂在”目录上的,每一个目录不仅能使用本地磁盘分区的文件系统,也可以使用网络上的文件系统,比如利用网络文件系统(NFS)载入某个特定目录等。 Linux的目录结构虽然复杂,但是它其中大部分目录结构是规定好了的,是符合FHS标准的,当你掌握好后,你的一切操作都会变得尽然有序。 FHS(英文:Filesystem Hierarchy Standard 中文:文件系统层次结构标准),多数Linux版本采用这种文件组织形式。FHS定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。
FHS定义了两层规范: FHS详细规范可参考: FHS_2.3 标准文档 最直观的查看系统目录机构的方法是通过 tree 命令: FHS是根据以往无数Linux用户和开发者的经验总结出来的,并且会持续更新,FHS依据文件系统使用的平凡与否以及是否允许用户随意改动(注意,不是不能,是能否随意),将目录定义为四种交互作用的形态,如下表所示: 使用 cd 命令可以切换目录,在Linux里面使用 . 表示当前目录, .. 表示上一级目录(以 . 开头的文件都是隐藏文件,所以这两个目录都是隐藏的,可以通过 ls -a 命令查看隐藏文件), - 表示上一次所在目录, ~ 通常表示当前用户的“home”目录,使用 pwd 可以获取当前所在绝对路径。 相对路径实际山并没有加上当前目录的那个“.”,而是直接以目录名开头,因为usr目录是当前目录的子目录,;如果是当前目录的上一级目录,则需要使用“..”。 提示:在进行目录切换过程中,请多次使用 Tab 键自动补全,可避免输入错误,连续按两次 Tab 可以显示出全部候选结果 rename 是先使用第二个参数的通配符匹配所有后缀为 .txt 的文件,然后使用第一个参数提供的正则表达式将匹配的这些文件的 .txt 后缀替换成 .c ,这一点可以参考 sed 命令。
标准输入输出:当我们执行一个shell命令行时通常会自动打开三个标准文件:标准输入文件(stdin),默认对应终端的键盘;标准输出文件(stdout)和标准错误输出文件(stderr),这两个文件都对应被重定向到终端的屏幕。进程从标准输入文件中得到的输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中。 在Linux下编辑文件通常会直接使用专门的命令行编辑器(比如:emacs,vim,nano)。
Linux系统下想要查看当前的路径,那我们该使用那个命令呢?下面由我为大家整理了linux查看路径命令的相关知识,希望对大家有帮助。 目录 linux查看路径命令 linux查看路径的其他命令 linux下查找某个文件位置的方法 linux查看路径命令 查看当前路径命令:pwd pwd命令能够显示当前所处的路径。
这个命令比较简单,如果有时在操作过程中忘记了当前的路径,则可以通过此命令来查看路径,其执行方式为: # pwd /home/samlee 第一行为运行的命令,第二行的内容为运行pwd命令后显示的信息,即显示用户当前所在的工作目录的路径为/home/samlee。
提示: 应该经常使用pwd命令。Linux的目录结构非常复杂,一个小小的分支就可能会有十几层目录,就好像是个森林,所以Linux不会像Windows那样把全路径写在提示符里,那样太长了。 << 加入你的linux系统上装了多个版本的java。如果你直接在命令行敲命令 "java -version" ,会得到一个结果。但是,你知道是哪一个路径下的java在执行吗?如果想知道,可以用 which 命令: which java 得到的结果就是系统默认执行的java所在的路径。 如果使用命令: whereis java 那么你会得到很多条结果,因为这个命令把所有包含java(不管是文件还是文件夹)的路径都列了出来。 << 但是普通用户使用“find”命令时也有可 能遇到这样的问题,那就是Linux系统中系统管理员ROOT可以把某些文件目录设置成禁止访问模式。这样普通用户就没有权限用“find”命令来查询这 些目录或者文件。当普通用户使用“find”命令来查询这些文件目录是,往往会出现"Permissiondenied."(禁止访问)字样。系统将无法 查询到你想要的文件。 为了避免这样的错误,我们可是使用转移错误提示的方法尝试着查找文件,例如输入: find / -name access_log 2>/dev/null 这个方法是把查找错误提示转移到特定的目录中去。系统执行这个命令后,遇到错误的信息就直接输送到stderrstream2 中,access_log2就是表明系统将把错误信息输送到stderrstream2中,/dev/null是一个特殊的文件,表明空的或者错误的信 息,这样查询到的错误信息将被转移了,不会再显示了。 在Linux系统查找文件也会遇到这样一个实际问题。如果我们在整个硬盘,这个系统中查找某个文件就要花费相当长的一段时间,特别是大型Linux系 统和容量较大的硬盘,文件放在套嵌很深的目录中的时候。 如果我们知道了这个文件存放在某个大的目录中,那么只要在这个目录中往下找就能节省很多时间了。使 用find /etc -name httpd.conf就可以解决这个问题。上面的命令就是表示在etc目录中查询httpd.conf这个文件。这里再说明一下“/”这个函数符号的含 义,如果输入“find /”就是表示要求Linux系统在整个ROOT目录下查找文件,也就是在整个硬盘上查找文件,而“find /etc”就是只在 etc目录下查找文件。 因为“find /etc”表示只在etc目录下查找文件,所以查找的速度就相应要快很多了。 三.根据部分文件名查找方法: 例如我们知道某个文件包含有srm这3个字母,那么要找到系统中所有包含有这3个字母的文件是可以实现 的,输入: find /etc -name '_srm_' 这个命令表明了Linux系统将在/etc整个目录中查找所有的包含有srm这3个字母的文件,比如absrmyz,tibc.srm等等符合条件的文件都能显示出来。如果你还知道这个文件是由srm 这3个字母打头的,那么我们还可以省略最前面的星号,命令如下: find/etc -name 'srm_' 这是只有像srmyz这样的文件才被查找出来,像absrmyz或者absrm这样的文件都不符合要求,不被显示,这样查找文件的效率和可靠性就大大增强了。 四.根据文件的特征查询方法: 如果只知道某个文件的大小,修改日期等特征也可以使用“find”命令查找出来,这和WINDOWS系统中的“搜索”功能是基本相同的。在微软的“搜 索”中,“搜索助理”使得搜索文件和文件夹、打印机、用户以及网络中的其他计算机更加容易。它甚至使在Internet上搜索更加容易。 “搜索助理”还包 括一个索引服务,该服务维护了计算机中所有文件的索引,使得搜索速度更快。使用“搜索助理”时,用户可以指定多个搜索标准。例如,用户可以按名称、类型及 大小搜索文件和文件夹。用户甚至可以搜索包含特定文本的文件。 如果用户正使用Active Directory,这时还可以搜索带有特定名称或位置的打印机。 例如我们知道一个Linux文件大小为1,500bytes,那么我们可是使用如下命令来查询find /-size 1500c,字符c表明这个要查找的文件的大小是以bytes为单位。如果我们连这个文件的具体大小都不知道,那么在Linux中还可以进行模糊查找方式 来解决。 例如我们输入find /-size+10000000c这个命令,则标明我们指定系统在根目录中查找出大于10000000字节的文件并显示出来。命令中的“+”是表示要求系 统只列出大于指定大小的文件,而使用“-”则表示要求系统列出小于指定大小的文件。下面的列表就是在Linux使用不同“find"命令后系统所要作出的 查找动作,从中我们很容易看出在Linux中使用“find”命令的方式是很多的,“find”命令查找文件只要灵活应用,丝毫不比在WINDOWS中查 找能力差。 1、在ubuntu系统中默认是没有tree这个命令的,需要安装,用下面的命令就可以安装tree这个命令工具sudo apt-get install tree。2、首先来说说使用tree这个命令,就是直接查看关于tree的帮助,输入下面的命令,可以查看关于tree命令的帮助信息tree --help。 3、直接输入tree命令,就会自动给以树形的形式列出当前目录的文件和文件夹,不加任何参数,它会自动列表当前目录下面所有深度级别的文件和目录。 4、查看不同级别子目录和文件使用"tree -L 1 "这个命令,只查看当前第一级的目录和文件使用"tree -L 2 "这个命令,只查看当前第二级的目录和文件使用"tree -L N "这个命令,只查看当前第N级的目录和文件。5、使用下面的命令将当前文件的第二级子目录的目录结构信息输入保存到/home/xyh/tree.txt文件中命令:tree -L 2 > /home/xyh/tree.txt。6、打开/home/xyh/tree.txt文件查看里面保存的结果是否和之前使用的命令显示的结果是一样的,可以看到文件保存的结果就是使用"tree -L 2 "这个命令的输入结果。linux下怎么用tree命令以树形结构显示文件目录结构