首页 > 代码库 > 用户、组管理,源码包安装

用户、组管理,源码包安装

先讲解后试验,最后有截图文件

一、用户账户管理

1. 用户账户:

超级用户root(0)

程序用户(1~499)

普通用户(500~60000)

   组账户:

基本组(私有组)

附加组(公共组)

2. /etc/passwd 保存用户账户的基本信息

# grep ^root /etc/passwd

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

字段1:帐号名root

字段2:密码占位符x

字段3:UID

字段4:GID

字段5:用户全名

字段6:宿主目录

字段7:登录Shell   /sbin/nologin 不允许登录shell

3. /etc/shadow 保存密码字串/有效期等信息

# grep student /etc/shadow

student:$1$po/zD0XK$4HSh/Aeae/eJ6dNj1k7Oz1:14495:0:99999:7:::

字段1:帐号名称

字段2:加密的密码

字段3:从1970/1/1到上次修改密码的天数

字段4:多少天之内不能修改密码,默认值为0

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

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

字段7:密码过期之后账户宽限时间 3+5

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

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

密码过期:一旦超过密码过期日期,用户成功登陆,Linux会强迫用户设置一个新密码,设置完成后才开启Shell程序

账户过期:若超过账户过期日期,Linux会禁止用户登陆系统,即使输入正确密码,也无法登陆

4. useradd  添加账户

-u:指定 UID 标记号

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

-e:指定帐号失效时间

-g:指定所属的基本组(组名或GID)

-G:指定所属的附加组(组名或GID)

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

-s:指定用户的登录Shell

5. passwd 设置密码

-d 清空密码

-l 锁定用户账户

-S 查看用户账户的状态

-u 解锁用户账户

--stdin 从标准输入取密码

6. 与账户相关的文件和目录

/etc/default/useradd

/etc/login.defs

/etc/skel/


主要文件

~/.bash_profile 每次登录时执行

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

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

全局

/etc/bashrc

/etc/profile

7. usermod 修改用户账户的属性

-l 更改用户账户登录名称

-L 锁定

-U 解锁

-u、-d、-e、-g、-G、-s与useradd相同

8. chage

-l 列出密码有效期

-d 3

-m 指定密码最小天数 4

-M 指定密码最大天数 5

-W 6

-I 指定密码失效后多少天锁定账户 7

-E 指定账户过期时间 YYYY-MM-DD 8


9. userdel 删除账户

-r 连同主目录一起删除

10. id 查看用户ID标识

-u 输出用户数字标识

-g 输出用户所在基本组的数字标识

-G 输出用户所在附加组的数字标识

-n 现实对应项的名称

二、组账户管理

1. /etc/group 组账号文件

# grep student /etc/group

字段1:组账户名称

字段2:密码占位符x

字段3:组账户GID号

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

2. /etc/gshadow 组账号管理信息

# grep student /etc/gshadow

字段1:组账户名称

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

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

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

3. groupadd 添加组账户

-g 指定gid


4. gpasswd 设置组密码和组管理

-A 定义组管理员列表

-a 添加组成员

-d 删除组成员

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

-r 移除密码

5. newgrp 切换所属基本组


6. groupdel 删除组


7. groups 查看用户组信息


三、源码包的编译安装

1. 准备开发环境gcc、g++、make

2. 源码安装基本过程

tar 解包/usr/src

./configure 配置

make 编译

make install 安装





一、用户账号管理

1. 创建账户

[root@localhost ~]# wc -l /etc/passwd /etc/shadow //统计有多少用户

[root@localhost ~]# head -n 2 /etc/passwd //显示头两行

[root@localhost ~]# head -n 2 /etc/shadow //显示头两行

[root@localhost ~]# id student //查看student用户id标示

[root@localhost ~]# tail -n 2 /etc/passwd /etc/shadow //显示尾两行

[root@localhost ~]# ls -l /home/ //列出/home/的内容

[root@localhost ~]# useradd student //新建用户student

[root@localhost ~]# id student //查看student用户id标示

[root@localhost ~]# tail -n 2 /etc/passwd /etc/shadow //查看/etc/passwd和/etc/shadow的尾两行

[root@localhost ~]# ls -l /home/ //列出/home/的内容

[root@localhost ~]# grep student /etc/passwd //检索/etc/passwd种含有student的信息

[root@localhost ~]# grep student /etc/shadow //检索/etc/shadow种含有student的信息

[root@localhost ~]# cd ~student //切换到student的家目录

