Linux账户组管理及权限练习

1.使用id命令查看root账户信息

[root@server ~]# id root

用户id=0(root) 组id=0(root) 组=0(root)

2.使用id命令查看自己的普通账户信息

[root@server ~]# id kxy

用户id=1000(kxy) 组id=1000(kxy) 组=1000(kxy),10(wheel)

3.新建账户test1,并查看账户信息:

[root@server ~]# useradd test1

[root@server ~]# id test1

用户id=1001(test1) 组id=1001(test1) 组=1001(test1)

4.新建账户test2并制定UID为2021

[root@server ~]# useradd -u 2021 test2

[root@server ~]# id test2

用户id=2021(test2) 组id=2021(test2) 组=2021(test2)

5.删除上述新建账户test1及test2

[root@server ~]# userdel test1

[root@server ~]# userdel test2

6.完成下列设置

(1)新建账户test3
[root@server ~]# useradd test3
(2)并设置密码:
[root@server ~]# echo "123456" | passwd --stdin test3 >> /dev/null

(3)修改test3账户的id为5000:
[root@server ~]# usermod -u 5000 test3

[root@server ~]# id test3

用户id=5000(test3) 组id=1001(test3) 组=1001(test3)
(4)修改test3账户的工作组为之前的test1工作组:
[root@server ~]# groupadd test1

[root@server ~]# gpasswd -a test3 test1

正在将用户“test3”加入到“test1”组中
(5)查看test3的信息:cat  /etc/passwd
[root@server ~]# cat /etc/passwd | tail -1

test3:x:5000:1001::/home/test3:/bin/bash
(6)使用test3账户登录
[root@server ~]# su - test3

[test3@server ~]$

7.新建账户test4,并设置密码,且为不可登录,尝试登录

[root@server ~]# useradd -s /sbin/nologin test4


[root@server ~]# echo "123456" | passwd --stdin test4 >> /dev/null

[root@server ~]# su - test4

This account is currently not available.

8.进入/etc  目录查看详细信息,注意权限项:

[root@server ~]# sudo ls -l /etc/

9.进入 ~目录新建t1目录在其中新建文件temp1.txt完成如下操作

(1)查看temp.txt的权限:ls  -l  temp1.txt
[root@server ~]# mkdir t1

[root@server ~]# cd t1

[root@server t1]# touch temp1.txt

[root@server t1]# ll temp1.txt

-rw-r--r--. 1 root root 0  9月 29 14:48 temp1.txt
(2)修改权限为完整权限并查看:
[root@server t1]# chmod 777 temp1.txt

[root@server t1]# ll temp1.txt

-rwxrwxrwx. 1 root root 0  9月 29 14:48 temp1.txt
(3)新建temp2.txt,并使用数字法设置权限为rw-rw-r--
[root@server t1]# touch temp2.txt

[root@server t1]# chmod 664 temp2.txt

[root@server t1]# ll temp2.txt

-rw-rw-r--. 1 root root 0  9月 29 14:55 temp2.txt

10.新建账户test5 并设置密码为123456后按如下操作:

(1)查看test5的账户信息:cat  /etc/passwd
[root@server ~]# useradd -p "123456" test5

[root@server ~]# cat /etc/passwd | tail -1

test5:x:1001:1001::/home/tets5:/bin/bash
(2)新建文件temp3.txt
[root@server ~]# touch temp3.txt
(3)将temp3.txt 文件加入test5账户及工作组中:
[root@​​​​​​​server ~]# chown test5:test5 temp3.txt

[root@server ~]# ll temp3.txt

-rw-r--r--. 1 test5 test5 0  9月 29 15:01 temp3.txt

11.按如下操

(1)作​​​​​​​新建目录k1
[root@server ~]# mkdir k1
​​​​​​​(2)进入目录新建文件temp4.txt
[root@server ~]# cd k1

[root@server k1]# touch temp4.txt
(3)查看temp4隐藏权限: lsattr  temp4.txt
[root@server k1]# lsattr temp4.txt

