linux下强制踢掉登陆用户

查看机器中登陆的用户

[root@sunsyk ~]# w

16:29:02 up 2 days, 2:35, 5 users, load average: 0.03, 0.05, 0.01

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/1 :0.0 Tue15 2days 1:44 0.04s -bash

root pts/2 :0.0 Tue15 46:42m 0.05s 0.05s bash

root pts/3 :0.0 Tue15 2days 0.02s 0.02s bash

root pts/4 172.20.52.114 14:17 58:48 0.16s 0.03s sqlplus

root pts/5 172.20.52.114 15:31 0.00s 0.03s 0.00s w

我把pts/1踢掉(只有root才能去踢掉用户)

[root@sunsyk ~]# pkill -kill -t pts/1

[root@sunsyk ~]# pkill -kill -t pts/2

[root@sunsyk ~]# pkill -kill -t pts/3

查看是不是踢掉

[root@sunsyk ~]# w

16:34:16 up 2 days, 2:40, 2 users, load average: 0.00, 0.05, 0.02

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/4 172.20.52.114 14:17 1:04m 0.16s 0.03s sqlplus

root pts/5 172.20.52.114 15:31 0.00s 0.03s 0.00s w

以login命令登录:

在用户登录系统期间,除了可使用“su -”命令之外,也可以用“login”命令来改变身份,甚至可以登录其他的主机。如果用“login”命令来改变身份,只要直接在命令后输入将要改变的用户名即可:[root@ns1 root]# login caroline ->改变用户名为caroline,若要登录其他的主机,需要使用“-h”参数来配合“login”命令:[root@ns1 root]# login -h linux2 ->登录名为Linux2的主机。

以rlogin命令登录:

除了使用“login”命令外,“rlogin”也可以用来登录远程主机,它的用法很简单。下面是一个连接到linux2.jschouse.com的范例:

[root@ns1 root]# rlogin linux2.jschouse.com ->登录linux2.jschouse.com

password: ****** ->默认是以相同名登陆,所以没有出现“login”信息

Login incorrect ->如果用来登录的名称与当前的用户名不同,可直接按“Enter”,且忽略错误信息

Login: jack ->重新输入不同的用户名

Password: ****** ->密码

/etc/nologin文件的使用:

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

系统注销:

前面介绍了以“login”命令来改变身份,甚至可以登录其他的主机,而与login相对的命令“logout”,它可以使目前登录的用户注销系统,以便其他用户登录。这个命令的用法很简单,只要输入“logout”即可登录系统:[root@ns1 root]# logout

前面介绍过,Linux系统是一个多用户操作系统,系统中每一个用户的使用权限都需要由系统管理员来设定。这一节将介绍一些系统管理员对用户和用户组进行管理的命令。

4.6.1 创建新用户

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所示。

4.6.2 设置和修改用户口令passwd

passwd命令用来设置和修改用户命令,只有超级用户和用户自己可以修改密码,其他的普通用户没有修改其他用户密码的权利。其命令如下:

# passwd〔用户名〕

为避免输入密码是被人注意到有多少位,Linux并不采用类似Windows的密码回显〔显示为*号〕,所以,输入的这些字符是看不见的。例如,为新建的userl用户设置密码可使用如下命令:

root@localhost root〕# passwd user1

根据系统的提示信息输入两次密码,系统会显示:

passwd ::all authentication tokens updated successfully

表示修改密码成功了。新建用户的工作只有在该用户设置了口令后才算完成,否则无法使用该用户名登陆。

4.6.3 修改用户信息usermod

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

# usermod〔选项〕〔用户名〕

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

表4-20 usermod命令常用选项

常用选项

意    义

-d

更新使用者新的登陆目录

-e

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

-f

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

-g

更新使用者新用户主组。

-G

定义使用者的附加组。

-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来改变用户帐号信息时,必须确认这名没在电脑上执行任何程序。

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

