认识linux文件系统/文件夹名字解释

news2024/9/21 18:57:02

        linux系统因为其高效、直接的底层操作而被很多代码开发者使用,谈及linux,大家普遍的印象就是黑乎乎的终端命令行,后来基于linux系统开发出来的具有可视化桌面的ubuntu版本,让大家的使用体验兼顾了windows系统的直观性可linux系统代码开发的便捷性。

        那么linux系统中各个文件夹名字中存放的都是什么东西呢?本文就来汇总一下。

文件夹名字解释

1,/bin和/sbin :可执行文件或者可执行文件的链接(类似快捷方式)

bin是Binary的缩写。cp, chmod, cat 等常用命令存放在这里。 sbin 是System Binary的缩写,这里存放的命令可以对系统配置进行操作。普通用户可以通过这些命令查看系统状态,但是如果想修改,需要sudo授权,如ifconfig, iptables。

2,/boot:系统启动需要的文件

如grub文件夹,是常见的开机引导程序。

3,/deb:设备文件

dev是device的缩写。在linux中,所有东西都是以文件的形式存在的,包括硬件设备。如鼠标键盘

4,/etc:程序的配置信息

这个目录比较常见,存放很多程序配置信息,如apt, 在/etc/apt中存放这对应的配置,比如说镜像列表。如果想修改一些系统程序的配置,大多数要到/etc目录下寻找。

5,/lib,程序依赖文件仓库

Library的缩写,类似于Windows放dll文件的库,包含bin,sbin中可执行程序的依赖。

6,/media,用户信息媒介

这里会有一个以你用户名命名的文件夹,里面是自动挂载的设备,如U盘,移动硬盘,网络设备等。

7,/mnt,和设备挂载相关的文件夹,一般为空

media是系统自动挂载设备的地方,这里是你手动挂载设备的地方

8,/opt,Option的缩写,用户操作存放的文件

这个文件夹的使用比较随意,一般来说我们自己在浏览器上下载的软件,安装在这里比较好。当然,包管理工具下载的软件也可能被存放在这里

9,/proc,正在运行程序的状态信息

process的缩写。这里的文件大多用数字命名,数字就是Process ID(PID)。

这里的文件并不是真正的文件,而是程序和内核交流的一些信息,比如可以查看当前操作系统的版本,或者查看CPU的状态: cat /proc/version,    head /proc/cpuinfo

10,/root,管理员或超级用户的目录

11,/run和/sys,用来存储某些程序的运行时信息和系统需要的一些信息。

比如,修改显卡的亮度,sudo vim /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-eDP-1/intel_backlight/brightness

但是,这个数据是存储在内存中,一旦重启,/run 和 /sys 目录的信息就会丢失,所以这里不能用来保存任何文件。

12,/srv,存放服务数据

service的缩写。对于桌面版 Linux 系统,这个文件夹一般是空的,但是对于 Linux 服务器,Web 服务或者 FTP 文件服务的资源可以存放在这里。

13,/tmp,存放程序的临时文件

temporary的缩写。临时文件可能起到很重要的作用。比如经常听说某同学的 Word 文档崩溃了,好不容易写的东西全没了,Linux 的很多文本编辑器都会在 /tmp 放一份当前文本的 copy 作为临时文件,如果你的编辑器意外崩溃,还有机会在 /tmp 找一找临时文件抢救一下。

当然,tmp 文件夹在系统重启之后会自动被清空,如果没有被清空,说明系统删除某些文件失败,也许需要你手动删除一下。

14,/usr,存放非系统必须的资源,存放用户添加的一些资源

usr 是 Universal System Resource 的缩写,这里存放的是一些非系统必须的资源,比如用户安装的应用程序。

/usr 和 /usr/local 目录中又含有 bin 和 sbin 目录,也是存放可执行文件(命令),但和根目录的 bin 和 sbin 不同的是,这里大都是用户使用的工具,而非系统必须使用的。

比如说 /usr/bin 中含有我通过包管理工具安装的应用程序 Chrome 浏览器和 goldendict 字典的可执行文件。

15,/var,存放日志信息,不能自动删除

var 是 variable 的缩写,这个名字是历史遗留的,现在该目录最主要的作用是存储日志(log)信息,比如说程序崩溃,系统异常等等信息都会记录在这里。

16,/home,用户的家目录

普通用户的家目录。在桌面版的 Linux 系统中,用户的家目录会有下载、视频、音乐、桌面等文件夹,这些没啥可说的,我们说一些隐藏的比较重要的文件夹(Linux 中名称以 . 开头就是隐藏文件)。

