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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

论文阅读——MoCo

Momentum Contrast for Unsupervised Visual Representation Learning 动量在数学上理解为加权移动平均: yt-1是上一时刻输出,xt是当前时刻输入,m是动量,不想让当前时刻输出只依赖于当前时刻的输入,m很大时&#xff0…

014 Linux_同步

​🌈个人主页:Fan_558 🔥 系列专栏:Linux 🌹关注我💪🏻带你学更多操作系统知识 文章目录 前言一、死锁(1)死锁概念 二、同步(1)同步概念&#xff…

Linux下使用ntpdate进行时间同步

1.简介 ntpdate是Linux下用于从NTP服务器同步时间的命令行工具。 2.安装 大多数Linux发行版已预装ntpdate。未安装的可使用以下命令: # Ubuntu/Debian sudo apt-get install ntpdate # CentOS/Fedora/RHEL sudo yum install ntpdate 3.手工同步网络时间 执行以下命…

8.python中的元组

8.python中的元组 虽然说元组用的不是很多,但是还是讲一下。元组其实可以看为是一个列表,不可变的列表。操作和列表都差不多。 元组(tuple)是Python中的一种基本数据结构类型,它是不可变的序列,意味着一旦…

Java13_反转字符串中的单词 III(方法二String转换成字符数组)

反转字符串中的单词 III 给定一个字符串 s ,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。 示例 1: 输入:s "Lets take LeetCode contest" 输出:"steL ekat edoCteeL tset…

Java的图书管理系统,确实有两把斧子 ! ! !

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人…

网络——入门基础

目录 协议 网络协议 OSI七层模型 网络传输基本流程 网络传输流程图 局域网通信 数据包的封装和解包 广域网通信 网络地址管理 IP地址 MAC地址 协议 关于什么是局域网,什么是广域网,我这里就不过多赘述了,我们直接来谈一下什么…

HarmonyOS NEXT应用开发—投票动效实现案例

介绍 本示例介绍使用绘制组件中的Polygon组件配合使用显式动画以及borderRadius实现投票pk组件。 效果预览图 使用说明 加载完成后会有一个胶囊块被切割成两个等大的图形来作为投票的两个选项,中间由PK两字分隔开点击左边选项,两个图形会随着选择人数…

HarmonyOS NEXT应用开发之多文件下载监听案例

介绍 多文件下载监听在应用开发中是一个非常常见的需求。本示例将介绍如何使用request上传下载模块实现多文件下载监听,如监听每个文件下载任务的进度,任务暂停,下载完成等下载情况。每个应用最多支持创建10个未完成的任务,相关规…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Toggle)

组件提供勾选框样式、状态按钮样式及开关样式。 说明: 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 仅当ToggleType为Button时可包含子组件。 接口 Toggle(options: { type: ToggleType, is…

sparksql简介

什么是sparksql sparksql是一个用来处理结构话数据的spark模块,它允许开发者便捷地使用sql语句的方式来处理数据;它是用来处理大规模结构化数据的分布式计算引擎,其他分布式计算引擎比较火的还有hive,map-reduce方式。 sparksql…

mysql查询条件包含IS NULL、IS NOT NULL、!=、like %* 、like %*%,不能使用索引查询,只能使用全表扫描,是真的吗???

不知道是啥原因也不知道啥时候, 江湖上流传着这么一个说法 mysql查询条件包含IS NULL、IS NOT NULL、!、like %* 、like %*%,不能使用索引查询,只能使用全表扫描。 刚入行时我也是这么认为的,还奉为真理! 但是时间工作中你会发现还是走索引…

bitset详解

本文旨在讲解位图的原理,以及位图有什么作用,如何实现位图。希望读完本篇文章能对小伙伴们有一定的收获!上干货! 什么是位图 位图就是bitmap的缩写,所谓bitmap,就是用每一位来存放某种状态,适用…

代理IP品质对Tik Tok代理的重要性

随着Tik Tok的迅速崛起,越来越多的人开始关注如何透过Tik Tok进行行销和推广。其中,使用Tik Tok代理程式是常见的方法。 然而,在选择和使用代理时,IP品质是一个不可忽视的因素。本文将探讨IP品质对Tik Tok代理的重要性&#xff0…

架起桥梁,畅享流通:如何使用私有Registry实现镜像跨源同步与管理

在Docker容器化世界中,镜像作为构建和运行应用的基础单元,其管理与分发对于企业级应用至关重要。私有Registry作为存储和管理Docker镜像的中心仓库,不仅可以保障企业数据的安全性,更能通过镜像同步功能实现跨源镜像的统一管理和高…

R语言中的常用基础绘图函数 直方图,箱线图,条形图,散点图

目录 R语言中的绘图参数 绘图函数 1.plot函数绘制散点图 2.hist函数绘制直方图 如何修饰直方图? 如何在直方图上标注各组频数? 使用text函数把某些信息标注在直方图上 如何在直方图上添加概率密度曲线? 3.boxplot函数绘制箱线图 4.barplot函数…

代码随想录算法训练营 DAY 14 | 二叉树的递归遍历和迭代遍历

二叉树基础 种类 满二叉树:深度为k,有2^k-1个节点的二叉树 完全二叉树:除了最底层可能没满,且都在靠左侧 优先级队列其实是一个堆,堆就是一棵完全二叉树,同时保证父子节点的顺序关系。 二叉搜索树&…

中间件-消息队列

消息队列基础知识 什么是消息队列 本处提到的消息队列是指各个服务以及系统组件/模块之间的通信,属于一种中间件。参与消息传递的双方称为生产者和消费者,生产者负责发送消息,消费者负责处理消息。 消息队列作用 通过异步处理&#xff0…

git的起源

开篇一张图: 开源项目linux kernel开发,参与开发与维护者众多。1991至2005年期间绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上。 在2002 年,整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维…

JavaScript中new操作符具体干了什么

文章目录 一、是什么二、流程三、手写new操作符 一、是什么 在JavaScript中,new操作符用于创建一个给定构造函数的实例对象 例子 function Person(name, age){this.name name;this.age age; } Person.prototype.sayName function () {console.log(this.name) …
最新文章