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. iOS中数据库应用基础

    iOS 数据库入门 一.数据库简介 1.什么是数据库? 数据库(Database) 是按照数据结构来组织,存储和管理数据的仓库 数据库可以分为2大种类 关系型数据库(主流) PC端 Oracle My ...

  2. static,你还敢用吗?

    我用火狐的HttpRequester测试开发组里一个同学发布的Web API接口,遇到了一个奇怪的问题. 我测试边界情况时,第一次调用响应的结果是正常的,但当再次及以后的请求时,却返回了异常“Syst ...

  3. WCF学习之旅—TcpTrace工具(二十六)

    止文(WCF学习之旅—TcpTrace工具(二十五))介绍了关于TcpTrance的一种使用方式,接下来介绍第二种使用方式. 三.通过ListenUri实现基于tcpTracer的消息路由 对于路由的 ...

  4. JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)

    1.3种原始表达式     1.直接量:    1.23    //数字直接量                         “hello”    //字符串直接量                 ...

  5. Handler系列之原理分析

    上一节我们讲解了Handler的基本使用方法,也是平时大家用到的最多的使用方式.那么本节让我们来学习一下Handler的工作原理吧!!! 我们知道Android中我们只能在ui线程(主线程)更新ui信 ...

  6. JS 对象封装的常用方式

    JS是一门面向对象语言,其对象是用prototype属性来模拟的,下面,来看看如何封装JS对象. 常规封装 function Person (name,age,sex){ this.name = na ...

  7. Vertica环境安装R-Lang包提示缺少libgfortran.so.1

    环境:RHEL 6.4 + Vertica 7.0.0-11.最终确认安装compat-libgfortran-41-4.1.2-39.el6.x86_64.rpm即可解决. # rpm -ivh v ...

  8. 深入理解javascript原生拖放

    × 目录 [1]拖放源 [2]拖放目标 [3]dataTransfer对象[4]改变光标 前面的话 拖放(drag-and-drop,DnD)其实是两个动作——拖和放.所以,它涉及到两个元素.一个是被 ...

  9. 用Crontab打造简易工作流引擎

    1. 引言 众所周知,Oozie(1, 2)是基于时间条件与数据生成来做工作流调度的,但是Oozie的数据触发条件只支持HDFS路径,故而面临着这样的问题: 无法判断Hive partition是否已 ...

  10. 数百个 HTML5 例子学习 HT 图形组件 – 拓扑图篇

    HT 是啥:Everything you need to create cutting-edge 2D and 3D visualization. 这口号是当年心目中的产品方向,接着就朝这个方向慢慢打 ...