其中 .cache 文件夹存储应用缓存数据,.config 文件夹存储了一部分应用程序的配置,比如说我的 Chrome 浏览器配置就是那里面。但是还有一部分应用程序并不把配置储存在 .config 文件夹,而是自己创建一个隐藏文件夹,存放自己的配置文件等等信息,比如你可以看到 Intellij 的配置文件就不在 .config 中。

最后说 .local 文件夹,有点像 /usr/local,里面也有 bin 文件夹,也是存放可执行文件的。比如说我的 python pip 以及 pip 安装的一些工具,都存放在 ~/.local/bin 目录中。但是,存在这里的文件,只有该用户才能使用

这就是为什么,有时候普通用户可以使用的命令,用 sudo 或者超级用户却被告知找不到该命令。因为有的命令是特定用户家目录里的,被添加到了该用户的 PATH 环境变量里,他可以直接用。你超级用户想用当然可以,但是得写全绝对路径才行。

使用技巧

如果修改系统配置,就去 /etc 找,如果修改用户的应用程序配置,就在用户家目录的隐藏文件里找。

你在命令行里可以直接输入使用的命令,其可执行文件一般就在以下几个位置:

/bin    
/sbin
/usr/bin
/usr/sbin
/usr/local/bin
/usr/local/sbin
/home/USER/.local/bin
/home/USER/.local/sbin

如果你写了一个脚本/程序,想在任何时候都能直接调用,可以把这个脚本/程序添加到上述目录中。

如果某个程序崩溃了,可以到 /val/log 中尝试寻找出错信息,到 /tmp 中寻找残留的临时文件。

设备文件在 /dev 目录,但是一般来说系统会自动帮你挂载诸如 U 盘之类的设备,可以到 /media 文件夹访问设备内容。

来自:Linux 文件系统都是什么鬼 :: labuladong的算法小抄

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/564638.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YOLOV5使用(一): docker跑通,详解TensorRT下plugin的onnx

yolov5的工程使用(以人员检测为案例) 使用ubuntu为案例 docker run --gpus all -it -p 6007:6006 -p 8889:8888 --name my_torch -v $(pwd):/app easonbob/my_torch1-pytorch:22.03-py3-yolov5-6.0使用端口映射功能也就是说打开jupyter lab的指令是 http://localhost:8889/l…

windows先的conda环境复制到linux环境

如果是迁移的环境一致:同是windows或同是linux直接用这个命令即可: conda create -n new_env_name --clone old_env_path 如果是window的环境迁移到linux这种跨环境就不能用上面的方法,网上这方面的资料也很多,记录一下我的…

小蝌蚪找妈妈:Python之作用域链与 LEGB 原则

文章目录 参考描述作用域对象全局作用域globals() 局部作用域locals() 包含作用域内置作用域builtins 模块builtins 模块与 \_\_builtins__builtins is \_\_builtins__??? \_\_builtins__ 与内置作用域赶不走的 \_\_builtins__ 作用域链作用域链 与 LEGB 原则狗急跳墙之法 参…

【Go语言从入门到实战】基础篇