[root@localhost student]# pwd //查看当前目录

[root@localhost ~]# id zengye //查看zengye用户的id标示

[root@localhost ~]# useradd zengye //新建用户zengye

[root@localhost ~]# grep zengye /etc/passwd /etc/shadow //检索/etc/passwd种含有zengye的信息

[root@localhost ~]# ls -ld /opt/stu01 //列出/opt/stu01/的内容

[root@localhost ~]# useradd -d /opt/stu01 stu01 //新建stu01用户家目录为/opt/stu01

[root@localhost ~]# grep stu01 /etc/passwd //检索/etc/passwd种含有stu01的信息

[root@localhost ~]# ls -ld /opt/stu01 //列出/opt/stu01/的内容

[root@localhost ~]# ls -ld /home/stu01 //列出/home/stu01/的内容

[root@localhost ~]# useradd -u 800 stu02 //新建用户stu02id标示为800

[root@localhost ~]# id stu02 //查看stu02用户的id标示

[root@localhost ~]# grep stu0 /etc/shadow //检索/etc/shadow种含有stu0的信息

[root@localhost ~]# useradd -e 2014-08-10 stu03 //新建用户stu03用户到期时间为2014-08-10

[root@localhost ~]# grep stu0 /etc/shadow //检索/etc/shadow种含有stu0的信息

[root@localhost ~]# ls -ld /home/stu04 //列出/home/stu04/的内容

[root@localhost ~]# useradd -M stu04 //新建用户stu04不建立家目录

[root@localhost ~]# ls -ld /home/stu04 //列出/home/stu04/的内容

[root@localhost ~]# useradd -s /sbin/nologin stu05 //新建用户stu05指定用户登陆的shell目录为/sbin/nologin(不能登录)

[root@localhost ~]# grep stu05 /etc/passwd //检索/etc/passwd种含有stu05的信息

[root@localhost ~]# useradd -g users stu06 //新建用户stu06默认属于users组

[root@localhost ~]# id stu06 //查看用户stu06的id标示

[root@localhost ~]# useradd -u 1000 -g users -d /opt/stu07 -e 2014-08-10 stu07 //新建用户stu07id标示为1000默认属于users组家目录为/opt/stu07账户到期时间为2004-8-10

[root@localhost ~]# id stu07 //查看stu07的id标示

[root@localhost ~]# ls -ld /opt/stu07/ //列出/opt/stu07/的内容

[root@localhost ~]# grep stu07 /etc/shadow //检索/etc/shadow种含有stu07的信息

2. 设置密码

[root@localhost ~]# grep stu01 /etc/passwd /etc/shadow //检索/etc/shadow和/etc/passwd中含有stu01的信息

[root@localhost ~]# passwd stu01 //为stu01用户设置密码

[root@localhost ~]# grep stu01 /etc/passwd /etc/shadow //检索/etc/shadow和/etc/passwd中含有stu01的信息

[root@localhost ~]# passwd -d stu01 //清空stu01的密码

[root@localhost ~]# grep stu01 /etc/passwd /etc/shadow //检索/etc/shadow和/etc/passwd中含有stu01的信息

[root@localhost ~]# passwd stu01 //为stu01用户设置密码

[root@localhost ~]# passwd -S stu01 //stu01用户的状态

[root@localhost ~]# passwd -l stu01 //锁定stu01用户

[root@localhost ~]# passwd -S stu01 //stu01用户的状态

[root@localhost ~]# passwd -u stu01 //解锁stu01用户

[root@localhost ~]# passwd -S stu01 //stu01用户的状态

[root@localhost ~]# echo "redhat" | passwd --stdin stu02 //通过管道给stu02用户设置密码“redhat”

[root@localhost ~]# su - stu02 //切换到stu02用户

[stu02@localhost ~]$ whoami //查询当前用户是谁

[stu02@localhost ~]$ pwd //显示当前目录

[stu02@localhost ~]$ passwd //为当前用户更改密码

3. 与账户新建相关的文件

[root@localhost ~]# cat /etc/default/useradd //用户添加的默认配置文档

[root@localhost ~]# grep -vE "^#|^$" /etc/login.defs //密码有效控制期默认配置文档

[root@localhost ~]# ls -a /etc/skel/ //用户的初始配置文件来源

4. 修改账户信息

[root@localhost ~]# grep stu01 /etc/shadow //检索/etc/shadow中含有stu01的信息

