1. /etc/passwd 格式

用户名:密码:UID:GID:注释:家目录:默认shell

useradd  [options ]    USERNAME

-u: UID  要大于等于500,

-g: GID 指基本组,必需事先存在,UID会在最下面的一个ID加1

小插曲,下载了xshell来运行。

-G:GID,组要存在,可能存在多个。

-c:“COMMENT”注释

-d:/path/to/somedirectory 意思为指定家目录。默认是在home目录下的userfolder下。

-s: 指定了当前系统可用的安全shell,它存在于etc/shells下

注意切换用户的方法:   #su – USERNAME    ,如下 #su – user413

-m: 给用户强制创建家目录

-k:要跟-m一起用

/etc/skel,其实就是shell的配置文件,其中-a是用于显示影藏文件的

使用-m 可以指定不用创建家目录

2.  不为用户创建家目录

首先,有个文件可以先拿出来看看 /etc/login.defs,

/etc/login.defs 是设置用户帐号限制的文件。该文件里的配置对root用户无效。

如果/etc/shadow文件里有相同的选项,则以/etc/shadow里的设置为准,也就是说/etc/shadow的配置优先级高于/etc/login.defs

# *REQUIRED* required

#   Directory where mailboxes reside, _or_ name of file, relative to the

#   home directory.  If you _do_ define both, MAIL_DIR takes precedence.

#   QMAIL_DIR is for Qmail

#

#QMAIL_DIR Maildir

MAIL_DIR  /var/spool/mail#指定邮件目录

#MAIL_FILE .mail

# Password aging controls:

#

# PASS_MAX_DAYS Maximum number of days a password may be used.

# PASS_MIN_DAYS Minimum number of days allowed between password changes.

# PASS_MIN_LEN Minimum acceptable password length.

# PASS_WARN_AGE Number of days warning given before a password expires.

#

PASS_MAX_DAYS 99999 #密码最大有效期

PASS_MIN_DAYS 0 #两次修改密码的最小间隔时间

PASS_MIN_LEN 10 #密码最小长度,对于root无效

PASS_WARN_AGE 7 #密码过期前多少天开始提示

#

# Min/max values for automatic uid selection in useradd

#创建用户时不指定UID的话自动UID的范围

UID_MIN  500   #用户ID的最小值

UID_MAX 60000 #用户ID的最大值

#

# Min/max values for automatic gid selection in groupadd

#自动组ID的范围

GID_MIN  500   #组ID的最小值

GID_MAX 60000 #组ID的最大值

#

# If defined, this command is run when removing a user.

# It should remove any at/cron/print jobs etc. owned by

# the user to be removed (passed as the first argument).

#

#USERDEL_CMD /usr/sbin/userdel_local  当删除用户的时候执行的脚本

#

# If useradd should create home directories for users by default

# On RH systems, we do. This option is overridden with the -m flag on

# useradd command line.

#

CREATE_HOME yes #使用useradd的时候是够创建用户目录

# The permission mask is initialized to this value. If not specified,

# the permission mask will be initialized to 022.

UMASK           077 #

# This enables userdel to remove user groups if no members exist.

#

USERGROUPS_ENAB yes

# Use MD5 or DES to encrypt password? Red Hat use MD5 by default.

MD5_CRYPT_ENAB yes  #用MD5加密密码

3. 删除用户

userdel

#userdel    [options]  USERNAME

如果没有指定选项,家目录不删除。

id:查看用户的账号信息

#id     USERNAME

注意,这边还有一finger的命令,这个应该是外部命令,功能是查看用户账号信息。

其实userdel这个命令只是删除/etc/passwd 下的账号信息。但是home下的信息没有删了

如果要彻底删除,需要一个选项 –r

补充一点,之前删Tom的时候,passwd删了,但是home没有删了,我们用这个命令再删的话,会出错。至于怎么弄,回头再总结。

以Jack为例

4. 修改用户账号属性

usermod 与 useradd 类似

-u     UID

-g     GID

-G     GID    会覆盖原来的GID

-a     -G    GID,添加新的组,不会覆盖

-d  -m :既指定家目录,又移动此前的家目录内容(这个还不清楚)

-L   锁定账号,类似禁用

chsh  :改用户的默认shell

chfn:修改注释信息

5. 密码管理

