linux 下用户管理指令

来源:互联网 发布:美国大选特朗普 知乎 编辑:程序博客网 时间:2024/05/21 04:19

w

查看机器中登录得用户


pkill -kill -t pts/1

踢掉用户,需要root的权限


/etc/nologin文件的使用:

如果希望只有root可以登录主机,其他账号都不可以登录,可以在/etc目录下添加名为“nologin”的文件,在该文件中只要随意输入几个字符即可,因为只要系统发现该文件的存在就会禁止其他用户登录。

useradd命令(也可以使用adduser)用来创建新的用户帐号,其命令格式如下:

表4—19 useradd命令常用选项

常用现象

意   义

-d

设置新用户的登陆目录

-e

设置新用户的停止日期,日期格式为MM/DD/YY

-f

帐户过期几日后永久停权。当值为0时帐号则立刻被停权。而当值为-1时则关闭此功能。预设值为-1

-g

使新用户加入群组

-G

使新用户加入一个新组。每个群组使用逗号“,”隔开,不可以夹杂空白字

-s

指定新用户的登陆Shell

-u

设定新用户的ID值

   

    成功创建一个新用户以后,在/etc/passwd文件中就会增加一行该用户的信息,其格式如下:

〔用户名〕:〔密码〕:〔UID〕:〔GID〕:〔身份描述〕:〔主目录〕:〔登陆Shell〕

其中个字段被冒号“:”分成7各部分。

由于小于500的UID和GID一般都是系统自己保留,不用做普通用户和组的标志,所以新增加的用户和组一般都是UID和GID大于500的。

例如使用如下命令:

〔root@localhost root〕# useradd user1

将会创建一个名为userl的用户,关于用户管理命令已经介绍过,在此也不做更多的介绍了。

执行useradd命令的结果如图11-13所示。

比如:

mkdir /home/guestdir

useradd guest -d /home/guestdir

就是建立用户,指定目录


passwd guest

这个是修改guest用户密码的指令


id查看用户详细信息

id guest


修改用户信息usermod

usermod命令用来修改用户信息,其命令格式如下:

# usermod〔选项〕〔用户名〕

常用命令选项11-20所示。

表4-20 usermod命令常用选项

常用选项

意    义

-d

更新使用者新的登陆目录

-e

设置新用户的停止日期,日期格式为MM/DD/YY

-f

帐户过期几日后永久停权。当值为0时帐号则立刻被停权。而当值为-1时则关闭此功能。预设值为-1

-g

更新使用者新用户加入群组

-G

定义使用者为一堆groups的成员。每个群组使用“??”隔开,不可以夹杂空白字

-l

变更用户登陆时的名称,同时使用者目录名也会跟着更动成新的名称

-s

指定新用户Shell

-u

用户ID值,必须为唯一的ID值。用户目录树下所用的文档目录其userID会自动变更,放在拥护目录外的文档则要自行手动更动

例如,下面的命令修改用户信息:

〔root@localhost root〕# usermod –d/home/user2 –s/bin/bash user2

将用户名user2的主目录路径设置在/home/user1,登陆的Shell设置为/usr/bin/gcc。

一般情况下usermod命令会参照命令指令的部分修改用户帐号信息。但usermod不允许改变正在线上的使用者帐号名称,因此,当用usermod来改变用户帐号信息时,必须确认这名没在电脑上执行任何程序。

修改用户所属得组

usermod -G group usercode

例如:

usermod -G admin,lawmansoft  lawmansoft

组用逗号分割



4.6.4  新建组群groupadd

groupadd命令用来建立新的用户组,其命令格式如下:

# groupadd〔选项〕〔用户名称〕

常用选项有:

-g:GID值。除非使用-o参数不然该值必须是唯一,不可相同,数值不可为负。

GID值预设为最小不得小于500而逐次增加。0—499传统上是保留系统帐号使用。

-f:新增的一个已经存在的群组帐号,系统会出现错误讯息然后结束groupadd.

