linux的文件系统及文件类型
目录
一、Linux支持的文件系统
二、linux的文件类型
2.1、普通文件
2.2、目录文件
2.3、链接文件
2.4、字符设备文件:
2.5、块设备文件
2.6、套接字文件
2.7、管道文件
三、linux的文件属性
3.1、关于权限部分
四、Linux的文件结构
五、用户主目录
5.1、工作目录
5.2、路径
5.2.1绝对路径
5.2.2相对路径
一、Linux支持的文件系统
- 文件系统的概念:无文件系统的情况下,存储器的所有位置和数据都由主程序管理。有文件系统的 情况下,存储器由文件系统管理,主程序(操作系统)只与文件系统对接,不负责存储器底层逻 辑。
- 通用型:
- FAT/FAT32 :DOS系统和早期Windows用的文件系统,简单功能弱,且文件最大4G),但是兼 容性高,常用于启动盘,也用于UEFI启动分区 linux下统称vfat
- Linux系:
- 原生设计的文件系统,包括ext2、ext3、ext4
- NFS,网络文件系统
- windows系:
- exFAT :Windows为FAT设计的后续版本,增加了一些现代功能,一般用于移动闪存盘(U盘)
- NTFS:桌面Windows的默认文件系统
- SMB:网络文件系统
- 非系统类的文件系统:
- ISO9660 :光盘镜像使用的文件系统
非ext系的文件系统,需要使用 mount 命令,手动挂载
类比解释: 存储器就是一个仓库,用户可以自己决定仓库存放物品,但是全靠记忆,容易出错,而且换一个人来 就不知道具体内容
文件系统就相当于一个专门的仓库管理员,管理员负责仓库的出入记录、物品分类和整理,并提供列表和记录, 用户无论查看还是存取物品,只需要向仓库管理员提供要求即可。
硬盘格式化的过程就相当于清空仓库并重新招聘一名管理员,格式化过程中选择不同的文件系统就相当于不同的 仓库布局以及管理员。高级的管理员能管理更大的仓库,支持更多的存取方式,也更能保管好仓库。
二、linux的文件类型
- 使用 ls -al 显示文件夹内的文件
- ls = list 列出文件
- -a 列出所有文件
- -l 列出详细信息(long-term)
- Linux默认是大小写敏感的文件系统
2.1、普通文件
- - 开头的普通文件,可以是文本文件,也可以是音频视频之类的文件
2.2、目录文件
- d 开头的目录(directory)文件,也就是文件夹的概念
2.3、链接文件
- l 开头的链接(link)文件,类似快捷方式的概念
2.4、字符设备文件:
- c 开头的字符设备文件,字符(char)设备
- 对于字符类cd设备, 它的收发(或者说读写)是一个个的字符,或者说字节
- 键盘 /dev/input/event[n] 鼠标 /dev/input/mouse[n] 终端: /dev/console
- 一个专用的空设备 /dev/null 用于重定向到不需要的地方. 抛弃数据
2.5、块设备文件
b 开头的块设备(block)设备
- 对于块设备, 他的读写最小单位是一片连续的字节,速度更快,但是不灵活
- 硬盘命名方式
- IDE: hd[a-z] , 硬盘本身
- SCSI/SATA: sd[a-z] , 表示硬盘本身
- NVMe: nvme[0-9] , nvme硬盘
- 分区:
- IDE: hd[a-z][0-9] , 表示硬盘下的分区
- SCSI/SATA: sd[a-z][0-9] . 表示对应硬盘下的分区
- NVMe: nvme[0-9]n[0-9] , 表示nvme硬盘下的分区
2.6、套接字文件
s 开头 socket 套接字
2.7、管道文件
网络设备 f 开头, FIFO管道
三、linux的文件属性
ls命令默认只是纯粹列出文件, 常用是加了 al 两个参数方便查看, 其中加了 -a 参数表示all, 会列出隐藏 文件,-l参数表示 long format ,表示详细信息, 所以 ls -al 指的是 列出所有文件的详细信息
详细信息如下
示例 | 说明 |
- | 文件类型,见上述 |
rw- | 属主权限(所有者权限) |
rw- | 属组权限(用户组权限) |
r-- | 其它用户权限 |
1 | 硬链接个数(默认一般为1) |
student | 属组(所有者) |
student | 属组(用户组) |
0 | 大小(默认按字节计算) |
3月4 19:01 | 最后修改时间 |
file | 文件名 |
3.1、关于权限部分
权限部分分成三组,, 每组有三个权限类型 分别为读权限r(read), 写权限w(write), 执行权限x(excution) 权限对目录跟非目录是不一样的
当对应位置为对应字母, 表示有对应权限, 如果是-, 则表示无权限
如图中所示为用户student可读可写不可执行, 用户组student可读可写不可执行, 其他用户值可以读 权限可以使用数字简写, 叫绝对权限法:
以二进制表示权限, 每组从0~7不等, 方便操作和沟通
1 r-x rw- -x
2 101 110 001
3 5 6 1
用户和组可以使用字母简写 u: 文件属主(user) g同组用户(group) o 其他用户(others) a全部用户(all) 用户名和组名的问题 在linux中, 每个用户都必定属于一个或多个组, 一般是在安装系统的时候会要求填写一个用户, 与 Windows一致
四、Linux的文件结构
- Linux文件是树型结构, 所有文件最终都归属于 / 路径, 称为根目录
- / ,根目录, 所有文件的顶层, 可以但是不推荐放文件, 而是只放文件夹
- /bin, 系统级的可执行程序(binary)
- /boot, 引导文件目录 存放系统启动的文件
- /sbin, 相对/bin没有那么核心
- /lib和/lib64, 系统级的依赖库, 和其他程序会使用到的共享依赖库( library)
- /etc: 配置文件, 包括系统本身的, 程序安装后一般也会在此存放
- /etc/apt: 文件包管理器的配置目录
- /etc/apt/sources.list 设置软件源, 一般在安装完系统后设置一次
- /etc/bash.bashrc 或 .profile bash这个shell的配置文件
- /etc/fstab: 文件系统挂载配置
- /etc/init (initialization)初始化配置文件(一开机就会执行的程序或者文件)
- /etc/init.d 系统启动的服务配置文件
- 账号相关
- /etc/passwd :用户配置
student x 1000 1000 ,,, /home/student /bin/bash
用户名 (废弃) 用户id(uid) 所属组id(gid) 说明/注释 用户主目录 使用的shell
linux习惯1000以下的id保留作为系统用户使用
root用户的id一定是0, 组id一定也是0
1000以上的留给普通用户使用
所以student的id会是1000
- /etc/group : 用户组配置
student x 1000 (student)
组名 (废弃) gid 组内成员(留空表示与组id一致的成员)
主组: 在用户配置文件passwd中归属的组被称为用户的主组
额外组: 在组配置文件group中额外添加的用户, 被称为额外组
- /etc/ssh :远程管理配置文件
- /etc/ssh/ssh_config : 远程管理客户端的配置
- /etc/ssh/sshd_config: 远程管理服务器的配置, 为安全, 修改端口,禁止密码访问,使用key
- /home, 普通用户公共目录, 每个用户会有一个子文件夹, 叫做用户主目录(相当于个人办公室)
- /root, 超级用户root的主目录(相当于总裁办公室)
- /mnt, 和 /media 文件系统挂载点(mount/media)
- /dev, (device)设备文件目录, 对某个设备文件的访问, 就是对莫具体设备的操作
- /opt, 第三方应用程序的安装位置, 用户自行安装程序
- /usr, 第三方 应用程序 的存放目录, 比如java
- /var, (varible)动态文件, 典型的如日志文件
- /var/log :存放经常变动的文件
- /proc, (process)内核进程相关, 本质上就是内存映射
五、用户主目录
每个用户的独立目录, 对于普通用户, 位于 /home/[username] , 对于root用户, 位于 /root
用户登陆时默认进入的就是用户主目录, 可用 ~ 表示
在创建用户时创建
5.1、工作目录
用户登录之后必然处于目录的某一个位置, 即工作目录,
切换到哪个目录哪个目录就称为工作路径
工作目录可用 . 表示, 工作目录的父目录用 .. 表示
5.2、路径
一个目录到另一个文件的道路, 称为路径
文件在整个目录树的位置, 就是他的路径
有些特殊路径使用特殊符号表示
- ~ 表示用户主目录, 即 /home/student
- 如 ~/linux/gcc 实际会被替换成 /home/student/linux/gcc
- . 表示当前目录
- 如当前工作目录为 /var/log , 则 ./auth.log 表示 /var/log/auth.log
- ./filename 作为路径使用时, 前面的 ./ 可以省略
- . .表示父目录
- 如当前工作目录为 /home/student , 则 ./zhangsan 表示 /home/zhangsan , ./ ./etc 表示 /etc
- * 通配符, 用于表示0个或任意的多个字符
- ? 通配符,表示一个任意字符
5.2.1绝对路径
以 / 开头, 是从根目录到某个文件的路径,
这个路径无论用户当前处于何处, 都是不变的, 因此为绝对路径
5.2.2相对路径
以"."或".."开头的路径, 是从工作目录到某个文件的路径, 叫相对路径
根据用户当前处于目录的不同, 到另一个文件的路径写法也不同, 因此叫相对路径
相关文章:

linux的文件系统及文件类型
目录 一、Linux支持的文件系统 二、linux的文件类型 2.1、普通文件 2.2、目录文件 2.3、链接文件 2.4、字符设备文件: 2.5、块设备文件 2.6、套接字文件 2.7、管道文件 三、linux的文件属性 3.1、关于权限部分 四、Linux的文件结构 五、用户主目录 5.1、工作目录…...

如何下载安装 PyCharm?
李升伟 整理 一、下载 PyCharm 访问官网 打开 PyCharm 官网,点击 "Download" 按钮25。 版本选择: 社区版(Community):免费使用,适合个人学习和基础开发。 专业版(Professional&#…...

3D空间曲线批量散点化软件V1.0正式发布,将空间线条导出坐标点,SolidWorks/UG/Catia等三维软件通用
软件下载地址: SolidWorks/UG/Catia等三维软件通用,3D空间曲线批量散点化软件V1.0正式发布,将空间线条导出坐标点 - 陶小桃Blog在三维设计领域,工程师常需将复杂空间曲线转化为离散坐标点以用于逆向工程、有限元分析、数控加工或…...

WPS AI+office-ai的安装、使用
** 说明:WPS AI和OfficeAI是两个独立的AI助手,下面分别简单讲下如何使用 ** WPS AI WPS AI是WPS自带AI工具 打开新版WPS,新建文档后就可以看到菜单栏多了一个“WPS AI”菜单,点击该菜单,发现下方出现很多菜单…...

java后端开发day27--常用API(二)正则表达式爬虫
(以下内容全部来自上述课程) 1.正则表达式(regex) 可以校验字符串是否满足一定的规则,并用来校验数据格式的合法性。 1.作用 校验字符串是否满足规则在一段文本中查找满足要求的内容 2.内容定义 ps:一…...

拼电商客户管理系统
内容来自:尚硅谷 难度:easy 目 标 l 模拟实现一个基于文本界面的 《 拼电商客户管理系统 》 l 进一步掌握编程技巧和调试技巧,熟悉面向对象编程 l 主要涉及以下知识点: 类结构的使用:属性、方法及构造器 对象的创建与…...

华为:Wireshark的OSPF抓包分析过程
一、OSPF 的5包7状态 5个数据包 1.Hello:发现、建立邻居(邻接)关系、维持、周期保活;存在全网唯一的RID,使用IP地址表示 2.DBD:本地的数据库的目录(摘要),LSDB的目录&…...

Android项目优化同步速度
最近项目需要使用ffmpeg,需要gradle配置引入ffmpeg库,发现原来通过google官方的代码仓,下载太慢了,每秒KB级别的速度。(之前下gradle/gradle plugin都不至于这么慢),于是想到配置国内镜像源来提…...

在线教育网站项目第二步 :学习roncoo-education,服务器为ubuntu22.04.05
一、说明 前端技术体系:Vue3 Nuxt3 Vite5 Vue-Router Element-Plus Pinia Axios 后端技术体系:Spring Cloud Alibaba2021 MySQL8 Nacos Seata Mybatis Druid redis 后端系统:roncoo-education(核心框架:S…...

STM32-GPIO详解
目录 一:GPIO基本概念 编辑 二:GPIO的实际应用 三:功能描述 四:GPIO库函数 五:寄存器 GPIO相关寄存器功能 一:GPIO基本概念 GPIO是英文General Purpose Input/Output的缩写,中文翻译为…...

【Framework系列之Client】UIManager和UIPanel模块介绍
今天来介绍一下UIManager和UIPanel模块,话不多说直接开始。 UIManager 功能介绍 UIManager是管理UIPanel的唯一模块,UIManager的主要功能包括: 提供打开、隐藏、关闭UIPanel的相关接口。负责UIPanel对象的创建以及初始化。负责储存UIPanel对…...

阿里云操作系统控制台——ECS操作与性能优化
引言:在数字化时代,云服务器作为强大的计算资源承载平台,为企业和开发者提供了灵活且高效的服务。本文将详细介绍如何一步步操作云服务器 ECS,从开通到组件安装,再到内存全景诊断,帮助快速上手,…...

【长安大学】苹果手机/平板自动连接认证CHD-WIFI脚本(快捷指令)
背景: 已经用这个脚本的记得设置Wifi时候,关闭“自动登录” 前几天实在忍受不了CHD-WIFI动不动就断开,一天要重新连接,点登陆好几次。试了下在网上搜有没有CHD-WIFI的自动连接WIFI自动认证脚本,那样我就可以解放双手&…...

第51天:Web开发-JavaEE应用SpringBoot栈身份验证JWT令牌Security鉴权安全绕过
#知识点 1、安全开发-JavaEE-身份验证-JWT&Security 2、安全开发-JavaEE-安全问题-不安全写法&版本漏洞 #开发框架-SpringBoot 参考:Spring Boot 中文文档 一、身份验证的常见技术: 1、JWT 2、Shiro 3、Spring Security 4、OAuth 2.0 5、SSO 6、…...

中原银行:从“小机+传统数据库”升级为“OceanBase+通用服务器”,30 +系统成功上线|OceanBase DB大咖说(十五)
OceanBase《DB 大咖说》第 15 期,我们邀请到了中原银行金融科技部数据团队负责人,吕春雷。本文为本期大咖说的精选。 吕春雷是一位资历深厚的数据库专家,从传统制造企业、IT企业、甲骨文公司到中原银行,他在数据库技术与运维管理…...

Java面试第八山!《Spring框架》
一、Spring框架概述 Spring是Java企业级应用开发的核心框架,通过控制反转(IoC)和 面向切面编程(AOP)实现模块解耦,简化开发流程。其核心优势包括依赖注入、声明式事务管理、集成主流ORM框架(如…...

LangChain教程 - Agent - 支持 9 种 ReAct 交互
引言 LangChain 总结了 9 种经典的复杂模型交互模式,每种都针对特定任务设计,兼具独特优势与适用场景,内容涵盖: ReAct、Function Call、知识库、搜索等,使用这些模式可以大大简化这些场景开发难度。这些模式可以使用…...

蓝桥杯备赛日记【day1】(c++赛道)
一、裁纸刀问题(2022、规律、思维、省赛) 解法思路: 参考题目给出的例子发现。不管要裁剪多少次。最外围的四次是固定的。然后通过观察发现,我们的行的裁剪次数为(m-1) 次,而每行都需要裁剪列数…...

【大模型基础_毛玉仁】1.4 语言模型的采样方法
【大模型基础_毛玉仁】1.4 语言模型的采样方法 1.4 语言模型的采样方法1.4.1 概率最大化方法1)贪心搜索(GreedySearch)2)波束搜索(BeamSearch) 1.4.2 随机采样方法1)Top-K 采样2)Top…...

