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

1.1 问题

本例要求创建下列用户、组以及组的成员关系:

  1. 新建用户 alex,其用户ID为3456,密码是flectrag
  2. 创建一个名为 adminuser 的组
  3. 创建一个名为 natasha 的用户,其属于 adminuser 组,这个组是该用户的从属组
  4. 创建一个名为 harry 的用户,其属于 adminuser 组,这个组是该用户的从属组
  5. 创建一个名为 sarah 的用户,其在系统中没有可交互的 Shell,并且不是 adminuser 组的成员
  6. natasha 、harry、sarah 的密码都要设置为 flectrag

1.2 步骤

实现此案例需要按照如下步骤进行。

步骤一:创建组账号

  1. [root@server0 ~]# groupadd adminuser

步骤二:按照要求的属性创建用户账号

  1. [root@server0 ~]# useradd -u 3456 alex
  2. [root@server0 ~]# useradd -G adminuser natasha
  3. [root@server0 ~]# useradd -G adminuser harry
  4. [root@server0 ~]# useradd -s /sbin/nologin sarah

步骤三:为用户设置登录密码

  1. [root@server0 ~]# echo flectrag | passwd --stdin alex
  2. 更改用户 alex 的密码 。
  3. passwd:所有的身份验证令牌已经成功更新。
  4. [root@server0 ~]# echo flectrag | passwd --stdin natasha
  5. 更改用户 natasha 的密码 。
  6. passwd:所有的身份验证令牌已经成功更新。
  7. [root@server0 ~]# echo flectrag | passwd --stdin harry
  8. 更改用户 harry 的密码 。
  9. passwd:所有的身份验证令牌已经成功更新。
  10. [root@server0 ~]# echo flectrag | passwd --stdin sarah
  11. 更改用户 sarah 的密码 。
  12. passwd:所有的身份验证令牌已经成功更新。

2 案例2:创建一个备份包

2.1 问题

本例要求使用 tar 工具完成以下备份任务:

  1. 创建一个名为 /root/backup.tar.bz2 的归档文件
  2. 其中包含 /usr/local 目录中的内容
  3. tar 归档必须使用 bzip2 进行压缩

2.2 方案

制作归档压缩包:

  • tar -zPcf 备份文件.tar.gz 文档....
  • tar -jPcf 备份文件.tar.bz2 文档....
  • tar -JPcf 备份文件.tar.xz 文档....

查看归档压缩包:

  • tar -tf 备份文件

释放归档压缩包:

  • tar -xf 备份文件 [-C 目标目录]

2.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:创建备份文件

使用tar命令制作归档备份,结合-j选项调用bzip2压缩工具,保留绝对路径:

  1. [root@server0 ~]# tar jcPf /root/backup.tar.bz2 /usr/local/

步骤二:确认结果

  1. [root@server0 ~]# ls -lh /root/backup.tar.bz2         //确认文件
  2. -rw-r--r--. 1 root root 1.9K 12月 23 23:22 /root/backup.tar.bz2
  3. [root@server0 ~]# tar tPf /root/backup.tar.bz2         //确认内容
  4. /usr/local/
  5. /usr/local/bin/
  6. /usr/local/bin/lab
  7. /usr/local/etc/
  8. /usr/local/games/

3 案例3:配置NTP网络时间客户端

3.1 问题

本例要求配置虚拟机 server0,能够自动校对系统时间。相关信息如下:

  1. NTP服务器位于 classroom.example.com
  2. 此客户机的系统时间应当与NTP服务器的时间保持同步

3.2 方案

NTP服务端可以为客户端提供标准的日期时间。

在RHEL7主机中可以配置软件包chrony来使用NTP时间同步。

3.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:确认已安装NTP客户端软件包chrony

通常系统会默认安装此软件包:

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

如果检查发现此软件包没有安装,请通过yum命令安装:

  1. [root@server0 ~]# yum -y install chrony
  2. .. ..

如果发现此软件包已经安装,但配置文件/etc/chrony.conf损坏或信息丢失,可删除此文件后重新安装chrony软件包:

  1. [root@server0 ~]# rm -rf /etc/chrony.conf
  2. [root@server0 ~]# yum -y reinstall chrony
  3. 已加载插件:langpacks
  4. 正在解决依赖关系
  5. --> 正在检查事务
  6. ---> 软件包 chrony.x86_64.0.1.29.1-1.el7 将被 重新安装
  7. --> 解决依赖关系完成
  8. .. ..

步骤二:调整NTP客户端配置

1)修改/etc/chrony.conf文件内的server配置

