From 12e5e35dd40b1ae7c9d4fddf00ad2b69eb52938c Mon Sep 17 00:00:00 2001 From: Your Name Date: Sun, 16 Jun 2024 20:35:29 +0800 Subject: [PATCH] bj --- ...71\345\217\212\344\275\234\344\270\232.md" | 191 ++++++++++++++++++ 1 file changed, 191 insertions(+) create mode 100644 "\351\231\206\345\260\217\350\220\215/2024-6-15\350\256\262\350\257\276\345\206\205\345\256\271\345\217\212\344\275\234\344\270\232.md" diff --git "a/\351\231\206\345\260\217\350\220\215/2024-6-15\350\256\262\350\257\276\345\206\205\345\256\271\345\217\212\344\275\234\344\270\232.md" "b/\351\231\206\345\260\217\350\220\215/2024-6-15\350\256\262\350\257\276\345\206\205\345\256\271\345\217\212\344\275\234\344\270\232.md" new file mode 100644 index 0000000..c479d32 --- /dev/null +++ "b/\351\231\206\345\260\217\350\220\215/2024-6-15\350\256\262\350\257\276\345\206\205\345\256\271\345\217\212\344\275\234\344\270\232.md" @@ -0,0 +1,191 @@ +## 6-15讲课内容 + +### 一、用户与文件权限的管理 + +``` +1.用户管理 + 1.分类 + -超级用户 root,最高权限,不受一般权限限制,编号是0,提示符是#; + -内置用户:由系统自动创建,编号1-999; + -普通用户:我们用root权限手动创建用户,受权限控制,编号从1000依次递增; + -创建普通用户test会自动创建他的编号u,他原生组g(和用户名同名test),附加组G(test), + 初始化一定是u 1000(test),1000(test),1000(test); + -普通用户不能创建用户,只有root; + -提示符是$; + - u user 用户 uid; + -group 组 gid; +2.用户 + 1.添加 + - useradd -m /home/xxx -s /bin/bash yyy; + -adduser; + 2.删除 + -userdel xxx + -userdel -r xxx 删除用户和相关目录; + 3.修改 + -usermod -G 组号|组名 xxx; 如:usermod -G student 目录 覆盖原来的附加组(扩展组); + - usermod -aG 组号|组名 XXX : usermod -aG stu u15 保留原有附加组前提下,追加新的附加组 + -usermod -s /bin/aaa(目录) 目录; + 4.密码 + -passwd 用户名 root修改指定用户的密码; + -passwd 修改当前登录用户的密码,就是自己的密码; + 5.查询 + -id 用户名 指定用户 + -/etc/passwd + 6.切换 + - su 仅仅切换了身份,不切换目录和shell等环境变量; + - su - 完全切换,连环境变量和目录一起切换; +1.用户组 + 1.添加 + -groupadd student 添加一个组,编号自动的; + -groupadd -g 999 student1 添加一个组,编号自动的; + 2.删除 + -groupdel 组号|名 + 3.修改 + -groupmod + 4.查询 + /etc/group +2.文件管理 + -文件属性:10个字符,连接数或子目录数,文件拥有者,文件所属的用户组,文件大小,修改时间,文件|目录名 + -10个字符: + -第一位 文件类型 + - d 目录 + - - 普通文件 + - l 连接文件 + - b c s p 等其他文件; + -后九位分别代表了:三种角色的权限,每3位一组 + - 2-4 拥有者权限 + - 5-7 用户组的权限 + -8-10 其他人的权限 + -基本权限 + - r 读,打开并显示文件内容,查看目录基本信息; + - w 写,文件可以写入,修改,删除内容,目录:创建,修改,删除; + - x 执行,文件如果是二进制或脚本文件就可以执行,目录表示可以进入; + -特殊权限 + - SUID + - GUID + -隐藏权限 + - lsatte 列出隐藏权限; + - chattr 修改隐藏权限 + - +i 增加,不得任意更改文件或目录的效果; + - -i 消除 + -权限表示 + -字符 + -数字 + - r==4 + - w==2 + - x==1 + -身份表示 + - u 拥有者(user) + - g 用户组(group) + - o 其他人(other) + - a 所有人(all) + -修改权限:root可以改任何文件,而拥有者可以改自己拥有的文件 + - chmod 要的权限 文件|目录 + - chmod u+w,g-r,o=rw 1.txt + - chmod 777 1.txt + -修改拥有者 + - chown 用户名 文件名 + -修改文件所属的用户组 + - chgrp 组名|组号 + - sudo + - 修改/etc/sudoers 文件 + - 将用户追加到sudo组:sudo usermod -aG sudo 目录 +3.Linux执行命令的过程 + 1.如果这个命令是绝对路径,就直接执行 + 2.如果不是,查一下是不是别名,是就执行对应的命令 + -从环境变量中查找这个命令$PATH中的路径依次查找这个命令 + -本地也没有的话就报错了 +``` + +### 二、作业 + +``` +什么是linux 硬连接和软连接(快捷方式)? +答:1.软连接,其实就是新建立的一个文件,这个文件就是专门用来指向别的文件(和Windowsi下的快捷方式的那个文件接近)。软连接产生的是一个新文件,删了这个软连接文件,那就等于不需要这个连接,和原来存在的实体原文件没有任何关系,但删了原来的文件,则相应的软连接不可用。 + 2.硬连接,实际上是为文件建一个别名,连接文件和原文件实际上是同一个文件。硬连接是不会建立inode的,他只是在文件原来的indoe link count域再增加1而已,因此硬连接是不可以跨越文件系统的。 +``` + +**### 权限管理练习** + +``` +1. 创建/guanli 目录,在/guanli下创建zonghe 和 jishu 两个目录(一条命令) +mkdir -p guanli/{zonghe,jishu} + +2. 添加组帐号zonghe、caiwu、jishu,GID号分别设置为2001、2002、2003; +sudo groupadd -g 2001 zonghe +sudo groupadd -g 2002 caiwu +sudo groupadd -g 2002 jishu + +3. 创建jerry、kylin、tsengia、obama用户,其中的kylin用户帐号在2020年12月30日后失效 +sudo useradd jerry obama + sudo chage -E 2020-12-30 kylin + +4. 将jerry、kylin、tsengia、obama等用户添加到zonghe组内 +ping@hecs-395650:~$ sudo usermod -aG zonghe jerry +ping@hecs-395650:~$ sudo usermod -aG zonghe kylin +ping@hecs-395650:~$ sudo usermod -aG zonghe tsengia +ping@hecs-395650:~$ sudo usermod -aG zonghe obama + +5. 创建handy、cucci用户,其中cucci帐号的登录Shell设置为“/sbin/nologin”; +sudo useradd handy +sudo useradd cucci -s /sbin/nologin + +6. 将handy、cucci等用户添加到jishu组内; +sudo usermod -aG jishu handy +sudo usermod -aG jishu cucci + +7. 将上述的所有用户均要求加入到guanli组内; +sudo groupadd guanli +sudo usermod -aG guanli handy +sudo usermod -aG guanli cucci + +8. 将zonghe组内的obama用户删除; +sudo gpasswd -d obama zonghe + +9. 为jerry用户设置密码为“123456”(使用普通方法)为cucci用户设置密码为“redhat”; +sudo passwd jerry +sudo passwd cucci + +10. 将jerry用户锁定,并查看锁定状态; +usermod -L jerry #锁定 +usermod -U jerry #解锁 + +11. 打开两个xshell窗口,通过(who 或者 w)命令查看连接状态,并通过fuser杀掉其中一个; +fuser -v /dev/pts/0 +kill -9 进程号 + +12. 查看cucci用户,属于那些组,并查看其详细信息; +groups cucci && id cucci +cat etc/passwd |grep 'cucc' + +13. 手工创建账号student(预留); +useradd student + +14. 设置权限及归属:/guanli目录属组设为guanli, /guanli/zonghe目录的属组设为zonghe /guanli/jishu目录的属组设为jishu,设置3个目录都是禁止其他用户访问的权限; +### 归组 +sudo chown :组名 源文件 +### 权限 +sudo chown 770 源文件 #设置3个目录都是禁止其他用户访问 + +15. 建立公共目录/ceshi允许技术组内的所有用户读取、写入、执行文件, 禁止其他用户读、写、执行; +sudo chown :jishu ceshi/ +sudo chown 770 ceshi/ + +16. 清除jerry用户密码; +sudo passwd -d jerry #清除密码 +sudo getent shadow jerry #查看是否清除密码 + +17. 锁定cucci用户密码并查看状态; +sudo passwd -l cucci +sudo passwd -S cucci + +18. 修改obama用户的UID为8888; +sudo usermod -u 8888 obama + +19. 通过passwd命令修改kylin用户的最长密码使用期限为60天 +sudo passwd --maxdays 60 kylin + +20. 通过id groups等命令查看用户handy信息 +id handy +groups handy +``` -- Gitee