LINUX用户管理及权限设置

合集下载

Linux终端用户管理添加、删除和修改用户账户

Linux终端用户管理添加、删除和修改用户账户

Linux终端用户管理添加、删除和修改用户账户在Linux操作系统中,用户账户管理是系统管理员工作中的一项基本任务。

通过终端可以方便地完成用户账户的添加、删除和修改操作。

本文将介绍如何在Linux终端中进行用户账户管理的相关操作。

一、添加用户账户要添加一个新的用户账户,可以使用以下命令:```shellsudo useradd [选项] 用户名```其中,[选项]为可选参数,可根据需要使用不同的参数来添加用户。

常用参数如下:- `-c`:指定用户的注释。

- `-m`:自动创建与用户同名的主目录。

- `-s`:指定用户的默认Shell。

- `-g`:指定用户的主要用户组。

- `-G`:指定用户的附加用户组。

例如,要添加一个用户名为"testuser",注释为"Test User",并将其加入primarygroup主要用户组和secondarygroup附加用户组,可以使用以下命令:```shellsudo useradd -c "Test User" -g primarygroup -G secondarygroup testuser ```添加用户时,还需设置用户的密码。

可以通过以下命令为用户设置密码:```shellsudo passwd 用户名```在输入以上命令后,系统会提示你输入新密码并进行确认。

二、删除用户账户要删除一个用户账户,可以使用以下命令:```shellsudo userdel 用户名```该命令将删除指定的用户账户和相关的用户组,但不会删除用户的主目录和个人文件。

如果需要同时删除用户的主目录,可以使用以下命令:```shellsudo userdel -r 用户名```请在使用删除用户命令时,谨慎操作,确保不会误删重要用户账户。

三、修改用户账户要修改一个用户账户的属性,可以使用以下命令:```shellsudo usermod [选项] 用户名```其中,[选项]为可选参数,可根据需要使用不同的参数来修改用户属性。

Linux新增用户,并设置Root(管理员)权限

Linux新增用户,并设置Root(管理员)权限

Linux新增⽤户,并设置Root(管理员)权限
在使⽤Linux过程中,Root账号拥有最⼤的操作权限。

为保证Root账号安全,⼀般不直接使⽤Root账号,⽽是直接创建⼀个拥有Root权限的其它账号来使⽤。

详细操作步骤如下
第⼀步,创建⽤户,如下图所⽰:
执⾏命令: usermod -a -G wheel ypsroot 将⽤户加⼊管理权限组
第⼆步,修改sudoers⽂件为可修改状态,如下图所⽰:
第三步,修改sudoers⽂件,新增⼀⾏指令,使新⽤户和Root⼀样的权限,如下图所⽰:
⼩细节:ypsroot ALL=(ALL) NOPASSWD: ALL 可以让ypsroot账号在操作时不输⼊密码!(nopasswd:)
然后,保存退出即可!
在使⽤的时候,记住指令前⾯要加 sudo
如下图:
上⾯我们修改sudoers⽂件为可修改,此时我们应该重新把它修改为只读模式:
执⾏如下命令:
chmod -v u-w /etc/sudoers。

管理用户和权限Linux终端中的useradd和asswd命令

管理用户和权限Linux终端中的useradd和asswd命令

管理用户和权限Linux终端中的useradd和asswd命令在Linux服务器中,管理用户和权限是非常重要的任务。

为了确保系统安全性,并且方便地管理用户账户和权限,Linux提供了一些有用的命令,比如useradd和passwd。

一、useradd命令useradd命令用于创建新的用户账户。

使用该命令时,需要提供用户名作为参数,并可选择指定一些选项,如用户ID、用户主目录路径等。

下面是一个示例:```bash$ useradd -u 1001 -d /home/john -s /bin/bash john```在上述示例中,-u参数用于指定用户ID为1001,-d参数指定用户主目录路径为/home/john,-s参数指定用户的默认Shell为/bin/bash。

最后的参数john是要创建的用户名。

二、passwd命令passwd命令用于设置或修改用户的密码。

使用该命令时,需要提供用户名作为参数,然后系统会要求输入新的密码,以确保账户安全。

下面是一个示例:```bash$ passwd johnChanging password for user john.New password:Retype new password:passwd: all authentication tokens updated successfully.```在上述示例中,系统会提示输入新的密码,然后要求重新输入一次以确认。

一旦完成,系统将显示成功更新密码的消息。

三、用户管理实例接下来,我们将通过一个实例来演示如何使用useradd和passwd命令进行用户管理。

假设我们需要创建一个名为"guest"的用户账户,并设置密码为"guest123",请按照以下步骤操作:首先,我们使用useradd命令创建新用户:```bash$ useradd guest```然后,我们使用passwd命令为该用户设置密码:```bash$ passwd guestChanging password for user guest.New password:Retype new password:passwd: all authentication tokens updated successfully.```输入两次新密码后,系统将显示成功更新密码的消息。

Linux系统中账号及权限管理

Linux系统中账号及权限管理

Linux系统中账号及权限管理⽬录前⾔作为⼀个多⽤户、多服务的服务器操作系统,Linux提供了严格的权限管理机制,主要从⽤户⾝份、⽂件权限两⽅⾯对资源访问进⾏限制。

本⽂将分别介绍Linux系统中⽤户和组账号的管理、⽂件权限和归属的管理、⽂件和⽬录的权限管理、⽂件和⽬录的归属挂你的相关知识,帮助⼤家解决问题。

⼀.管理⽤户账号和组账号1.1⽤户账号和组账号概述Linux基于⽤户⾝份对资源访问进⾏控制●⽤户帐号:①.超级⽤户:root⽤户是 Linux系统中默认的超级⽤户账号,对主机拥有最⾼的权限,类似于 Windows系统中的Administrator⽤户。

只有当进⾏系统管理、维护任务时,才建议使⽤root⽤户登录系统,⽇常事务处理建议只使⽤普通⽤户账号。

②.普通⽤户:普通⽤户账号需要由root⽤户或其他管理员⽤户创建,拥有的权限受到⼀定限制,⼀般只在⽤户⾃⼰的宿主⽬录中拥有完整权限。

③.程序⽤户:在安装 Linux系统及部分应⽤程序时,会添加⼀些特定的低权限⽤户账号,这些⽤户⼀般不允许登录到系统,⽽仅⽤于维持系统或某个程序的正常运⾏,如bin、 daemon、ftp、mail等。

●组帐号:①.基本组(私有组):基本组(私有组):基本组账号只有⼀个,⼀般为创建⽤户时指定的组。

在/etc/passwd⽂件中第4字段记录的即为该⽤户的基本组 GID号。

②.附加组(公共组):⽤户除了基本组以外,额外添加指定的组。

●UID和GID:UID (User lDentity,⽤户标识号):Linux系统中的每⼀个⽤户账号都有⼀个数字形式的⾝份标记,称为UID,对于系统核⼼来说,UID作为区分⽤户的基本依据,原则上每个⽤户的UID号应该是唯⼀的。

root⽤户账号的UID号为固定值0.⽽程序⽤户账号的UID号默认在1-499之间,500-60000的UID号默认分配给普通⽤户账号使⽤。

GID (Group lDentify,组标识号):与UID相类似,每⼀个组账号也有⼀个数字形式的⾝份标记,称为GID。

Linux-权限管理(文件权限)

Linux-权限管理(文件权限)

