Linux用户管理

Linux系统跟Windows系统一样,可以创建不同的用户,不同的用户组。在不同用户下使用系统具有相应的权限

  1. 创建一个普通用户时,会修改几个文件,拷贝一些初始文件到用户家目录中

修改的文件路径为

/etc/passwd

/etc/shadow

/etc/group

/etc/gshadow

拷贝到用户家目录下的文件为

.bash_logout .bash_profile .bashrc

如果错误的把root用户下的这三个文件删除,再切换回root用户时会不成功,解决办法为:

这三个文件的原始存放路径为/etc/skel/,

只需将其拷贝回root家目录中即可:cp /etc/skel/.bash* .

最后执行命令source .bash_profile解决问题

 

2、/etc/passwd的详细介绍

saslauth:x:499:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

tcpdump:x:72:72::/:/sbin/nologin

localhost:x:500:500::/home/oldboy:/bin/bash

cat /etc/passwd截取部分内容

第一列:用户名

第二列:x代表有密码

第三列:UID(每个用户唯一的编号)

第四列:GID(每个组唯一的编号)

第五列:备注(在创建用户时输入useradd -c 用户名 就能指定备注)

第六列:家目录

第七列:指定登陆之后使用的shell解释器shell的作用:把用户的命令解析之后传给内核来执行

执行命令cat /etc/shells查看shell解释器的类别

[root@localhost ~]# cat /etc/shells

/bin/sh

/bin/bash

/sbin/nologin

/bin/dash

/bin/tcsh

/bin/csh

 

3、/etc/shadow的详细介绍

saslauth:!!:17613::::::

postfix:!!:17613::::::

sshd:!!:17613::::::

tcpdump:!!:17613::::::

localhost:$6$k3Vi5V8s$yf1LQdFvK0nX5UvndAqYJe9vOUFHadvK5Og7N3kOLw4ayG.za/Ft2KmU4Uhe1w8ejN1iL.tRBeMyDwdb7qT66.:17624:0:99999:7:::

cat /etc/shadow截取部分内容,可以通过命令man 5 shadow查看说明

第一列:用户名

第二列:加密之后的密码(没有密码时是两个!号)

第三列:上一次密码改变的时间(距离1970年的天数)

第四列:密码最少使用时间,0表示不限制(不能频繁改密码)

第五列:密码最多使用时间(限定改密码的周期)

第六列:密码警告周期(提前提醒密码到期的时间)

第七列:密码禁用周期(密码到期后禁用用户的周期)

第八列:指定密码到期的具体日期

第九列:预留

 

4、创建用户的原理

cat /etc/default/useradd查看默认配置

[root@localhost ~]# cat /etc/default/useradd

# useradd defaults file

GROUP=100

HOME=/home    家目录的基础目录

INACTIVE=-1        密码过期后,账户被彻底禁用之前的天数

EXPIRE=                过期时间

SHELL=/bin/bash    指定默认的shell解释器

SKEL=/etc/skel    指定骨架目录

CREATE_MAIL_SPOOL=yes    是否创建邮箱

 

5、UID的范围

0-100        Linux系统预留

101-499        系统账号(服务)

500-60000    普通用户

 

6、useradd命令

参数及说明Options:

-g    --gid GROUP name or ID of the primary group of the new account

指定用户组 useradd -g 组id b5 或者useradd -g 组名 b5

例子:

useradd -g 814 b5 或者 useradd -g incahome b5

-G    --groups GROUPS list of supplementary groups of the new account

指定多个用户组,useradd -G 多个组名或组id 用户名

例子:

useradd -G test,incahome,a1 b6

-m    --create-home create the user's home directory 创建家目录

-M    --no-create-home do not create the user's home directory 不创建家目录        

例子:

useradd -M -s /sbin/nologin b8

-p    --password PASSWORD encrypted password of the new account

指定固定加密的密码

例子:

useradd -p 'ezNHdD48mHkGw' c1

        生成加密密码的方式openssl passwd 123456

-s        --shell SHELL login shell of the new account

不登录

例子:

useradd -M -s /sbin/nologin b9

-u        --uid UID user ID of the new account

指定用户uid,方便多台机器同步共享文件

例:

[root@localhost ~]# useradd -u 608 web

[root@localhost ~]# id web

uid=608(web) gid=608(web) groups=608(web)

不常用的参数

-b     指定基础目录

-c     指定备注信息

-d     指定用户的家目录

-e    过期时间

-f     禁用时间

 

7、chage命令

该命令用于密码时效管理。它可以修改账号和密码的有效期

[root@localhost ~]# chage

用法:chage [选项] 登录

选项:

-d, --lastday 最近日期     将最近一次密码设置时间设为"最近日期"

-E, --expiredate 过期日期     将帐户过期时间设为"过期日期"

-h, --help     显示此帮助信息并推出

-I, --inactive INACITVE     过期 INACTIVE 天数后,设定密码为失效状态

-l, --list     显示帐户年龄信息

-m, --mindays 最小天数 将两次改变密码之间相距的最小天数设为"最小天数"

-M, --maxdays 最大天数 将两次改变密码之间相距的最大天数设为"最大天数"