[root@localhost ~]# usermod -e 2014-08-20 stu01 //修改stu01的账户到期时间为2014-08-20

[root@localhost ~]# grep stu01 /etc/shadow //检索/etc/shadow中含有stu01的信息

[root@localhost ~]# grep stu05 /etc/passwd //检索/etc/passwd中含有stu05的信息

[root@localhost ~]# su - stu05 //切换到stu05用户

[root@localhost ~]# usermod -s /bin/bash stu05 //更改stu05用户的登录shell位置

[root@localhost ~]# grep stu05 /etc/passwd //检索/etc/passwd中含有stu05的信息

[root@localhost ~]# su - stu05 //切换到stu05用户

[root@localhost ~]# id zengye //查看zenye用户的id标示

[root@localhost ~]# usermod -l feige zengye //更改zengye用户名为feige

[root@localhost ~]# id zengye //查看zenye用户的id标示

[root@localhost ~]# id feige //查看feige用户的id标示

4、删除账户

[root@localhost ~]# grep stu07 /etc/passwd /etc/shadow //检索/etc/shadow和/etc/passwd中含有stu07的信息

[root@localhost ~]# ls -ld /opt/stu07/ //列出/opt/stu07/的内容

[root@localhost ~]# ls -l /var/spool/mail/stu07 //列出/var/spool/mial/stu07用户的内容

[root@localhost ~]# userdel -r stu07 //删除用户stu07并删除用户的宿主目录和用户邮件

[root@localhost ~]# grep stu07 /etc/passwd /etc/shadow //检索/etc/shadow和/etc/passwd中含有stu07的信息

[root@localhost ~]# ls -ld /opt/stu07/ //列出/opt/stu07/的内容

[root@localhost ~]# ls -l /var/spool/mail/stu07 //列出/var/spool/mial/stu07用户的内容

[root@localhost ~]# grep stu06 /etc/passwd /etc/shadow //检索/etc/shadow和/etc/passwd中含有stu06的信息

[root@localhost ~]# ls -ld /home/stu06/ //列出/opt/stu06/的内容

[root@localhost ~]# ls -l /var/spool/mail/stu06 //列出/var/spool/mial/stu06用户的内容

[root@localhost ~]# userdel stu06 //删除stu06用户

[root@localhost ~]# grep stu06 /etc/passwd /etc/shadow //检索/etc/shadow和/etc/passwd中含有stu06的信息

[root@localhost ~]# ls -ld /home/stu06/ //列出/opt/stu06/的内容

[root@localhost ~]# ls -l /var/spool/mail/stu06 //列出/var/spool/mial/stu06用户的内容

将系统中创建的普通账户全部删除 -r

5. 与账户新建相关的文件

[root@localhost ~]# grep byebye ~/.bashrc //设置别名永久生效

alias byebye=‘shutdown -k now‘

[root@localhost ~]# source ~/.bashrc //强制更新~/.bashrc 文件

[root@localhost ~]# byebye

6. chage

[root@localhost ~]# chage -l root //列出root用户的有效期信息

[root@localhost ~]# chage -E 2014-08-30 root //指定root用户的账号过期时间为2014-08-20

[root@localhost ~]# grep root /etc/shadow //检索/etc/shadow中与root有关的信息

[root@localhost ~]# chage -l root //列出root用户的有效期信息

[root@localhost ~]# id root //查看root用户的id标示

二、组账号管理

1. 查看组相关配置文件

[root@localhost ~]# head -n 1 /etc/group //查看头两行

[root@localhost ~]# head -n 1 /etc/gshadow //查看头两行

2. 创建组

[root@localhost ~]# grep stugrp /etc/group //检索/etc/group中与stugrp组有关的信息

[root@localhost ~]# groupadd -g 800 stugrp //新建组指定id为800

[root@localhost ~]# grep stugrp /etc/group //检索/etc/group中与stugrp组有关的信息

3. 设置组管理员

[root@localhost ~]# useradd stu01 //新建用户stu01

[root@localhost ~]# useradd stu02 //新建用户stu02

[root@localhost ~]# useradd stu03 //新建用户stu03

[root@localhost ~]# gpasswd -A stu01 stugrp //设置stugrp组的管理员

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

[root@localhost ~]# gpasswd -A "" stugrp           //取消管理员

4. 添加单个用户到组中

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/group中与stugrp组有关的信息

[root@localhost ~]# gpasswd -a stu01 stugrp //将用户stu01加入stugrp组

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/group中与stugrp组有关的信息

