admin-5

戏子无情 提交于 2020-01-16 16:47:22

Admin05

useradd 添加用户
usermod 修改用户属性
userdel -r 删除用户

groupadd 添加组
gpasswd -a | -d | 管理组成员
groupdel 删除组
groupmod 修改组属性

##############################

用户管理

用户账号:1、可以登录操作系统
2、实现访问控制(不同的用户的访问权限不同)

组账号:方便对用户的管理(权限方面)

唯一标识:UID GID (相当于身份证号)

管理员的UID:0


组分类:基本组(私有组) 附加组(从属组 公共组)

 


Linux中一个用户至少属于一个组
useradd tom,Linux会默认创建一个tom组,再手动将tom加入‘yeshou’‘shuaige’组
其中tom组是基本组,‘yeshou’‘shuaige’组是附加组。

【 Linux默认创建的组,叫基本组;后来添加的组,叫附加组】

 

########################################################

添加用户
useradd [选项]... 用户名

常用命令选项
-u 用户id、-d 家目录路径、-s 登录Shell
-g 基本组、-G 附加组


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[root@server0 ~]# useradd dc
[root@server0 ~]# groupadd er 创建组
[root@server0 ~]# groupadd tedu
[root@server0 ~]# groupadd shuaige
[root@server0 ~]# useradd -u 1100 -g er -G shuaige -d /opt/dachui -s /sbin/nologin dc1

[root@server0 ~]# id dc
uid=1010(dc) gid=1010(dc) 组=1010(dc)
[root@server0 ~]# id dc1
uid=1100(dc1) gid=1011(er) 组=1011(er),1013(shuaige)1

查看家目录
[root@server0 ~]# ls /home/
dc student
[root@server0 ~]# ls /opt/
dachui

【用户基本信息存放在 /etc/passwd 文件】
[root@server0 ~]# grep dc /etc/passwd
dc:x:1010:1010::/home/dc:/bin/bash
dc1:x:1100:1011::/opt/dachui:/sbin/nologin
用户名:密码占位符:UID:基本组的GID:描述信息:家目录:解释器程序

++++++++++++++++++++
vim
命令模式下输入:
gg 首行
G 尾行

 

 

+++++++++++++++++++++++++++++++++++++
-s 登录shell(解释器)

用户----->解释器----->内核 ----->硬件

[root@server0 ~]# cat /etc/shells //查看解释器
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh


/sbin/nologin:禁止用户登录系统

[root@server0 ~]# useradd -s /sbin/nologin nsd10
[root@server0 ~]# grep nsd10 /etc/passwd
nsd10:x:1206:1207::/home/nsd10:/sbin/nologin


##############################################

管道操作 |
将前面命令的输出结果,交由后面命令再处理一次,最后输出以最后一条命令为准

请显示/etc/passwd 的8-12行内容?

# cat -n /etc/passwd
# cat -n /etc/passwd | head -12
# cat -n /etc/passwd | head -12 | tail -5

#ifconfig | less

#ls --help | less

#grep root /etc/passwd
#grep root /etc/passwd | grep bash


##################################################

重定向
>:覆盖重定向
>> :追加重定向
将前面命令的输出结果,写入到文本文件中

[root@server0 ~]# head -3 /etc/passwd > /opt/pass.txt
[root@server0 ~]# cat /opt/pass.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

[root@server0 ~]# hostname
server0.example.com
[root@server0 ~]# hostname > /opt/pass.txt
[root@server0 ~]# cat /opt/pass.txt
server0.example.com

[root@server0 ~]# head -2 /etc/passwd >> /opt/pass.txt
[root@server0 ~]# cat /opt/pass.txt
server0.example.com
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

 

ehco 在屏幕输出用户想输出的内容

[root@server0 ~]# echo hello the world
hello the world


[root@server0 ~]# echo "A.tedu.cn" > /etc/hostname
[root@server0 ~]# echo nameserver 172.25.254.254 > /etc/resolv.conf
[root@server0 ~]# cat /etc/resolv.conf
nameserver 172.25.254.254

[root@server0 ~]# echo 123456 > /opt/1.txt
[root@server0 ~]# cat /opt/1.txt
123456


######################################
设置登录密码
使用passwd命令
交互式:passwd [用户名]
非交互式:echo '密码' | passwd --stdin 用户名

[root@server0 ~]# passwd nsd01
更改用户 nsd01 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。


