Linux快速入门-Linux文件系统管理
Linux文件系统管理
- 1. Linux文件系统概述
- 1.1 文件系统概念
- 1.2 用户权限差异
- 1.3 文件命名规范
- 2. Linux文件系统分类及特点
- 2.1 ext2(第二扩展文件系统)
- 2.2 ext3(第三扩展文件系统)
- 2.3 ext4(第四扩展文件系统)
- 2.4 RAMFS(内存文件系统)
- 2.5 NFS(网络文件系统)
- 2.6 其他文件系统
- 3. Linux文件系统结构
- 4. Linux文件及目录访问权限设置
- 4.1 文件类型与一般权限
- 4.2 **特殊权限**
- 4.3 改变访问权限命令** `chmod`
- 4.4 改变文件/目录拥有者命令*`chown`
- 5. 文件管理器改变文件/目录权限
1. Linux文件系统概述
1.1 文件系统概念
文件系统是操作系统管理存储设备(如硬盘、SSD等)上数据和文件的方式。它定义了如何存储、组织和访问数据。Linux的文件系统采用单一的树形结构,从根目录(/
)开始,所有文件和目录都通过这个树形结构来访问。根目录(/
)下面包含各种系统目录和用户文件。
Linux文件系统的设计与其他操作系统不同,它并不区分物理设备,而是将所有内容通过树形目录组织。例如,硬盘分区、挂载的外部设备、甚至网络共享的目录,都通过挂载点与根目录统一管理。Linux通过文件系统路径来访问数据,无论数据存储在何处。
1.2 用户权限差异
Linux中根据用户的身份和访问权限划分为以下几类:
- 超级管理员(root):root用户具有系统的所有权限,能访问系统中的所有文件,并进行任何操作。root用户是最强大的账户。
- 普通用户:普通用户只能访问和操作自己有权限的文件,无法修改系统关键文件。普通用户有一个主目录(通常为
/home/用户名
),并可以在其中创建文件和目录。 - 同组用户:指与文件所有者属于同一组的用户,通常拥有部分访问权限。
- 其他用户:指与文件所有者和同组用户都没有关系的其他系统用户。
1.3 文件命名规范
Linux对文件名有一定的命名规范:
- 文件名长度:Linux文件名最长可以是255个字符。
- 允许字符:可以使用字母、数字、下划线(_)、点(.)等字符,但不能包含空格、特殊字符(如
*
、?
、|
等),并且不能以点(.)开头,除非该文件是隐藏文件。 - 文件类型识别:Linux并不依赖文件扩展名来识别文件类型,而是根据文件头内容(即文件的魔数)来判断类型。例如,二进制文件通常以特定字节开头(如ELF格式),而文本文件则不包含这些字节。
2. Linux文件系统分类及特点
Linux支持多种文件系统类型,每种文件系统具有其特定的功能和适用场景。以下是一些常见的Linux文件系统:
2.1 ext2(第二扩展文件系统)
- 特点:ext2是最早广泛使用的Linux文件系统,具有较好的性能,但不支持日志功能。文件系统崩溃时可能会导致数据丢失。
- 应用:适用于不需要高可靠性的环境,或者对文件系统稳定性要求不高的场合。
2.2 ext3(第三扩展文件系统)
- 特点:ext3是在ext2的基础上加入了日志功能(journaling),使得在系统崩溃时能够恢复数据,增加了数据的安全性。
- 应用:ext3在很多生产环境中得到了广泛应用,尤其是在需要较高数据安全性和可靠性的系统中。
2.3 ext4(第四扩展文件系统)
- 特点:ext4是ext3的升级版,除了支持日志功能,还引入了更高效的文件分配算法、大文件支持(支持16TB的单个文件)以及更快的文件系统检查速度。
- 应用:ext4是当前Linux系统中最常用的文件系统,适用于大多数桌面和服务器应用。
2.4 RAMFS(内存文件系统)
- 特点:RAMFS是一种将文件存储在内存中的文件系统。由于数据存储在RAM中,因此速度非常快,但重启后会丢失所有数据。
- 应用:适用于需要极高读写速度且不关心数据持久性的场合,如临时文件存储。
2.5 NFS(网络文件系统)
- 特点:NFS允许不同计算机间共享文件系统。通过NFS,用户可以将远程计算机上的目录挂载到本地系统,使得远程文件像本地文件一样操作。
- 应用:用于构建分布式文件系统,适用于需要跨多台机器共享文件的场合。
2.6 其他文件系统
除了上述文件系统,Linux还支持其他一些文件系统,如XFS(适用于大文件和高性能应用)、Btrfs(支持快照、数据校验等高级功能),以及专门为特定用途设计的文件系统。
3. Linux文件系统结构
Linux文件系统的结构呈树形,根目录/
是所有文件和目录的起点。以下是一些常见的系统目录及其功能:
- /etc:存放系统的配置文件,如系统服务、用户账号信息等。
- /bin:包含系统启动时所需的基本命令(如
ls
、cp
等),这些命令是系统的核心命令。 - /sbin:包含系统管理员需要用到的命令,如
shutdown
、reboot
等。 - /home:每个用户的主目录。普通用户的文件都存放在自己的主目录中,例如
/home/username
。 - /var:存放经常变化的数据文件,如日志文件、邮件、缓存等。
- /tmp:存放临时文件,通常在系统重启时清空。
这种结构使得文件和目录管理更加清晰和有序,方便系统维护和数据访问。
4. Linux文件及目录访问权限设置
4.1 文件类型与一般权限
每个文件在Linux中都有类型和权限。文件类型通过第一字符表示:
- -:普通文件
- d:目录
- l:符号链接
文件的权限通过后三位字符表示。每三位字符代表一个权限组,分别为:
- 第一组:文件所有者权限
- 第二组:同组用户权限
- 第三组:其他用户权限
每组三个字符表示权限,r
表示读权限,w
表示写权限,x
表示执行权限。权限可以使用数字表示:
r
(读)= 4w
(写)= 2x
(执行)= 1
例如,rw-r--r--
表示:
- 所有者:读和写权限
- 同组用户:只读权限
- 其他用户:只读权限
4.2 特殊权限
- SUID(SetUID):当设置SUID时,执行该程序的用户将临时获得程序所有者的权限。
- SGID(SetGID):当设置SGID时,执行该程序的用户将临时获得程序所属组的权限。
- Sticky位:当设置Sticky位时,只有文件的所有者可以删除该文件。
这些特殊权限可以通过chmod
命令设置,用于更细粒度的权限管理。
4.3 改变访问权限命令** chmod
chmod
命令用于修改文件或目录的权限。使用符号模式和数字模式都可以设定权限:
chmod u+x file.sh # 给所有者添加执行权限
chmod 755 file.sh # 使用数字模式设置权限
4.4 改变文件/目录拥有者命令*chown
chown
命令用于修改文件的所有者和用户组:
chown root:root file.txt # 更改文件的所有者和组
5. 文件管理器改变文件/目录权限
在Linux桌面环境中,如Ubuntu,用户可以通过图形界面来改变文件或目录的权限。操作方式通常是:
- 右键点击文件或目录,选择“属性”。
- 在“权限”标签下,用户可以查看和修改所有者、组以及权限设置。
这种图形化操作为不熟悉命令行的用户提供了便捷的权限管理方式。
相关文章:

Linux快速入门-Linux文件系统管理
Linux文件系统管理 1. Linux文件系统概述1.1 文件系统概念1.2 用户权限差异1.3 文件命名规范 2. Linux文件系统分类及特点2.1 ext2(第二扩展文件系统)2.2 ext3(第三扩展文件系统)2.3 ext4(第四扩展文件系统)…...

漏洞检测工具:Swagger UI敏感信息泄露
Swagger UI敏感信息泄露 漏洞定义 Swagger UI是一个交互式的、可视化的RESTful API文档工具,它允许开发人员快速浏览、测试API接口。Swagger UI通过读取由Swagger(也称为OpenAPI)规范定义的API描述文件(如swagger.json或swagger…...

VSCode如何修改默认扩展路径和用户文件夹目录到D盘
在使用Visual Studio Code(VSCode)时,随着安装的扩展和用户数据的增多,C盘的空间可能会逐渐紧张。为了优化存储管理,将VSCode的默认扩展路径和用户文件夹目录迁移到D盘是一个有效的解决方案。以下是详细的操作步骤&…...

【超详细实操内容】django的身份验证系统之限制用户访问的三种方式
目录 1、使用request.user.is_authenticated属性 2、装饰器login_required 3、LoginRequiredMixin类 通常情况下,网站都会对用户限制访问,例如,未登录的用户不可访问用户中心页面。Django框架中使用request.user.isauthenticated属性、装饰器loginrequired和LoginRequire…...

AI芯片常见概念
文章目录 AI芯片常见概念前言常见概念AI芯片分类按照芯片的技术架构分GPU半定制化的 FPGA全定制化 ASIC神经拟态芯片 按应用场景分训练卡推理卡 按部署位置分国产AI卡资料汇总 AI芯片算力和能效比AI芯片算力AI芯片能效比 封装相关Chiplet技术3DIC三星多芯片集成联盟(…...

Linux 中 epoll 的详解
Linux 中 epoll 的详解 epoll 是 Linux 内核提供的一种高效的 I/O 多路复用机制,用于监控大量文件描述符的 I/O 事件。相较于传统的 select 和 poll,epoll 在高并发和大规模网络编程场景下表现出色,特别适合需要处理成千上万个文件描述符的应…...

增加nginx配置文件(conf.d), 管理多个项目
1.切换到nginx目录下, 新建conf.d文件夹 mkdir conf.d 2.赋予conf.d权限 chmod 777 conf.d 3.进入conf.d, 编辑conf文件 vim zc_travel.conf server { listen 13101; server_name localhost;location / {root /home/baoxin/app/web/insight-radar-rcfx-pre/html_dev;index …...

PostgreSQL编译安装教程
下载安装 1.在家目录创建一个文件夹放下载安装包 mkdir softwarecd software 2.下载文件压缩包 wget https://ftp.postgresql.org/pub/source/v16.0/postgresql-16.0.tar.gz 3.解压 tar -xzvf postgresql-16.0.tar.gz 4.编译 在software/postgresql-16.0下 cd software…...

【提审】Android包提审报权限问题
问题:华为应用市场审核不通过 平台审核检测详情: 日志: 自检工具:frida-server【Unity&Android】安卓app自测应用隐私相关获取和申请权限_apk 隐私合规 自测-CSDN博客 参考资料:Unity启动时获取了android_id等设…...

xdoj 数字个数统计
1-2 数字个数统计 2 时间限制: 1S 题目描述: 一个正整数 n(1<n<1000),在区间[n,n2 ](含端点)内统计奇数个数、 偶数个数、能被 4 整除且不能被 3 整除的数字个数,并求出各统计数字两两…...

空天地遥感数据识别与计算--数据分析如何助力农林牧渔、城市发展、地质灾害监测等行业革新
在科技飞速发展的时代,遥感数据的精准分析已经成为推动各行业智能决策的关键工具。从无人机监测农田到卫星数据支持气候研究,空天地遥感数据正以前所未有的方式为科研和商业带来深刻变革。然而,对于许多专业人士而言,如何高效地处…...

Git:查看分支、创建分支、合并分支
一、查看分支 查看的git命令如下: git branch # 列出本地已经存在的分支,并且当前分支会用*标记 git branch -r # 查看远程版本库的分支列表 git branch -a # 查看所有分支列表(包括本地和远程,remotes/开头的表示远程分支&…...

联合目标检测与图像分类提升数据不平衡场景下的准确率
联合目标检测与图像分类提升数据不平衡场景下的准确率 在一些数据不平衡的场景下,使用单一的目标检测模型很难达到99%的准确率。为了优化这一问题,适当将其拆解为目标检测模型和图像分类模型的组合,可以更有效地控制最终效果,尤其…...

Git的简介
文章目录 一.Git是什么二.核心概念三.工作流程四.Git的优势 下载Git 推荐官网下载 官网地址 一.Git是什么 Git是一个分布式版本控制系统,用于跟踪文件的变化并协调多人对同一项目的开发工作。它就像是一个时光机器,能够记录文件在不同时间点的状态&…...

麒麟操作系统服务架构保姆级教程(四)NGINX中间件
如果你想拥有你从未拥有过的东西,那么你必须去做你从未做过的事情 想要在网页上访问到代码那么就需要用到应用服务类中间件,国外的有Nginx,Tomcat等,国内的有金蝶web,东方通的服务中间件(Tongweb࿰…...

Glide 自定义圆角、铺满FitXY
在 Android 开发中,使用 Glide 来加载图片时,有时需要对图片进行特定的处理,比如设置圆角或者使图片完全填充到一个视图中(类似于 ImageView 的 scaleType 中的 FitXY)。以下是如何使用 Glide 来实现这些自定义需求的处…...

蓝牙协议——音乐启停控制
手机播放音乐 手机暂停音乐 耳机播放音乐 耳机暂停音乐...

Krita安装krita-ai-diffusion工具搭建comfyui报错没有ComfyUI_IPAdapter_plus解决办法
我们在使用Kirta安装krita-ai-diffusion工具之后搭建comfyui环境需要安装很多扩展文件。 一般正常安装都可以使用了。 但是有一个插件很特别,无论你安装多少遍都会显示缺失,是什么插件这么难搞定呢? 没错,就是我们的ComfyUI_IPAdapter_plus插件。 就像下图一样: 那么怎…...

四相机设计实现全向视觉感知的开源空中机器人无人机
开源空中机器人 基于深度学习的OmniNxt全向视觉算法OAK-4p-New 全景硬件同步相机 机器人的纯视觉避障定位建图一直是个难题: 系统实现复杂 纯视觉稳定性不高 很难选到实用的视觉传感器 为此多数厂家还是采用激光雷达的定位方案。 OAK-4p-New 为了弥合这一差距…...

LightGBM分类算法在医疗数据挖掘中的深度探索与应用创新(上)
一、引言 1.1 医疗数据挖掘的重要性与挑战 在当今数字化医疗时代,医疗数据呈爆炸式增长,这些数据蕴含着丰富的信息,对医疗决策具有极为重要的意义。通过对医疗数据的深入挖掘,可以发现潜在的疾病模式、治疗效果关联以及患者的健康风险因素,从而为精准医疗、个性化治疗方…...

JVM(Java虚拟机)的组成部分详解
摘要: JVM (Java Virtual Machine) 是一个抽象计算模型,它使Java程序可以在任何支持JVM的操作系统上运行,而无需考虑底层硬件架构。本文将深入探讨JVM的内部结构和工作机制,包括类加载器、运行时数据区、执行引擎以及内存管理等关…...

jsp中的四个域对象(Spring MVC)
在Spring MVC中,Model中的数据会被自动放入到请求域(Request Scope)中。也就是说,当我们在控制器中使用model.addAttribute()时,这些属性会被放入到HttpServletRequest对象的属性中。 让我们通过代码来详细解释&#…...

计算机基础知识复习12.24
http和https有那些区别 http是超文本传输协议,信息是明文传输,存在安全风险的问题,https则解决http不安全的缺点,在TCP和HTTP网络层之间加入了SSL/TLS安全协议,使得报文能够加密传输 http连接建立相对简单࿰…...

如何使用vscode解决git冲突
在使用VSCode时,遇到Git冲突是很常见的情况。Git冲突是指当多个人同时修改同一个文件的同一行或相邻行时,Git无法自动决定应该保留哪一个修改,需要手动解决这个冲突。 要解决Git冲突,可以按照以下步骤操作: 1. 打开V…...

告别卡顿:CasaOS轻NAS设备安装Gopeed打造高效下载环境
文章目录 前言1. 更新应用中心2.Gopeed安装与配置3. 本地下载测试4. 安装内网穿透工具5. 配置公网地址6. 配置固定公网地址 前言 无论你是需要大量文件传输的专业人士,还是只是想快速下载电影或音乐的普通用户,都会使用到下载工具。如果你对现有的下载工…...

Java 重写(Override)与重载(Overload)
重写 (Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写!返回值和形参都不能改变。即外壳不变,核心重写! 重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。…...

HDFS与HBase有什么关系?
1 、 HDFS 文件存储系统和 HBase 分布式数据库 HDFS 是 Hadoop 分布式文件系统。 HBase 的数据通常存储在 HDFS 上。 HDFS 为 HBase 提供了高可靠性的底层存储支持。 Hbase 是 Hadoop database ,即 Hadoop 数据库。它是一个适合于非结构化数据存储的数据库, HBase 基于列的…...

CentOS7下的vsftpd服务器和客户端
目录 1、安装vsftpd服务器和ftp客户端; 2、配置vsftpd服务器,允许普通用户登录、下载、上传文件; 3、配置vsftpd服务器,允许anonymous用户登录、下载、上传文件; 4、配置vsftpd服务器,允许root用户登录…...

全网最详细Gradio教程系列10——Blocks:底层区块类(下)
全网最详细Gradio教程系列10——Blocks:底层区块类(下) 前言本篇摘要10. Blocks:底层区块类10.4 Blocks Layout:布局10.4.1 行与列1. Rows2. Columns 10.4.2 选项卡和折叠类10.4.3 重渲染.render()10.4.4 Group分组10.…...

嵌入式设备常用性能和内存调试指令
文章目录 嵌入式设备常用性能和内存调试指令内存问题分析性能测试android设备通过NDK 使用SimplePerf 抓取火焰图嵌入式linux抓取特定进程的perf火焰图 杂记 嵌入式设备常用性能和内存调试指令 内存问题分析 安装valgrind,按照如下指令执行应用程序: …...