最近公司内部一个需求:必须 Linux建个 ntp server ,并且 Windows可以net time \\ip 访问。

想要解决问题,还得解决前置问题。

服务器不能上网,无法直接访问外部 yum源 , 只能使用光盘了。

########### 更改yum源为 cdrom
# 光盘正确连接的情况下:
mkdir -p /media/cdrom
mount /dev/cdrom /media/cdrom yum clean all # 清缓存
cd /etc/yum.repos.d/
mkdir bak
mv *.repo ./bak # 备份
mv ./bak/CentOS-Media.repo ./ # 只留一个光盘源
yum-config-manager --enable c7-media # 启用光盘源
# 如果上面这条执行不成功,也可以修改CentOS-Media.repo 将倒数第二行 enabled=1 保存退出
yum list # 看看能否显示c7-media源
yum install zip # 测试安装,Repository 应显示 c7-media

或者:使用外网机离线下载,然后再上传到内网机上。

#--------------------------- 离线下载方式 ------------------------------
# 联网机
yum install yum-plugin-downloadonly # 安装下载工具
mkdir -p /data/rpm # 下载目录
yum install --downloadonly --downloaddir=/data/rpm samba # 下载某软件包及依赖
ll /data/rpm # 查看文件 ## 手动复制文件到内网机,或scp 或rsync
# 内网机
mkdir -p /data/samba
cd /data/samba
rsync -a 192.168.52.6:/data/rpm ./ # 从远端复制文件过来
yum localinstall *.rpm -y # 安装当前目录下所有包

为什么要使用NTP server ?  crontab 里加上 ntpdate 命令不行吗?

因为很多应用服务或程序,需要线性的时间同步,不能出现时间跳跃。ntpdate命令,会使本机时间直接跳跃到与ntp服务器同步的时间。

时间的跳跃可能会对某些应用程序数据产生不良影响。

比如:Mongodb 就需要使用ntp 服务来同步时间,官方文档说:时间不同步可能会造成分片集群或复制集节点挂机.

########### ntp server

ip a     # 本机IP 192.168.52.5

yum install -y ntp # 安装服务

ntpdate cn.pool.ntp.org # 先同步一次公网时间

# 参考:https://www.cnblogs.com/harrymore/p/9566229.html
vim /etc/ntp.conf # 配置文件 (部分修改的有注释)

driftfile /var/lib/ntp/drift

restrict default nomodify notrap nopeer noquery

restrict 127.0.0.1
restrict ::1 restrict 192.168.52.0 mask 255.255.255.0 nomodify notrap # 此网段更少限制 server cn.pool.ntp.org prefer # 优先
server asia.pool.ntp.org
server asia.pool.ntp.org
server 127.127.1.0 # 收到客户端请求,若未更新则使用本地时间 不是127.0.0.1 确实是127.127.1.0 fudge 127.127.1.0 stratum 10 # 服务器层次

systemctl start ntpd     # 启动服务 , 可能要5到15分钟才会生效

systemctl enable ntpd   # 设为开机启动

ntpq -p   # 显示 npt server 列表,* 表示当前的
ntpstat   # 显示同步状态 synchronised to NTP server (...)
watch ntpq -p  # 监视状态,注意reach变化,以poll

此时如果想要 ntpdate 则需要加参数 -u

客户端测试:

###### Linux 客户端执行测试:
ntpdate 192.168.52.5
# 成功则显示如下某一行 :
# Aug :: ntpdate[]: adjust time server 192.168.52.5 offset 0.149892 sec
# Aug :: ntpdate[]: step time server 192.168.52.5 offset 2463.842440 sec ###### Windows 测试 ():
# 设置日期和时间,Internet时间,更改设置,打勾,填上 192.168.52.5
# 点击立即更新,提示同步成功!

###### 特殊情况 smb
# 约几十台 瘦客户机 程序需要使用以下Windows命令:
net stop w32time & net start w32time & net time \\192.168.52.5
# 也就是依次执行:停止时间服务,启动时间服务,获取远端电脑时间

为了支持对windows机的响应,安装samba

# 双反斜杠\\开头 访问Linux, 通常是samba协议,跟ntp无关

yum install -y samba

vim /etc/samba/smb.conf  # 配置文件,需要设置免密访问
[global]
workgroup = SAMBA # 与win不同也没关系
server string = Samba Server Version %v # 描述
security = user # 密码登录
map to guest = Bad User # 无须用户名和密码(关键) [temp] # Windows中显示的文件夹
comment = temp directory
path = /temp # 共享目录
browseable = yes
writeable = yes
guest ok = yes # 允许guest即任意用户访问
create mode = 0777 # 权限
directory mode = 2777 # 权限

mkdir /temp           # 创建共享目录
systemctl start smb # 启动服务

使用windows测试:

# Win测试
\\192.168.52.5 # 显示共享文件夹
# cmd
net time \\192.168.52.5 # 命令成功完成
net time \\192.168.52.5 /set /y # 同步本机时间

Windows ntp server:

######### 若 Windows 开启ntp server, 只需简单几步:
# 执行下面的命令:
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" /f /v "Enabled" /t REG_DWORD /d
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /f /v "AnnounceFlags" /t REG_DWORD /d
net stop w32time & net start w32time # 在关闭防火墙的前提下,其它电脑再按上面方法访问测试。

不想用ntpd的话,用crontab加ntpdate也可以。间隔时间不长的话,时间跳跃也会很小(毫秒级)

#ntp.sh脚本

#!/bin/bash
/usr/sbin/ntpdate 192.168.1.100
/usr/sbin/hwclock -w # crontab 每隔4小时
,,,,, * * * /opt/scripts/ntp.sh >> /opt/ntp.log

centos7 ntp server & samba的更多相关文章

  1. centos7下安装samba服务器

    samba笔记: http://services.linuxpanda.tech/%E7%BD%91%E7%BB%9C%E6%96%87%E4%BB%B6%E5%85%B1%E4%BA%AB/samb ...

  2. centos7 ntp服务器配置

    一.ntp服务是什么 1. 定义 NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 2. 发展 首次记载在Internet Enginee ...

  3. Centos7 Ntp 时间服务器

    Centos7 Ntp 时间服务器 安装环境 [root@m02 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) 安装 ...

  4. Centos7 PXE Server Install Script

    #安装前配置好centos和epel yum源 #网卡ip和localip一致 localip="192.168.88.200" eth_name='eth0' dnsmasq_i ...

  5. CentOS7安装配置SAMBA服务器

    假设我们有这样一个场景 共享名 路径 权限 SHAREDOC /smb/docs 所有人员包括来宾均可以访问 RDDOCS /smb/tech 仅允许特定组的用户进行读写访问 特定组的组名为RD,目前 ...

  6. 创建一个Windows的NTP Server

    搭建一个VMware vRealize Suite的时候遇见了不少时间同步的问题, 实验室里网络与外界隔绝, 不能使用公网的NTP服务器, 所以使用文中的方法自己搭建了一个. 蛮好用的. Creati ...

  7. centos7下cups + samba共打印服务的教程

    centos7系统我们用到的不多但是这款系统比centos6功能要强大了不少,下文来介绍一篇centos7下cups + samba,共打印服务的例子,具体如下所示.   这个算是rhce课程的篇外篇 ...

  8. ubuntu server samba服务器配置

    ubuntu server samba服务器配置 samba可以实现不同操作系统电脑之间的文件共享服务 如:mac os,linux,unix,windows,等 一:安装samba服务器 ubunt ...

  9. linux 下使rdate命令支持ipv6 ntp server 同步时间

    如果使用linux 下,busybox自带的rdate命令 去ipv6 的ntp server 同步时间的话,会提示invalid argument :无效参数. 那么现在下载rdate的源码并对其进 ...

随机推荐

  1. MySQL 同一Windows系统上安装多个数据库

    Step 1:拷贝一份MySQL整个安装文件,并拷贝一份 my.ini 文件放置安装目录下,然后修改以下内容.注意 port 不能设置为默认的3306,这里我们设置为3307端口. basedir=C ...

  2. mean shift聚类算法的MATLAB程序

    mean shift聚类算法的MATLAB程序 凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 1. mean shift 简介 mean shift, 写的 ...

  3. BootStrap、jQuery UI、bxSlider组件使用

    组件的使用 首先需要将组件下载下来放在统同级目录下 导入组件 使用组件 BootStrap 示例: <!DOCTYPE html> <html lang="en" ...

  4. Java HashMap用法

    为了做题用Java语法替代C++map的常用语法,记录一下,剖析原理以后再补上. 1.import java.util.HashMap;//导入; 2.HashMap<K, V> map= ...

  5. FT_Get_Var error on comiling

    [Julian@julian-linux-t450 gtk]$ gcc `pkg-config --cflags gtk+-.` -o exam00 exam00.c `pkg-config --li ...

  6. CF-1132 C.Painting the Fence

    题目大意:现在有n个栅栏板,p个工人,每个工人可以涂一段区间的栅栏板,问如果雇佣p-2个工人,最多可以涂多少块栅栏板. 做法:先求出q个工人能涂得最多木板数,并统计每个木板被涂的次数.求被涂一次的木板 ...

  7. hydra 常用命令解析

    参数说明: Hydra v9.0 (c) 2019 by van Hauser/THC - Please do not use in military or secret service organi ...

  8. 数组去重--ES6方法

    数组去重方法1:用es6的set和...扩展运算符 let arr = [1,2,3,4,4,5,2]; console.log([...new Set(arr)]) // [1, 2, 3, 4, ...

  9. React中的fetch请求相关

    fetch在reactjs中等同于 XMLHttpRequest,它提供了许多与XMLHttpRequest相同的功能,但被设计成更具可扩展性和高效性. Fetch 的核心在于对 HTTP 接口的抽象 ...

  10. erlang 资源

    https://github.com/ninenines https://github.com/drobakowski https://github.com/dizzyd