移除不可用的NTP服务器记录,正确添加可用的记录:

  1. [root@server0 ~]# vim /etc/chrony.conf
  2. .. ..
  3. #server 0.rhel.pool.ntp.org iburst         //注释掉默认的server配置,
  4. #server 1.rhel.pool.ntp.org iburst
  5. #server 2.rhel.pool.ntp.org iburst
  6. #server 3.rhel.pool.ntp.org iburst
  7. server classroom.example.com iburst         //添加新的配置
  8. .. ..

2)开启NTP时间同步

  1. [root@server0 ~]# timedatectl                 //查看现有状态
  2. .. ..
  3. NTP enabled: no                        //NTP可能尚未启用
  4. NTP synchronized: no                         //尚未完成过一次NTP同步
  5. .. ..
  6. [root@server0 ~]# timedatectl set-ntp yes         //启用NTP同步
  7. [root@server0 ~]# timedatectl             //查看启用后的状态
  8. .. ..
  9. NTP enabled: yes                        //NTP已经启用
  10. NTP synchronized: no                         //尚未完成过一次NTP同步
  11. .. ..

步骤三:测试NTP时间同步

1)先设置一个错误的系统日期时间

  1. [root@server0 ~]# date -s '2001-09-11 11:30:00'             //调整日期时间
  2. 2001年 09月 11日 星期二 11:30:00 CST
  3. [root@server0 ~]# date                                     //确认调整结果
  4. 2001年 09月 11日 星期二 11:30:01 CST

2)启动系统服务chronyd,并设为开机自启

  1. [root@server0 ~]# systemctl restart chronyd
  2. [root@server0 ~]# systemctl enable chronyd

3)重新查看当前的系统时间

重启chronyd服务后稍等片刻,当前系统的日期时间应该恢复正常(与NTP服务器保持一致):

  1. [root@server0 ~]# date
  2. 2016年 12月 23日 星期五 23:44:53 CST

再次执行timedatectl查看,会发现NTP synchronized的值已经变成yes:

  1. [root@server0 ~]# timedatectl
  2. .. ..
  3. NTP enabled: yes                        //NTP已经启用
  4. NTP synchronized: no                         //已经完成过一次NTP同步
  5. .. ..

4 案例4:配置一个cron任务

4.1 问题

本例要求为用户 natasha 配置一个定时任务,具体要求如下:

  1. 每天在本地时间 14:23 执行
  2. 需要完成的任务操作为 /bin/echo hiya

4.2 方案

配置格式可参考 /etc/crontab 文件:

  1. 分 时 日 月 周 任务命令行(绝对路径)

在表示各段的时间点时,除了明确的数值以外,还可以参考以下形式:

  • *:匹配范围内任意时间
  • ,:分隔多个不连续的时间点
  • -:指定连续时间范围
  • /n:指定时间频率,每n ...

4.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:配置crontab任务记录

1)确保系统服务crond可用

  1. [root@server0 ~]# systemctl restart crond
  2. [root@server0 ~]# systemctl enable crond

2)为用户natasha添加计划任务

  1. [root@server0 ~]# crontab -e -u natasha
  2. 23 14 * * * /bin/echo hiya

步骤二:检查任务是否执行

1)将系统日期时间临时调整到任务时间点前10秒左右

  1. [root@server0 ~]# date -s '14:22:50'             //设置
  2. Sat Nov 26 14:22:50 CST 2016
  3. [root@server0 ~]# date                             //确认日期时间
  4. Sat Nov 26 14:22:55 CST 2016

2)等待10秒后查看/var/log/cron日志,应该会有执行记录

  1. [root@server0 ~]# tail /var/log/cron
  2. .. ..
  3. Nov 26 14:23:02 localhost CROND[3818]: (natasha) CMD (/bin/echo hiya)

3)恢复系统日期时间

  1. [root@server0 ~]# hwclock -s                     //重设为系统时钟
  2. [root@server0 ~]# date                             //确认日期时间
  3. Sat Nov 26 05:05:23 CST 2016