Linux-权限管理(⽂件权限)Linux - 权限管理(⽂件权限)⼀:基本权限1.基本权限介绍基本权限类型类型全拼释义权限位r read可读4w write可写2x execute可执⾏1权限的归属归属字母属主u属组g其他⽤户o2.设置权限修改属主、属组# 修改⽂件:1.txt的属主为:darker 属组为:human[root@localhost ~]# chown darker.human 1.txt# 修改⽂件:1.txt的属主为:darker[root@localhost ~]# chown darker 1.txt# 修改⽂件:1.txt的属组为:human[root@localhost ~]# chown .human 1.txt# 递归修改⽬录:file1的属主为:darker 属组为:human[root@localhost ~]# chown -R darker.human file1修改u、g、o对应的权限# 加减法# 修改⽂件:1.txt的权限为:属主为u 属组为w[root@localhost ~]# chmod u+x,g-w 1.txt# 赋值法# 修改⽂件:1.txt的权限为:所有⽤户为rwx[root@localhost ~]# chmod a=rwx 1.txt# 修改⽂件:1.txt的权限为:-[root@localhost ~]# chmod a=- 1.txt# 修改⽂件:1.txt的权限为:属主属组为rw 其他⽤户为r[root@localhost ~]# chmod ug=rw,o=r 1.txt# 数字# 修改⽂件:1.txt的权限为:所有⽤户的权限为rwx[root@localhost ~]# chmod 7771.txt# 递归修改⽬录:file1的权限为:所有⽤户的权限为rwx[root@localhost ~]# chmod 777 file1注意:把某⼀个⾮属主⽤户添加到⽂件的属组⾥,他就拥有了该组的权限,⽽不再是其他⼈权限对⽂件/⽬录的意义⽂件:ls -l ⽂件名权限释义r可以cat读取⽂件内容w可以修改⽂件x 可以执⾏⽂件代码,如果该⽂件的代码是编译好的结果那么只有x权限即可执⾏但如果该⽂件的代码是⼀个解释型的脚本程序则需要配合r权限才可执⾏⽬录:ls -dl ⽂件名权限释义r可以ls浏览⽂件下的内容w可以在⽬录下创建新⽂件or⽬录x 可以执⾏⽬录下的程序,除了对⽬录有执⾏权限外,还要对程序⽂件有执⾏权限才⾏可以正常cd切换到⽬录下涉及到多层⽬录如/a/b/c,需要对每⼀级都有x权限才可以正常⾛到下⼀级对⽂件夹的操作(不操作⽂件内容),需要当前⽤户具备的权限对沿途所有⽂件夹有x权限对⽬标⽂件夹有r或w权限权限释义r可以浏览w可以创建、删除、移动⼦⽂件和⼦⽬录对⽂件的操作(操作⽂件内容),需要当前⽤户具备的权限对沿途所有⽂件夹有x权限对⽬标⽂件有r或w权限权限释义r可以读取⽂件内容w可以修改⽂件内容注意点:vim修改的原理是将原⽂件删掉,然后再将内容的内容覆盖写⼊了新⽂件,新⽂件名重命名为原⽂件名验证vim修改的原理# (root⽤户)切换到/usr/local⽬录[root@localhost local]# cd /usr/local# (root⽤户)递归创建test01/dir1⽬录[root@localhost local]# mkdir -p test01/dir1# (root⽤户)递归修改⽬录test01权限为733[root@localhost local]# chmod -R 733 test01# (root⽤户)在test01⽬录下创建1.txt并写⼊内容“123”[root@localhost local]# echo "123" > test01/1.txt# (root⽤户)查看1.txt的内容[root@localhost local]# cat test01/1.txt123# (root⽤户)查看test01⽬录下的⽂件1.txt的详情信息:其他⽤户只有(r)读的权限[root@localhost local]# ll test01/1.txt-rw-r--r--. 1 root root 4 Nov 2510:02 test01/1.txt# (root⽤户)查看test01⽬录下的⽂件1.txt的iNode信息[root@localhost local]# stat test01/1.txtFile: ‘test01/1.txt’Size: 4 Blocks: 8 IO Block: 4096 regular fileDevice: fd00h/64768d Inode: 23609 Links: 1Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)Context: unconfined_u:object_r:usr_t:s0Access: 2020-11-2510:02:58.471562017 -0500Modify: 2020-11-2510:02:58.471562017 -0500Change: 2020-11-2510:02:58.471562017 -0500Birth: -# 切换到其他⽤户/⽤其他⽤户登录PS C:\Users\Darker> ssh darker@192.168.50.101darker@192.168.50.101's password:[darker@localhost ~]$ whoamidarker# (普通⽤户)⽤vim打开/usr/local/test01⽬录下的1.txt[darker@localhost ~]$ vim /usr/local/test01/1.txt123~~~"/usr/local/test01/1.txt" [readonly] 1L, 4C 1,1 All # [readonly] 只读# 按i进⼊插⼊模式-- INSERT -- W10: Warning: Changing a readonly file# (普通⽤户)修改1.txt的内容,强制保存并退出456Esc:wq!# 回到原来的root⽤户的窗⼝# (root⽤户)查看1.txt的内容[root@localhost local]# cat test01/1.txt456# (root⽤户)查看test01⽬录下的⽂件1.txt的详情信息:属主和属主变了[root@localhost local]# ll test01/1.txt-rw-r--r--. 1 darker darker 4 Nov 2510:21 test01/1.txt# (root⽤户)查看test01⽬录下的⽂件1.txt的iNode信息[root@localhost local]# stat test01/1.txtFile: ‘test01/1.txt’Size: 4 Blocks: 8 IO Block: 4096 regular fileDevice: fd00h/64768d Inode: 23609 Links: 1Access: (0644/-rw-r--r--) Uid: ( 1000/ darker) Gid: ( 1000/ darker)Context: unconfined_u:object_r:usr_t:s0Access: 2020-11-2510:30:54.822530748 -0500Modify: 2020-11-2510:21:17.823541511 -0500Change: 2020-11-2510:21:17.824541511 -0500Birth: -结论vim修改⽂件时:会将原⽂件删除,⽣成新的⽂件,属主和主组会变成修改的那个⽤户和⽤户所在的组⼆:特殊权限权限权限位SUID4SGID2权限权限位SBIT1SUID1.疑问普通⽤户既不是root也不属于root组,因此它对/etc/shadow⽂件没有任何权限(全是---)# 查看/etc/shadow信息[darker@localhost ~]# ll /etc/shadow----------. 1 root root 970 Nov 2407:29 /etc/shadow但是:普通⽤户为何可以⽤passwd直接修改密码?并且修改的是/etc/shadow⽂件,如何实现的?[darker@localhost ~]$ ll `which passwd`-rwsr-xr-x. 1 root root 27832 Jun 102014 /usr/bin/passwd这⾥可以看到,本应为rwx的第三个x变成了s,这就是s权限2.s权限的特殊之处SUID权限仅对⼆进制可执⾏⽂件有效(对⽬录⽆效)如果执⾏者对于该⼆进制可执⾏⽂件具有x的权限,执⾏者将具有该⽂件的所有者的权限本权限仅在执⾏该⼆进制可执⾏⽂件的过程中有效3.权限设定的⽅法字母表⽰法chmod u+s 可执⾏⽂件 # 给属主添加s权限chmod u-s 可执⾏⽂件 # 删除属主的s权限数字表⽰法(第1位4表⽰SUID,后3位表⽰普通权限 rwx)chmod 4755可执⾏⽂件 # 添加SUID权限到⼆进制可执⾏⽂件chmod 0xxx ... # 可以删除⽂件的SUID(但是⽆法删除⽬录的SUID)4.实例# (root⽤户)查看which cat[root@localhost ~]# ll `which cat`-rwxr-xr-x. 1 root root 54048 Nov 202015 /usr/bin/cat# (普通⽤户)查看/etc/shadow:没有权限(普通⽤户虽然是r-x,但是⽆法直接查看)[darker@localhost local]$ cat /etc/shadowcat: /etc/shadow: Permission denied# (root⽤户)修改 which cat 权限[root@localhost ~]# chmod u+s `which cat` # 或者 chmod 4755 `which cat`#(root⽤户)再次查看which cat[root@localhost ~]# ll `which cat`-rwsr-xr-x. 1 root root 54048 Nov 202015 /usr/bin/cat# (普通⽤户)查看/etc/shadow:有权限了[darker@localhost local]$ cat /etc/shadowroot:$6$Jvw3z/jmU1ASO4P1$vpTJ5OGEtfBOmIpjyK55k87iQPHXCC3.kKOFW9jkyslqC2DMdN7SZdT/zYRfmQ4hBAQXG6CQ4kKdRQ8eFqChf.::0:99999:7::: bin:*:16659:0:99999:7:::daemon:*:16659:0:99999:7:::adm:*:16659:0:99999:7:::lp:*:16659:0:99999:7:::...5.上例的⼯作原理环境前提:Linux中有1个⼆进制程序:cat,属组属组都是rootLinux中有⼀个系统⽂件:/etc/shadow,属组属组是: root:root有⼀个普通⽤户:darker普通⽤户:darker 属于其他⽤户,对⼆进制程序:cat 有执⾏(x)的权限普通⽤户:darker 对系统⽂件:/etc/shadow 没有任何权限默认情况下:普通⽤户:darker 执⾏⼆进制程序:cat系统会创建1个:cat进程该进程的属主属组是该程序的发起者:darker,也就是: darker:darkercat进程访问系统⽂件:/etc/shadowcat进程的属主和属主:darker:darker /etc/shadow⽂件的属主和属主:root:root⼆者的属主属组不匹配,所以被拒绝访问了:Permission denied给⼆进制程序:cat 设置SUID之后:普通⽤户:darker 执⾏⼆进制程序:cat系统会创建1个:cat进程执⾏者对于该⼆进制可执⾏⽂件具有 x 的权限,执⾏者将拥有该⽂件的属组的权限该进程属主是程序的发起者:darker,属组是cat原来的:root,属主属组就是:darker:rootcat进程访问系统⽂件:/etc/shadowcat进程的属主和属主:root:darker /etc/shadow⽂件的属主和属主:root:root⼆者的属主匹配,可以正常访问SGID1.权限设定的⽅法字母表⽰法chmod g+s ⽂件/⽬录 # 给⽂件/⽬录的属组添加s权限chmod g-s ⽂件/⽬录 # 删除⽂件/⽬录的属组的s权限数字表⽰法(第1位2表⽰SGID,后3位表⽰普通权限 rwx)chmod 2755⽂件/⽬录 # 给⽂件/⽬录的属组添加s权限chmod 0755⽂件/⽬录 # 删除⽂件/⽬录的属组的s权限chmod 755⽂件/⽬录 # 同上2.⽂件权限位的表⽰[root@localhost ~]# ll 1.txt-rwxr-sr-x. 1 root root 3243 Nov 2515:411.txt3.SGID相关说明作⽤在⼆进制可执⾏⽂件上时:执⾏有SGID权限的程序时,该⽤户将继承该程序的属组权限作⽤在⽬录上时:该⽬录下所有⽤户新建的⽂件都会⾃动继承该⽬录的属组当⼀个⽤户对某⼀⽬录有写和执⾏权限时,该⽤户就可以在该⽬录下建⽴⽂件如果该⽬录同时⽤SGID修饰,则该⽤户在这个⽬录下建⽴的⽂件都是属于这个⽬录的属组4.实例# (root⽤户)切换到/usr/loca/⽬录并创建⽬录:test02[root@localhost ~]# cd /usr/local[root@localhost local]# mkdir test02# (root⽤户)查看⽬录:test02 的信息[root@localhost local]# ls -dl test02/drwxr-xr-x. 2 root root 6 Nov 2514:19 test02/# !测试(root⽤户)在⽬录:test02 下创建⽂件:1.txt 并查看该⽂件的信息[root@localhost local]# touch /usr/local/test02/1.txt[root@localhost local]# ll /usr/local/test02/1.txt-rw-r--r--. 1 root root 0 Nov 2514:19 /usr/local/test02/1.txt# !测试(普通⽤户)在⽬录:test02 下创建⽂件:2.txt 并查看该⽂件的信息[darker@localhost ~]$ touch /usr/local/test02/2.txt[darker@localhost ~]$ ll /usr/local/test02/2.txt-rw-rw-r--. 1 darker darker 0 Nov 2514:20 /usr/local/test02/2.txt# (root⽤户)修改⽬录:test02 的权限[root@localhost local]# chmod 2773 test02# (root⽤户)再次查看⽬录:test02 的信息[root@localhost local]# ls -dl test02/drwxr-sr-x. 2 root root 6 Nov 2514:20 test02/# !测试(root⽤户)在⽬录:test02 下创建⽂件:3.txt 并查看该⽂件的信息[root@localhost local]# touch /usr/local/test02/3.txt[root@localhost local]# ll /usr/local/test02/3.txt-rw-r--r--. 1 root root 0 Nov 2514:21 /usr/local/test02/3.txt# !测试(普通⽤户)在⽬录:test02 下创建⽂件:4.txt 并查看该⽂件的信息[darker@localhost ~]$ touch /usr/local/test02/4.txt[darker@localhost ~]$ ll /usr/local/test02/4.txt-rw-rw-r--. 1 darker root 0 Nov 2514:21 /usr/local/test02/4.txtSBITSBIT 是the restricted deletion flag or sticky bit的简称,有时也称为Sticky,粘滞位SBIT 与 SUID 和 SGID 的关系并不⼤1.权限设定的⽅法字母表⽰法chmod o+t ⽂件/⽬录 # 给⽂件/⽬录的其他⽤户设置Stickychmod o-t ⽂件/⽬录 # 删除⽂件/⽬录的其他⽤户的Sticky数字表⽰法(第1位1表⽰添加Sticky位,后3位表⽰普通权限 rwx)chmod 1755⽂件/⽬录 # 给⽂件/⽬录的其他⽤户设置Stickychmod 0755⽂件/⽬录 # 删除⽂件/⽬录的其他⽤户的Stickychmod 755⽂件/⽬录 # 同上2.⽂件权限位的表⽰⽂件other位有x权限,并且⽤t代替了,表⽰被设置了Sticky如果other位没有x权限,会显⽰为⼤写T,表⽰有故障(权限⽆效)[root@localhost local]# ls -dl test03drwxr-xr-t. 2 root root 18 Nov 2514:34 dir013.相关说明对于⼀个多⼈可写的⽬录,如果设置了sticky,则每个⽤户仅能删除和改名⾃⼰的⽂件/⽬录只能作⽤在⽬录上,普通⽂件设置⽆意义,⽽且会被Linux内核忽略⽤户在设置 Sticky 权限的⽬录下新建的⽬录不会⾃动继承Sticky权限4.实例# (root⽤户)切换到 /usr/loca/⽬录[root@localhost ~]# cd /usr/local# (root⽤户)递归创建test03⽬录及2个⼦⽬录dir1和dir2[root@localhost local]# mkdir -p test03/dir{1,2}# (root⽤户)创建2个⽤户:user01、user02[root@localhost local]# useradd user01[root@localhost local]# useradd user02# (root⽤户)分别设置dir1和dir2的属主属组为user01和user02[root@localhost local]# chown -R user01:user01 test03/dir1[root@localhost local]# chown -R user02:user02 test03/dir2# (root⽤户)查看⽬录:test03的信息[root@localhost local]# ls -dl test03drwxr-xr-x. 4 root root 28 Nov 2515:37 test03[root@localhost local]# ll test03total 0drwxr-xr-x. 2 user01 user01 6 Nov 2515:37 dir1drwxr-xr-x. 2 user02 user02 6 Nov 2515:37 dir2# (root⽤户)修改⽬录:test03 的权限[root@localhost local]# chmod 1777 test03# (root⽤户)查看⽬录:test03的信息[root@localhost local]# ls -dl test03drwxrwxrwt. 4 root root 28 Nov 2515:37 test03[root@localhost local]# ll test03total 0drwxr-xr-x. 2 user01 user01 6 Nov 2515:37 dir1drwxr-xr-x. 2 user02 user02 6 Nov 2515:37 dir2# 切换到普通⽤户:user01[root@localhost local]# su - user01# !测试(普通⽤户)切换到test03⽬录[user01@localhost ~]$ cd /usr/local/test03# !测试(普通⽤户)查看当前⽬录下的信息[user01@localhost test03]$ lltotal 0drwxr-xr-x. 2 user01 user01 6 Nov 2515:37 dir1drwxr-xr-x. 2 user02 user02 6 Nov 2515:37 dir2# !测试(普通⽤户)⽤户user01将dir1重命名为dir11[user01@localhost test03]$ mv dir1 dir11# !测试(普通⽤户)⽤户user01将dir2重命名为dir22[user01@localhost test03]$ mv dir2 dir22mv: cannot move ‘dir2’ to ‘dir22’: Operation not permitted# !测试(普通⽤户)⽤户user01在dir11⽬录中创建⽂件:1.txt[user01@localhost test03]$ touch dir11/1.txt# !测试(普通⽤户)⽤户user01在dir2⽬录中创建⽂件:2.txt[user01@localhost test03]$ touch dir2/2.txttouch: cannot touch ‘dir2/2.txt’: Permission denied5.注意点SBIT ⽬前只对⽬录有效,⽤来阻⽌⾮⽂件的所有者删除⽂件:⽐较常见的例⼦就是/tmp⽬录权限信息中最后⼀位t表⽰该⽬录被设置了 SBIT 权限SBIT 对⽬录的作⽤是:当⽤户在该⽬录下创建新⽂件或⽬录时,仅有⾃⼰和 root 才有权⼒删除,主要作⽤于⼀个共享的⽂件夹(⽬录)三:chattr引⾔你是否遇到过⽂件或⽬录具有可读写权限,但是使⽤root⽤户删除、修改时提⽰"Operation not permitted"的情况?可能是由chattr设置了⽂件的隐藏保护权限导致通过chattr命令修改⽂件或⽬录属性能够提⾼系统的安全性与chmod命令相⽐,chmod只是改变⽂件的读写、执⾏权限,更底层的属性控制是由chattr命令改变的。

