【Linux】Linux的权限_2 + Linux环境基础开发工具_1

简介: 【Linux】Linux的权限_2 + Linux环境基础开发工具_1

三、权限

3. Linux权限管理

修改文件的拥有者和所属组

在上一节我们讲到如何更改文件的访问权限,那我们需要更改文件的拥有者和所属组,应该怎么做?

chown 命令可以更改文件的拥有者,但是需要 root权限

chgrp 命令可以更改文件的所属组,也需要 root权限

4. 文件的类型

Linux的文件类型不通过后缀区分!(不代表Linux不使用后缀) 。

文件属性的前十个字符里,后9个字符代表文件的访问者权限,而第一个字符则代表文件的类型。

-:普通文件(文本、源代码、图片、视频、库、可执行等)

d:目录文件

l:软链接(类似Windows的快捷方式)

b:块设备文件(例如硬盘、光驱等)

p:管道文件

c:字符设备文件(例如键盘,显示器等串口设备)

s:套接口文件

由上可知:Linux下一切皆文件 。

知识点:由于Linux不通过后缀识别文件类型,所以我们的文件名后缀就可以随便取了吗?当然不是!Linux不通过后缀识别文件类型,不代表Linux之上的工具(比如 gcc 编译工具)不通过后缀识别文件类型。使用 gcc 是必然不可能编译 .txt 文件的。所以 虽然Linux不通过文件后缀识别文件类型,但是我们依旧推荐使用通过文件后缀区分文件 。因为工具需要,人也需要。

我们可以通过 file 指令来查看文件类型。

5. 权限掩码

我们想要进入一个目录,需要什么权限?

root 不受以上权限的限制 。

为什么我们创建的普通文件的默认权限不是777,而是664;为什么我们创建的目录文件的默认权限不是777,而是775;这涉及到了 权限掩码 (umask)。每个文件的创建,默认的权限是 起始权限 中,去除权限掩码中出现的权限 。(起始权限 & (~umask)= 最终权限(默认))

我们可以使用 umask 来查看我们机器的权限掩码。

0002 就是 002 ,转换成权限二进制就是 000 000 010 。注意(大部分普通文件都不具有可执行的功能,所以 普通文件的起始权限是666 ,而 目录文件的起始权限是777 )。666 即是 110 110 110 ,去除权限掩码值可得到 110 110 100 ,即 664 ,而 777 去除权限掩码则可得到 775

umask 指令可以查看权限掩码,也可以更改权限掩码。

知识点:一个文件能否被删除,并不取决于文件本身,取决于文件所在的目录,拥有者是否具有 w 权限

但是如果新建了一个共享目录,两个 other 想在里面交流,所以这个共享目录的 other 必须具有 w 权限,但是这样容易被其他陌生人任意删除里面的文件,怎么办?Linux于是给 other 新增了一个位:粘滞位 t

那么这个粘滞位 t 具有什么意义?粘滞位就是:在原本 x 的权限下,进一步对目录的权限进行特殊限定:该目录里面的文件,只有root和拥有者有权利进行删除,其他人一概不能删除

带有粘滞位的目录想要删除里面的文件:

超级管理员(root)可以删除 。

该目录的所有者可以删除 。

要删除的文件的所有者可以删除。

四、Linux环境基础开发工具

1. yum

Linux中我们也要进行工具/指令/程序的安装/检查/卸载等,都需要 yum 的软件。yum是我们Linux预装的一个指令,可以搜索、下载、安装对应的软件,就相当于Linux的应用商店。

yum 工具的使用

我们可以下载一个 lrzsz 的工具,它可以实现我们Windous机器和Linux机器通过XShell进行传输文件。rz 命令可以Windows传Linux,sz 命令可以Linux传Windows。Windows传Linux也可以直接拖拽。

yum list 可以显示所有可以下载的软件包。

install 就是下载并安装的意思。

remove 就是卸载的意思。-y 选项可以加在 install ,也可以加在 remove ,意思是后面的一切不再询问,全部同意。

注意:yum 下载安装或删除需要 root 权限 。

一个好玩的工具:sl

yum install -y sl 需要root权限,或者 sudo yum install -y sl 进行提权。

界面会跑出一个火车。

如果上面的 sl 工具没有找到,需要安装扩展 yum 源:yum install -y epel-release


未完待续

目录
相关文章
|
22小时前
|
Oracle Java 关系型数据库
在Linux环境下采用压缩包方式安装JDK 13
在Linux环境下采用压缩包方式安装JDK 13
|
1天前
|
Linux Shell Python
linux服务器python2升级安装python3.7环境
linux服务器python2升级安装python3.7环境
8 0
|
1天前
|
安全 关系型数据库 MySQL
技术经验解读:【Linux】Linux系统中的权限详解
技术经验解读:【Linux】Linux系统中的权限详解
|
3天前
|
NoSQL Linux 开发工具
【Linux】Linux环境基础开发工具_6
【Linux】Linux环境基础开发工具_6
8 0
|
3天前
|
小程序 Linux 开发工具
【Linux】Linux环境基础开发工具_5
【Linux】Linux环境基础开发工具_5
8 0
|
3天前
|
小程序 Linux 开发工具
【Linux】Linux环境基础开发工具_4
【Linux】Linux环境基础开发工具_4
12 0
|
3天前
|
Linux 开发工具 C语言
【Linux】Linux环境基础开发工具_3
【Linux】Linux环境基础开发工具_3
4 0
|
3天前
|
Linux Shell 开发工具
【Linux】Linux环境基础开发工具_2
【Linux】Linux环境基础开发工具_2
5 0
|
1月前
|
Linux Windows
Linux权限命令详解(二)
Linux权限命令详解(二)
|
1月前
|
安全 Linux 开发工具
Linux权限命令详解(一)
Linux权限命令详解(一)