linux中怎样新建一个文件,并为该文件赋予权限?mkdir文件夹名
mkdir -p dir1/dir2/dir3
赋予文件夹权限:
修改linux文件权限命令:chmod
$ ls -l rodine.org. tgz
-rw-r--r-- 1 root root 483997 Ju1 l5 17:3l rodine.org. tgz
横线代表空许可 。r代表只读,w代表写,x代表可执行 。注意这里共有10个位置 。第一个字符指定了文件类型 。在通常意义上 , 一个目录也是一个文件 。如果第一个字符是横线,表示是一个非目录的文件 。如果是d,表示是一个目录 。
文字设定法
chmod [who] [| - | =] [mode] 文件名?
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或他们的组合:
u 表示“用户(user)”,即文件或目录的所有者 。
g 表示“同组(group)用户”,即和文件属主有相同组ID的所有用户 。
o 表示“其他(others)用户” 。
a 表示“所有(all)用户” 。他是系统默认值 。
操作符号能是:
添加某个权限 。
- 取消某个权限 。
= 赋予给定权限并取消其他所有权限(如果有的话) 。
设置mode所表示的权限可用下述字母的任意组合:
r 可读 。
w 可写 。
x 可执行 。
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性 。
s 在文件执行时把进程的属主或组ID置为该文件的文件属主 。方式“u s”设置文件的用户ID位,“g s”设置组ID位 。
t 保存程式的文本到交换设备上 。
u 和文件属主拥有相同的权限 。
g 和和文件属主同组的用户拥有相同的权限 。
o 和其他用户拥有相同的权限 。
文件名:以空格分开的要改动权限的文件列表,支持通配符 。
在一个命令行中可给出多个权限方式,其间用逗号隔开 。例如:chmod g r,o r example
使同组和其他用户对文件example 有读权限 。
Linux用户权限管理命令 Linux系统中的用户是分角色的,用户的角色是由UID和GID来识别的(也就是说系统是识别的是用户的UID、GID,而非用户用户名),一个UID是唯一(系统中唯一如同身份证一样)用来标识系统的用户账号(用户名) 。
文件的用户与用户组分为超级管理员,普通用户和系统用户 。
1)超级管理员的UID=0,GID=0 , 也可以这么说系统只要是识别出某个用户的UID\GID都为0时 , 那么这个用户系统就认为是超级管理员 。
2)普通用户(管理员添加的),默认它的UID\GID是从500-65535,权限很小,只能操作自己的家目录中文件及子目录(注:nobody它的UID\GID是65534) 。
3)系统用户,也称虚拟用户 , 也就是安装系统时就默认存在的且不可登陆系统,它们的UID\GID是1-499 。
我们可以通过cat /etc/passwd命令来查看所有的用户信息,例如下图,第三列是UID,第四列是GID:
创建用户
useradd user1创建用户user1
useradd -e 12/30/2021 user2创建用户user2 , 有效期到2021-12-30
设置用户密码
passwd user1设置密码,有设置密码的用户不能用
这里设置密码时可能会碰到密码保护机制问题,这里需要注释掉保护机制的问题
这个时候需要在编辑/etc/pam.d/system-auth文件,将其中的passwordrequisite
和passwordsufficient两行注释掉,如下图:
创建用户组
groupadd –g 888 users创建一个组users,其GID为888
groupadd users 不用g参数,使用默认的组ID
命令 gpasswd为组添加用户
只有root和组管理员能够改变组的成员:
gpasswd –a user1 users把 user1加入users组
gpasswd –d user1 users 把 user1退出users组
命令groupmod修改组
groupmod –n user2 user1 修改组名user1为user2
groupdel删除组
groupdel users 删除组users
真正从安全性角度上来考虑的话,是要控制用户一定执行命令的权限,也就是哪些用户可以执行哪些命令,不可以执行哪些命令,因此也就有了sudo这个应用,对于sudo提权,也就是修改/etc/sudoers的配置文件 。
Linux 权限管理命令命令名称:chmod
命令英文原意:change the permissions mode of a file
有两种角色可以执行该命令,一种是 root 用户,另一种就是文件的所有者 。
【linux富裕权限命令 linux如何赋予权限】 语法:
大括号里的内容表示只能选一个,其中 u 表示该文件的所有者,g 表示所属组 , o 表示其他人,a 表示所有角色 。
比如 , 给 abc.txt 文件的所属组加一个写的权限:
也可以同时做多个授权,比如给文件所有者加上执行权限,给其他人去掉写权限:
还可以用数字表示权限 。权限的数字表示:
如果一个文件的权限是 rw-r--r--,那么翻译成数字就是 644 , 反过来,如果要更改文件的权限,可以这样写:
这样文件的权限就改成 rw-r----- 了 。
还有一个选项 -R 是递归修改权限,该选项的功能是更改某个目录的权限的同时更改该目录下所有的子目录和文件的权限 。
命令名称: chown
英文原意:change owner
语法:chown 用户名 文件
只有管理员账户可以更改文件的所属用户 。
例如:
命令名称:chgrp
英文原意:change group
语法:chgrp 组名 文件
例如:
命令名称:umask
使用命令umask -S 可以查看新建文件或目录的默认权限 。
现在显示的是新建目录的默认权限,该目录的所有者的默认权限是 rwx,所属组的默认权限是 rx,其他人的默认权限是 rx 。为什么说这是新建目录的默认权限而不是新建文件的默认权限,如果你查看新建文件的权限,会发现是rw-r--r-- , 与新建目录的权限rwxr-xr-x相比,每种角色的权限都少了 x 。所以说,只要知道了新建目录的默认权限 , 再去掉 x 权限,就是新建文件的默认权限 。
如果直接执行 umask 命令,会显示一个数字 。
这个数字叫做权限掩码,用 777 减去其后三位 022 就得到了每种角色的权限,即 755 。翻译成字母就是rwxr-xr-x。
若想更改新建目录或文件的默认权限,只需执行umask 权限掩码即可 。
例如,我想把新建目录的默认权限改成rwxr-r-- ,翻译成数字就是 744,再用 777 减去 744 就得到了权限掩码 033 。
虽然 Linux 系统的目录或文件的默认权限可以修改 , 但是 Linux 这样分配权限是有一定道理的,最好不要轻易修改 。
关于linux富裕权限命令和linux如何赋予权限的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 鸿蒙系统关机恢复出厂设置,鸿蒙系统还原设置
- 高级网络工程毕业设计,高级网络工程毕业设计题目
- 小米区块链哪个好用点,小米的区块链是什么
- c语言有函数表达式吗 c语言中函数包括
- c#redis连接数据库,c# redisson
- 怎么弄58同城视频号的简单介绍
- 关注虎牙直播通知中心在哪,关注虎牙直播通知中心在哪看
- java红旗的代码 java画五星红旗的编程代码
- c语言怎样输出平行四边形,c语言输出平行四边形星号5行