计算机网络基础任务8 Linux用户与权限管理

计算机网络基础任务8 Linux用户与权限管理
〉 3. 查看/etc/shadow中stu1用户信息,锁定用户stu1用户,比较锁定前后/etc/shadow中文件中stu1用户信息的变化, 在字符控制台分别使用stu1和stu2登录,比较测试结果,解锁stu1用户。
〉 4. 创建目录/right,查看该目录文件详细信息,切换到用户stu1,测试stu1用户是否能够在该目录下创建文件。再切换 回root用户,修改/ritght目录文件权限位,使得stu1用户能够在下面创建文件一个名为stu1_file的文件,内容为“echo this is stu1_file”;
• VCpEWcMsd0H0.:16701:0:99999:7:::
〉 从左至右各部分含义如下:
• root:用户名 • $6$ShyBnHXD6i8sTslU$ynTcqRosu47jpwqduyQptxLg7qakMeV8hu8U3IQmI/PR81nc/9IylcllRM7aE7nwil1X.jm25V
(3)/etc/group
〉 /etc/group/文件存储与用户组相关的信息,root用户组的相关信息如下所 示,其中冒号作为各部分的分隔符:
• root:x:0:user1
〉 从左至右各部分含义如下:
• root:用户组名 • x:用户组密码,通常不使用 • 0:组ID(GID),root用户组的GID为0 • user1:加入该组的普通用户,说明user1已加入到root用户组,拥有root组权限。
〉 su用于切换用户,其基本用法如下:
• [root@server ~]# su user1 • [root@server ~]# su
root • [root@server ~]# su - user1
#切换用户为user1 #切换用户为root,su不加用户名默认为切换到

