为了使非root用户可以更新系统时间,
需要设置运行Java程序的用户拥有不输入密码进行/bin/date调用的权限,
此处我运行Java程序的用户为iuser, 操作步骤如下:

使用root登录,
查看sudoers文件权限

ls /etc/sudoers

为用户添加写权限

chmod u+w /etc/sduoers

编辑 sudoers 文件,添加需要提升权限的用户,找到 ## Allow root to run any commands anywhere 这一行,在root用户下添加一行,如下:

iuser        ALL=(ALL)   NOPASSWD:/bin/date

其中iuser 是需要提权的用户名
否则同步服务器时间无法修改端服务器的时间

java代码如下,仅供参考:

 @RequestMapping("/syncServerTime")@ResponseBodypublic void syncServerTime(@RequestParam("datetime") String datetime) {String date = datetime.substring(0,8);String time = datetime.substring(8,10)+ ":" + datetime.substring(10,12)+ ":" + datetime.substring(12,14);String osName = System.getProperty("os.name");try {if(osName.matches("^(?i)Windows.*$")) {Runtime.getRuntime().exec("cmd /c date "+date);Runtime.getRuntime().exec("cmd /c time "+time);} else {Runtime.getRuntime().exec("sudo date -s "+date);Runtime.getRuntime().exec("sudo date -s "+time);}log.info("updatetime---->"+datetime);} catch (IOException e) {e.printStackTrace();}}
访问:http://localhost:8080/syncServerTime?datetime=20220510091333

Java 更新服务器日期时间相关推荐

  1. Day640.Java 8的日期时间类问题 -Java业务开发常见错误

    Java 8的日期时间类问题 Hi,阿昌来也! 今天记录分享的是Java 8的日期时间类问题 在 Java 8 之前,我们处理日期时间需求时,使用 Date.Calender 和 SimpleDate ...

  2. Java生成当日日期 时间

    Java生成当日日期 时间 生成当前日期时间 //当前日期时间方法 string类型public static String newDateTime(){SimpleDateFormat tempDa ...

  3. Java中Date日期时间的工具类

    package me.xueyao.date;import java.sql.Timestamp; import java.text.ParseException; import java.text. ...

  4. java里的日期时间

    为了更好理解java的日期时间类,在这里我们先介绍一下关于历法.标准时间的一些概念. 历法有很多种,我们大中华上下五千年,自然也有自己的历法,生活中我们通常把自己传统的历法叫做农历,也有人叫它阴历或夏 ...

  5. 深入学习 Java 8 全新日期时间库 java.time(五)

    基本概念我们已经大概的了解了,接下来我们就深入探讨一下时间日期的格式化.类库中 java.time.format 包中就是我们所需的一些概念,其中最主要也是用的最多的就是DateTimeFormatt ...

  6. java设定一个日期时间,加几分钟(小时或者天)后得到新的日期

    //返回的是字符串型的时间,输入的//是String day, int xpublic static String addDateMinut(String day, int x){SimpleDate ...

  7. java中的日期时间的计算与比较

    在JAVA中日期的计算与比较可以使用Date和DateFormat来解决 public class Test{ public static void main(String[] args){ try{ ...

  8. java中日期比较方法_在java中进行日期时间比较的4种方法

    1. Date.compareTo() java.util.Date 提供了在 Java 中比较两个日期的经典方法compareTo(). 如果两个日期相等,则返回值为0. 如果Date在date参数 ...

  9. JAVA 获取系统日期时间

    方法例子都是亲自实践过的,作为知识共享.如果有更好的或者说不足之处请多多指点. 首先先明确,java里我目前了解获取得到当地系统时间的方法有四个: a.      new Date().getTime ...

最新文章

  1. Iframe上传文件
  2. python爬虫如何配置动态爬虫代理
  3. linux 网卡配置不一致,linux环境下,双网卡配置不同网段后,路由问题
  4. 12.2.12 创建有响应的用户界面 捕获异常
  5. 如何使用网上下载的arcgis工具箱,报错汇总
  6. linux redis 监控工具,Redis服务器监控工具redis-live
  7. python中unexpectedtoken怎么解决_linux后台执行./run.py提示python syntax error near unexpected token `('...
  8. 5年赚50倍的段永平:这几家公司正在长长的坡上滚着厚厚的雪
  9. eclipse下使用hibernate tools实现hibernate逆向工程
  10. Codeforces 1013
  11. 试用D触发器和4选1数据选择器74153设计一个双向4位移位寄存器, 具体要求见下表(A、B为控制端), 左移串行输入信号为L, 右移串行输入信号为R
  12. CSDN目前有多少注册用户数?
  13. 常用的三款专业的OCR文字识别软件
  14. Python搭建聊天机器人微信订阅号
  15. 2018-7月最新QQ坦白说破解方法(亲测有效!)
  16. 2014年8月22日 百度发布“冰桶算法”
  17. java深克隆 浅克隆_通过Java中深克隆与浅克隆来理解克隆
  18. 图像JPEGEXIF格式介绍(一)
  19. 全面的讲解SpringCloud中Zuul网关原理及其配置,看它就够了
  20. Grafana 设置 Right Y

热门文章

  1. 论文阅读和复现:去除PPG运动伪影的IEEE论文
  2. VScode下载安装、设置主题、中文、浏览器预览
  3. ExpertXLS Excel 用作 .NET 托管程序集
  4. qt判断用户是否正在使用当前应用程序
  5. Java计算机毕业设计党员信息管理源码+系统+数据库+lw文档
  6. 【2022图片素材】免费无版权图片素材网站 | PPT素材 | Word素材 | 吊打百度图片
  7. 小鸟云虚拟主机打开为什么显示是主机开通成功?
  8. 我的2010 SEO目标
  9. word转PDF,PDF转图片
  10. [Java基础]打印三角形 和 倒三角形