0


【从零带你玩转Linux】权限及相关指令

前言

🏠个人主页:泡泡牛奶

🌵系列专栏:从零带你玩转Linux

本期将会让大家了解什么是权限,权限该如何理解,以及Linux中一些有关权限设置的指令操作,让你在Linux使用中更加得心应手(~ ̄▽ ̄)~

在开始看这篇文章之前,我们可以思考以下问题:

  1. 什么是权限?
  2. 为什么会有权限?
  3. 如何设置权限?
  4. 没有权限会怎么样?

认识权限

在Linux下,有两种用户:超级用户(root)、普通用户。

  • root用户:可以在linux系统下做任何事,不受权限的限制
  • 普通用户:在linux下受权限的制约,只能做有限的事

超级用户的命令提示符是

#

,普通用户的命令提示符是

$

image-20221106133025813

1. 文件访问者的分类

  • 文件拥有者 u——User
  • 文件所属组 g——Group
  • 其它用户 o——Other

2. 文件类型和访问权限

我们可以使用

ls -la

来查看当前目录下的所有文件详细信息

image-20221121164417191

image-20221121165752920

有细心的小伙伴肯定发现了,这一栏一共有10个字符:

  • 第一个字符代表这个文件是文件、目录还是链接文件:字符选项含义[ d ]目录 (directory)[ - ]文件 (默认 - )[ l ]链接文件 (link file)[ b ]块设备文件,例如硬盘、光驱等 (block file)[ c ]字符设备文件,例如屏幕等串口设备 (character file)[ p ]管道文件 (pipe files)[ s ]套接口文件 (socket file)
  • 第二个字符到最后一个字符,每3个为一组image-20221121175332628每组有三个权限,分别是:权限含义r可读 (readable)w可写 (writable)x可执行 (excutable)-无权限例如图中的就是,拥有者和所属组可读可写可执行,其他人不可读不可写不可执行

3. 文件权值的表示方法

1) 字符表示法

