Linux 入门记录:二、Linux 文件系统基本结构
一、树状目录结构
Linux 文件系统是一个倒置的单根树状结构。文件系统的根为"/";文件名严格区分大小写;路径使用"/"分割(Windows 中使用"\")。
树状目录结构图如下:

以下是对上图中各个目录的解释:
| 目录 | 描述 |
| / | 根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中 |
| /bin | Binary 的缩写,这个目录存放着最经常使用的命令 |
| /boot | 存放着 Linux 启动时的一些核心文件,包括一些连接文件和镜像文件 |
| /dev | Device 的缩写,存放着 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的 |
| /etc | 存放着所有的系统管理所需要的配置文件和子目录 |
| /home | 用户主目录。在 Linux 中,每个用户都有一个自己的目录,一般该目录名以用户的账号命名 |
| /lib |
存放着系统最基本的动态连接共享库,作用类似于 Windows 的 DLL 文件。 几乎所有的应用程序都需要用到这些共享库 |
| /lost+found | 一般情况下为空,当系统非法关机后,这里就存放了一些文件 |
| /media |
Linux 系统会自动识别一些设备。 例如 U 盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下 |
| /mnt |
让用户临时挂载别的文件系统的目录。 我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了 |
| /opt |
给主机额外安装软件所准备的目录。 比如可以安装一个 Oracle 数据库在这个目录。默认为空 |
| /proc |
虚拟目录,是系统内存的映射,可以通过直接访问这个目录来获取系统信息。 这个目录的内容在内存里,可以直接修改里面的某些文件。 比如可以通过下面的命令来屏蔽主机的 ping 命令,使别人无法 ping 你的机器: echo > /proc/sys/net/ipv4/icmp_echo_ignore_all |
| /root | 系统管理员的用户主目录 |
| /sbin | s 是 Super User 的意思,存放系统管理员使用的系统管理程序 |
| /selinux |
这个是 Redhat/CentOS 所特有的目录,selinux 是一个安全机制,类似于 Windows 的防火墙。 但是这套机制比较复杂,这个目录就是存放 selinux 相关的文件的 |
| /srv | 该目录是存放一些服务启动之后需要提取的数据 |
| /sys |
/sys 这是 Linux 2.6 内核的一个很大变化。 该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs。sysfs 文件系统集成了下面 3 种文件系统的信息: 针对进程的 proc 文件系统、 针对设备的 devfs 文件系统 以及针对伪终端的 devpts 文件系统。 该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建 |
| /tmp | 临时文件目录 |
| /usr |
这个目录非常重要。 用户的很多应用程序和文件都放在这个目录下,类似于 Windows 下的 Program Files 目录 |
| /usr/bin | 系统用户使用的应用程序 |
| /usr/sbin | 超级用户使用的比较高级的管理程序和系统守护程序 |
| /usr/src | 内核源代码默认的放置位置 |
| /var |
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括日志文件 |
二、当前工作目录
- 每一个 Shell 或系统进程都有一个当前工作目录。
- 使用 pwd 命令可以显示当前的工作目录。
三、文件名称
- 文件的名称大小写敏感。
- 名称最多可以为255个字符。
- 除了正斜线"/"外,都是有效字符。
- 通过 touch 命令可以创建一个空白文件或者更新已有文件的时间。
- 以点号"."开头的文件是隐藏文件。
四、列出目录内容
ls 命令用来列出目录内容。相关参数如下:
$ ls -a 显示所有文件(包括隐藏文件)
$ ls -l 显示详细信息
$ ls -R 递归显示子目录
$ ls -ld 显示目录和链接信息
五、查看文件类型
通过 file 命令可以查看文件的类型。
六、绝对路径与相对路径
- 绝对路径:以正斜杠"/"开头,递归每级目录知道目标的路径。
- 相对路径:以当前目录为起点,到达目标的路径。受当前所在目录限制。
cd 命令可以用来切换目录。
$ cd . 切换到当前目录
$ cd .. 切换上一级目录
$ cd - 切换上一个工作目录
$ cd ~ 切换到当前用户目录
不管在任何目录下,直接 cd 回车,都会回到当前用户目录 /home/用户名 。
相关链接:大牛笔记 - Linux 目录结构
Linux 入门记录:二、Linux 文件系统基本结构的更多相关文章
- Linux入门基础(二):Linux磁盘及文件管理系统
磁盘管理 fdisk分区工具 只支持MBR分区 fdisk命令只有root用户能用 fdisk -l 列出所有安装磁盘及分区信息 fdisk /dev/sda (操作磁盘,按m可列出帮助界面,常用的操 ...
- Linux 入门记录:二十、Linux 包管理工具 YUM
一.YUM(Yellowdog Updater, Modified) 1. YUM 简介 RPM 软件包形式管理软件虽然方便,但是需要手动解决软件包的依赖问题.很多时候安装一个软件首先需要安装 1 个 ...
- Linux学习之二-Linux系统的目录结构
Linux学习之二-Linux系统的目录结构 在Linux的根目录下,有很多的目录,但是需要记住,对于Linux而言,一切皆文件.因此此处的目录也是文件.用ls / 命令就能看到根目录下的各类不同的目 ...
- Oracle数据库基础入门《二》Oracle内存结构
Oracle数据库基础入门<二>Oracle内存结构 Oracle 的内存由系统全局区(System Global Area,简称 SGA)和程序全局区(Program Global Ar ...
- Linux 入门记录:八、Linux 文件系统
一.文件系统 操作系统通过文件系统管理文件及数据,磁盘或分区需要创建文件系统之后,才能被操作系统所用,创建文件系统的过程又称之为格式化.没有文件系统的设备又称之为裸设备(raw),某些环境会需要裸设备 ...
- Linux 入门记录:六、Linux 硬件相关概念(硬盘、磁盘、磁道、柱面、磁头、扇区、分区、MBR、GPT)
一.硬盘 硬盘的功能相当简单但很重要,它负责记录系统所需要的各种数据.硬盘记录数据有两个方面,一个是硬件方面的存储原理和结构,另外一方面则是软件方面的数据和文件系统.硬盘的主要行为就是数据的存放和取出 ...
- Linux 入门记录:十八、Linux 系统启动流程 + 单用户修改 root 密码 + GRUB 加密
一.系统启动流程 一般来说,Linux 系统的启动流程是这样的: 1. 开机之后,位于计算机主板 ROM 芯片上的 BIOS 被最先读取,在进行硬件和内存的校验以及 CPU 的自检没有异常后, BIO ...
- 大数据Hadoop入门教程 | (二)Linux
使用finalShell可以提供文件目录图形化 完整Linux命令整理参考大佬博客:Linux常见文件管理命令 - Mr_Walker - 博客园 Linux文件系统基础知识 Linux文件系统概念 ...
- Linux 入门记录:十六、Linux 多命令协作:管道及重定向
一.多命令协作 在 Linux 系统当中,大多数命令都很简单,很少出现复杂功能的命令,每个命令往往只实现一个或多个很简单的功能.通过将不同功能的命令组合一起使用,可以实现某个复杂功能的. Linux ...
- Linux入门基础(一):Linux基本操作
命令行BASH基本操作 Shell 用户不能直接操作内核,所以用户操作通过shell传递给内核 shell分为两种 : GUI 图形界面 (linux一般是GNOME) CLI 命令行界面 (linu ...
随机推荐
- 分布式消息队列RocketMQ&Kafka -- 消息的“顺序消费”
在说到消息中间件的时候,我们通常都会谈到一个特性:消息的顺序消费问题.这个问题看起来很简单:Producer发送消息1, 2, 3... Consumer按1, 2, 3...顺序消费. 但实际情况却 ...
- 【Python】Python中的下划线
单下划线(如: _var): 使用单下划线,用于指定该名变量或函数属性为“私有”.这仅仅是一个惯例,不是强制规定.用于向其他程序员表明这个变量或函数仅仅供内部使用,外部不要访问它.但实际上外部还是可以 ...
- 【swaggerui】swaggerui在asp.net web api core 中的应用
Swaggerui 可以为我们的webapi提供美观的在线文档,如下图: 实现步骤: NuGet Packages Install-Package Swashbuckle.AspNetCore 在s ...
- C# 代码操作XML(增、删、改)
目录: 1.创建XML 1)创建普通XML 2)创建带属性的XML 2.追加XML 3.读取XML 1)读取普通XML 2)读取带属性的XML 4.修改属性的值 5.删除XML节点 作为一个小型的数 ...
- C# 大文件的复制方法
如何复制读取大文件,也许困惑了很多人很长时间,这个不知道怎么搞,的确让人头疼欲裂,知道了你就才发现原来那么简单,话不多说,直入正题```` static void Main(string[] args ...
- POJ1006:Biorhythms——题解
http://poj.org/problem?id=1006 题目大意: 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这 ...
- JavaScript中进制之间的转换
JavaScript中进制之间的转换 //十进制转其他 var x = 100; alert(x); alert(x.toString(2)); //转2进制 alert(x.toString(8)) ...
- Codeforces Round #393 (Div. 2) (8VC Venture Cup 2017 - Final Round Div. 2 Edition)A 水 B 二分 C并查集
A. Petr and a calendar time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- udhcp server端源码分析1--文件组织结构
1:dhcpd.c udhcpd_main函数是整个程序的入口,依次完成的主要工作有读取配置文件信息至全局结构体.记录程序pid number.初始化lease链表.将程序作为daemon运行.死循环 ...
- POJ2155 树状数组
Matrix Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 26650 Accepted: 9825 Descripti ...