Go语言从入门到实战 — 基础篇 First Go Program 编译 & 运行 基本程序结构 应用程序入口 package mainimport "fmt"func main() {fmt.Println("Hello World") }退出返回值 package mainimport ("fmt""os" )func main() {fmt.Pr…

哪个产品功能重要?KANO模型帮你

哪个产品功能重要?KANO模型来帮你 模型工具可以协助思考和系统化改进 KANO模型是小日本一个教授提出 趣讲大白话:往往,怎么思考,比思考什么重要 【趣讲信息科技175期】 **************************** 东京理工大学教授狩野纪昭(No…

【医学图像】图像分割系列.2 (diffusion)

介绍几篇使用diffusion来实现医学图像分割的论文:DARL(ICLR2023),MedSegDiff(MIDL2023)& MedSegDiff-V2(arXiv2023),ImgX-DiffSeg(arXiv2023)…

CTF 2015: Search Engine-fastbin_dup_into_stack

参考: [1]https://gsgx.me/posts/9447-ctf-2015-search-engine-writeup/ [2]https://blog.csdn.net/weixin_38419913/article/details/103238963(掌握利用点,省略各种逆向细节) [3]https://bbs.kanxue.com/thread-267876.htm(逆向调试详解&am…

web功能测试方法大全—完整!全面!(纯干货,建议收藏哦~)

本文通过六个部分为大家梳理了web功能测试过程中,容易出现的遗漏的部分,用以发掘自己工作中的疏漏。(纯干货,建议收藏哦~) 一、输入框 1、字符型输入框 2、数值型输入框 3、日期型输入框 4、信息重复 在一些需要命…

GPT-4版Windows炸场,整个系统就是一个对话机器人,微软开建AI全宇宙

原创 智东西编辑部 智东西 Windows的GPT时刻到来,变革PC行业。 作者 | 智东西编辑部 今日凌晨,Windows迎来了GPT-4时刻! 在2023微软Build大会上,微软总裁萨蒂亚纳德拉(Satya Nadella)宣布推出Windows Co…

实现免杀:Shellcode的AES和XOR加密策略(vt查杀率:4/70)

前言 什么是私钥和公钥 私钥和公钥是密码学中用于实现加密、解密和数字签名等功能的关键组件。 私钥是一种加密算法中的秘密密钥,只有密钥的拥有者可以访问和使用它。私钥通常用于数字签名和数据加密等场景中,它可以用于对数据进行加密,同…

头部效应凸显,消金行业迈入“巨头赛”?

回顾已经过去的2022年,消金行业面临着来自多方面的考验,承压前行,而随着进入2023年,相关企业也陆续展示出过去一年的发展成果,以此为后续发展做出指引。 当前,30家已开业的消金公司中,29家的20…

《消息队列高手课》课程笔记(三)

如何利用事务消息实现分布式事务? 什么是分布式事务? 消息队列中的“事务”,主要解决的是消息生产者和消息消费者的数据一致性问题。如果我们需要对若干数据进行更新操作,为了保证这些数据的完整性和一致性,我们希望…

独立站怎么搭建?搭建一个独立站的10个建议和步骤

要搭建一个独立站(也称为个人网站或博客),以下是一些建议和步骤: 选择一个合适的域名:选择一个简洁、易记且与您网站内容相关的域名。确保域名可用,并注册该域名。 寻找一个合适的主机服务提供商&#xff…

【Cpp】哈希之手撕闭散列/开散列

文章目录 unorderedunordered系列关联式容器unordered_map和unordered_set概述unordered_map的文档介绍unordered_map的接口说明 底层结构 哈希哈希/散列表 概念哈希冲突哈希函数哈希函数设计原则:常见哈希函数 哈希冲突解决闭散列线性探测二次探测 开散列 哈希表的…

C语言数据结构——树、堆(堆排序)、TOPK问题

🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C,数据结构 🔥座右铭:“不要等到什么都没…

使用go语言构建区块链 Part4.事务1

英文源地址 简介 事务是比特币的核心, 区块链的唯一目的是以安全可靠的方式存储交易, 因此在交易创建后没有人可以修改. 今天我们开始实现事务, 但由于这是一个相当大的主题, 我将它分成两部分: 在这一部分中, 我们将实现事务的通用机制, 在第二部分中, 我们将研究细节. 此外…

让你在Windows打开Sketch格式再也不愁

Sketch是Macos的专用矢量绘图应用。在Sketch软件中,ios开发者可以轻松设计图层面板等图层的常用操作,广泛应用于产品的交互设计和UI设计,帮助很多设计师创作出很多优秀的作品。然而,Sketch只服务于Macos系统,这使得许多…

Laravel框架06:文件、迁移填充、会话、缓存

Laravel框架06:文件、迁移填充、会话、缓存 一、文件上传1. 文件上传表单2. 上传业务处理3. 全部代码 二、数据表的迁移与填充1. 迁移文件① 创建迁移文件② 编写迁移文件③ 执行迁移文件④ 回滚迁移文件 2. 填充(种子)文件① 创建填充文件②…

C++常用的支持中文的GUI库Qt 6之三: Qt 6的项目的发布

C常用的支持中文的GUI库Qt 6之三: Qt 6的项目的发布 本文接着上一篇“C常用的支持中文的GUI库Qt 6之二:项目的结构、资源文件的使用” https://blog.csdn.net/cnds123/article/details/130741807介绍,并使用其中的例子。 程序代码能正确编译…

【STL】list的使用

系列文章 学习C途中自然绕不过STL,在这个系列文章之中 我们讲了string的使用和string的模拟实现,以及vector的使用、vector的模拟实现。 感兴趣的可以翻翻看。 目录 系列文章 前言 默认成员函数 构造函数 拷贝构造 赋值重载 迭代器 容量查询 …