radhat 添加用户,组,shell,附加组,家目录的更多相关文章

  1. 39-Ubuntu-用户管理-04-usermod设置主组和附加组

    主组:通常在新建用户时指定,在/etc/passwd的第4列GID显示主组名. 附加组:在/etc/group中最后一列显示该组的用户列表,用于指定用户的附加权限. 1.修改用户的主组 sudo us ...

  2. 添加用户username到sudo组

    添加用户username到sudo组: usermod -aG sudo username USERMOD(8) 系统管理命令 USERMOD(8) 名 usermod - 修改一个用户账户 大 us ...

  3. chmod a+w . 权限控制 su、sudo 修改文件所有者和文件所在组 添加用户到sudoer列表中 当前用户信息

    对当前目录对所有用户开放读写权限 chmod a+r . $ sudo chmod -R a+w /usr/lib/python2.7 所有用户添加文件的写权限 [linux]su.sudo.sudo ...

  4. Linux用户和组管理,添加修改用户,添加修改组,加入组,移除组

    1.安全介绍3A Authentication: 认证,用户名和对应口令 Authorization: 授权,不同用户权限不同 Accouting/Audition: 审计 2. 所属者和所属组 us ...

  5. linux下添加用户到sudo组

    #查看当前用户所属组groups #查看指定用户hiuser所属组groups hiuser #添加用户hiuser到sudo组sudo usermod -G sudo hiuser

  6. 设置用户ID和设置组ID

    与一个进程关联的ID有6个或更多,如下图所示: 与每个进程相关联的用户ID和组ID 实际用户ID 实际组ID 我们实际是谁 有效用户ID 有效组ID 附加组ID 用于文件访问权限检索 保存的设置用户I ...

  7. 文件和目录之设置用户ID和设置组ID

    与一个进程相关联的ID有6个或更多,它们如表4-4所示: 表4-4 与每个进程相关联的用户ID和组ID 实际用户ID                            我们实际上是谁 实际组ID ...

  8. linux 添加用户并赋予root权限

    1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户#passwd tommy   //修改密码Changing pass ...

  9. linux命令详解之useradd命令使用方法[linux下 添加用户、删除用户、修改用户密码、用户组管理]

    http://www.jb51.net/article/45848.htm Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这 ...

随机推荐

  1. myBatis学习之路1-基本功能实现

    myBatis也是一个持久型框架,相较于hibernate来说,算是轻量级的. 1.配置mybatis环境 相关jar下载地址:mybatis+mysalJAR包 2.新建一个java project ...

  2. Linux笔记 #09# Tomcat多开以及Nginx负载均衡简单例子

    索引 Tomcat怎样多开.. 1.添加环境变量(最基础.关键的步骤!) 2.改catalina.sh 3.改相关端口 Nginx负载均衡简单例子 Tomcat怎样多开.. 演示一下如何开两个(开n个 ...

  3. linux命令之pssh命令

    查看一下pssh命令的帮助文档: [root@test2 ~]# pssh --version [root@test2 ~]# pssh --help Usage: pssh [OPTIONS] co ...

  4. 学习requests_html

    一.获取页面上的所有链接. from requests_html import HTMLSession session=HTMLSession() r=session.get('https://new ...

  5. gitlab或github下fork后如何同步源的新更新内容?

    两种方式: 项目 fetch 到本地,通过命令行的方式 merge 懒人方法,只用 Github ,不用命令行 1.项目 fetch 到本地,通过命令行的方式 merge 提示:跟上游仓库同步代码之前 ...

  6. HTML5常用API

    .Fullscreen 该API允许开发者以编程方式将Web应用程序全屏运行,使Web应用程序更像本地应用程序. .Page Visibility 该API可以用来检测页面对于用户的可见性,即返回用户 ...

  7. Linux学习进阶示意图

    Linux 基础 Linux 基础 Linux安装专题教程 Linux中文环境 Linux—从菜鸟到高手 鸟哥的Linux私房菜 基础学习篇(第二版) Ubuntu Linux入门到精通 Linux标 ...

  8. 远程连接报错“This could be due to CredSSP encryption oracle remediation.”

    description: 当远程服务器上没有“Encryption Oracle Remediation" setting in local group policy. 尝试远程连接会出现上 ...

  9. spring 事务的七中传播行为五中隔离

    事务的传播行为(七): public enum Propagation { REQUIRED(TransactionDefinition.PROPAGATION_REQUIRED), SUPPORTS ...

  10. Harbor私有仓库中如何彻底删除镜像释放存储空间?

    简介: Harbor私有仓库运行一段时间后,仓库中存有大量镜像,会占用太多的存储空间.直接通过Harbor界面删除相关镜像,并不会自动删除存储中的文件和镜像.需要停止Harbor服务,执行垃圾回收命令 ...