5. 添加多个用户到组中

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

[root@localhost ~]# gpasswd -M stu02,stu03 stugrp //将stu02,stu03用户加入组stugrp

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

6. 将组里面账户删除

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

[root@localhost ~]# gpasswd -d stu02 stugrp //将stu02删除出组stugrp

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

[root@localhost ~]# gpasswd -d stu03 stugrp //将stu03删除出组stugrp

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

7. 设置组密码

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

[root@localhost ~]# gpasswd stugrp //为stugrp组设置密码

[root@localhost ~]# grep stugrp /etc/gshadow //检索/etc/gshadow中与stugrp组有关的信息

[root@localhost ~]# su - stu01 //切换到stu01用户

[stu01@localhost ~]$ id //查看stu01的用户id

[stu01@localhost ~]$ newgrp stugrp //将stu01用户临时加入组stugrp

[stu01@localhost ~]$ id //查看stu01的用户id

[stu01@localhost ~]$ groups //查看当前用户属于哪个组

8. 删除组 

[root@localhost ~]# groupdel stugrp //删除组stugrp

[root@localhost ~]# grep stugrp /etc/group /etc/gshadow //检索/etc/gshadow和/etc/group中与stugrp组有关的信息

[root@localhost ~]# groupadd gr01 //创建组gr01

[root@localhost ~]# useradd -g gr01 test01 //新建用户test01默认属于gr01组

[root@localhost ~]# groups test01 //查看test01输入哪个组

test01 : gr01

[root@localhost ~]# groupdel gr01 //删除组gr01

groupdel:不能删除用户的主组。

[root@localhost ~]# usermod -g users test01 //将test01的默认组更改为users

[root@localhost ~]# groups test01 //查看test01属于哪个组

test01 : users

[root@localhost ~]# groupdel gr01 //删除gr01组

三、源码包的安装

①配置YUM仓库

放入rhel5.9 iso,确保电源OK

[root@localhost ~]# cat /etc/yum.repos.d/server.repo //在整个目录新建*.repo的文档

[rhel-Server]

name=Red Hat Enterprise Linux Server 

baseurl=file:///misc/cd/Server/

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

②安装gcc环境

[root@localhost ~]# yum -y install gcc* //安装gcc*相关的软件

③解压httpd到/usr/src

[root@localhost ~]# cd /root/Desktop/ //切换到桌面

[root@localhost Desktop]# ls //列出桌面内容

httpd-2.2.25.tar.gz  

[root@localhost Desktop]# tar -zxvf httpd-2.2.25.tar.gz -C /usr/src/ //解压到/usr/src

④安装httpd

[root@localhost Desktop]# cd /usr/src/httpd-2.2.25/ //切换目录到解压位置

[root@localhost httpd-2.2.25]# ./configure --prefix=/usr/local/apache2

[root@localhost httpd-2.2.25]# echo $?

0

[root@localhost httpd-2.2.25]# make

[root@localhost httpd-2.2.25]# echo $?

0

[root@localhost httpd-2.2.25]# make install

[root@localhost httpd-2.2.25]# echo $?

0

[root@localhost httpd-2.2.25]# /usr/local/apache2/bin/apachectl start

⑤测试

http://localhost



wKiom1PY9iPzfyGTAAXzl3KVbs4487.jpg

wKiom1PY9iajtqv9AAZXlXennv8287.jpg

wKioL1PY90Pxi8ieAAbifK-qTws726.jpg

wKiom1PY9izhDyy4AAZ6Lm_THHU506.jpg

wKiom1PY9i2SZ6zOAAL_1BDAGtQ273.jpg

wKioL1PY90nA1yerAAQhCPVs95k045.jpg

wKiom1PY9jPTzLeEAAbm11sumbI938.jpg

wKioL1PY90-S0UN8AAV08lgh6c4926.jpg

wKioL1PY91CStK9VAAHA_9tSNGs176.jpg

wKioL1PY91LzwCj8AAWpCBmhSd4104.jpg

wKiom1PY9jqxD64iAAKoxvKJkiQ942.jpg

wKioL1PY91SSqITOAAFejSlp7xA215.jpg

wKioL1PY91XxPZafAAIOeJbQcxA222.jpg

wKiom1PY9jyD9jvwAADRKaNwXj4868.jpg

wKioL1PY91fRMPTqAAEwWb7AOK4297.jpg

wKioL1PY91mRwlanAASt4-alCcs187.jpg