1,概述

1,用户是Unix/Linux系统工作中重要的一环,用户管理包括用户与组账号的管理。

2,在Unix/Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限。

3Unix/Linux系统中的root账号通常用于系统的维护和管理,它对Unix/Linux操作系统的所有部分具有不受限制的访问权限。

4,在Unix/Linux安装的过程中,系统会自动创建许多用户账号,而这些默认的用户就称为标准用户

5,在大多数版本的Unix/Linux中,都不推荐直接使用root账号登录系统。

 

2,查看当前用户:whoami

whoami该命令用户查看当前系统当前账号的用户名。可通过cat /etc/passwd查看系统用户信息。

由于系统管理员通常需要使用多种身份登录系统,例如通常使用普通用户登录系统,然后再以su命令切换到root身份对传统进行管理。这时候就可以使用whoami来查看当前用户的身份。

                                                  Linux命令-用户、权限管理(三)_java

 

3,查看登录用户:who

who命令用于查看当前所有登录系统的用户信息。

常用选项:

选项

含义

-m或am I

只显示运行who命令的用户名、登录终端和登录时间

-q或--count

只显示用户的登录账号和登录用户的数量

 

4,退出登录账户: exit

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

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

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

 Linux命令-用户、权限管理(三)_用户名_02

在xshell里面输入reconnect 可以重新链接之前的   

【不用手输,直接按 键盘的 方向键 上】

系统

 

5 添加用户账号:useradd

Unix/Linux中添加用户账号可以使用adduseruseradd命令,因为adduser命令是指向useradd命令的一个链接,因此,这两个命令的使用格式完全一样。

useradd命令的使用格式如下: useradd [参数] 新建用户账号

参数

含义

-d

指定用户登录系统时的主目录,如果不使用该参数,系统自动在/home目录下建立与用户名同名目录为主目录

-m

自动建立目录

-g

指定组名称

相关说明:

  • Linux每个用户都要有一个主目录,主目录就是第一次登陆系统,用户的默认当前目录(/home/用户)
  • 每一个用户必须有一个主目录,所以用useradd创建用户的时候,一定给用户指定一个主目录;
  • 用户的主目录一般要放到根目录的home目录下,用户的主目录和用户名是相同的;
  • 如果创建用户的时候,不指定组名,那么系统会自动创建一个和用户名一样的组名。

命令

含义

useradd -d /home/abc abc -m

创建abc用户,如果/home/abc目录不存在,就自动创建这个目录,同时用户属于abc组

useradd -d /home/a a -g test -m

创建一个用户名字叫a,主目录在/home/a,如果主目录不存在,就自动创建主目录,同时用户属于test组

cat /etc/passwd

查看系统当前用户名

                              Linux命令-用户、权限管理(三)_java_03


6,设置用户密码:passwd

Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户口令。用户也可以直接使用该命令来修改自己的口令,而无需在命令后面使用用户名。

                                     Linux命令-用户、权限管理(三)_java_04

 

7,切换用户:su

可以通过su命令切换用户,su后面可以加“-”susu –命令不同之处在于,su -切换到对应的用户时会将当前的工作目录自动转换到切换后的用户主目录:

                                              Linux命令-用户、权限管理(三)_linux_05

命令

含义

su

切换到root用户

su root

切换到root用户

su -

切换到root用户,同时切换目录到/root

su - root

切换到root用户,同时切换目录到/root

su 普通用户

切换到普通用户

su - 普通用户

切换到普通用户,同时切换普通用户所在的目录

 

 

8,删除用户:userdel

命令

含义

userdel abc(用户名)

删除abc用户,但不会自动删除用户的主目录

userdel -r abc(用户名)

删除用户,同时删除用户的主目录

                                       Linux命令-用户、权限管理(三)_linux_06

9,查看有哪些用户组


 命令 cat /etc/group

                                    Linux命令-用户、权限管理(三)_java_07

 

 

10,添加、删除组账号:groupadd、groupdel

groupadd 添加组

Linux命令-用户、权限管理(三)_主目录_08

 

groupdel 删除组

Linux命令-用户、权限管理(三)_用户名_09

 

11,修改用户所在组:usermod

使用方法:usermod -g 用户组 用户名

Linux命令-用户、权限管理(三)_unix_10

12,查看用户在哪些组

groups 用户名

Linux命令-用户、权限管理(三)_linux_11

 

13,修改文件所有者:chown

注意切换到root用户

Linux命令-用户、权限管理(三)_主目录_12

 

 

14,修改文件所属组:chgrp

Linux命令-用户、权限管理(三)_用户名_13

 

 

15,修改文件权限:chmod

Linux命令-用户、权限管理(三)_linux_14

chmod 修改文件权限有两种使用格式:字母法与数字法。

字母法:chmod u/g/o/a +/-/= rwx 文件

[ u/g/o/a ]

含义

u

user 表示该文件的所有者

g

group 表示与该文件的所有者属于同一组( group )者,即用户组

o

other 表示其他以外的人

a

all 表示这三者皆是

 

[ +-= ]

含义

+

增加权限

-

撤销权限

=

设定权限

 

rwx

含义

r

read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。

w

write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。

x

excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。

Linux命令-用户、权限管理(三)_主目录_15


chmod u-x HelloWorld.java  给HelloWorld.java文件的用户去掉一个x权限

Linux命令-用户、权限管理(三)_linux_16

 

数字法:“rwx” 这些权限也可以用数字来代替

字母

说明

r

读取权限,数字代号为 "4"

w

写入权限,数字代号为 "2"

x

执行权限,数字代号为 "1"

-

不具任何权限,数字代号为 "0"

chmod 751 file

  • 文件所有者:读、写、执行权限
  • 同组用户:读、执行的权限
  • 其它用户:执行的权限

语法

chmod  777 HelloWorld.java 

把HelloWorld.java的权限改 rwxrwxrwx

chmod  121 HelloWorld.java 

              把HelloWorld.java的权限改 –x-w---x

chmod  721 HelloWorld.java 

              把HelloWorld.java的权限改rwx-w---x