【用户密码信息存放在 /etc/shadow 文件】
[root@server0 ~]# head -1 /etc/shadow
root:$6$UiGI4Tc2$htsXYn5cJnOqv3P1VLcUSgfjDu2pL5yiJBuua6foZAHdwqeuLHfYUfS/vBn27Wjvoel8EJgtdsMjyquqvKAmf1:16261:0:99999:7:::
用户名:密码加密字符串:上一次加密的时间【1970年1月1日至今的天数】:最短使用期限:最长使用期限:提前7天警告:用户不过期


############################################################
修改用户属性(用户已经存在了)
usermod [选项]... 用户名
常用命令选项
-u 用户id、-d 家目录路径、-s 登录Shell
-g 基本组、
-G 附加组

[root@server0 ~]# useradd nsd11
[root@server0 ~]# groupadd tarena
[root@server0 ~]# id nsd11

[root@server0 ~]# grep nsd11 /etc/passwd

[root@server0 ~]# usermod -u 1400 -G tarena -d /opt/nsd11 -s /sbin/nologin nsd11

[root@server0 ~]# grep nsd11 /etc/passwd
nsd11:x:1400:1301::/opt/nsd11:/sbin/nologin
[root@server0 ~]# id nsd11
uid=1400(nsd11) gid=1301(nsd11) 组=1301(nsd11),1203(tarena)


补充:
可以利用vim修改/etc/passwd文件内容
但是如果改错,Linux可能会不承认这个用户!


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
删除用户
userdel [-r] 用户名 #将该用户的家目录一起删除

[root@server0 ~]#userdel nsd4
[root@server0 ~]#userdel -r nsd5

[root@server0 ~]# userdel -r alex
[root@server0 ~]# id alex
id: alex: no such user

 


#########################################################
添加组
groupadd [-g 组ID] 组名
【组基本信息存放在 /etc/group 文件】


[root@server0 ~]# head -1 /etc/group
root:x:0:
组名:密码:GID:成员列表

[root@server0 ~]# grep stugrp /etc/group
stugrp:x:1001:

[root@server0 ~]# groupadd stugrp
[root@server0 ~]# grep stugrp /etc/group

[root@server0 ~]# useradd harry
[root@server0 ~]# useradd natasha
[root@server0 ~]# useradd jack
[root@server0 ~]# useradd kenji


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
管理组成员
gpasswd -a 用户名 组名 添加
gpasswd -d 用户名 组名 删除
【组成员信息存放在 /etc/gshadow 文件】

[root@server0 ~]# grep stugrp /etc/group
stugrp:x:1001:
[root@server0 ~]# gpasswd -a kenji stugrp
[root@server0 ~]# grep stugrp /etc/group
stugrp:x:1001:kenji

[root@server0 ~]# gpasswd -a harry stugrp
[root@server0 ~]# gpasswd -a natasha stugrp
[root@server0 ~]# gpasswd -a kenji stugrp
[root@server0 ~]# grep stugrp /etc/group
stugrp:x:1001:kenji,harry,natasha

[root@server0 ~]# gpasswd -d kenji stugrp
[root@server0 ~]# grep stugrp /etc/group
stugrp:x:1001:harry,natasha


++++++++++++++++++++++++++++++++++++
删除组
使用groupdel命令
groupdel 组名

[root@server0 ~]# groupdel stugrp
[root@server0 ~]# grep stugrp /etc/group

 


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
修改组属性
groupmod [-g 组ID] [-n 新组名] 组名

[root@server0 ~]# groupadd marhet
[root@server0 ~]# groupmod -g 1100 -n tarena market

[root@server0 ~]# grep market /etc/group //确认结果
market:x:1100:


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
案例1:配置用户和组账号

新建用户 alex,其用户ID为3456,密码是flectrag
创建下列用户、组以及组的成员关系:
一个名为 adminuser 的组
一个名为 natasha 的用户,其属于 adminuser 组,这个组是该用户的从属组 gpasswd -a natasha adminuser
一个名为 harry 的用户,其属于 adminuser 组,这个组是该用户的从属组 gpasswd -a harry adminuser
一个名为 sarah 的用户,其在系统中没有可交互的 Shell,并且不是 adminuser 组的成员
natasha 、harry、sarah 的密码都要设置为 flectrag

[root@server0 ~]# useradd -u 3456 alex
[root@server0 ~]# echo flectrag | passwd --stdin alex

[root@server0 ~]# groupadd adminuser
[root@server0 ~]# useradd -G adminuser natasha
[root@server0 ~]# useradd -G adminuser harry
[root@server0 ~]# useradd -s /sbin/nologin sarah