passwd  用户只用于改自己密码

passwd  USERNAME,管理员改其他密码

--stdin:(standard input),标准输入,会标准输入接受密码,将来的脚本会用到

-l:锁定用户账号

-d: 删除用户密码

pwck: password check 检查用户账号完整性。但是这个怎么看,还不是很清楚。

6. 组管理

创建组

groupadd,用 – g 指定GID,不指定为大于等于500,且比上一个大。

记住:有哪些组,可以通过 cat /etc/group  来看

-r: 添加一个系统用户或组,系统账号没有login权限,且没有home

groupmod:

-g:   GID

-n GRPNAME

groupdel

gpasswd:给组改密码

newgrp GROUPNAME 切换组

貌似,创建用户,并添加密码包含三个方面:passwd, shell, group文件下各加一行。但要懂格式

7. 作业

4-1 Linux用户管理命令详解的更多相关文章

  1. 云计算:Linux运维核心管理命令详解

    云计算:Linux运维核心管理命令详解 想做好运维工作,人先要学会勤快: 居安而思危,勤记而补拙,方可不断提高: 别人资料不论你用着再如何爽那也是别人的: 自己总结东西是你自身特有的一种思想与理念的展 ...

  2. linux下tar命令详解

     linux下tar命令详解    tar是Linux环境下最常用的备份工具之一.tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件.ta ...

  3. Linux下chkconfig命令详解(转)

    Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. ...

  4. Linux知识积累(4) Linux下chkconfig命令详解

    Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. ...

  5. Linux 用户及权限详解

    Linux 用户及权限详解 用户 , 组 ,权限 安全上下文(secure context): 权限: r,w,x 文件: r : 可读,可以使用类似cat 等命令查看文件内容. w : 可写,可以编 ...

  6. 转载的 Linux下chkconfig命令详解

    Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. ...

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

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

  8. linux之find命令详解

    linux之find命令详解 查找文件find ./ -type f查找目录find ./ -type d查找名字为test的文件或目录find ./ -name test查找名字符合正则表达式的文件 ...

  9. Linux下rar命令详解

    Linux下rar命令详解 用法: rar <命令> -<选项1> ….-<选项N> < 操作文档> <文件…> <@文件列表…> ...

随机推荐

  1. CI Weekly #5 | 微服务架构下的持续部署与交付

    CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试. DevOps 等实践教程.工具与资源,以及一些工程师文化相关的程序员 Ti ...

  2. Java总结篇系列:Java泛型

    一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(Stri ...

  3. HTML5 之拖放(drag与drop)

    拖放(Drag 和 drop)是 HTML5 标准的组成部分. 拖放是一种常见的特性,即抓取对象以后拖到另一个位置. 在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放. HTML5 拖放实例 ...

  4. fullpage.js全屏滚动插件使用小结

    刚做好公司网站,通过全屏滚动,显著提高了官网的浏览体验.遂总结一下使用fullpage.js的方法.欢迎指正 一. fullpage.js简介 fullpage.js是一套实现浏览器全屏滚动的js插件 ...

  5. Android 中关于static的使用问题

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/5251564.html 项目中,在不停地接收串口数据很长一段时间(几小时)后,会偶然性的报错.初步排除了oom ...

  6. php内核分析(五)-zval

    这里阅读的php版本为PHP-7.1.0 RC3,阅读代码的平台为linux 实际上,从这个函数开始,就已经进入到了zend引擎的范围了. zend_eval_string_ex(exec_direc ...

  7. Bonobo创建新库出错,解决方案

    创建新库出错如下: Native library pre-loader is trying to load native SQLite library "D:\wwwroot\localho ...

  8. wpf 列表、菜单 收起与展开,通过Grid DoubleAnimation或者Expander实现

    菜单收缩有很多种方法具体如何实现还是看个人想法: 第一种通过后台控制收起与展开: 效果图: 代码 : <Grid> <Grid.ColumnDefinitions> <C ...

  9. C++ constructor

    From <<C++ primer>> struct Sales_data { // constructors added Sales_data() = default; Sa ...

  10. JAVA JSP笔记

    一.jsp加载项目中资源图片 如果直接将静态页面写的代码copy到jsp中,你会发现图片都无法加载. 获取代码: String path = request.getContextPath(); Str ...