linux系统根下常见目录功能简介(代码片段)

白-胖-子 白-胖-子     2022-12-10     803

关键词:

Linux的文件系统分层结构

  • FHS文件系统层次标准:FHS Filesystem Hierarchy Standard

  • 文件和目录被组织成一个单根倒置树结构

  • 文件系统从根目录下开始,用“/”表示

  • 根文件系统(rootfs):root filesystem

  • 标准Linux文件系统(如:ext4),文件名称大小写敏感,例如:MAIL, Mail, mail, mAiL

  • 以 . 开头的文件为隐藏文件

  • 路径分隔符 /

  • 文件名最长255个字节

  • 包括路径在内文件名称最长4095个字节

  • 蓝色–>目录 绿色–>可执行文件 红色–>压缩文件 浅蓝色–>链接文件 灰色–>其他文件

  • 除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用

  • 每个文件都有两类相关数据:元数据:metadata,即属性, 数据:data,即文件内容

Linux根目录下必备目录

遵循FHS文件系统层次标准 这些目录是被Linux要求在根 / 下必须存在的目录

目录目录描述目录功能
binEssential command binaries系统自带程序
bootStatic files of the boot loader系统启动引导文件
devDevice files硬件设备文件形式存在
etcHost-specific system configuration系统配置文件
libEssential shared libraries and kernel modules各种库和模块
mediaMount point for removeable media光驱或移动设备挂载点
mntMount point for mounting a filesystem temporarily临时挂载点
optAdd-on application software packages应用程序附加包
sbinEssential system binaries基本系统二进制文件
srvData for services provided by this system服务数据
tmpTemporary files临时目录
usrSecondary hierarchy应用程序
varVariable data系统变量等各种变量

Linux特殊目录

如果安装了相应的子系统,系统根 / 必须存在以下目录或目录的符号链接

目录目录描述目录功能
homeUser home directories (optional)用户家目录
rootHome directory for the root user (optional)root加目录
lib<qual>Alternate format essential shared libraries (optional)共享库文件,例如lib64

Ubuntu 18 根目录结构

root@u18a:~# tree -L 1 /
/
├── bin
├── boot
├── cdrom
├── data
├── dev
├── etc
├── home
├── initrd.img -> boot/initrd.img-4.15.0-151-generic
├── initrd.img.old -> boot/initrd.img-4.15.0-147-generic
├── lib
├── lib64
├── lost+found
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin
├── snap
├── srv
├── swap.img
├── sys
├── tmp
├── usr
├── var
├── vmlinuz -> boot/vmlinuz-4.15.0-151-generic
└── vmlinuz.old -> boot/vmlinuz-4.15.0-147-generic

23 directories, 5 files

CentOS 8 根目录结构

