无法创建符号链接 权限不够_云计算-liunx的用户管理及用户权限笔记

本文详细介绍了Linux用户管理,包括如何通过su和sudo进行权限提权,以及用户权限的UGO概念和基本权限类型。同时,讲解了chmod和chown/chgrp命令用于设置文件权限和属主属组,通过实例演示了权限的增减操作,强调了权限对文件访问的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

d

用户管理;提权分为两种

永久提权Switching users with su

[user01@localhost ~]$ id user01

uid=1003(user01) gid=1003(user01) 组=1003(user01)

[user01@localhost ~]$ whoami

user01

[alice@qianfeng ~]$ useradd u1

-bash: /usr/sbin/useradd: 权限不够

[alice@qianfeng ~]$ su - root

password:

[root@qianfeng ~]# useradd u1

成功,

临时提权Running commands as root with sudo

sudo简介:将用户切换到root,然后以超级用户身份执行命令,执行完成后,直接退回到当前用户。

具体工作过程如下;当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限],-->确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认-->若密码输入成功,则开始执行sudo后续的命令,

以上就是用户管理的最后一部分接下来就是新的章节

用户的权限;首先今天先讲基本权限的UGO

这个概念相当于我们的超级会员啦或者黄钻等等

权限对象:属主: u 属组: g 其他人: o 所有人:a(u+g+o)

读:r=4 写:w=2 执行: x=1

查看权限记录

[root@localhost ~]#ls -l /root/1.txt

-rw-r--r--. 1 root root 179 5月 25 14:27 /root/1.txt

-文件类型

rw-主人的权限,属主

r--属组的权限,

r--其他人的权限

.权限的扩展

1文件链接(第七章文件链接)

root文件的属主

root文件的属组

179大小

5月 25 14:27文件最后的修改时间

/root/1.txt 文件的名和路径

设置权限

更改权限;权限符号,使用符号:u用户 g组 o其他 r读 w写 x执行

语法: chmod 对象(u/g/o/a)赋值符(+/-/=)权限类型(r/w/x) 文件/目录

了解普通文件的基本权限;[root@localhost ~]# cd /tmp

[root@localhost ~]# touch file1

[root@localhost tmp]# ll file1

-rw-r--r--. 1 root root 0 4月 13 20:49 file1

权限 属主 属组 文件

示例:编写程序[root@localhost tmp]#vim file1

echo "hello 2020"

read -p "请输入您的姓名:" name

echo "哈哈 $name 是大笨蛋"

3.增加执行权限

[root@localhost tmp]# chmod u+x file1

//属主增加执行

71b804c27b1797467ea325b8741595f4.png

当我们给他附加执行权力后再打开就成功运行了,那么我们将他权力去掉之后再看下。

5.去除权限。运行失败

[root@localhost tmp]# chmod u-x file1

[root@localhost tmp]# ./file1

-bash: ./file1: 权限不够

e65cbe4ff2dbd9b1dd698c00ab2c6413.png

去除权限后就显示权限不够了这个程序就运行不了了。,

以上设置权限全是用的英文,当时也写了数字也等于那些英文命令,下面我们用数字来练习以、一下,4读 2写 1执行

[root@localhost ~]# chmod 644 file1

[root@localhost ~]# ll file1

-rw-r--r-- 1 alice it 17 10-25 16:45 file1

eb8aa2f21fc4bafcf61df6b83b2d4024.png

现在看这个权限只有用户root能读能写不能执行,root组只能看,其他人也只能看,那么我们给他改下权限看看,

aaa06abbd8285c21a4763d2fa07d2266.png

再看我么将用户组附加了写的权限,所以现在root能读写root组能读写其他人还是只能看。

更改属组,属主

chown命令

chown: 设置一个文件属于谁,属主

语法: chown 用户名.组名 文件

[root@localhost ~]# chown alice.hr file1

//改属主、属组

[root@localhost ~]# chown alice file1

//只改属主

[root@localhost ~]# chown .hr file1

//只改属组

选项 -R 针对目录中所有的文件。

chgrp命令

chgrp: 设置一个文件属于哪个组,属组

语法: chgrp 组名 文件 -R是递归的意思

[root@localhost ~]# chgrp it file1 //改文件属组

[root@localhost ~]# chgrp -R it dir1 //改文件属组。

1.用户权限意义

设定用户账户对文件(图片,视频,程序)的访问能力(看一看,写一写,执行)。

2.权限的对象

属主:文件的主人:u

属组:文件属于组员权限:g

其他人:除了主人和组员之外的用户:other

特殊对象:所有人(包含主人,组员,其他):all 全部

3.权限的类型

读取:r=4

写入:w=2

执行:x=1

4.修改文件的权限(完成授权一种方法)

命令:chmod(ch改变mod设置)

语法:chmod 授权 文件

示例:chmod u+x file1.txt

示例:chmod 764 file1.txt (属主读写执行,属组读写,其他人读)

案例:给一个文件增加执行权,用于执行。

5.修改文件的属主和属组(完成授权另一种方法)

命令:chown(ch改变own所有者)

语法:chown 属主.属组 文件/文件夹

语法:chown 属主 文件

语法:chown .属组 文件

示例:chown user01.hr file1.txt

示例:chown -R user01.hr dir1/

6.案例需求:

文件file10.txt

属主是user100,读写执行-7(可以看内容,可以改内容,可以执行)

属组是jishuzu(user200),读取 -4(只能看,不能改,不能执行)

其他人 没有权限-0(既不能看,又不能改和执行)

现在操作一遍,

1.使用root账户,来到/tmp目录

[root@localhost tmp]# cd /tmp

[root@localhost tmp]# pwd

2f3b3252886417491539fdb9c19a1369.png

2.创建文件file10.txt