[内网安全] Windows 本地认证 — NTLM 哈希和 LM 哈希
关注这个专栏的其他相关笔记:[内网安全] 内网渗透 - 学习手册-CSDN博客 0x01:SAM 文件 & Windows 本地认证流程 0x0101:SAM 文件简介 Windows 本地账户的登录密码是存储在系统本地的 SAM 文件中的,在登录 Windows 的时候&am…...

基于SNR估计的自适应码率LDPC编译码算法matlab性能仿真,对比固定码率LDPC的系统传输性能
目录 1.算法仿真效果 2.算法涉及理论知识概要 2.1 基于序列的SNR估计 2.2 基于SNR估计值进行码率切换 2.3 根据数据量进行码率切换 3.MATLAB核心程序 4.完整算法代码文件获得 1.算法仿真效果 matlab2022a仿真结果如下(完整代码运行后无水印)&…...

opencv 模板匹配方法汇总
在OpenCV中,模板匹配是一种在较大图像中查找特定模板图像位置的技术。OpenCV提供了多种模板匹配方法,通过cv2.matchTemplate函数实现,该函数支持的匹配方式主要有以下6种,下面详细介绍每种方法的原理、特点和适用场景。 1. cv2.T…...

Embedding技术:DeepWalkNode2vec
引言 在推荐系统中,Graph Embedding技术已经成为一种强大的工具,用于捕捉用户和物品之间的复杂关系。本文将介绍Graph Embedding的基本概念、原理及其在推荐系统中的应用。 什么是Graph Embedding? Graph Embedding是一种将图中的节点映射…...