[17:37:36 root@C8-88[ ~]#tree -L 1 /
/
├── Apps
├── bin -> usr/bin
├── boot
├── cd
├── data
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── linux43
├── linux44
├── media
├── misc
├── mnt
├── net
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
├── var
└── vat

Linux常见目录简要说明

/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
/bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
/lib64:专用于x86_64系统上的辅助共享库文件存放位置
/etc:配置文件目录
/home/USERNAME:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
/dev:设备文件及特殊文件存储位置
b: block device,随机访问
c: character device,线性访问
/opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置
/usr: universal shared, read-only data
bin: 保证系统拥有完整功能而提供的应用程序
sbin:
lib:32位使用
lib64:只存在64位系统
include: C程序的头文件(header files)
share:结构化独立的数据,例如doc, man等
local:第三方应用程序的安装位置
bin, sbin, lib, lib64, etc, share
/var: variable data files
cache: 应用程序缓存数据目录
lib: 应用程序状态信息数据
local:专用于为/usr/local下的应用程序存储可变数据
lock: 锁文件
log: 日志目录及文件
opt: 专用于为/opt下的应用程序存储可变数据
run: 运行中的进程相关数据,通常用于存储进程pid文件
spool: 应用程序数据池
tmp: 保存系统两次重启之间产生的临时数据
/proc: 用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

linux里面chroot命令作用是啥?

chroot,即changerootdirectory(更改root目录)。在 linux 系统中,系统默认的目录结构都是以`/`,即是以根(root)开始的。而在使用chroot之后,系统的目录结构将以指定的位置作为`/`位置参考技术Achroot命令之后,系统读取到的目录和... 查看详情

rk3588平台开发系列讲解(文件系统篇)linux文件系统简介(代码片段)

平台内核版本安卓版本RK3588Linux5.10Android12文章目录一、什么是文件系统二、文件系统目录介绍三、什么是根文件系统四、根文件系统制作工具4.1、Buildroot4.2、Yocto沉淀、分享、成长,让自己和他人都能有所收获! 查看详情

linux基础-常见指令及权限理解(代码片段)

1.常见指令及权限理解初始Linux操作系统初识shell命令,了解若干背景知识。使用常用Linux命令了解Linux权限概念与思想,能深度理解“权限”初步了解Linux目录结构含义文章目录1.常见指令及权限理解1.linux系统及计算机背景2.使用XShel... 查看详情

linux❀系统文件权限汇总梳理(代码片段)

文章目录1、ls命令的使用与常见参数2、目录/文件权限赋予解析3、简单别名设置4、修改文件权限5、特殊权限6、ACL-访问控制列表Linux中文件权限相关的配置整合汇总梳理结果如下,主要分为以下几点:ls命令的使用与常见... 查看详情

linux❀系统文件权限汇总梳理(代码片段)

文章目录1、ls命令的使用与常见参数2、目录/文件权限赋予解析3、简单别名设置4、修改文件权限5、特殊权限6、ACL-访问控制列表Linux中文件权限相关的配置整合汇总梳理结果如下,主要分为以下几点:ls命令的使用与常见... 查看详情

linux内核进程管理(系统调用简介|进程相关系统调用源码)(代码片段)

文章目录一、系统调用简介二、进程相关系统调用源码一、系统调用简介在开发应用程序时,进行"进程创建",调用的fork(),vfork(),clone()等函数,就是"系统调用";"系统调用"是操作系统提供的应用程序调用内核功能的... 查看详情

linux操作系统简介(代码片段)

文章目录Linux发行版简介学习Linux的必备硬件知识关键硬件器件——CPU关键硬件器件——存储关键硬件器件——内存其他一些查看硬件信息的命令Linux开机过程(以Ubuntu16.04为例)阶段1:BIOS阶段2:bootLoader阶段3࿱... 查看详情

android逆向linux文件权限(linux权限简介|系统权限|用户权限|匿名用户权限|读|写|执行|更改组|更改用户|粘滞)(代码片段(代码片段)

文章目录一、Linux权限简介二、系统权限/用户权限/匿名用户权限1、系统权限2、用户权限3、匿名用户权限一、Linux权限简介Linux是基于文件的系统,内存,设备,各种机制等,一切皆文件;Linux中的每个文件都有自己的权限;使用ls-ll命令... 查看详情

java中atm系统开发(代码片段)

目录ATM系统开发一、系统准备1、简介2、定义账户类3、欢迎页面二、开户功能1、简介2、代码实现三、登录功能1、简介2、代码实现四、登录成功1、界面2、查询功能3、注销账户4、存款功能5、取款功能6、转账功能7、密码修改五... 查看详情

linux(代码片段)

文章目录Linux简介Linxu系统启动过程Linux系统有7个运行级别(runlevel):Linux系统初始化登录linux系统Linux命令窗口终端切换Linux简介Linux内核最初只是由一个芬兰人上大学时出于个人爱好而编写的。这个NB的人还把Linux开源了,L... 查看详情

linux常见文件的操作(代码片段)

常见目录说明目录说明/bin系统命令,单用户维护模式下还能被操作的命令/boot开机使用到的文件,包括Linux内核文件,以及开机菜单和开机需要的配置文件/dev设备文件/etc配置文件/home用户文件夹/lib开机需要用到的类... 查看详情

linux命令(218)——lnstat命令(代码片段)

...简介lnstat显示Linux网络统计信息。lnstat命令实际上是读取系统“/proc/net/stat”目录下面的文件,来显示当前主机的网络状态的。lnstat是rtstat命令的更新替代命令,功能更完善。2.命令格式lnstat[options]3.选项说明-c,--count<coun 查看详情

linux(代码片段)

...,挂载Linux分区原理Linux硬盘说明查看设备的指令查询系统整体磁盘使用情况查询指定目录的磁盘占用情况查看磁盘工作情况的指令定时任务调度简介crond任务调调度指令,进行定时任务的设置任务调度的概念任务调度是... 查看详情

01-shell-简介及第一个脚本(代码片段)

...用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。常见shell种类BourneShell 查看详情

[架构之路-28]:目标系统-系统软件-linuxos内核功能架构图解内核构建内核启动流程(代码片段)

目录第1章Linux概述1.1嵌入式系统简介1.2嵌入式系统的架构1.3什么是操作系统OS与主流操作系统1.4 什么是嵌入式操作系统1.5Linux操作系统1.6Linux操作系统的特点与好处1.7 Linux系统工具链完整1.8Linux内核第2章Linux内核为应用程序提供... 查看详情

[架构之路-28]:目标系统-系统软件-linuxos内核功能架构图解内核构建内核启动流程(代码片段)

目录第1章Linux概述1.1嵌入式系统简介1.2嵌入式系统的架构1.3什么是操作系统OS与主流操作系统1.4 什么是嵌入式操作系统1.5Linux操作系统1.6Linux操作系统的特点与好处1.7 Linux系统工具链完整1.8Linux内核第2章Linux内核为应用程序提供... 查看详情

并发包下常见的同步工具类详解(countdownlatch,cyclicbarrier,semaphore)(代码片段)

目录1.前言2.闭锁CountDownLatch2.1CountDownLatch功能简介2.2使用CountDownLatch2.3CountDownLatch原理浅析3.循环屏障CyclicBarrier3.1CyclicBarrier功能简介3.2使用CyclicBarrier3.3CyclicBarrier原理浅析4.信号量Semaphore4.1Semaphore功能简介4.2使用Sem 查看详情

c++实现机房预约系统完整源码分享!(代码片段)

...习并实现的时间为一周。文章目录系列文章目录机房预约系统1、机房预约系统需求1.1系统简介1.2身份简介1.3机房简介1.4申请简介1.5系统具体需求2、创建项目2.1创建项目2.2添加文件3、创建主菜单3.1菜单实现3.2搭建接口4、退出功... 查看详情