当前位置: 首页 > news >正文

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:包含系统启动时所需的基本命令(如lscp等),这些命令是系统的核心命令。
  • /sbin:包含系统管理员需要用到的命令,如shutdownreboot等。
  • /home:每个用户的主目录。普通用户的文件都存放在自己的主目录中,例如/home/username
  • /var:存放经常变化的数据文件,如日志文件、邮件、缓存等。
  • /tmp:存放临时文件,通常在系统重启时清空。

这种结构使得文件和目录管理更加清晰和有序,方便系统维护和数据访问。


4. Linux文件及目录访问权限设置

4.1 文件类型与一般权限

每个文件在Linux中都有类型和权限。文件类型通过第一字符表示:

  • -:普通文件
  • d:目录
  • l:符号链接

文件的权限通过后三位字符表示。每三位字符代表一个权限组,分别为:

  • 第一组:文件所有者权限
  • 第二组:同组用户权限
  • 第三组:其他用户权限

每组三个字符表示权限,r表示读权限,w表示写权限,x表示执行权限。权限可以使用数字表示:

  • r(读)= 4
  • w(写)= 2
  • x(执行)= 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,用户可以通过图形界面来改变文件或目录的权限。操作方式通常是:

  1. 右键点击文件或目录,选择“属性”。
  2. 在“权限”标签下,用户可以查看和修改所有者、组以及权限设置。

这种图形化操作为不熟悉命令行的用户提供了便捷的权限管理方式。


相关文章:

Linux快速入门-Linux文件系统管理

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

漏洞检测工具: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三星多芯片集成联盟&#xff08…...

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 时间限制&#xff1a; 1S 题目描述&#xff1a; 一个正整数 n&#xff08;1<n<1000)&#xff0c;在区间[n,n2 ]&#xff08;含端点&#xff09;内统计奇数个数、 偶数个数、能被 4 整除且不能被 3 整除的数字个数&#xff0c;并求出各统计数字两两…...

空天地遥感数据识别与计算--数据分析如何助力农林牧渔、城市发展、地质灾害监测等行业革新

在科技飞速发展的时代&#xff0c;遥感数据的精准分析已经成为推动各行业智能决策的关键工具。从无人机监测农田到卫星数据支持气候研究&#xff0c;空天地遥感数据正以前所未有的方式为科研和商业带来深刻变革。然而&#xff0c;对于许多专业人士而言&#xff0c;如何高效地处…...

Git:查看分支、创建分支、合并分支

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

联合目标检测与图像分类提升数据不平衡场景下的准确率

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

Git的简介

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

麒麟操作系统服务架构保姆级教程(四)NGINX中间件

如果你想拥有你从未拥有过的东西&#xff0c;那么你必须去做你从未做过的事情 想要在网页上访问到代码那么就需要用到应用服务类中间件&#xff0c;国外的有Nginx&#xff0c;Tomcat等&#xff0c;国内的有金蝶web&#xff0c;东方通的服务中间件&#xff08;Tongweb&#xff0…...

Glide 自定义圆角、铺满FitXY

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

蓝牙协议——音乐启停控制

手机播放音乐 手机暂停音乐 耳机播放音乐 耳机暂停音乐...

Krita安装krita-ai-diffusion工具搭建comfyui报错没有ComfyUI_IPAdapter_plus解决办法

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

四相机设计实现全向视觉感知的开源空中机器人无人机

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

LightGBM分类算法在医疗数据挖掘中的深度探索与应用创新(上)

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

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术&#xff0c;它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton)&#xff1a;由层级结构的骨头组成&#xff0c;类似于人体骨骼蒙皮 (Mesh Skinning)&#xff1a;将模型网格顶点绑定到骨骼上&#xff0c;使骨骼移动…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

Go 语言并发编程基础:无缓冲与有缓冲通道

在上一章节中&#xff0c;我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道&#xff0c;它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好&#xff0…...

JavaScript基础-API 和 Web API

在学习JavaScript的过程中&#xff0c;理解API&#xff08;应用程序接口&#xff09;和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能&#xff0c;使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...