一、树状目录结构

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

这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括日志文件

二、当前工作目录

  1. 每一个 Shell 或系统进程都有一个当前工作目录。
  2. 使用 pwd 命令可以显示当前的工作目录。

三、文件名称

  1. 文件的名称大小写敏感。
  2. 名称最多可以为255个字符。
  3. 除了正斜线"/"外,都是有效字符。
  4. 通过 touch 命令可以创建一个空白文件或者更新已有文件的时间。
  5. 以点号"."开头的文件是隐藏文件。

四、列出目录内容

ls 命令用来列出目录内容。相关参数如下:

$ ls -a  显示所有文件(包括隐藏文件)
$ ls -l 显示详细信息
$ ls -R 递归显示子目录
$ ls -ld 显示目录和链接信息

  

五、查看文件类型

通过 file 命令可以查看文件的类型。

六、绝对路径与相对路径

  1. 绝对路径:以正斜杠"/"开头,递归每级目录知道目标的路径。
  2. 相对路径:以当前目录为起点,到达目标的路径。受当前所在目录限制。

cd 命令可以用来切换目录。

$ cd .   切换到当前目录
$ cd .. 切换上一级目录
$ cd - 切换上一个工作目录
$ cd ~ 切换到当前用户目录

不管在任何目录下,直接 cd 回车,都会回到当前用户目录 /home/用户名 。

相关链接:大牛笔记 - Linux 目录结构

Linux 入门记录:二、Linux 文件系统基本结构的更多相关文章

  1. Linux入门基础(二):Linux磁盘及文件管理系统

    磁盘管理 fdisk分区工具 只支持MBR分区 fdisk命令只有root用户能用 fdisk -l 列出所有安装磁盘及分区信息 fdisk /dev/sda (操作磁盘,按m可列出帮助界面,常用的操 ...

  2. Linux 入门记录:二十、Linux 包管理工具 YUM

    一.YUM(Yellowdog Updater, Modified) 1. YUM 简介 RPM 软件包形式管理软件虽然方便,但是需要手动解决软件包的依赖问题.很多时候安装一个软件首先需要安装 1 个 ...

  3. Linux学习之二-Linux系统的目录结构

    Linux学习之二-Linux系统的目录结构 在Linux的根目录下,有很多的目录,但是需要记住,对于Linux而言,一切皆文件.因此此处的目录也是文件.用ls / 命令就能看到根目录下的各类不同的目 ...

  4. Oracle数据库基础入门《二》Oracle内存结构

    Oracle数据库基础入门<二>Oracle内存结构 Oracle 的内存由系统全局区(System Global Area,简称 SGA)和程序全局区(Program Global Ar ...

  5. Linux 入门记录:八、Linux 文件系统

    一.文件系统 操作系统通过文件系统管理文件及数据,磁盘或分区需要创建文件系统之后,才能被操作系统所用,创建文件系统的过程又称之为格式化.没有文件系统的设备又称之为裸设备(raw),某些环境会需要裸设备 ...

  6. Linux 入门记录:六、Linux 硬件相关概念(硬盘、磁盘、磁道、柱面、磁头、扇区、分区、MBR、GPT)

    一.硬盘 硬盘的功能相当简单但很重要,它负责记录系统所需要的各种数据.硬盘记录数据有两个方面,一个是硬件方面的存储原理和结构,另外一方面则是软件方面的数据和文件系统.硬盘的主要行为就是数据的存放和取出 ...

  7. Linux 入门记录:十八、Linux 系统启动流程 + 单用户修改 root 密码 + GRUB 加密

    一.系统启动流程 一般来说,Linux 系统的启动流程是这样的: 1. 开机之后,位于计算机主板 ROM 芯片上的 BIOS 被最先读取,在进行硬件和内存的校验以及 CPU 的自检没有异常后, BIO ...

  8. 大数据Hadoop入门教程 | (二)Linux

    使用finalShell可以提供文件目录图形化 完整Linux命令整理参考大佬博客:Linux常见文件管理命令 - Mr_Walker - 博客园 Linux文件系统基础知识 Linux文件系统概念 ...

  9. Linux 入门记录:十六、Linux 多命令协作:管道及重定向

    一.多命令协作 在 Linux 系统当中,大多数命令都很简单,很少出现复杂功能的命令,每个命令往往只实现一个或多个很简单的功能.通过将不同功能的命令组合一起使用,可以实现某个复杂功能的. Linux ...

  10. Linux入门基础(一):Linux基本操作

    命令行BASH基本操作 Shell 用户不能直接操作内核,所以用户操作通过shell传递给内核 shell分为两种 : GUI 图形界面 (linux一般是GNOME) CLI 命令行界面 (linu ...

随机推荐

  1. 分布式消息队列RocketMQ&Kafka -- 消息的“顺序消费”

    在说到消息中间件的时候,我们通常都会谈到一个特性:消息的顺序消费问题.这个问题看起来很简单:Producer发送消息1, 2, 3... Consumer按1, 2, 3...顺序消费. 但实际情况却 ...

  2. 【Python】Python中的下划线

    单下划线(如: _var): 使用单下划线,用于指定该名变量或函数属性为“私有”.这仅仅是一个惯例,不是强制规定.用于向其他程序员表明这个变量或函数仅仅供内部使用,外部不要访问它.但实际上外部还是可以 ...

  3. 【swaggerui】swaggerui在asp.net web api core 中的应用

    Swaggerui 可以为我们的webapi提供美观的在线文档,如下图: 实现步骤: NuGet Packages  Install-Package Swashbuckle.AspNetCore 在s ...

  4. C# 代码操作XML(增、删、改)

    目录:  1.创建XML 1)创建普通XML 2)创建带属性的XML 2.追加XML 3.读取XML 1)读取普通XML 2)读取带属性的XML 4.修改属性的值 5.删除XML节点 作为一个小型的数 ...

  5. C# 大文件的复制方法

    如何复制读取大文件,也许困惑了很多人很长时间,这个不知道怎么搞,的确让人头疼欲裂,知道了你就才发现原来那么简单,话不多说,直入正题```` static void Main(string[] args ...

  6. POJ1006:Biorhythms——题解

    http://poj.org/problem?id=1006 题目大意: 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这 ...

  7. JavaScript中进制之间的转换

    JavaScript中进制之间的转换 //十进制转其他 var x = 100; alert(x); alert(x.toString(2)); //转2进制 alert(x.toString(8)) ...

  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 ...

  9. udhcp server端源码分析1--文件组织结构

    1:dhcpd.c udhcpd_main函数是整个程序的入口,依次完成的主要工作有读取配置文件信息至全局结构体.记录程序pid number.初始化lease链表.将程序作为daemon运行.死循环 ...

  10. POJ2155 树状数组

    Matrix Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 26650   Accepted: 9825 Descripti ...