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

admin-5的更多相关文章

  1. Django admin定制化,User字段扩展[原创]

    前言 参考上篇博文,我们利用了OneToOneField的方式使用了django自带的user,http://www.cnblogs.com/caseast/p/5909248.html , 但这么用 ...

  2. Django admin美化插件suit应用[原创]

    前言 由于比较懒,自己弄了一个用户验证,没有自己写后台,用了django自带的user认证,并通过admin直接进行管理,但默认的admin并不漂亮,于是使用了这个django-suit插件,效果对比 ...

  3. OpenStack Mitaka 版本中的 domain 和 admin

    OpenStack 的 Keystone V3 中引入了 Domain 的概念.引入这个概念后,关于 admin 这个role 的定义就变得复杂了起来. 本文测试环境是社区 Mitaka 版本. 1. ...

  4. Django Admin

    //设置admin列表名称 def __str__(self): return u'%s' % self.name class Meta: db_table ="数据库的那个表" ...

  5. Django基础,Day3 - 编写 django admin

    Django 自带了一个简易编辑后台,可以称为"内容发布器",一般是提供给站点管理员使用的,其最开始也是开发出来提供给报社编辑和发布新闻使用的. 创建超级管理员: $ python ...

  6. SB Admin 2 学习笔记1

    需要掌握能够搭建起一个 dashboard 的能力, 因为很少有运维开发团队有专职的前端, bootstrap 也要讲个基本法. SB Admin 2, 一个免费的 bootstrap theme, ...

  7. 【Django】--Models 和ORM以及admin配置

    Models 数据库的配置 1    django默认支持sqlite,mysql, oracle,postgresql数据库 <1>sqlite django默认使用sqlite的数据库 ...

  8. Django admin 权威指南(一)

    版本: Django 1.10 此部分由官方文档<6.5.1 The Django admin site>翻译而来. 6.5.1.1 概览 默认情况下,使用startproject的时候, ...

  9. 【原创】kafka admin源代码分析

    admin包定义了命令行的一些实现 一.AdminOperationException.scala 一个异常类,表示执行admin命令时候抛出的异常 二.AdminUtils.scala admin一 ...

  10. [django]Django站点admin支持中文显示和输入设置

    正文: Django站点admin支持中文输入设置,操作如下: 1 需要确定的你的数据库的client客户端和服务端的编码设置为utf-8,如果不是,请将其设置成utf-8编码,我采用mysql,详情 ...

随机推荐

  1. Windows下PyMC安装

    先安装Anaconda2 然后conda install -c https://conda.binstar.org/pymc pymc

  2. erlang中http请求

    1..app文件中 {application,backend,[  {description,"ebank backend"},  {vsn,1.0},  {modules,[]} ...

  3. complex类的定义和实现

    #include<iostream> #include<cmath> using namespace std; class complex { public: complex( ...

  4. php字符串转数组

    下面代码包括了含有中文汉字的字符. function str2arr($str) { $length = mb_strlen($str, 'utf-8'); $array = []; for ($i= ...

  5. hive lock命令的使用

    1.hive锁表命令 hive> lock table t1 exclusive;锁表后不能对表进行操作 2.hive表解锁: hive> unlock table t1; 3.查看被锁的 ...

  6. jquery slideDown 控制div出现的方向

    .custom-popup { position: absolute; /*top: 0;*/ 上向下 ; 下向上 ; ; display: none; width: 100%; height: 10 ...

  7. 闪付卡(QuickPass)隐私泄露原理

    0×00 前言 说到闪付卡,首先要从EMV开始,EMV是由Europay,MasterCard和VISA制定的基于IC卡的支付标准规范.目前基于EMV卡的非接触式支付的实现有三个:VISA的payWa ...

  8. 类 __getitem__ __getattr__ __call__

    __getitem__ 实例虽然能作用于for循环,看起来和list有点像,但是,把它当成list来使用还是不行,要表现得像list那样按照下标取出元素,需要实现__getitem__()方法 __g ...

  9. Arm11-mini6410入坑

    Mini6410 学习Stm32的时候原子哥的资料真全啊,而且原子哥在他论坛也解答问题.然而现在学习ARM买了一套友善之臂的开发板,官方的资料只能刚好入门而已,其实入门都算不上.看了一下,网上的资料很 ...

  10. Java中8种常见的排序方法

    排序方法的演示1)插入排序(直接插入排序.希尔排序)2)交换排序(冒泡排序.快速排序)3)选择排序(直接选择排序.堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少 ...