配置NTP网络时间自动校对系统时间和创建备份文件的更多相关文章

  1. 管理员技术(四): 配置NTP网络时间客户端、 创建一个备份包、 配置用户和组账号、配置一个cron任务

    一. 配置NTP网络时间客户端 目标: 本例要求配置虚拟机 server0,能够自动校对系统时间.相关信息如下: 1> NTP服务器位于 classroom.example.com        ...

  2. 【uTenux实验】时间管理(系统时间/周期性处理/警报处理)

    1.系统时间管理 系统时间管理函数用来对系统时间进行操作,是OS的一个基础性的东西.个人认为,设置系统时间和获取系统时间对OS来说基本是可有可无的. uTenux提供了三个系统时间相关API.分别用于 ...

  3. Windows下如何检测用户修改了系统时间并且把系统时间改回来

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:Windows下如何检测用户修改了系统时间并且把系统时间改回来.

  4. 基于【CentOS-7+ Ambari 2.7.0 + HDP 3.0】搭建HAWQ数据仓库——安装配置NTP服务,保证集群时间保持同步

    一.所有节点上使用yum安装配置NTP服务yum install ntp -y 二.选定一台节点作为NTP server, 192.168.58.11修改/etc/ntp.conf vim /etc/ ...

  5. mysql(自动添加系统时间)timestamp类型字段的CURRENT_TIMESTAMP与ON UPDATE CURRENT_TIMESTAMP属性

    timestamp有两个属性,分别是CURRENT_TIMESTAMP 和ON UPDATE CURRENT_TIMESTAMP两种,使用情况分别如下: 1.CURRENT_TIMESTAMP 当要向 ...

  6. C#获取北京时间与设置系统时间

    获取北京时间 public static DateTime GetBeijingTime() { DateTime dt; // 返回国际标准时间 // 只使用 timeServers 的 IP 地址 ...

  7. C++时间标准库时间time和系统时间的使用

    #include <iostream> #include <time.h> #include <stdio.h> #include <windows.h> ...

  8. Linux 查看当前时间和修改系统时间

    一.查看和修改Linux的时区 1. 查看当前时区 命令: date -R 2. 修改设置Linux服务器时区 方法 A 命令 : tzselect 方法 B 仅限于RedHat Linux 和 Ce ...

  9. mysql 添加时间自动添加更新时间自动更新

    在数据库使用中经常使用到时间字段.常用的有创建时间和更新时间.然而在使用中想要创建时间在创建的时候自动设置为当前时间,更新时间在更新时自动更新为当前时间. 创建表 stu CREATE TABLE ` ...

随机推荐

  1. react-router(v4) 路由跳转后返回页面顶部问题

    遇到的问题 由A页面跳转到B页面,B页面停留在A页面的位置,没有返回到顶部. 问题分析 首先分析下出现此问题的原因: 在项目中使用的是 hashHistory,它是建立在 history 之上的,当路 ...

  2. luogu P5287 [HNOI2019]JOJO

    传送门 神™这题暴力能A,这出题人都没造那种我考场就想到的数据,难怪我的垃圾做法有分 先考虑没有撤销操作怎么做,因为每次插入一段一样的字符,所以我们可以把\(x\)个字符\(c\)定义为\(cx\), ...

  3. Ubuntu 16.04 总出现红色圆圈警告和检测到系统程序出现问题

    这种问题不可忽视!不可忽视!不可忽视!重要的事情说三遍!!!(一次死机,好多文件丢失,真是痛苦的经历) 自从从第三方安装了Python3.6,并将默认3.5改为3.6,导致ubuntu16.04右上角 ...

  4. pl/sql dev安装

    转载: https://www.cnblogs.com/moly/p/8287091.html https://www.cnblogs.com/wuxiaokai/p/5032984.html 安装: ...

  5. Linux下安装VMware Tools(使虚拟机支持文件拖拽)

    如图点击虚拟机找到安装VMware Tools选项,点击后会在虚拟机桌面显示一个光盘,双击进入如下页面: 选择压缩包将其复制放入Home中不带中文的文件夹: 打开终端,输入cd命令进入文件夹,将压缩包 ...

  6. C# 微信开发-----微信会员卡(二)

    主要说说如何使用微信的激活会员卡 如图: 点击激活会员卡时,要跳转到如下的图片: 要实现这个功能,首先我们在创建会员卡后就操作如下代码 #region 添加激活时的自定义字段 string custo ...

  7. Oracle中和mysql中函数的区别

    oracle                  -->                 mysqlto_char(sysdate,'yyyy-mm-dd')-->date_format(s ...

  8. MySql新增表的字段,删除表字段

    1增加两个字段: create table id_name(id int,name varchar(20));//创建原始数据表 alter table id_name add age int,add ...

  9. springboot集成mybatis源码分析-启动加载mybatis过程(二)

    1.springboot项目最核心的就是自动加载配置,该功能则依赖的是一个注解@SpringBootApplication中的@EnableAutoConfiguration 2.EnableAuto ...

  10. java 学习之环境配置

    准备JDK 到Java官网下载jdk即可,网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html. 配置开发环境 鼠 ...