[root@localhost tmp]# touch file10.txt

[root@localhost tmp]# ll file10.txt

-rw-r--r--. 1 root root 0 3月 19 16:20 file10.txt

主人:读写

组:读

其他人:读

c653f1ee779a82a78ce0a44ff918d883.png

3.准备测试账号

[root@localhost tmp]# useradd user100

[root@localhost tmp]# useradd user200

[root@localhost tmp]# useradd user300

[root@localhost tmp]# groupadd jishuzu

[root@localhost tmp]# usermod -aG jishuzu user200

[root@localhost tmp]# id user200

uid=1013(user200) gid=1016(user200) 组=1016(user200),1018(jishuzu)

098cc9cb5284224f6ec13583c0964486.png

4.授予文件属主和属组,以及其他人的权限。

[root@localhost tmp]# chmod 740 file10.txt

[root@localhost tmp]# ll file10.txt

-rwxr----- . 1 root root 0 3月 19 16:20 file10.txt

主人: 读写执行

组: 读

其他人:没有权限

445d2b8870027f29ec9fd12a085f5481.png

5.修改文件属主和属组。chown

[root@localhost tmp]# chown user100.jishuzu file10.txt

[root@localhost tmp]# ll file10.txt

-rwxr-----. 1 user100 jishuzu 0 3月 19 16:20 file10.txt

属主:user100

属组:jishuzu(组员user200)

11fa850120c2d8e13848d1059995a278.png

6.测试,使用user100,访问文件。写入文件,执行文件

[root@localhost tmp]# su - user100

[user100@localhost ~]$ cd /tmp/

[user100@localhost tmp]$ cat file10.txt

[user100@localhost tmp]$ vim file10.txt

[user100@localhost tmp]$ ./file10.txt

123

456

789

[user100@localhost tmp]$ exit

登出

e690b1f71a2056f4118dca5ed7c8095d.png

能看能写,由于刚创的file10.txt里边没有写程序所以没有程序执行。

使用jishuzu成员,访问文件,不可写和执行

[root@localhost tmp]# su - user200

[user200@localhost ~]$ cd /tmp/

[user200@localhost tmp]$ cat file10.txt

echo 123

echo 456

echo 789

[user200@localhost tmp]$ vim file10.txt

写入失败,强制退出:q!

[user200@localhost tmp]$ ./file10.txt

-bash: ./file10.txt: 权限不够

[user200@localhost tmp]$ exit

登出

992f540aa068623fa630ba1e5f4fb73c.png

9dc19c33ce2dd72a45b9320c0370b34e.png

这里能看出user200只能读,能写,更不能去执行,那么我们去看既不是组里边的也不是属主的user300用户,

1cb4ae1c51e55ceb0bf80e775aab9b2b.png

d50da4b20b83995e9837f204f5ff291e.png

这里能看到是权限不够无法读取跟写这个文件。所以这就是权限的限制。

今天的学习就到这里了,如有错误请大佬指出小弟感激不尽,期待明天与大家的分享。

### Linux 用户权限设置与管理 Linux 的用户权限管理是一个多层次的安全体系,旨在保护系统的资源不被未经授权的访问或操作。以下是关于 Linux 用户权限设置与管理的关键知识点: #### 1. 用户分类 在 Linux 中,用户主要分为三类: - **超级用户 (root)**:拥有最高权限,能够执行任何系统级别的操作[^2]。 - **普通用户**:由管理创建权限受到严格限制,通常仅能在其家目录下进行操作[^4]。 - **系统用户**:用于运行特定的服务或守护进程,不具备登录能力。 #### 2. 创建用户 可以通过 `useradd` 命令创建新的普通用户。例如: ```bash sudo useradd newuser ``` 此命令会创建一个名为 `newuser` 的账户,并为其分配默认配置。 为了使该用户能正常登录,还需要设置密码: ```bash sudo passwd newuser ``` #### 3. 删除用户 如果不再需要某个用户,可以使用 `userdel` 命令将其删除。例如: ```bash sudo userdel username ``` 若要一并删除用户的家目录及其数据,则需加上 `-r` 参数: ```bash sudo userdel -r username ``` #### 4. 权限管理基础 Linux 使用基于文件的权限模型,每种类型的文件都有对应的读 (`r`)、写 (`w`) 和执行 (`x`) 权限。通过以下命令可查看和调整这些权限- 查看文件权限: ```bash ls -l filename ``` - 修改文件所有者: ```bash sudo chown newowner filename ``` - 更改文件所属组: ```bash sudo chgrp newgroup filename ``` - 调整文件权限: ```bash chmod permissions filename ``` 其中,`permissions` 可以是以八进制表示的具体数值(如 `755`),也可以是符号模式(如 `u+x` 表示给当前用户增加执行权限)。更多细节参见参考资料[^3]。 #### 5. 授予管理权限 为了让某些普通用户具备部分 root 功能,可通过编辑 `/etc/sudoers` 文件实现。具体方法如下: - 编辑 `/etc/sudoers` 文件: ```bash sudo visudo ``` - 添加类似下面的一行来授予指定用户完全的 root 权限: ``` username ALL=(ALL) ALL ``` 这使得 `username` 能够通过输入自己的密码临时获得超级用户的能力。 #### 6. 数据库用户管理(以 MySQL 为例) 对于像 MySQL 这样的数据库服务,在操作系统层面之外还需单独处理数据库内部的用户认证及授权问题。比如新增一个具有有限查询权利的新用户: ```sql CREATE USER 'dbuser'@'localhost' IDENTIFIED BY 'password'; GRANT SELECT ON databasename.* TO 'dbuser'@'localhost'; FLUSH PRIVILEGES; ``` 上述 SQL 片段展示了如何定义一个新的数据库用户以及给予他只读权限[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值