微信小程序注册组件
在微信小程序中注册组件分为自定义组件的创建和全局/局部注册,下面为你详细介绍具体步骤和示例。 自定义组件的创建 自定义组件由四个文件组成,分别是 .js(脚本文件)、.json(配置文件)、.wxml(…...

【docker】安装mysql,修改端口号并重启,root改密
我的docker笔记 【centOS】安装docker环境,替换国内镜像 1. 配置镜像源 使用阿里云镜像加速器,编辑/etc/docker/daemon.json sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-EOF {"registry-mirrors": ["https:/…...

自定义wordpress三级导航菜单代码
首先,在你的主题functions.php文件中,添加以下代码以注册一个新的菜单位置: function mytheme_register_menus() {register_nav_menus(array(primary-menu > __(Primary Menu, mytheme))); } add_action(init, mytheme_register_menus); …...

洛谷 P1480 A/B Problem(高精度详解)c++
题目链接:P1480 A/B Problem - 洛谷 1.题目分析 1:说明这里是高精度除以低精度的形式,为什么不是高精度除以高精度的形式,是因为它很少见,它的模拟方式是用高精度减法来做的,并不能用小学列竖式的方法模拟…...

JAVA入门——网络编程简介
自己学习时的笔记,可能有点水( 以后可能还会补充(大概率不会) 一、基本概念 网络编程三要素: IP 设备在网络中的唯一标识 端口号 应用软件在设备中的唯一标识两个字节表示的整数,0~1023用于知名的网络…...

Ubuntu 合上屏幕 不待机 设置
有时候需要Ubuntu的机器合上屏幕的时候也能正常工作,而不是处于待机状态。 需要进行配置文件的设置,并重启即可。 1. 修改配置文件 /etc/systemd/logind.conf sudo vi /etc/systemd/logind.conf 然后输入i,进入插入状态,修改如…...

捣鼓180天,我写了一个相册小程序
🙋为什么要做土著相册这样一个产品? ➡️在高压工作之余,我喜欢浏览B站上的熊猫幼崽视频来放松心情。有天在家族群里看到了大嫂分享的侄女卖萌照片,同样感到非常解压。于是开始翻阅过去的聊天记录,却发现部分图片和视…...