-R, --root CHROOT_DIR chroot 到的目录

-W, --warndays 警告天数 将过期警告天数设为"警告天数"

 

8、其他相关命令

usermod    修改用户参数

groups        查看用户所在的组

newgrp        切换用户组,如果切换到其他用户的用户组,需要输入group组密码

gpasswd     设置组密码

 

博主原创文章,转载请务必注明出处

Linux学习之十六-Linux用户管理的更多相关文章

  1. Linux学习笔记 (六)用户管理命令

    一.用户帐号 1.超级用户:具有操作系统中的最高权限,用来管理和维护操作系统.root用户. 2.普通用户:由root用户来创建,在宿主目录中具有完全权限. 3.程序用户:由应用程序添加,维护某个应用 ...

  2. linux基础-第十六单元 yum管理RPM包

    第十六单元 yum管理RPM包 yum的功能 本地yum配置 光盘挂载和镜像挂载 本地yum配置 网络yum配置 网络yum配置 Yum命令的使用 使用yum安装软件 使用yum删除软件 安装组件 删 ...

  3. Linux学习之十九-Linux磁盘管理

    Linux磁盘管理 1.相关知识 磁盘,是计算机硬件中不可或缺的部分磁盘,是计算机的外部存储器中类似磁带的装置,将圆形的磁性盘片装在一个方的密封盒子里,这样做的目的是为了防止磁盘表面划伤,导致数据丢失 ...

  4. Linux学习(十六)VIM

    一.简介 VIM是vi的增强版.VIM是Linux平台上的主要编辑器.基本上所有的文档的新增,修改,保存都需要用到它.所以,掌握VIM是很有必要的. vim的安装非常简单,一条命令就可以了: yum ...

  5. Linux学习之十八-sudo分权管理

    sudo分权管理 1.为什么需要sudo? 当我的主机是多人共管的环境时,如果大家都使用 su 来切换成为 root 的身份,那么就得每个人知道 root 的密码,这样密码太多人知道可能会流出去,很不 ...

  6. Linux 常用命令十六 文件权限管理

    一.ls -l 各段含义 wang@wang:~/workpalce/threading$ ls -l 总用量 drwxrwxr-x wang wang 12月 : a -rw-rw-r-- wang ...

  7. Linux学习之十六、文件的格式化与相关处理

    原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0330regularex_4.php 文件的格式化与相关处理 接下来让我们来将文件进行一些简单的编排吧!底下 ...

  8. Linux学习之十二-Linux文件属性

    Linux文件属性 在Linux中,对于每个文件都有相应属性,以Linux中root用户家目录下新建文件a.txt为例,在a.txt中输入几个字符 使用命令ls -ild a.txt查看文件的权限等 ...

  9. linux学习(十)linux安装MySQL

    一.前言 由于我使用的是阿里云的服务器,后面会加入配置阿里云的部分,非阿里云的linux系统可以省略后面的步骤,根据自己系统的情况进行配置~ PS:我安装的是mysql5.7.24的版本,其他版本的M ...

随机推荐

  1. 第二个python自动化练习

    #Author:xiaoxiao from selenium import webdriver import unittest class DownLoad(unittest.TestCase): # ...

  2. sql执行效率 Explain

    explain+sql语句 explain返回的结果项很多,这里我们只关注三种,分别是type,key,rows. key:显示MySQL实际决定使用的键(索引).如果没有选择索引,键是NULL. r ...

  3. ReentrantLock学习笔记

    参考:https://www.jianshu.com/p/4358b1466ec9 前言: 先来想象一个场景:手把手的进行锁获取和释放,先获得锁A,然后再获取锁B,当获取锁B后释放锁A同时获取锁C,当 ...

  4. 记一次 pip list --outdated 错误

    在 Windows CMD 执行 pip list --outdated,出现如下错误:" [WinError 10061] 由于目标计算机积极拒绝,无法连接",原因是我之前用的源 ...

  5. openssl Rsa 分段加密解密

    密钥长度 1024 openssl genrsa -out rsa_private_key.pem openssl rsa -in rsa_private_key.pem -pubout -out r ...

  6. [暑假集训--数论]poj2773 Happy 2006

    Two positive integers are said to be relatively prime to each other if the Great Common Divisor (GCD ...

  7. Gate Of Babylon(bzoj 1272)

    Description Input Output Sample Input Sample Output 12 HINT /* 容斥+lucas+乘法逆元 首先,看到有限制的只有15个,因此可以用容斥原 ...

  8. jQuery1.4与json格式兼容问题

    原文发布时间为:2010-10-10 -- 来源于本人的百度文章 [由搬家工具导入] 原来使用jQuery1.3.2编写的代码,更换到1.4.2后,使用jQuery.ajax()加载的json文件,不 ...

  9. [转].net创建XML文件的两种方法

    原文发布时间为:2009-08-26 -- 来源于本人的百度文章 [由搬家工具导入] 方法一:按照XML的结构一步一步的构建XML文档.    通过.Net FrameWork SDK中的命名空间&q ...

  10. spring一些总结

    Spring中三种实例化bean的方法: 1)使用类构造器   <bean id="orderService" class="cn.itcast.OrderServ ...