---------------------- temp4.txt
​​​​​​​(4)将“hello” 字符串写入到temp4.txt文件中
[root@server k1]# echo "hello" >> temp4.txt

[root@server k1]# cat temp4.txt

hello
​​​​​​​(5)设置temp4.txt不可删除隐藏权限属性,检查是否可删除:
[root@server k1]# chattr +a temp4.txt

[root@server k1]# lsattr temp4.txt

-----a---------------- temp4.txt

[root@server k1]# rm -f temp4.txt

rm: 无法删除 'temp4.txt': 不允许的操作
​​​​​​​(6)删除temp4.txt隐藏权限:
[root@server k1]# chattr -a temp4.txt

[root@server k1]# lsattr temp4.txt

---------------------- temp4.txt
​​​​​​​(7)尝试删除temp4.txt
[root@server k1]# rm -f temp4.txt

### Linux 权限管理教程 #### 文件和目录权限概述 Linux 中的每一个文件和目录都具有特定的所有者、所属和其他用户的访问权限设置。这些权限决定了谁可以读取、写入或执行该文件或进入该目录。 - **所有者 (User)**:创建文件的用户,默认拥有最高控制权。 - **所属 (Group)**:与文件关联的一用户,通常由管理员分配。 - **其他人 (Others)**:既不是所有者也不是所属成员的任何用户[^1]。 #### 查看文件权限 要查看某个文件的具体权限信息,可使用 `ls -l filename.txt -rw-r--r-- 1 user group 0 Jan 27 14:35 filename.txt ``` 上述输出中 `-rw-r--r--` 表示: - 第一位字符表示文件类型(此处为常规文件) - 接下来的三位代表所有者的权限 (`rw-`) - 再之后三位代表同内其他人的权限 (`r--`) - 最后三位则对应于除前两者之外的人(`r--`) 的权限 #### 修改文件权限 通过 `chmod` 可更改现有文件上的权限位。此命令接受两种形式的参数输入——符号模式和八进制数值模式。 ##### 符号模式修改权限 允许增减指定角色对于目标对象拥有的某些权利: ```bash # 添加所有人对 file.txt 的执行权限 $ chmod a+x file.txt # 移除除了所有者外任何人对 dir/ 下的内容列表浏览能力 $ chmod o-rwx,g-wx dir/ ``` ##### 数字方式设定权限 每种类型的权限可以用三个数字来表达,范围是从0到7: | Number | Permission | |--------|------------| | 0 | --- | | 1 | --x | | 2 | -w- | | 3 | -wx | | 4 | r-- | | 5 | r-x | | 6 | rw- | | 7 | rwx | 例如给定一个新文档设初始状态为只允许可读不可改也不运行,则应为其赋予值 '4': ```bash $ touch newfile && chmod 400 newfile ``` #### 更改所有权及群归属 利用 `chown` 和 `chgrp` 工具能够调整文件或整个树状结构下的项目属性至新的主体身份或是群体分类下: ```bash # 将文件 ownership 改变给另一名用户 $ sudo chown anotheruser:newgroup some_file_or_directory/ # 单独改变某物隶属之团体名称而不影响其主人翁地位 $ sudo chgrp developers project_folder/ ``` #### 设置默认继承父级权限 为了简化管理和保持一致性,在创建子项时自动应用来自上级容器的安全策略是非常有用的特性之一。这可以通过设置特殊标志 Sticky Bit 或者是在 NFS 上启用 ACLs 实现更复杂的规则集[^2]: ```bash # 对 /path/to/dir 应用 sticky bit, 新建于此内的条目会保留原始创作者的身份作为个体占有者 $ chmod +t /path/to/dir ``` #### 用户密码变更实践 尽管这不是严格意义上的权限管理部分,但是了解如何安全有效地更新个人账户凭证也是至关重要的技能点。借助内置工具 `passwd`, 普通用户即可自行完成这项工作而无需求助超级管理员介入[^4]: ```bash # 更新当前登录账号的新口令 $ passwd Changing password for user. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值