用户账号管理

基于账号身份对资源访问进行控制

账户类别:用户账号,组账号

识别方式:UID,GID

用户账号:超级用户root,系统用户,普通用户

组账号:用来区分权限,不用于登陆

基本组(私有组)

附加组(公有组)

用户账号分类

超级用户:即管理员root,UID为0,拥有最高系统权限

系统用户:UID范围1-499,一般不能登陆系统(/sbin[em]e188[/em]login)

普通用户:默认的UID范围500-6000

组账号分类

基本组(私有组):即每个用户专属的组。一般有一个成员,组名与对应的用户名相同

附加组(公有组):即对各用户共同的组,一般有多个成员,组名由管理员指定

————————————————————————————————————————————————

账号的存放类别

账号数据的存放:

本地账户:存储在本机磁盘中

网络账户:存储在网络上专门的服务器上

本地账户的数据文件

/etc/passwd,/etc/shadow

/etc/group,/etc/gshadow

解析用户账号文件:

/etc/passwd,保存用户账号的基本信息,每一个用户记录一行,以:分割为7个字段

[root@hydra/]#head -n 1 /etc/passwd

root:x:0:0:root:/root:/bin/bash

字段1:用户账号的名称

字段2:密码字串或占位符x

字段3:用户账号的UID号

字段4:所属基本组的GID号

字段5:用户全名

字段6:宿主目录

字段7:登陆shell程序的路径

解析用户账号文件:

/etc/shadow,保存密码字串/有效信期等信息,每个用户记录一行,以:分割为9个字段

[root@hydra/]#head -n 1/etc/shadow

root:$6$g4l6UXBx$szBBXiQgTvK/O........6vAkyLRQkCA:17310:0:99999:7:::

字段1:用户账号的名称

字段2:加密后的密码字符串

字段3:上次修改密码的时间

字段4:密码的最短有效天数。默认0

字段5:密码过期的最长有效天数,默认99999

字段6:密码过期前的警告天数,默认7

字段7:密码过期后多少天禁用此用户账号

字段8:账号失效时间,默认值为空

字段9:保留字段(未使用)

——————————————————————————————————————————————————————————

useradd 添加用户

useradd命令

格式:useradd [选项] 用户名

常用命令选项

-u:指定UID标记号

-d:指定宿主目录,缺省为/home/用户名

-e:指定账号失效时间

-g,-G:指定所属的基本组,附加组

-M:不为用户建立并初始化宿主目录

-s:指定用户的的登陆shell

passwd设置口令

passwd命令

格式:passwd [选项] 用户名

常用命令选项

-d:清空用户密码,使之无需密码即可登陆

-l:锁定用户账号

-S:查看用户账号的状态(是否被锁定)

-u:解锁用户账号

--stdin:从标准输入(比如管道)取密码

-f:强制进行操作

————————————————————————————————————————————

用户初始配置

useradd行为配置

默认配置文件:/etc/default/useradd(对新建的账号起作用)

[root@room1pc01 桌面]# cat /etc/default/useradd

# useradd defaults file

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/bash

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes

login.defs登陆定义文件

默认配置文件:/etc/login.defs(对新创建的账号起作用)

[root@room1pc01 桌面]# grep -vE '^#|^$' /etc/login.defs

MAIL_DIR    /var/spool/mail

PASS_MAX_DAYS    99999

PASS_MIN_DAYS    0

PASS_MIN_LEN    5

PASS_WARN_AGE    7

UID_MIN              500

UID_MAX            60000

GID_MIN              500

GID_MAX            60000

CREATE_HOME    yes

UMASK           077

USERGROUPS_ENAB yes

ENCRYPT_METHOD SHA512

用户初始配置文件

配置文件来源:新建用户时,根据/etc/skel模板目录复制。

主要的初始配置文件

~/.bash_profile:每次登陆时执行

~/.bashrc:每次进新的Bash环境时执行

~/.bash_logout:每次退出登录时执行

全局配置文件:/etc/bashrc,/etc/profile

————————————————————————————————————————————

用户的删改查

usermod修改用户

格式:usermod [选项] 用户名

常用命令选项