[root@server0 ~]# echo flectrag | passwd --stdin natasha
[root@server0 ~]# echo flectrag | passwd --stdin harry
[root@server0 ~]# echo flectrag | passwd --stdin sarah

############################################################
tar备份与恢复

归档与压缩:
1、方便对零散文件管理
2、减少空间的占用

常见的压缩格式及命令工具(不支持跨平台):
gzip、gunzip ---> .gz
bzip2、bunzip2 ---> .bz2
xz、unxz ---> .xz

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
tar工具的常用选项
-c:创建归档
-x:释放归档
-f:指定归档文件名称 **
-z、-j、-J:调用 .gz、.bz2、.xz 格式的工具进行处理
-t:显示归档中的文件清单
-C(大写):指定释放的位置
格式:tar 选项 /路径/压缩包的名字 被归档及压缩的文件
红色的是压缩文件

[root@server0 ~]# tar -cf file.tar.gz /home/ /etc/passwd
[root@server0 ~]# tar -zcf /opt/nsd01.tar.gz /home/ /etc/passwd
[root@server0 ~]# ls /opt/
nsd01.tar.gz rh

[root@server0 ~]# mkdir /nsd
[root@server0 ~]# ls /nsd/
[root@server0 ~]# tar -xf /opt/nsd01.tar.gz -C /nsd/
[root@server0 ~]# ls /nsd/
[root@server0 ~]# ls /nsd/etc/passwd
[root@server0 ~]# ls /nsd/etc/

[root@server0 ~]# tar -tf /opt/nsd01.tar.gz

 

#################################

tar -zcf 备份文件.tar.gz 被备份的文档....
tar -jcf 备份文件.tar.bz2 被备份的文档....
tar -Jcf 备份文件.tar.xz 被备份的文档....

##################################
-P:保留绝对路径

 

 


##################################

案例2:创建一个备份包

使用 tar 工具完成以下备份任务:
创建一个名为 /root/backup.tar.bz2 的归档文件
其中包含 /usr/local 目录中的内容
tar 归档必须使用 bzip2 进行压缩

[root@server0 ~]# tar -jcf /root/backup.tar.bz2 /usr/local/

[root@server0 ~]# ls /root/
anaconda-ks.cfg backup.tar.bz2 file.tar.gz
[root@server0 ~]# tar -tf /root/backup.tar.bz2
//查看归档文件内容


#########################################################
[root@server0 ~]# date
2019年 03月 06日 星期三 10:53:27 CST //CST指的是时区

[root@server0 ~]# date +%Y //显示年份
[root@server0 ~]# date +%m //显示月份
[root@server0 ~]# date +%d //显示日期
[root@server0 ~]# date +%Y%m%d //显示年月日

[root@server0 ~]# date +%Y-%m-%d //显示年月日

[root@server0 ~]# date +%F //显示年月日


++++++++++++++++++++++++++++++++
修改时间
[root@server0 ~]# date -s "年-月-日 时:分:秒"
//时间顶点 1970-1-1,不能超过这个时间

[root@server0 ~]# date

[root@server0 ~]# date -s "2008-1-1 12:20:30"

[root@server0 ~]# date

 

#########################################################
NTP时间同步

服务:NTP服务器为客户机提供标准时间

服务端:classroom时间同步服务器

客户端:虚拟机Server

1、安装chrony客户端软件
[root@server0 ~]# yum -y install chrony

[root@server0 ~]# rpm -q chrony
chrony-1.29.1-1.el7.x86_64

2、修改配置文件/etc/chrony.conf,指定服务端位置
[root@server0 ~]# vim /etc/chrony.conf
#server 0.rhel.pool.ntp.org iburst //开头加上#注释
#server 1.rhel.pool.ntp.org iburst //开头加上#注释
#server 2.rhel.pool.ntp.org iburst //开头加上#注释
server classroom.example.com iburst //指定服务端位置

3、启动客户端chronyd服务
deamon:守护进程,守护程序(希腊神话中的守护精灵)
[root@server0 ~]# systemctl restart chronyd //重启服务
[root@server0 ~]# systemctl enable chronyd //设置随机自启动

4、验证:
[root@server0 ~]# date -s "2008-12-11 13:13:30" //设置错时间
2008年 12月 11日 星期四 13:13:30 CST
[root@server0 ~]# systemctl restart chronyd
[root@server0 ~]# date
2008年 12月 11日 星期四 13:13:52 CST
[root@server0 ~]# date
2019年 03月 06日 星期三 11:21:41 CST

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!