Linux絮絮叨(四) 系统目录结构
Linux 系统的目录结构(Filesystem Hierarchy Standard, FHS)定义了 Linux 系统中文件系统的标准布局,以下是一些常见目录的功能:
根目录 /
- 描述:所有文件和目录的起始点,Linux 文件系统的根。
- 内容:所有的系统文件和目录都在根目录下,根目录没有扩展或变化的空间,通常它只包含必要的系统文件和子目录。
- 常见内容:
bin/、etc/、home/、lib/、opt/、proc/、root/、tmp/、usr/、var/等。
主要目录及其功能
1. /bin
- 描述:二进制文件目录,存放系统启动时最基本的命令工具。
- 常见内容:
- 基本的命令如
ls、cp、mv、cat、rm等,这些命令是系统恢复和管理所必需的。
- 基本的命令如
2. /boot
- 描述:启动文件目录,包含操作系统启动所需要的核心文件。
- 常见内容:
- 内核文件 (
vmlinuz)、引导加载程序 (GRUB、LILO) 配置文件、启动时用到的初始化程序。 - 示例:
/boot/grub/。
- 内核文件 (
3. /dev
- 描述:设备文件目录,Linux 将设备当作文件处理,所有硬件设备的文件都在该目录下,在 Linux 中访问设备的方式和访问文件的方式是相同的。
- 常见内容:
- 硬件设备文件,如
/dev/sda(硬盘设备)、/dev/tty(终端设备)、/dev/null(空设备)等。
- 硬件设备文件,如
4. /etc
- 描述:系统配置文件目录,存放系统和应用程序的配置文件。
- 常见内容:
- 系统服务配置文件,如
/etc/passwd(用户账户信息)、/etc/fstab(文件系统表)、/etc/hostname(主机名配置)。 - 系统服务的启动脚本文件。
- 系统服务配置文件,如
5. /home
- 描述:用户家目录,所有普通用户的个人文件都存放在这个目录下。
- 常见内容:
- 每个用户的家目录,如
/home/user1/、/home/user2/等。普通用户的个人数据、配置文件和桌面文件存放在此。
- 每个用户的家目录,如
6. /lib
- 描述:共享库文件目录,存放系统运行时需要的共享库文件,类似于 Windows 里的 DLL 文件。
- 常见内容:
- 系统运行所需的动态链接库文件,如
libc.so,以及内核模块文件。 - 示例:
/lib/modules/存放内核模块。
- 系统运行所需的动态链接库文件,如
7. /lost+found
- 描述:文件系统修复目录,一般情况下是空的,当系统非法关机后,会保存文件系统损坏后恢复的部分数据。
- 常见内容:
- 文件系统检查工具(如
fsck)在修复文件系统时恢复的部分文件。
- 文件系统检查工具(如
8. /media
- 描述:可移动媒体设备挂载点,临时挂载的设备(如 USB 驱动器、CD-ROM)一般挂载在此目录。
- 常见内容:
- 挂载的设备如
/media/cdrom/或/media/usb/。
- 挂载的设备如
9. /mnt
- 描述:临时挂载点,通常用于系统管理员临时挂载的文件系统或设备。
- 常见内容:
- 用于手动挂载的分区或文件系统,通常是暂时性的文件系统挂载。
10. /opt
- 描述:可选的应用程序软件目录,存放附加的软件包和应用程序。
- 常见内容:
- 安装的第三方软件包,如
/opt/下存放的某些大型软件包或自定义应用程序。 - 示例:
/opt/google/或/opt/eclipse/。
- 安装的第三方软件包,如
11. /proc
- 描述:虚拟文件系统目录,包含运行时系统信息,主要用于进程信息。
- 常见内容:
- 动态生成的进程和系统信息,如
/proc/cpuinfo(CPU 信息)、/proc/meminfo(内存信息)、/proc/[pid]/(进程信息)。
- 动态生成的进程和系统信息,如
12. /root
- 描述:超级用户的家目录,
root用户的个人文件和配置文件存放在此。 - 常见内容:
root用户的个人文件,例如/root/.bashrc等。
13. /run
- 描述:运行时数据目录,存放系统启动后动态生成的临时文件。
- 常见内容:
- 系统运行时产生的状态文件,如进程 PID 文件、锁文件等。
- 示例:
/run/lock/和/run/user/。
14. /srv
- 描述:服务数据目录,存放与服务相关的数据文件。
- 常见内容:
- Web 服务数据、FTP 服务数据、数据库数据等。
- 示例:
/srv/www/存放网站相关的数据。
15. /sys
- 描述:虚拟文件系统目录,提供内核与用户空间的接口。
- 常见内容:
- 系统硬件信息和设置,如
/sys/class/和/sys/devices/用于访问和配置硬件设备。
- 系统硬件信息和设置,如
16. /tmp
- 描述:临时文件目录,用于存放临时的文件。
- 常见内容:
- 系统和应用程序运行过程中生成的临时文件。
- 这个目录通常在系统重启后会被清空。
17. /usr
- 描述:用户相关的只读数据,存放系统和应用程序的软件包及文档。
- 常见内容:
/usr/bin/:大多数应用程序的二进制文件。/usr/lib/:系统共享库文件。/usr/share/:共享的数据和文档,如man页、程序帮助文件。/usr/local/:本地安装的程序和脚本。
18. /var
- 描述:可变数据目录,存放程序运行过程中产生的经常变化的文件。
- 常见内容:
- 日志文件,如
/var/log/。 - 邮件队列、打印队列、缓存文件等。
- 日志文件,如
Linux 文件系统结构概念总结
- 根目录
/:所有文件和目录的顶层,所有的目录都以/为根。 - 二进制目录
/bin、/sbin:存放最基本的系统命令和管理员命令。 - 用户目录
/home:普通用户的个人目录。 - 系统配置
/etc:存放系统和程序的配置文件。 - 设备文件
/dev:所有硬件设备的文件。 - 共享库
/lib:系统共享库文件。 - 临时文件
/tmp、/var:存放临时文件和运行时变化的文件。 - 挂载点
/mnt、/media:挂载外部设备或文件系统。
扩展知识
/usr和/usr/local:用于存放应用程序和软件包。/usr是系统级软件包安装的地方,而/usr/local通常是管理员手动安装的程序。- 文件权限和安全性:
/etc/目录下的配置文件控制着系统的访问和安全策略。
相关文章:
Linux絮絮叨(四) 系统目录结构
Linux 系统的目录结构(Filesystem Hierarchy Standard, FHS)定义了 Linux 系统中文件系统的标准布局,以下是一些常见目录的功能: 根目录 / 描述:所有文件和目录的起始点,Linux 文件系统的根。内容…...
Java基于SpringBoot的网上订餐系统,附源码
博主介绍:✌Java老徐、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇&…...
《Java核心技术I》死锁
死锁 账户1:200元账户2: 300元线程1:从账号1转300到账户2线程2:从账户2转400到账户1 如上,线程1和线程2显然都被阻塞,两个账户的余额都不足以转账,两个线程都无法执行下去。 有可能会因为每一个线程要等…...
【Windows11系统局域网共享文件数据】
【Windows11系统局域网共享文件数据】 1. 引言1. 规划网络2. 获取必要的硬件3. 设置网络4. 配置网络设备5. 测试网络连接6. 安全性和维护7. 扩展和优化 2. 准备工作2.1: 启用网络发现和文件共享2.2: 设置共享文件夹 3. 访问共享文件夹4. 小贴士5. 总结 1. 引言 随着家庭和小型办…...
MCU、ARM体系结构,单片机基础,单片机操作
计算机基础 计算机的组成 输入设备、输出设备、存储器、运算器、控制器 输入设备:将其他信号转换为计算机可以识别的信号(电信号)。输出设备:将电信号(0、1)转为人或其他设备能理解的…...
在办公室环境中用HMD替代传统显示器的优势
VR头戴式显示器(HMD)是进入虚拟现实环境的一把钥匙,拥有HMD的您将能够在虚拟现实世界中尽情探索未知领域,正如如今的互联网一样,虚拟现实环境能够为您提供现实中无法实现的或不可能实现的事。随着技术的不断进步&#…...
ssm 多数据源 注解版本
application.xml 配置如下 <!-- 使用 DruidDataSource 数据源 --><bean id"primaryDataSource" class"com.alibaba.druid.pool.DruidDataSource" init-method"init" destroy-method"close"></bean> <!-- 使用 数…...
selenium常见接口函数使用
博客主页:花果山~程序猿-CSDN博客 文章分栏:测试_花果山~程序猿的博客-CSDN博客 关注我一起学习,一起进步,一起探索编程的无限可能吧!让我们一起努力,一起成长! 目录 1. 查找 查找方式 css_s…...
STM32F103单片机使用STM32CubeMX新建IAR工程步骤
打开STM32CubeMX软件,选择File 选择新建工程 在打开的窗口输入单片机型号 在右下角选择单片机型号,然后点右上角 start project,开始新建工程。 接下来设置调试接口,在左边System Core中选择 SYS,然后在右右边debu…...
刷题重开:找出字符串中第一个匹配项的下标——解题思路记录
问题描述: 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。 示例 1: 输入&…...
product/admin/list?page=0size=10field=jancodevalue=4562249292272
文章目录 1、ProductController2、AdminCommonService3、ProductApiService4、ProductCommonService5、ProductSqlService https://api.crossbiog.com/product/admin/list?page0&size10&fieldjancode&value45622492922721、ProductController GetMapping("ad…...
人工智能机器学习无监督学习概念及应用详解
无监督学习:深入解析 引言 在人工智能和机器学习的领域中,无监督学习(Unsupervised Learning)是一种重要的学习范式。与监督学习不同,无监督学习不依赖于标签数据,而是通过模型从无标签的数据中学习数据的…...
APM装机教程(五):测绘无人船
文章目录 前言一、元生惯导RTK使用二、元厚HXF260测深仪使用三、云卓H2pro遥控器四、海康威视摄像头 前言 船体:超维USV-M1000 飞控:pix6c mini 测深仪:元厚HXF160 RTK:元生惯导RTK 遥控器:云卓H12pro 摄像头…...
微信小程序 运行出错 弹出提示框(获取token失败,请重试 或者 请求失败)
原因是:需要登陆微信公众平台在开发管理 中设置 相应的 服务器域名 中的 request合法域名 // index.jsPage({data: {products:[],cardLayout: grid, // 默认卡片布局为网格模式isGrid: true, // 默认为网格布局page: 0, // 当前页码size: 10, // 每页大小hasMore…...
IDEA的service窗口中启动类是灰色且容易消失
大家在学习Spring Cloud的过程中,随着项目的深入,会分出很多个微服务,当我们的服务数量大于等于三个的时候,IDEA会给我们的服务整理起来,类似于这样 但是当我们的微服务数量达到5个以上的时候,再启动服务的时候,服务的启动类就会变成灰色,而且还容易丢失 解决方法 我们按住…...
R中利用ggplot2绘制气泡图
闲来无事,整理了一下自己的绘图笔记,顺便分享到CSDN上。 一、介绍 气泡图(Bubble Plot)是一种常用的数据可视化方法,用于展示三个变量之间的关系。气泡图的特点是通过气泡的大小、颜色和位置来表达数据中的多维信息。…...
CID引流电商
ClickID技术是基于多家媒体平台开发的电商引流服务,通过媒体提供的宏参数,间接解决电商平台订单数据的回传问题,帮助账户收集到极致精准的数据模型,搭建不同媒体往各平台引流的桥梁。简单来说就是通过ClickID数据监测到另外一个平…...
在google cloud虚拟机上配置anaconda虚拟环境简单教程
下载anaconda安装包 wget https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh 安装 bash Anaconda3-2022.10-Linux-x86_64.sh 进入base环境 eval "$(/home/xmxhuihui/anaconda3/bin/conda shell.bash hook)" source ~/.bashrc 安装虚拟环境…...
windows下用vs搭配clang一起生成抽象语法树
如果你使用的是 Visual Studio 环境,并且想要通知 Clang 关于 C 语言标准库的位置,你可以通过以下几种方法来实现。Visual Studio 提供了完整的 C/C 标准库,Clang 可以与之协同工作。以下是具体步骤: 1. 使用 clang-cl Visual S…...
输入法:点三下输入一个汉字
作者常用的双拼输入法,需要26键。虽然也有9键的方案,但重码率较高。计算一下,9键点2下,共81种排列组合。而汉字的读音,不计声调,有400多个。相差甚多。 所以,设计了“三拼输入法”,…...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
