【Linux】目录结构、路径

目录

[1. 目录结构](#1. 目录结构)

[1.1 基本概念](#1.1 基本概念)

[1.2 具体的目录结构](#1.2 具体的目录结构)

[2. 路径](#2. 路径)

[2.1 绝对路径和相对路径](#2.1 绝对路径和相对路径)

[2.2 特殊路径符](#2.2 特殊路径符)


1. 目录结构

1.1 基本概念

Linux的目录结构是一个树形结构。

Windows系统可以拥有多个盘符,如 C盘、D盘、E盘。Linux没有盘符这个概念,只有一个根目录/,所有文件都在它下面。

在Windows系统中,路径之间的层级关系,使用\来表示。如,D:\data\work\hello.txt

在Linux系统中,路径之间的层级关系,使用/来表示。如,/usr/local/hello.txt

  • 开头的/表示根目录
  • 后面的/表示层级关系

1.2 具体的目录结构

  1. /bin [常用] (/usr/bin、/usr/local/bin)

是binary的缩写,这个目录存放着最经常使用的命令。

  1. /sbin (usr/sbin、/usr/local/sbin)

s就是super user的意思,这里存放的是系统管理员使用的系统管理程序。

  1. /home [常用]

存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名。

  1. /root [常用]

该目录为系统管理员,也称作超级权限者的用户主目录。

  1. /lib

系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。

  1. /lost+found

这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

  1. /etc [常用]

所有的系统管理所需要的配置文件和子目录,比如安装mysql数据库my.conf

  1. /usr [常用]

这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与Windows下的 Program Files目录。

  1. /boot [常用]

存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。

  1. /proc [不能动]

这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息。

  1. /srv [不能动]

service缩写,该目录存放一些服务启动之后需要提取的数据。

  1. /sys [不能动]

这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs。

  1. /tmp

这个目录是用来存放一些临时文件的。

  1. /dev

类似于Windows的设备管理器,把所有的硬件用文件的形式存储。

  1. media [常用]

Linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux会把识别的设备挂载到这个目录下。

  1. /mnt [常用]

系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容了。

  1. /opt

这是给主机额外安装软件所存放的目录。如安装Oracle数据库就可放到该目录下。默认为空。

  1. /usr/local [常用]

这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序。

  1. /var [常用]

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

  1. /selinux [security-enhanced linux]

SELinux是一种安全子系统,它能控制程序只能访问特定文件,有三种工作模式,可以自行设置。

2. 路径

2.1 绝对路径和相对路径

绝对路径:以根目录为起点,描述路径的一种写法,路径描述以/开头。

相对路径:以当前目录为起点,描述路径的一种写法,路径描述无需以/开头。

如图,通过pwd得知当前目录为/usr,通过cd命令切换工作目录到/usr/local/lib:

  • cd /usr/local/lib
  • cd local/lib

以上两种写法都可以切换工作目录到/usr/local/lib

2.2 特殊路径符

  • . 表示当前目录
  • .. 表示上一级目录
  • ~ 表示家目录(普通用户为/home/×××,root用户为/root)
    • 表示上一次所在目录
相关推荐
Lary_Rock8 分钟前
Android 编译问题 prebuilts/clang/host/linux-x86
android·linux·运维
熬夜学编程的小王9 分钟前
【Linux篇】理解信号:如何通过信号让程序听从操作系统的指令
linux·信号产生·软件条件产生信号
绵绵细雨中的乡音21 分钟前
Linux进程学习【基本认知】
linux·运维·学习
Johny_Zhao39 分钟前
MySQL 高可用集群搭建部署
linux·人工智能·mysql·信息安全·云计算·shell·yum源·系统运维·itsm
珹洺2 小时前
Linux操作系统从入门到实战(三)Linux基础指令(上)
linux·运维·服务器
再睡一夏就好2 小时前
Linux常见工具如yum、vim、gcc、gdb的基本使用,以及编译过程和动静态链接的区别
linux·服务器·c语言·c++·笔记
归寻太乙2 小时前
Linux环境变量
linux·运维·服务器
Sapphire~2 小时前
Linux-06 ubuntu 系统截图软件使用简单记录
linux·运维·ubuntu
難釋懷3 小时前
Shell脚本-while循环语法结构
linux·运维·服务器·bash
B64A-消闲3 小时前
shell命令一
linux·运维