Shell脚本实现Linux系统用户权限管理

Shell脚本实现Linux系统用户权限管理

Shell脚本实现Linux系统用户权限管理在Linux操作系统中,用户权限管理是一个重要的方面,它可以确保系统的安全性并控制不同用户对系统资源的访问权限。

为了简化和自动化用户权限管理的过程,可以使用Shell脚本来实现。

本文将介绍如何使用Shell脚本来实现Linux系统用户权限管理。

一、用户与权限在Linux系统中,每个用户都有一个唯一的用户名,以及与其关联的用户组。

每个文件和目录也有所属用户和用户组,同时针对每个文件和目录,都可以设置特定的权限,包括读取、写入和执行权限。

二、Shell脚本基础Shell脚本是一种用来自动化执行一系列命令的脚本语言。

在Linux 系统中,常用的Shell脚本语言有Bash、Sh、Csh等。

下面是一个简单的Shell脚本示例,用来创建用户并设置权限:```bash#!/bin/bash# 创建新用户echo "请输入新用户的用户名:"read usernameuseradd $username# 设置用户密码echo "请输入新用户的密码:"read -s passwordecho $password | passwd --stdin $username# 设置用户组echo "请输入新用户所属的用户组:"read groupnamegroupadd $groupnameusermod -g $groupname $username# 设置用户权限echo "请输入新用户的访问权限(r/w/x):"read permissionchmod $permission /home/$username```以上示例中,使用了一些常见的Shell脚本语法,如读取输入、调用命令和变量赋值等。

你可以根据实际需求进行修改和扩展。

三、用户权限管理脚本下面是一个更完整的Shell脚本示例,用于实现用户权限管理:```bash#!/bin/bash# 显示已有用户和用户组echo "已有用户列表:"awk -F: '{print $1}' /etc/passwdecho "已有用户组列表:"awk -F: '{print $1}' /etc/group# 创建新用户echo "请输入新用户的用户名:"read usernameuseradd $username# 设置用户密码echo "请输入新用户的密码:"read -s passwordecho $password | passwd --stdin $username # 设置用户组echo "请输入新用户所属的用户组:" read groupnamegroupadd $groupnameusermod -g $groupname $username# 设置用户权限echo "请输入新用户的访问权限(r/w/x):"read permissionchmod $permission /home/$username# 显示用户信息echo "新用户信息:"grep -E "^$username:" /etc/passwd```以上示例中,首先通过awk命令来显示已有的用户和用户组列表。

实验4 账户和权限管理

实验4 账户和权限管理

实验名称:账户和权限管理
实验目的、要求:
1.掌握Linux中用户的添加、删除和属性设置方法
2.熟悉Linux中组群的添加、删除和属性设置方法
3.熟悉Linux中用户和组群的相关配置文件
4.掌握Linux中文件和目录权限的设置
实验原理:
Linux操作系统原理
主要设备、器材:
微机,Linux操作系统
实验步骤及原始数据记录:
1 使用命令创建用户账户zhangsan,并设置其口令为111111,设置用户名全称为张三,办公室电话为57111111。

2 使用命令修改用户账户zhangsan的UID为700,其Shell类型为/bin/ksh。

3 使用命令设置账户zhangsan两次改变密码之间相距的最小天数为5天,两次改变密码之间相距的最大天数为20天。

4 使用命令删除用户账户zhangsan,并且在删除该用户的同时一起删除其主目录。

5 使用命令创建组群group1,并且在创建时设置其GID为800。

6 使用命令修改组群group1的新组群名称为shanghai。

7 建立文件file1,查看file1的权限,用文字设定法添加文件所有者的执行权限,然后删除文件的执行权限。

8 建立文件file2,查看file2的权限,用数字设定法添加文件所有者的执行权限,然后删除文件的执行权限。

9 查看passwd命令对应的执行文件的权限,说明该文件权限的特殊作用。

第七讲 Linux用户及文件权限管理

第七讲 Linux用户及文件权限管理
读权限(r)表示可以列出存储在该目录下的文件, 即读目录内容 写权限(w):
– – – – 建立新的文件与目录 删除已经存在的文件与目录(不管该文件是属于谁的) 重命名已经存在的文件或目录 移动该目录内的文件、目录位置
执行权限(x)表示允许你在目录中查找,并能用 cd命令将工作目录切换到该目录
UID与GID
用户与用户组的标识号
用户与群组
一个用户可以从属于多个群组 一个群组可以拥有多个用户 root用户是超级管理员
用户与用户组
Linux用户身份与用户组记录的文件 /ect/passwd:所有系统帐号、一般用户以及root的 相关信息 /ect/shadow:密码记录 /ect/group:用户组名
语法: chmod [-R] xyz 文件 其中xyz分别为三组rwx属性组合或其数值和
改变文件权限-数字法
用于改变或设置文件或目录的访问权限。 格式:chmod[选项]num 文件或目录名 说明:只有文件属主或超级用户root才有权用chmod改变 文件或目录的访问权限 选项:
用户和权限(2)
用户组
Linux下,每个文件又属于一个用户组;当创建 一个文件或目录时,系统会赋予它一个用户组 关系,chgrp命令可以改变文件的组关系
访问权限
Linux系统中的每个文件和目录都有访问权限, 用它来确定谁可以通过何种方式对文件和目录 进行访问和操作
访问权限
Linux系统中规定了3种不同类型的用户:
文件扩展名
Linux中的后缀没有意义
.sh、.Z、.tar.gz、.zip、.tgz、.html、.php、.pl
文件名规则
文件名是文件的唯一标识符。Linux中文件名遵循以下约定:

第三章Linux用户和权限管理

第三章Linux用户和权限管理

chmod是Linux下设置linux文件权限的命令,后面的数字 表示不同用户或用户组的linxu权限,一般是三个数字: 第一个数字表示文件所有者的文件权限 第二个数字表示与文件所有者同属一个用户组的其他用户 的文件权限 第三个数字表示其它用户组的文件权限。
linux文件权限分为三种:读(r=4),写(w=2),执行 (x=1) 。 综合起来还有可读可执行(rx=5=4+1)、可 读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。 rwx=7(即二进制111-----十进制7) rw-=6(二进制110-----十进制6) r-x=5(二进制101--------十进制5) -wx=3(二进制011-------十进制3) 774的权限为111 111 101 即rwxrwxr-- 表示此文件夹的所 有者和所有者所属的组有可读可写可执行的权限,而其他 用户只有可读的权限
第三章 Linux用户和权限管理
软件工程学院
大纲
•用户和群组 •权限 •Samba权限配置
【问题的提出】
Geecy软件开发公司即将开始在Linux 系统上进行两个项目的开发。开发人 员David和Peter组成一个小组,负责A 项目的开发;开发人员Jack和Mike组 成另一个小组,负责B项目的开发。
引言
如何管理用户? 如何管理用户分组?
用户及权限
文件“/etc/passwd”以行为单位保存用户的 信息。每行以冒号分隔为7个数据域。每个 数据域的含义是:
a) 用户名。用户登录系统需要使用。 b) 密 码 。 但 由 于 在 安 装 系 统 时 候 使 用 了 影 子 (Shadow)密码的策略(请参考“1.2.4 进入安装 过程”),因此此域都只显示一个特定的字符 “ x” 。 真 正 的 密 码 被 加 密 后 存 放 在 影 子 文 件 “/etc/shadow”。

linux用户管理

linux用户管理

Linux用户管理一.权限控制机制Linux系统是个多用户系统,能做到不同的用户能同时访问不同的文件,因此一定要有文件权限控制机制。

Linux系统的权限控制机制和 Windows的权限控制机制有着很大的差别。

Linux的文件或目录被一个用户拥有时,这个用户称为文件的拥有者(或文件主),同时文件还被指定的用户组所拥有,这个用户组称为文件所属组。

一个用户可以是不同组的成员,这可以由管理员控制。

文件的权限由权限标志来决定,权限标志决定了文件的拥有者、文件的所属组、其他用户对文件访问的权限。

用户和权限1.基本概念(1)文件主 Linux为每个文件都分配了一个所有者,称为文件主,并赋予文件主唯一的注册名。

对文件的控制取决于文件主或超级用户(root)。

文件的所属关系是可以改变的,你可以将文件或目录的所有权转让给其他用户,但只有文件主或root才有权改变文件的所属关系。

可以用chown 命令更改某个文件或目录的所有权。

例如,超级用户把自己的一个文件复制给用户user1,为了让用户user1能够访问这个文件,超级用户(root)应该把这个文件的属主设为user1,否则,用户user1无法访问这个文件。

如果改变了文件或目录的所有权,原文件主将不再拥有该文件或目录的控制权(2)用户组 Linux下,每个文件又属于一个用户组。

当创建一个文件或目录时,系统会赋予它一个用户组关系,chgrp命令可以改变文件的组关系。

(3)访问权限 Linux系统中的每个文件和目录都有访问权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。

2.访问权限Linux系统中规定了3种不同类型的用户:文件主(user)、同组用户(group)、可以访问系统的其他用户(others)。

访问权限规定3种访问文件或目录的方式:读(r)、写(w)、可执行或查找(x)(1)文件访问权限读权限(r)表示只允许指定用户读取相应文件的内容,禁止对它做任何的更改操作。

在Linux终端中管理用户权限chmod和chown命令

在Linux终端中管理用户权限chmod和chown命令

在Linux终端中管理用户权限chmod和chown命令权限的管理是Linux系统中非常重要的一项功能,通过合适的权限设置,可以实现对系统文件和目录的访问控制,保证系统的安全性和稳定性。

在Linux终端中,我们可以使用chmod和chown命令来管理用户权限。

本文将详细介绍这两个命令的用法及相关注意事项。

一、chmod命令chmod命令用于修改文件或目录的权限,它可以通过三种方式来设置权限:符号方式、绝对数字方式和八进制方式。

下面将逐一介绍这三种方式的用法。

1. 符号方式符号方式是最常用的一种设置权限的方式,它使用一些符号来表示不同的权限。

符号方式的语法为:chmod [ugoa] [+|-|=] [rwx] 文件或目录名其中,[ugoa]表示要设置权限的对象,u表示所有者,g表示所属组,o表示其他用户,a表示所有用户。

[+|-|=]表示要对权限进行的操作,+表示增加权限,-表示删除权限,=表示设置权限。

[rwx]表示要设置的权限,r表示读权限,w表示写权限,x表示执行权限。

例如,以下命令将文件test.txt的所有者和所属组的读写权限设置为可读可写,其他用户的权限不做修改:chmod ugo=rw test.txt2. 绝对数字方式绝对数字方式是使用一串数字来表示权限的方式,每个数字代表一种权限。

绝对数字方式的语法为:chmod [0-7][0-7][0-7] 文件或目录名其中,每个[0-7]都表示一个权限,其中7表示拥有所有权限(读、写、执行),6表示拥有读和写权限,5表示拥有读和执行权限,4表示拥有只读权限,3表示拥有写和执行权限,2表示拥有只写权限,1表示拥有只执行权限,0表示没有任何权限。

例如,以下命令将文件test.txt的所有者权限设置为只读,所属组权限设置为读和写,其他用户权限设置为没有任何权限:chmod 640 test.txt3. 八进制方式八进制方式是绝对数字方式的简化形式,它将每个权限用一个数字来表示,然后将这些数字拼接在一起得到一个八进制数。

Linux终端命令中的用户权限和安全管理

Linux终端命令中的用户权限和安全管理

Linux终端命令中的用户权限和安全管理Linux操作系统具有强大的安全性和灵活性,其中一个关键的安全管理方面就是用户权限的控制。

在Linux终端命令中,用户权限和相关管理操作扮演着重要的角色。

本文将重点探讨Linux终端命令中的用户权限和安全管理。

一、用户权限的概念和分类在Linux系统中,每个用户都被授予一定的权限,用于限制其对系统资源和文件的访问。

Linux系统基于以下三个基本的用户权限分类:1. 用户(Owner)权限:指文件或目录的拥有者所拥有的权限。

所有者可以对文件或目录进行读、写和执行操作。

2. 组(Group)权限:指文件或目录所属的组别的成员所拥有的权限。

管理员可以将用户分配到不同的组,并对组的权限进行管理。

3. 其他人(Others)权限:指没有权限分配到文件或目录的用户的权限。

其他人的权限通常被设置为最低权限,限制其对系统资源和文件的访问。

二、Linux终端命令中的用户权限管理在Linux系统中,可以使用以下常用终端命令来管理用户权限:1. chmod:用于修改文件或目录的权限。

通过为文件或目录设置不同的权限组合,可以精确控制用户的文件访问权限。

例如,使用"chmod u+x file.txt"命令可以将文件file.txt的所有者的执行权限设置为可执行。

2. chown:用于更改文件或目录的所有者。

只有超级用户(root)或原始所有者才能更改文件或目录的所有者。