如果是这样的情况,不会新增这个群组(如果是这个情况,系统不会在新增一次)。也可同时加上-g选项,当你加上一个 GID时,此时GID就不用是唯一值,可不加-o参数,建好的群组会显示建立后的结果(adding a group as neither –g or –o options were specified),这是Red Hat Linux额外增设的选项。

4.6.5 删除用户userdel

userdel命令用来删除已经存在的用户及相关的文档,其命令格式如下:

# userdel 〔选项〕用户名

userdel命令的常用选项:

-r将用户目录下的文档一并删除。在其他位置上的文档也将一一找出并删除。

Userdel不允许移除正在线上的用户帐号,因此,如果想删除这类用户帐号,必须先杀掉用户在系统上运行的程序才能进行帐号删除。

4.6.6 删除群组groupdel

groupdel命令用来删除已经存在的用户组,其命令格式如下:

# groupdel组名

同userdel类似,如果有任何一个组内的用户在上线,就不能移除该用户组,因此,如果组内有用户在线的话,最好先移出该用户,然后在删除该用户。

 

4.6.7 用户间切换su

su 命令常用于不同用户间切换。其命令格式如下:

    # su〔用户名〕

su命令的常见用法是变成跟用户或超级用户,如果发出不带用户名的su命令,则系统提示输入根口令,输入之后则可换为根用户。如果登陆为根用户,则可以用su命令成为系统上任何用户而不需要口令。

例如,如果登陆为user1,要切换为user2,只要用如下命令:

# su user2

然后系统提示输入user2口令,输入正确的口令之后就可以切换到user2。完成之后就可以用exit命令返回到user1。

 

4.6.8 查看当前在线用户who

who命令主要用于查看当前在线上的用户情况。这个命令非常有用。如果用户想和其他用户建立即使通讯,比如使用talk命令,那么首先要确定的就是该用户确实在线上,不然talk进程就无法建立起来。

又如,系统管理员希望监视每个登陆的用户此时此刻的所作所为,也要使用who命令。Who命令的常用命令格式和常用选项如下:

# who〔选项〕

命令who常用命令选项如表4-21所示。

                表 4-21      命令who常用命令选项

常用选项

意   义

-a

显示所有用户的所有信息

-m

显示运行该程序的用户名,和“who am I”的作用一样

     -q

只显示用户的登陆帐号和登陆用户的数量,该选项优先级高于其他任何选项

-u

在登陆用户后面显示该用户最后一次对系统进行操作距今的时间

-H

显示列标题

 

所有的选项是可选的,例如,使用命令:

〔root@localhose root〕# who-aH






linux下查看所有用户及所有用户组

groups 查看当前登录用户的组内成员
groups gliethttp 查看gliethttp用户所在的组,以及组内成员
whoami 查看当前登录用户名

/etc/group文件包含所有组
/etc/shadow和/etc/passwd系统存在的所有用户名

1、/etc/group 解说;

/etc/group

文件是用户组的配置文件,内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组,因为一个用户可以归属一个或多个不同的用户组;同一用

户组的用户之间具有相似的特征。比如我们把某一用户加入到root用户组,那么这个用户就可以浏览root用户家目录的文件,如果root用户把某个文件
的读写执行权限开放,root用户组的所有用户都可以修改此文件,如果是可执行的文件(比如脚本),root用户组的用户也是可以执行的;

用户组的特性在系统管理中为系统管理员提供了极大的方便,但安全性也是值得关注的,如某个用户下有对系统管理有最重要的内容,最好让用户拥有独立的用户组,或者是把用户下的文件的权限设置为完全私有;另外root用户组一般不要轻易把普通用户加入进去,

2、/etc/group 内容具体分析

/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录;格式如下:

group_name:passwd:GID:user_list

在/etc/group 中的每条记录分四个字段:

第一字段:用户组名称;

第二字段:用户组密码;

第三字段:GID

第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名。
 


原创粉丝点击