1.作用

useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。

  2.格式

  useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name

3.主要参数

  -c:加上备注文字,备注文字保存在passwd的备注栏中。

  -d:指定用户登入时的主目录,替换系统默认值/home/<用户名>

  -D:变更预设值。

  -e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。

  -f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.

  -g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。

  -G:指定用户所属的附加群组。

  -m:自动建立用户的登入目录。

  -M:不要自动建立用户的登入目录。

  -n:取消建立以用户名称为名的群组。

  -r:建立系统账号。

  -s:指定用户登入后所使用的shell。默认值为/bin/bash。

  -u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。

4.说明

  useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。

5.应用实例

建立一个新用户账户testuser1,并设置UID为544,主目录为/usr/testuser1,属于users组:

 代码如下 复制代码

  #useradd -u 544 -d /usr/testuser1  -g users -m  testuser1

加-m 如果主目录不存在则自动创建

6.例

使用管理员账号登陆系统,建立用户tmp_3452 密码3sdt5:Eawhg

添加用户命令:

 代码如下 复制代码

[root@ptr228 ~]# adduser tmp_3452

修改密码命令:

[root@ptr228 ~]# passwd tmp_3452

在系统出现提示输入密码是输入密码:3sdt5:Eawhg 系统提示输入确认密码后再输入一次。OK添加成功。

7.useradd批量添加用户

使用useradd时,如果后面不添加任何参数选项,例如:#sudo useradd test创建出来的用户将是默认“三无”用户:一无Home Directory,二无密码,三无系统Shell。

步骤如下:

(1)建立用户名列表文件username.txt (同上)

(2)创建用户密码对应文件serc.txt,格式为username:password (注意文件的格式)

 代码如下 复制代码
stu1:tt1
stu2:tt2
stu3:tt3
stu4:tt4
stu5:tt5
stu6:tt6  

 

(3)批量添加的脚本文件aa.sh

 代码如下 复制代码

##添加用户,并且在/home/ 下为用户生成用户目录。cat < username.txt | xargs -n 1 useradd -m##批处理模式下更新密码
chpasswd < serc.txt##将上述的密码转换到密码文件和组文件
pwconv##结束验证信息
echo "OK 新建完成"(4)执行该脚本文件,查看执行过程

root@liu:/home/liu/Desktop/Dos# sh aa.sh

新建完成         useradd命令,在执行没有出错的情况下,不会输出任何的信息,不会与用户交互。但是用户必须要记住那些设置项目,否则添加的用户可能出现一些预想不到的结果。

8.新创建一个oracle用户,这初始属于oinstall组,且同时让他也属于dba组。

#useradd oracle -g oinstall -G dba

新创建一个oracle用户,这初始属于oinstall组,且同时让他也属于dba组。

9.无法使用shell,且其用户目录至/var/servlet/service

#useradd tomcat  -d /var/servlet/service -s /sbin/nologin

无法使用shell,且其用户目录至/var/servlet/service

二,userdel删除用户

删除刚创建的账号 tmp_3452

删除用户命令:

 代码如下 复制代码
[root@ptr228 ~]# userdel tmp_3452

或者连同用户目录一并删除:

 代码如下 复制代码

[root@ptr228 ~]# userdel -f tmp_3452

注意:这里如果用户还在登陆的话,会提示,用户正在登陆无法删除。此时可能需要先强制用户退出。

3. 强制退出已经登陆用户

查看当前登陆用户的命令:

 代码如下 复制代码

[root@ptr228 ~]# w

会输入如下结果:

 代码如下 复制代码

12:10:27 up 21:13,  1 user,  load average: 0.00, 0.01, 0.08
USER          TTY      FROM                 LOGIN@   IDLE   JCPU   PCPU WHAT
root            pts/0    ***.**.***.**    11:33    0.00s  0.08s  0.00s   w
tmp_3254  ps1       ***.**.***.**     11:33    0.00s  0.08s  0.00s   ls

这里知道了登陆用户的tty是ps1执行强制退出命令pkill:

命令原型: pkill -kill -t [TTY]

 代码如下 复制代码

[root@ptr228 ~]# pkill -kill -t ps1

执行之后再执行名w 可以看到用户已经退出。

重复执行第二步的删除用户命令,删除成功。

useradd命令详解(转)的更多相关文章

  1. centos useradd 命令详解

    useradd 命令 Usage: useradd [options] LOGIN useradd -D useradd -D [options] Options: -b, --base-dir BA ...

  2. useradd命令详解

    功能说明:建立用户帐号.语 法:useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g ...

  3. useradd 命令详解

    useradd 作用: 用于Linux中创建的新的系统用户, useradd 可用来建立用户账号, 账号建好之后,再用passwd 设定账号的密码, 可用userdel 删除账号. 使用useradd ...

  4. (转)linux命令详解之useradd命令使用方法

    linux命令详解之useradd命令使用方法 原文:http://blog.csdn.net/u011537073/article/details/51987121 Linux 系统是一个多用户多任 ...

  5. linux命令详解-useradd,groupadd

    linux命令详解-useradd,groupadd 我们在linux命令行中输入useradd: Options:  -b, --base-dir BASE_DIR       base direc ...

  6. Usermod 命令详解 ------工作中修改shell时用 usermod -s /bin/csh home

     Usermod 命令详解 2012-09-11 11:01:36 标签:usermod 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.htt ...

  7. Git初探--笔记整理和Git命令详解

    几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...

  8. linux yum命令详解

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  9. Linux下ps命令详解 Linux下ps命令的详细使用方法

    http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...

随机推荐

  1. 用.NET解索尼相机ARW格式照片

    用.NET解索尼相机ARW格式照片 目前常用的照片格式是.jpg,它只能提供8bit的色彩深度,而目前主流的相机都能提供高达12bit-14bit的色彩深度,动态范围和后期处理能力也大大增加,这也是为 ...

  2. mysql主从架构搭建

    1.配置文件,开启二进制日志 vim /etc/my.cnf 在mysql下增加如下内容 server-id= log-bin=mysql-bin relay-log=mysql-relay 2.登录 ...

  3. js3——表格下拉

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  4. Reachability的使用

    刚到一家新公司 做新项目 关于网络状态的监听和同事产生了不一样的看法 原来我的网络监听都是自己写的 后来发现自己不是一般的傻 有一个叫做Reachability的东西 很简单 很实用 很暴力 下面就是 ...

  5. iOS包管理工具Cocoapods的安装与使用

    转自:http://www.sxt.cn/u/10014/blog/6448 在我们开发移动应用的时候,一般都会使用到第三方工具,而由于第三方类库的种类繁多,我们在项目中进行管理也会相对麻烦,所以此时 ...

  6. ios-AutoLayout(自动布局代码控制)简单总结

    转自:http://blog.sina.com.cn/s/blog_7c336a830102vaht.html 原理:IOS6.0 之后,苹果优化了UI界面的布局方式,提出了自动布局的概念,和之前的a ...

  7. java之面向对象

    类的语法格式 public class Person{ //属性类的成员变量可以先声明,不用初始化,类成员变量具有初始值 String name; int age; //方法 public void ...

  8. 第4节:Java基础 - 必知必会(中)

    第4节:Java基础 - 必知必会(中) 本小节是Java基础篇章的第二小节,主要讲述抽象类与接口的区别,注解以及反射等知识点. 一.抽象类和接口有什么区别 抽象类和接口的主要区别可以总结如下: 抽象 ...

  9. unity3d WeelCollider 漂移

    物理漂移 基础控制不在说明 Forward Friction 为轮胎直线摩擦力 Sideways Friction 为侧面摩擦力 Extremum Slip为速度达到多少后产生漂移效果 Extremu ...

  10. linux—chown

    1 .修改 /usr/local下bin目录的所属者 2.修改 /usr/local下bin目录的所属组 3.修改 /usr/local下games目录的所属者和所属组 4.修改 /usr/local ...