例如,使用"chown user1 file.txt"命令可以将文件file.txt的所有者更改为user1。

3. chgrp:用于更改文件或目录的组别。

与chown类似,只有超级用户或原始所有者才能更改文件或目录的组别。

例如,使用"chgrp group1 file.txt"命令可以将文件file.txt的组别更改为group1。

4. su:用于切换用户身份。

linux权限管理总结

linux权限管理总结

linux权限管理总结Linux权限管理是Linux系统中非常重要的一部分,它可以有效地控制用户对文件和目录的访问权限,保护系统的安全性和稳定性。

本文将从权限的概念、权限的分类、权限的分配与修改以及权限的实际应用等方面进行总结和讨论。

一、权限的概念权限是指对文件和目录进行读取、写入和执行等操作的权利。

在Linux系统中,每个文件和目录都有三种基本的权限,分别是读权限(r)、写权限(w)和执行权限(x)。

读权限允许用户查看文件内容,写权限允许用户修改文件内容,执行权限允许用户运行可执行文件。

二、权限的分类Linux系统中的权限可以分为三类,分别是用户权限、群组权限和其他用户权限。

用户权限是指文件或目录的所有者拥有的权限,群组权限是指文件或目录所属群组的成员拥有的权限,其他用户权限是指除了所有者和群组成员以外的其他用户拥有的权限。

三、权限的分配与修改Linux系统中,可以使用chmod命令来分配和修改权限。

chmod 命令可以通过数字或符号两种方式来表示权限。

数字表示法是使用数字0-7来表示不同的权限组合,其中4表示读权限,2表示写权限,1表示执行权限,0表示无任何权限。

符号表示法是使用u、g 和o来表示用户、群组和其他用户,+、-和=来表示添加、删除和设置权限,r、w和x来表示读、写和执行权限。

四、权限的实际应用Linux系统中的权限管理在实际应用中非常重要。

通过合理地设置权限,可以确保系统中的敏感文件和目录只能被授权的用户访问和修改,从而保护系统的安全性和稳定性。

同时,权限管理也可以帮助管理员管理用户和群组的访问权限,提高系统的管理效率。

在实际应用中,可以根据需要对不同的文件和目录设置不同的权限。

对于一些重要的系统文件和目录,可以设置为只读权限,以防止误操作或恶意修改。

对于一些需要多人协作的目录,可以设置群组权限,以便群组成员可以共享和修改文件。

对于一些可执行文件,可以设置执行权限,以便用户可以运行这些程序。

Linux系统的权限管理和访问控制策略

Linux系统的权限管理和访问控制策略

Linux系统的权限管理和访问控制策略Linux作为一种开源操作系统,具备了强大的权限管理和访问控制策略,以保护系统的安全性和数据的保密性。

本文将介绍Linux系统中常用的权限管理和访问控制策略,包括文件权限、用户权限和访问控制列表。

1. 文件权限在Linux系统中,每个文件和目录都有一组权限,用于控制对其的访问。

权限分为读取(r)、写入(w)和执行(x)三种模式。

这三种模式分别代表了不同的访问权限:读取允许查看文件内容,写入允许修改文件内容,执行允许运行可执行文件或访问目录。

权限设置使用八进制表示法,如rwxr-xr-x表示的权限为755。

以文件为例,第一位代表文件的类型(-表示常规文件),接下来的三位是所有者的权限,再接下来的三位是组用户的权限,最后的三位是其他用户的权限。

2. 用户权限Linux系统中,每个用户都有一个用户ID和一个组ID,并且属于一个或多个组。

用户权限以文件所有者、组用户和其他用户为基础,分别定义了不同的访问权限。

文件的所有者可以使用chown命令来改变文件所有者,使用chmod 命令可以修改文件的权限。

例如,"chown user1 file.txt"可以将文件file.txt的所有者更改为user1。

3. 访问控制列表访问控制列表(Access Control List,ACL)是一种在文件和目录上附加额外权限的机制,用于对具体用户或者用户组设置特定的权限。

ACL允许用户为文件或目录授予特定用户或组的特定访问权限。

可以使用setfacl命令来添加和修改ACL。

例如,“setfacl -m u:user1:rw file.txt”可以为用户user1添加读写权限。

通过ACL,用户可以更加灵活和细粒度地控制对文件和目录的访问权限,实现更加精确的权限管理。

4. SELinuxSELinux(Security-Enhanced Linux)是一种安全模块,提供了更为严格的访问控制策略。

LinuxCentos7账号与权限管理(超详细实例操作)精选全文完整版

LinuxCentos7账号与权限管理(超详细实例操作)精选全文完整版

LinuxCentos7账号与权限管理(超详细实例操作)Linux/Centos7账号与权限管理1. 管理⽤户账号、组账号2. 查询账号信息3. 设置⽂件和⽬录的权限4. 设置⽂件和⽬录的归属⼀、前⾔概述作为多⽤户、多任务(Multi-Users,Multi-tasks)的服务器操作系统,Linux提供了严格的权限管理机制,主要从⽤户⾝份、⽂件权限两个⽅⾯对资源进⾏限制。

Linux基于⽤户⾝份对资源访问进⾏控制。

· ⽤户账号类别:1. 超级⽤户——root,权限最⾼2. 普通⽤户——⾃定义⽤户 匿名⽤户(nobody)类似于Windows中的Guest3. 程序⽤户——控制程序和服务的,⽆法登陆· 组账号——⽤户的集合(其实可以认为是⽤户权限的集合)4. 基本组(私有组)——伴随着⽤户创建⽽创建 与⽤户同名(也可以⾃⼰设置) 但创建⼀个⽤户的时候必有其组5. 附加组(公有组)——直接创建空组,可以添加已有的⽤户,给组设置权限,该组中所有⽤户都具备此权限· UID和GID6. UID(User IDentity) ——⽤户标识号 (默认情况下0表⽰root 1~999 表⽰(系统)程序⽤户 1000~60000 表⽰(登录)普通⽤户)7. GID(Group IDentity)——组标识号⼆、⽤户账号⽂件/etc/passwd——保存⽤户名称、宿主⽬录、登录shell等基本信息[root@lokott ~]# head -2 /etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologinroot:x:0:0:root:/root:/bin/bash——以冒号分隔 下⾯进⾏逐⼀解释1. root——⽤户账号名称2. x——使⽤加密算法加密的密码,这⾥是不会显⽰的3. 0——⽤户UID号4. 0——所属基本组账号的UID5. root——⽤户全名,可以填写⽤户详细信息6. /root——宿主⽬录7. /bin/bash——指定⽤户的登录Shell/etc/shadow——保存⽤户的密码、账号有效等信息[root@lokott ~]# head -2 /etc/shadow //查看头两⾏信息root:$6$P0mVYDgJo8HZnZWl$oYlITJyv.hP.6wS/OCuAdc61QoWTkYJMcONdy9aAjRW4Cpmc5Mor40xn/RiZ9Hi1PzhVoX5Chur4VfFB8JmKO1::0:99999:7:: :bin:*:17110:0:99999:7:::[root@lokott ~]#root:66P0mVYDgJo8HZnZWl$oYlITJyv.hP.6wS/OCuAdc61QoWTkYJMcONdy9aAjRW4Cpmc5Mor40xn/RiZ9Hi1PzhVoX5C hur4VfFB8JmKO1::0:99999:7:::——以冒号分隔,下⾯逐⼀解释1. root——⽤户账号名称2. 粗体部分——表⽰加密算法加密的密码,登录输⼊该密码是⽆效的3. ::——之间的内容是上次修改时间4. 0——密码的最短有效天数(0表⽰随时可以更改)5. 99999——密码的最长有效天数6. 7——提前7天提醒⽤户⼝令将过期:::——表⽰的是密码和账号过期之后的操作处理(基本可以忽略)⼆、管理⽤户账号1.添加⽤户账号——useradd命令选项1. -u ——指定⽤户的UID号,且该UID号没有被其他⽤户使⽤2. -d ——指定⽤户的宿主⽬录位置(与-M⼀起使⽤时不⽣效!)3. -e——账号失效时间(过期时间)4. -g——基本组5. -G——附加组6. -M——不创家⽬录7. -s ——指定⽤户的登录shell实例:useradd -d /opt/mike (-g mike) -G caiwu -s /sbin/nologin mike[root@lokott ~]# useradd -d /opt/mike -G caiwu -s /sbin/nolgin mike //注意需要先有caiwu组——groupadd caiwu[root@lokott ~]# tail -2 /etc/passwd //查看passwd⽂件最后两⾏信息lokott:x:1000:1000:lokott:/home/lokott:/bin/bashmike:x:1001:1001::/opt/mike:/sbin/nolgin[root@lokott ~]# tail -2 /etc/groupcaiwu:x:1002:mikemike:x:1001:[root@lokott ~]# tail -2 /etc/shadowlokott:$6$aq3AU9oDZf/ERE2D$Ol.zBTLNqbsPDdsJYE0yU3Wa7EUU1SonR3rUQ616PsgA2u.DtQ99ecTUbdw2y2RhmlaL75WlcqMsfEUNretgb0:18192:0:99 999:7:::mike:!!:18200:0:99999:7:::[root@lokott ~]# id mike //查看mike的id信息uid=1001(mike)gid=1001(mike)组=1001(mike),1002(caiwu)[root@lokott ~]# ls /home/ //因为-d 指定了⽤户的宿主⽬录,所以家⽬录创建在了指定的/opt/mike⽬录中demo lokott[root@lokott ~]# ls /opt/demo01.txt mike rh test[root@lokott ~]#2.设置/更改⽤户⼝令(密码)passwdpasswd 选项 … ⽤户名1. -d 清除密码2. -l 锁定3. -S 查看是否锁还是未锁 (⼤写)4. -u 解锁[root@lokott ~]# useradd -d /opt/lisi -s /sbin/nologin lisi[root@lokott ~]# tail -2 /etc/passwdlokott:x:1000:1000:lokott:/home/lokott:/bin/bashlisi:x:1001:1001::/opt/lisi:/sbin/nologin //这⾥/sbin/nologin是表⽰⽤户⽆法登录[root@lokott ~]# passwd lisi更改⽤户 lisi 的密码。

