【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)
    • 表示上一次所在目录
相关推荐
007php0075 小时前
linux服务器上CentOS的yum和Ubuntu包管理工具apt区别与使用实战
linux·运维·服务器·ubuntu·centos·php·ai编程
djykkkkkk5 小时前
ubuntu编译遇到的问题
linux·运维·ubuntu
qq_429856575 小时前
linux 查看服务是否开机自启动
linux·运维·服务器
7yewh7 小时前
Linux驱动开发 IIC I2C驱动 编写APP访问EEPROM AT24C02
linux·arm开发·驱动开发·嵌入式硬件·嵌入式
dessler7 小时前
Docker-Dockerfile讲解(三)
linux·运维·docker
KevinRay_7 小时前
命令行之巅:Linux Shell编程的至高艺术(中)
linux·运维·服务器·重定向·shell编程
程序员JerrySUN7 小时前
Yocto 项目 - 共享状态缓存 (Shared State Cache) 机制
linux·嵌入式硬件·物联网·缓存·系统架构
林农9 小时前
C05S16-MySQL高可用
linux·mysql·云计算
码中小白鼠9 小时前
Ubuntu系统部署Mysql8.0后设置不区分大小写
linux·mysql·ubuntu·adb
gz94569 小时前
Virtualbox安装ubuntu20虚拟机无法打开终端
java·linux·开发语言