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

02_Linux文件权限和目录配置

用户和用户组

Linux张红用户 和用户组的概念,感觉和windows中是比较相似的。

权限最大的是root,它就像是windows中的Administrator。

多个普通用户之间是相互独立的。他们之间的权限可以交叉,也可以井水不犯河水。

同样的,单个用户可以属于多个组。

Linux文件属性

用ls命令查看文件属性,我们来具体看看每个属性的意义

ls -al

以如下文件举例:

drwxr-xr-x   3 root root    17 38 21:43 .config
文件权限  链接数 用户 用户组  文件最后修改时间 文件名

具体来说,权限部分又分别是

d rwx r-x r-x
文件类型 用户权限 群组权限 其他人权限
  • 文件类型:d代表目录,-则是文件, l则表示是链接文件, b或c表示是存储设备
  • 权限:3个为一组,分别表示文件所有者的权限,群组的权限,和其他人的权限。其中r表示读,w表示写,x表示执行。对文件夹来说,x的意义就是表示可以进入该文件夹。

修改文件权限

  • 修改文件所属组(参数R用在修改文件夹时,表示一并修改文件夹下所有文件
chgrp -R 组名 文件名或目录名 
  • 修改文件所有者
chown -R 用户名 文件名或目录名
  • 修改权限,常见的命令是
chmod -R 755 文件或目录

这是什么意思呢,原来,linux是用数字表示权限,权限的数字如下:

r:4 w:2 x:1

所以755的意思就是,所有者具有读写和执行的权限,组和其他用户只读和执行。

一些常用的数字含义:

770用户和用户组有所有权限,其他人无权限
775用户和用户组有所有权限,其他人只读
664shell脚本的默认权限通常是664,需要变成755才可以执行

当然也可以不用数字,用下列方式改变权限。不过还是用数字看上去专业一点

chmod u=rwx,g=rx,o=r 文件名

各个权限的具体意义:

w删除、更新、新建文件夹或目录
r读取,就像灯光一样,灯光照亮了房间,你就看到了里面的东西(文件)
x执行,很多时候,没有r,有x也可以读取文件夹中的文件。因为x代表你可以进入这个房间,那么即使没有灯光(r权限),你依然可以摸黑找到东西。

文件种类和扩展名

常见文件有以下几种:

  • 常规文件:也就是前面所说,文件类型是-的文件
    • 纯文本文件:我们可以用cat直接读出来
    • 二进制文件:可执行文件就是这个格式
    • 数据文件:不可直接读取,用cat读取就是乱码
  • 目录:也就是文件夹,d
  • 链接文件:link,类似windows中的快捷方式
  • 设备与设备文件:device。比如硬盘和鼠标。
  • 数据接口文件:sockets,通常用作网络上的数据交换。在tmp或run目录可以看到这些文件
  • 数据输送文件:FIFO,pipe

扩展名:事实上,Linux文件不像windows有扩展名一说。比如linux的文件,能不能执行完全取决于它的权限,和后缀名没有任何关系。因此,linux的后缀名,是为了让我们能比较容易识别这是什么文件,比如

*.shshell脚本
*.tar.gz压缩文件
.html网页文件

长度限制:文件名最长为255字节,也就是英文255个字母,中文128个汉字左右

前面有.的文件的隐藏文件

目录配置标准FHS

由于Linux有众多发行版本,这样每个发行商把系统文件放在不同的目录的话,对用户来说就太不方便了。于是就诞生了FHS,来规定每个默认目录的作用。

  • 一层FHS目录
/bin系统可执行文件,比如
/boot系统启动的引导文件
/dev设备和接口
/etc系统主要的配置文件,其他配置文件建议放在/etc/opt
/lib系统用到的函数库
/media可删除的设备,比如软盘、光盘
/mnt挂载的设备,比如虚拟光驱加载的镜像文件
/opt第三方软件,建议安装在这个目录
/run保存系统运行信息
/sbin设置系统环境的一些命令
/srv某些网络服务使用的目录
/tmp任何人都可访问,放临时文件或下载文件的位置。建议定期清除
/usr后续说明
/var后续说明

上面这些是必须存在的目录,以下是建议存在的目录

/home默认普通用户的家目录
/lib64支持64位的lib库
/rootroot用户的家目录
  • 二层FSH目录usr。usr是UNIX Software Resource的缩写,并不是user

必须存在:

/usr/bin所有一般用户可以使用的命令。Centos7以后,使用链接的方式将bin链接至此
/usr/lib与/lib相同,/lib链接到这里
/usr/local一些系统软件建议安装在这里,比如python3
/usr/sbin基本等于/sbin
/usr/share放置只读文件
  • 二层目录var
/var/cache程序运行产生的缓存
/var/lib程序运行时用到的数据文件,比如MySQL的数据文件/var/lib/mysql/
/var/lock一次只能被一个应用程序使用的文件或设备
var/log系统日志存储的位置
var/mail邮件
var/run某些程序启动后,pid会放置在这个目录下
/var/spool放置一些待使用的队列数据,之后会删除。

目录树以及绝对路径和相对路径

Linux的所有目录都开始于根目录,也就是/

从根目录开始写的路径就是绝对路径,你在哪里都可以访问到;

而在当前目录写的基于当前目录的路径,就是相对路径。

# 绝对路径
cd /var/log

cd /
# 相对路径
cd var
cd log

# 回到上层目录
cd ..

http://www.kler.cn/a/274206.html

相关文章:

  • go语言并发文件备份,自动比对自动重命名(逐行注释)
  • 本地部署webrtc应用怎么把http协议改成https协议?
  • 我用Cursor+DeepSeek做了个飞书文档一键同步插件,免费使用!
  • 数据库系统原理:数据恢复与备份策略
  • 基于Spring Boot的九州美食城商户一体化系统
  • 写给Pythoner的前端进阶指南(五):事件驱动模型
  • 论文阅读——MoCo
  • 014 Linux_同步
  • Linux下使用ntpdate进行时间同步
  • 8.python中的元组
  • Java13_反转字符串中的单词 III(方法二String转换成字符数组)
  • Java的图书管理系统,确实有两把斧子 ! ! !
  • 网络——入门基础
  • ES代替品:轻量级搜索引擎MeiliSearch
  • HarmonyOS NEXT应用开发—投票动效实现案例
  • HarmonyOS NEXT应用开发之多文件下载监听案例
  • 基础小白快速入门web前端开发技术----------->htm基础
  • C++ 引用变量、引用形参
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Toggle)
  • 高效日志为服务器保驾护航
  • sparksql简介
  • mysql查询条件包含IS NULL、IS NOT NULL、!=、like %* 、like %*%,不能使用索引查询,只能使用全表扫描,是真的吗???
  • bitset详解
  • 代理IP品质对Tik Tok代理的重要性
  • Vue快速教程:如何优雅地移除数组中的特定元素?
  • 架起桥梁,畅享流通:如何使用私有Registry实现镜像跨源同步与管理