Linux入门系列教程(三)之用户及文件权限管理

Linux入门系列教程(三)之用户及文件权限管理

用户及文件权限管理一、linux用户管理通过第一节课程的学习,你应该已经知道,linux是一个可以实现多用户登陆的操作系统,比如李雷和韩梅梅都可以同时登陆同一台主机,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件。

但实际上他们的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,那么是不是说李雷就可以轻易查看到韩梅梅的自拍照,韩梅梅也可以看到李雷写给她表白情书呢。

当然不是这样,linux才不会这么不安全,这正是它的用户管理和权限机制要完成的工作。

下面我们就来学习一下linux下的账户管理的基础知识哲学问题作为一个linux用户,一个人类,我们的终极目标便是思考和解决那三大哲学问题:我是谁?我从哪里来?我要到哪里去?。

其实吧,这几个问题我早就明白了,就在我学了linux之后,你如果还没想明白,就继续往下学吧。

关于我是谁?看好了哈,请打开终端,输入命令:$ who am i如果你今天心情不好,因为妈妈把鸡腿给了姐姐吃,然后你就有点郁闷,想知道妈妈到底喜欢谁,那么你也可以问linux$ who mom likes输入的第一列表示打开当前伪终端的用户的用户名(要查看当前登录用户的用户名,去掉空格直接使用whoami即可),第二列的pts/0中pts表示伪终端,所谓伪是相对于/dev/tty设备而言的,还记得上一节讲终端时的那七个使用[Ctrl]+[Alt]+[F1]~[F7]进行切换的/dev/tty设备么,这是“真终端”,伪终端就是当你在图形用户界面使用/dev/tty7时每打开一个终端就会产生一个伪终端,pts/0后面那个数字就表示打开的伪终端序号,你可以尝试再打开一个终端,然后在里面输入who am i,看第二列是不是就变成pts/1了,第三列则表示当前伪终端的启动时间。

who命令其它常用参数参数说明-a打印能打印的全部-d打印死掉的进程-m同am i,mom likes-q打印当前登录用户数及用户名-u打印当前登录用户登录信息-r打印运行等级关于我从哪里来?简单来说就是“上帝”一个人太寂寞于是它创造了人类。

linux给用户及文件权限管理的命令

linux给用户及文件权限管理的命令

linux给用户及文件权限管理的命令Linux是一种开源操作系统,以其稳定性、安全性和灵活性而闻名。

在Linux 中,用户及文件权限管理是非常重要的一部分。

正确地管理用户和文件权限可以保护系统的完整性和安全性。

本文将介绍几个关键的Linux命令,用于用户及文件权限管理,以帮助读者理解和有效地管理Linux系统。

1. 用户管理命令Linux系统允许管理员创建、删除和管理用户及其权限。

以下是一些常用的用户管理命令。

1.1 useradd命令useradd命令用于创建新用户。

管理员可以使用以下命令创建用户及其所需的参数:useradd [选项] 用户名其中,选项可以是:- -c "备注":为用户创建备注。

- -d 目录:指定用户的家目录。

- -s shell:指定用户的默认shell。

1.2 passwd命令passwd命令用于为用户设置密码。

管理员可以使用以下命令为用户设置密码:passwd 用户名系统将提示管理员输入密码两次确认。

1.3 usermod命令usermod命令用于修改用户的属性。

以下是一些常用的usermod命令及其参数:- -c "备注":修改用户的备注。

- -d 目录:修改用户的家目录。

- -s shell:修改用户的默认shell。

1.4 userdel命令userdel命令用于删除用户。

管理员可以使用以下命令删除用户:userdel 用户名需要注意的是,删除用户不会删除其家目录和邮件文件。

如果要同时删除家目录,可以使用`userdel -r 用户名`命令。

2. 用户组管理命令除了用户管理命令外,管理员还可以使用Linux提供的命令来管理用户组。

2.1 groupadd命令groupadd命令用于创建用户组。

管理员可以使用以下命令创建用户组:groupadd 用户组名2.2 groupmod命令groupmod命令用于修改用户组的属性。

以下是一些常用的groupmod 命令及其参数:- -n 新组名:修改用户组的名称。

linux文件权限及用户管理

linux文件权限及用户管理

文件权限及用户管理文件权限和用户对Linux系统的安全是非常重要的。

真正控制Linux系统的安全,首先就要理解Linux的权限控制和用户管理。

本章目标:学习完本章你将能够¾理解Linux文件的权限¾设置Linux文件的权限¾理解Linux用户的工作原理¾管理Linux系统用户1.文件的属性当使用“ls -l”命令来查看一个文件或目录时,它将列出文件的常规属性,例如:[root@vfast ~]# ls -lh /root/install.log-rw-r--r-- 1 root root 50K Oct 19 23:38 /root/install.log文件类型:文件标志的第一个字符是“-”,表示这是一个普通文文件权限:文件权限是rw-r--r-- ,表示文件属主可读、可写,文件所归属的用户组可读,其它用户可读;硬链接个数: /root/install.log这个文件没有硬链接;因为数值是1,就是他本身;文件属主:也就是这个文件归哪于哪个用户,它归于root,也就是第一个root;文件属组:也就是说,对于这个文件,它归属于哪个用户组,在这里是root用户组;文件大小:文件大小是50K;访问可修改时间:Oct 19 23:38,这里的时间是最后访问的时间,最后访问和文件被修改或创建的时间,有时并不是一致的;文件名或目录名:就是文件的名称了。

2.文件的权限Linux文件或目录的权限是和用户和用户组联系在一起的,如果有不理解的地方,可以学习完用户管理再回来理解。