Linux表示说明r–只读-w-只写–x只执行rw-可读可写(不执行r-x可读可执行 (不可写-wx可写可执行(不可读rwx可读可写可执行—无权限

2) 8进制表示法

将9位数每3位坐为一个8进制数字,有此权限就为1,没有此权限就为0

例如:

image-20221003182920044
权限符号二进制八进制—0000–x0011-w-0102-wx0113r–1004r-x1015rw-1106rwx1117

创建普通用户 adduser

语法:

add[选项] 新建账号名

功能:

创建一个普通用户,

adduser

useradd

一致,都是同样一条指令

(一般配合下面一条指令使用)

参数说明:
选项含义-d指定家目录位置-m若目录不存在,自动建立目录,默认/home/{新建账号名}-g指定所属组名称
实例:

adduser test_user
  • 什么都不指定的情况下,默认家目录为/home/{账号名},所属组名 与 账号名相同

设置用户密码 passwd

语法:

root用户:
passwd 用户名

普通用户:
passwd

功能:

设置/修改用户密码

实例:

root(超级)用户:

passwd test_user

image-20221106181832922

passwd sam 
New password:******* (新密码)
Re-enter new password:******* (再次输入新密码)

普通用户:

passwd

image-20221106183151296

(current) UNIX password:**** (旧密码)
New password:***             (新密码)
Retype new password:****     (再次输入新密码)

注意:

  • 在输入密码时,不会显示在显示器上,但密码确实会输入,如果输入错误建议ctrl+c(注销当前操作)重新输入

删除用户 userdel

语法:

userdel[-r] 用户名

功能:

删除用户(需要root用户才能删除

实例:

删除用户(保留家目录)

userdel test_user

删除用户(家目录一起删除)

userdel-r test_user

以超级用户身份运行 sudo

语法:

sudo[其它命令]

作用:

以管理员身份执行命令

实例:

sudowhoami

image-20230127165801778

设置root权限:

大家在第一次执行词条命令的时候,会遇到无法使用的问题,下面就有我为大家介绍如何解决。( •̀ ω •́ )✧

  1. 当前用户必须为root
  2. vim或nano 打开 /etc/sudoers 文件vim /etc/sudoers #用vim打开sudoers文件nano /etc/sudoers #用nano打开sudoersimage-20230128212514067
  3. 大概在 90~110 行左右,会看到 root ALL=(ALL) ALL ,将 root 换成你想提升权限的普通用户即可root ALL=(ALL) ALL(替换用户)ALL=(ALL) ALL

注意: 打开

/etc/sudoers

文件一定要是 root 用户,若不是 root 用户,打开文件会一片空白

切换用户 su

语法:

su{用户}su - {用户}

用法实例:
命令含义su切换到root用户su root切换到root用户su -切换到root用户,同时进入root家目录su 普通用户切换到普通用户su - 普通用户切换到普通用户,同时进入家目录

查看当前用户 whoami

语法:

whoami

功能:

查看当前用户

实例:

image-20221106230010687

查看用户登录信息 who

·语法:

who

作用:

查看用户登录信息

退出登录账户 exit

语法:

exit

作用:

如果是图形界面,退出当前终端;

如果是使用ssh远程登录,退出登陆账户;

如果是切换后的登陆用户,退出则返回上一个登陆账号

快捷键:

ctrl+D

修改文件权限 chmod

语法:

chmod[[目标对象][+-=][权限]][文件或目录]

功能:

修改文件或目录权限

参数说明:
目标对象含义uuser 文件拥有者ggroup 文件所属组oother 其他人aall 所有[±=]含义+增加权限-撤销权限=设定权限
实例:

# 符号表示法chmod u+rw test.c
chmod u+rw,g+rw test.c
chmod a-rw test.c

# 8进制表示法chmod516 test.c

image-20221003194748758

修改用户拥有者 chown

语法:

chown[选项] 修改后拥有者[:新文件拥有者的所属组][文件名]

功能:

  1. 修改用户拥有者
  2. 修改用户所属组

常用参数说明:
选项含义-R递归处理,将目录与目录下所有文件一起修改
实例:

chown wyd file.txt 
#修改文件 file.txt 拥有者为 wydchown wyd:wyd file.txt
#修改文件 file.txt 拥有者及所属组为 wydchown-R wyd dir#将目录及其文件下的所有文件拥有者修改为 wyd

image-20230127165010920

修改用户所属组 chgrp

语法:

chgrp[参数][修改后用户组名][文件名]

功能:

修改用户所属组

常用参数说明:
参数含义-R递归处理,将目录与目录下所有文件一起修改–reference=<参考文件或目录>将 文件所属组变成 与参考文件或目录一致
实例:

chgrp-R wyd test#将test目录及其目录下的所有文件所属组修改为 wydchgrp--reference=test1 test2 
#将test2所属组 变成 与test1所属组一致chgrp-R--reference=test1 test2 
#将test2及其目录下的所有文件 变成 与test1所属组一致

image-20230127150404806

设置掩码 umask

语法:

umask[权限掩码]

作用:

  1. 查询掩码
  2. 设置掩码

说明:

  1. 权限和权限掩码是按照8进制表示法
  2. 新建文件默认权限 = 0666
  3. 新建目录默认权限 = 0777
  4. 假设默认权限是mask,则实际创建出来的文件权限是 mask & ~umask
  5. 超级(root)用户默认掩码为 0022
  6. 普通用户默认掩码为 0002

实例:

umask#查询掩码umask 0001 #设置掩码为 0001

image-20230127162231009

总结

本期到这里就结束了,开头问的4个问题你能答的上来了吗?权限就是规定一个人是否能做这件事,若没有权限,那么就会造成所有的人都不能访问,或所有的人都可以访问,造成一系列的混乱,权限的存在就是为了保护一些数据信息不被随意改变,而且我们知道了root用户可以无视一切权限,那么我们更应该保护好root用户的密码。

我们下期再见 (^▽^)

标签: linux 服务器 运维

本文转载自: https://blog.csdn.net/xiao_feng0211/article/details/128782670
版权归原作者 泡泡牛奶 所有, 如有侵权,请联系我们删除。

“【从零带你玩转Linux】权限及相关指令”的评论:

还没有评论