-l:更改用户账户的登陆名称([root@hydra/]#usermod -l hydra1 hydra01(把改的名字写在前面)

-L:锁定用户账号

-U:解锁用户账号

-u:指定UID标记号

-d:指定宿主目录,缺省为/home/用户名

-e:指定账号失效时间

-g,-G:指定所属的基本组,附加组

-s:指定用户的的登陆shell

————————————————————————————————————————————————————————

调优(黑色艺术)

chage密码有效控制

格式:chage [选项] 用户名

让用户初次登陆需修改密码:chage -d 0 用户名

常用命令选项

-l:列出密码的有效期信息

-E:指出账号的过期时间,YYYY-MM-DD

-m:指定密码的最小天数

-M:指定密码的最大天数

——————————————————————————————————————————

userdel删除用户

格式:userdel [-r] 用户名

添加-r选项,宿主目录/用户邮件也一并删除

——————————————————————————————————————

——————————————————————————————————————

组账号管理

解析组账号文件:

/etc/group,保存组账号的基本信息

每个组记录一行,以:分割为4个字段

[root@room1pc01 桌面]# head -1 /etc/group

root:x:0:

字段1:组账号的名称

字段2:密码占位符x

字段3:组账号的GID号

字段4:本组成员用户列表

解析组账号文件

/etc/gshadow,保存组账号的管理信息

每个组记录一行,以:分割为4个字段

[root@room1pc01 桌面]# head -1 /etc/gshadow

root:::

字段1:组账号的名称

字段2:加密后的密码字符串

字段3:本组的管理员列表

字段4:本组的成员用户列表

groupadd添加组账号

格式:groupadd [-g GID] 组名

[root@hydra/]#groupadd -g 600 xx1

[root@hydra/]#grep xx1 /etc/group

stugrp:x:600:

[root@hydra/]#grep xx1 /etc/gshdow

stugrp:!::

gpasswd 管理组成员

格式:gpasswd [选项] 组名

常用命令选项

-A:定义组管理员列表

-a:添加组成员,每次只能添加一个

-d:删除组成员,每次只能删除一个

-M:定义组成员用户列表,可设置多个

groupdel删除组

格式:groupdel 组名

删除的目标组不能是用户的基本组

[root@hydra/]#griupdel xx1

[root@hydra/]#grep xx1 /etc/group

[root@hydra/]#

————————————————————————————————

Linux基础六的更多相关文章

  1. Linux基础(六) Vim之vundle插件

    背景 Vim缺乏默认的插件管理器,所有插件的文件都散布在~/.vim下的几个文件夹中,插件的安装与更新与删除都需要自己手动来,既麻烦费事,又可能出现错误. Vundle简介 Vundle 是 Vim ...

  2. Linux基础六(网络管理)

    目录 一.网络配置 1. IP 地址配置 2. 网络配置文件 3. 虚拟机网络配置参数 二.网络命令 1. 网络环境查看命令 2. 网络测试命令 三.远程会话安全协议-SSH原理 1. SSH 原理 ...

  3. Linux基础知识第六讲,远程管理ssh操作

    目录 Linux基础知识第六讲,远程管理ssh操作 一丶什么是SSH 1.什么是SSH 2.了解域名跟端口 二丶SSH命令以及远程连接linux进行维护 1.ssh命令格式 2.scp远程终端拷贝文件 ...

  4. Linux基础入门

    第一节,linux系统简介 一.实验内容 了解 Linux 的历史,Linux 与 Windows 的区别等入门知识. 二.实验要求 阅读linux简介与历史 三.实验步骤 (一).Linux 为何物 ...

  5. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  6. Linux基础(6)

    Linux基础(六) shell脚本中的三大循环和函数知识点 一.流程控制之if结构 1.简单的if实例: #!/bin/bash var='/etc/init.d' #var='/dev/sda' ...

  7. Linux 基础(2)

    Linux 基础(二) 用户 组 及权限的相关操作 一.useradd命令选项:–u:指定用户的UID useradd –u 100 mu #指定mu的UID为100–g:指定用户所属的群组 user ...

  8. linux 基础 文件系统 用户权限

    描述Linux系统的启动过程? 1.开机自检 BIOS 2.MBR引导 3.GRUB菜单 4.加载内核 5.运行init进程 6.从/etc/inittab读取运行级别 7.根据/etc/rc.sys ...

  9. OracleOCP认证 之 Linux基础

    Linux 基础 一.SHELL 1: Shell 简介 shell 是用户和Linux 操作系统之间的接口.Linux 中有多种shell, 其中缺省使用的是bash. Linux 系统的shell ...

随机推荐

  1. NetCloud——一个网易云音乐评论抓取和分析的Python库

    在17的四月份,我曾经写了一篇关于网易云音乐爬虫的文章,还写了一篇关于评论数据可视化的文章.在这大半年的时间里,有时会有一些朋友给我发私信询问一些关于代码方面的问题.所以我最近抽空干脆将原来的代码整理 ...

  2. Mysql高可用架构(主从同步)

    做高可用的优势 1.成本低 2.解决单点故障 3.不容易遇到性能瓶颈 一 .Mysql主从同步架构搭建案例 优点如下:·在业务繁忙阶段,在从服务器上可以执行查询工作(即我们常说的读写分离),降低主服务 ...

  3. vs2012编译在win7 32位电脑和win xp电脑上运行的win32程序遇到的问题记录

    一.win7 32位电脑: vs2012编译的64位程序是没有问题的.但编译的32位程序在别的电脑(虚拟机模拟)出错: 感觉很无语,vs这么牛逼的东西,在设计时候都不考虑这些吗? 在自己电脑C:\Wi ...

  4. 淘宝地址爬取及UI展示

    淘宝地址爬取及UI展示 淘宝国家省市区街道获取 参考 foxiswho 的 taobao-area-php 部分代码,改由c#重构. 引用如下: Autofac MediatR Swagger Han ...

  5. js 面向对象 继承

    继承方式有四种: 1.call 2.apply 3.prototype 4.for in call 和 apply 的主要区别: call 传参数只能一个一个的传, apply 因为是用数组,所以可以 ...

  6. SSD写入放大问题[转]

    原文地址:http://blog.csdn.net/cywosp/article/details/29812433 之前在SSD(Solid State Drive)上设计并实现缓存系统用于存储数据块 ...

  7. bzoj 2618: [Cqoi2006]凸多边形 [半平面交]

    2618: [Cqoi2006]凸多边形 半平面交 注意一开始多边形边界不要太大... #include <iostream> #include <cstdio> #inclu ...

  8. BZOJ 2073: [POI2004]PRZ [DP 状压]

    传送门 水题不解释 这道题的主要目的在于记录一个枚举子集的技巧 #include <iostream> #include <cstdio> #include <cstri ...

  9. BZOJ 1176: [Balkan2007]Mokia [CDQ分治]

    题意: 有一个n * n的棋盘,每个格子内有一个数,初始的时候全部为0.现在要求维护两种操作: 1)Add:将格子(x, y)内的数加上A. 2)Query:询问矩阵(x0, y0, x1, y1)内 ...

  10. JavaScript之父谈JavaScript

    本文翻译自popularity,为了更好的阅读我把部分内容进行了增删改,如果你英语比较好,建议直接阅读原文,因为这篇文章是我通过google翻译再进行修改的. 貌似(根据一位精神导师的说法)JavaS ...