Linux文件的权限标志位共九个,分为3组,分别代表文件拥有者的权限,文件所属用户组的权限和其它用户的权限,如图5-1所示图5-1Linux文件的权限有种:可读(r):意味着我们可以查看阅读;可写(w):意味着,可以修改或删除(不过删除或修改的权限受父目录上的权限控制);可执行(x):意味着如果是文件就可以运行,比如二进制文件(比如命令),或脚本(要用脚本语言解释器来解释运行)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
passwd 选项 用户名 可使用的选项:
代码: -l 锁定口令,即禁用账号。 -u 口令解锁。 -d 使账号无口令。 -f 强迫用户下次登录时修改口令。 如果默认用户名,则修改当前用户的口令。
例如,假设当前用户是 olcs,则下面的命令修改该用户自己的口令:
代码: $ passwd Old password:****** New password:******* Re-enter new password:*******
4、用户口令的管理
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统 锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。 指定和修改用户口令的 Shell 命令是 passwd。超级用户可以为自己和其他用户指定口令,普 通用户只能用它修改自己的口令。命令的格式为: 代码:
-:普通文件 b:块文件设备,是特殊的文件类型 d:目录文件 ,事实上在 ext2fs 中,目录是一个特殊的文件 c:字符文件设备 ,是特殊的文件类型 l:符号链接文件,实际上它指向另一个文件 s、p:管道文件,这些文件关系到系统的数据结构和管道,通常很少见到 第一列的其余 9 个字母可分为三组,3 个字母一组,这 3 组分别代表:文件属主的权限、 文件所属组的权限和其他用户的权限。每组中的 3 个栏位分别表示读、 写、执行权限。 第 2~10 个字符当中的每 3 个为一组,左边三个字符表示所有者权限,中间 3 个字符表
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登 录 Shell 等。 修改已有用户的信息使用 usermod 命令,其格式如下:
代码: usermod 选项 用户名
常用的选项包括-c, -d, -m, -g, -G, -s, -u 以及-o 等,这些选项的意义与 useradd 命令中的选项 一样,可以为用户指定新的资源值。另外,有些系统可以使用如下选项:
例 1:
代码: # groupmod -g 102 group1
此命令将组 group1 的组标识号修改为 102。
例 2:
代码: # groupmod –g 10000 -n group2 group1
此命令将组 group1 的标识号改为 10000,组名修改为 group2。
4、用户在用户组间切换
代码: userdel 选项 用户名
常用的选项是-r,它的作用是把用户的主目录一起删除。 例如:
代码: # userdel -r olcs
此命令删除用户 olcs 在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group 等)的记录, 同时删除用户的主目录。
3、修改帐号
1、增加一个新的用户组
增加一个新的用户组使用 groupadd 命令,其格式如下:
代码: groupadd 选项 用户组
可以使用的选项有: 代码: -g GID 指定新用户组的组标识号(GID)。 -o 一般与-g 选项同时使用,表示新用户组的 GID 可以与系统已有用户组的 GID 相同。
例 1:
为了系统安全起见,用户应该选择比较复杂的口令,例如最好使用 8 位长的口令,口令中包 含有大写、小写字母和数字,并且应该与姓名、生日等不相同。
为用户指定空口令时,执行下列形式的命令:
代码: # passwd -d olcs
此命令将用户 sam 的口令删除,这样用户 sam 下一次登录时,系统就不再询问口令。
5、口令时效
口令时效是系统管理员用来防止机构内不良口令的一种技术。在 Linux 系统上,口令时 效是通过 chage 命令来管理的,格式为:chage [] 下面列出了 chage 命令的选项说明: -m days: 指定用户必须改变口令所间隔的最少天数。如果值为 0,口令就不会过期。 -M days: 指定口令有效的最多天数。当该选项指定的天数加上-d 选项指定的天数小于当前
用户名 指定新账号的登录名。
例 1: 代码:
# useradd –d /home/olcs -m olcs 此命令创建了一个用户 sam, 其中-d 和-m 选项用来为登录名 sam 产生一个主目录/home/olcs(/home 为默认的用户主目录 所在的父目录)。
例 2: 代码: # useradd -s /bin/bash -g olcs –G olcs,root 此命令新建了一个用户 gem,该用户的登录 Shell 是/bin/bash,它属于 olcs 用户组,同时又 属于 root 用户组,其中 olcs 用户组是其主组。
一、Linux 系统用户账号的管理
用户账号的管理工作主要涉及到用户账号的添加、修改和删除。 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和 登录 Shell 等资源。刚添加的账号是被锁定的,无法使用。
1、添加新的用户账号
添加新用户帐号使用 useradd 命令,其语法如下:
年 1 月 1 日后经过的天数。 -W days: 指定口令过期前要警告用户的天数。 -l: 列出指定用户当前的口令时效信息,以确定帐号何时过期。 例如下面的命令要求用户 user1 两天内不能更改口令,并且口令最长的存活期为 30 天,并 且口令过期前 5 天通知用户
chage -m 2 -M 30 -W 5 user1 可以使用如下命令查看用户 user1 当前的口令时效信息:chage -l user1
如果是超级用户,可以用下列形式指定任何用户的口令:
代码: # passwd olcs New password:******* Re-enter new password:*******
普通用户修改自己的口令时,passwd 命令会先询问原口令,验证后再要求用户输入两遍新 口令,如果两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时, 就不需要知道原口令。
的日期时,用户在使用该帐号前就必须改变口令。 -d days: 指定从 1970 年 1 月 1 日起,口令被改变的天数。 -I days: 指定口令过期后,帐号被锁前不活跃的天数。如果值为 0,帐号在口令过期后就不
会被锁。 -E date: 指定帐号被锁的日期。日期格式 YYYY-MM-DD。若不用日期,也可以使用自 1970
Linux 用户管理及权限设置
Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须 首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以 帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可 以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和 各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。 实现用户账号的管理,要完成的工作主要有如下几个方面: · 用户账号的添加、删除与修改。 · 用户口令的管理。 · 用户组的管理。 注:此说明适用于 Debian、Redhat、suse、Ubuntu、Fedora 等众多 linux 系统,并对多少位 没有区别。
对目录的含义
r
4
读 可以读文件的内容 可以列出目录中的文件列表
w
2
写 可以修改该文件文件 可以使用 cd 命令进入该目录
-
0

2、查看文件和目录的权限
可以使用带 l 参数的 ls 命令查看文件或目录的权限
每一行显示一个文件或目录的信息,这些信息包括文件的类型、文件的权限、文件的属主和 文件的所属组,还有文件的大小以及创建时间和文件名。输出列表中每 一行第一列的第一 个字母指示了该文件的类型。各种文件类型及代表字符如下:
代码: groupdel 用户组
例如:
代码: #groupdel group1
此命令从系统中删除组 group1。
3、修改用户组的属性
修改用户组的属性使用 groupmod 命令。其语法如下:
代码: groupmod 选项 用户组
常用的选项有: 代码: -g GID 为用户组指定新的组标识号。 -o 与-g 选项同时使用,用户组的新 GID 可以与系统已有用户组的 GID 相同。 -n 新用户组 将用户组的名字改为新名字
如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用 户组的权限。用户可以在登录后,使用命令 newgrp 切换到其他用户组,这个命令的参数就 是目的用户组。例如:
代码: $ newgrp root
这条命令将当前用户切换到 root 用户组,前提条件是 root 用户组确实是该用户的主组或附 加组。类似于用户账号的管理,用户组的管理也可以通过集成的系统管理工具来完成。
提示:1)可以使用 chage 进入交互模式修改用户的口令时效。 2)修改口令实质上就是修改影子口令文件/etc/shadow 中与口令时效相关的字段值。
二、Linux 系统用户组的管理
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同,如 Linux 下的用户属于与它同名的用户组,这个用户组在创 建用户时同时创建。 用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 /etc/group 文件的更新。
代码: useradd 选项 用户名 其中各选项含义如下:
代码: -c comment 指定一段注释性描述。 -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m 选项,可以创建主目录。 -g 用户组 指定用户所属的用户组。 -G 用户组,用户组 指定用户所属的附加组。 -s Shell 文件 指定用户的登录 Shell。 -u 用户号 指定用户的用户号,如果同时有-o 选项,则可以重复使用其他用户的标识号。
让 Linux 系统中的普通用户也有超级用户的权限
相关文档
最新文档