如何在linux系统上完成定时开机和更新github端口的任务

任务背景

1.即使打开代理,有的时候github去clone比较大的文件时也会出问题。这时需要每小时更新一次github的host端口;

2.马上要放假,想远程登录在学校的台式电脑,但学校内网又不太好穿透。退而求其次,选择定时启动电脑的方式,在每天早上八点半左右启动电脑。

更新github的host端口

在/past/to/路径里新建一个host_update.sh文件,运行以下命令获得访问,运行和修改这个文件路径的权限:

sudo chmod a+rw /past/to/hosts_update.sh

这个sh文件里的内容就是更新host文件的命令:

 运行这个命令需要sudo输入密码,可以配置/etc/sudoers这个文件,并添加以下行:

username ALL=(ALL) NOPASSWD: /path/to/hosts_update.sh

这样的话,运行这个文件的时候就不需要密码了,很方便自动设置。

最后,使用linux系统上的cron命令,设置定时任务,每小时更新一次host命令

crontab -e

@hourly /path/to//hosts_update.sh

 定时启动电脑

也是使用crontab命令,但需要rtc时钟配合完成定时唤醒任务

(Arch系统)sudo pacman -S util-linux

crontab -e

30 7 * * * sudo rtcwake -m off -t $(date +\%s -d '07:30')

crontab -l

这种方式启动失败的原因

1.虽然一直供电,但主板此时已经断电了/挂起可能就没电了,所以内部程序无法启动;

2.RTC时钟的计时出现了问题。因为我们这里是UTC-8的时间,但是主板的RTC时钟很可能是格林尼治时间,是往前8个小时的。所以设定的时间不对。

解决方式:使用BIOS系统设置主板RTC,自启动电脑

 sudo systemctl reboot --firmware-setup          #进入bios系统

打开华硕主板BIOS系统,高级选项设置:

我这里面主板的时间就是错的,是没有调整过的UTC时间。如果我修改成UTC-8的北京时间,并启动manjaro系统,系统上的时间就会从北京时间增加八小时。

在网络获取到时间之后,manjaro系统上恢复了正常的北京时间。这个主板的时间就会从UTC-8的北京时间被改回UTC时间。所以这个时间一定要从一开始配置电脑BIOS系统的时候就校正,如果你有这个需求的话。。。。

对于我来说,我直接将错就错用了这个UTC时间,从这里面可以看出我设置的其实是每天8:31自动启动电脑,其中实时钟唤醒日期为0,就代表让他每天被唤醒,这个数字一般不会超过31。


用这种方式,我就解决了台式电脑自启动的问题,在家里也可以远程登陆到学校的这台个人电脑,不需要再使用内网穿透以及物理开机的种种方式,我认为还是很方便的。


今天尝试后发现还需要取消电脑自动挂起,要不然会连接不到设备

熄屏是没关系的

这个可以去电脑电源管理那边设置一下

 发现开机之后长时间不管,不登录电脑进入桌面,还是会进入自动挂起状态。我需要的是一个不会自动挂起的电脑,可以运行如下命令:

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

屏蔽掉所有自动睡眠,挂起这类的服务

如何恢复休眠和自动挂起这些任务(开学之后)

先删除这些符号文件

sudo rm /etc/systemd/system/sleep.target
sudo rm /etc/systemd/system/suspend.target
sudo rm /etc/systemd/system/hibernate.target
sudo rm /etc/systemd/system/hybrid-sleep.target

 如果需要的话可以连带着删除mask文件

sudo rm /etc/systemd/system/sleep.target.mask
sudo rm /etc/systemd/system/suspend.target.mask
sudo rm /etc/systemd/system/hibernate.target.mask
sudo rm /etc/systemd/system/hybrid-sleep.target.mask

删除这些文件后,重新加载systemd管理器配置,并重启或者重新加载相应的服务以应用更改:

sudo systemctl daemon-reload
sudo systemctl unmask sleep.target
sudo systemctl enable sleep.target
sudo systemctl unmask suspend.target
sudo systemctl enable suspend.target
sudo systemctl unmask hibernate.target
sudo systemctl enable hibernate.target
sudo systemctl unmask hybrid-sleep.target
sudo systemctl enable hybrid-sleep.target

其实可以不用加enable命令,系统也会自动识别,但是加上之后会确保在启动时自动激活特定的系统状态,这个比较符合开学之后的需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/3726.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Net Core微服务入门全纪录(三)——Consul-服务注册与发现(下)

系列文章目录 1、.Net Core微服务入门系列(一)——项目搭建 2、.Net Core微服务入门全纪录(二)——Consul-服务注册与发现(上) 3、.Net Core微服务入门全纪录(三)——Consul-服务注…

图数据库 | 19、高可用分布式设计(下)

相信大家对分布式系统设计与实现的复杂性已经有了一定的了解,本篇文章对分布式图数据库系统中最复杂的一类系统架构设计进行探索,即水平分布式图数据库系统(这个挑战也可以泛化为水平分布式图数据仓库、图湖泊、图中台或任何其他依赖图存储、…

OpenAI函数调用迎来重大升级:引入「最小惊讶原则」等软件工程实践,开发体验更上一层楼!

想玩转各种AI模型?chatTools 帮你搞定!这里有o1、GPT4o、Claude和Gemini等等,一个平台就能满足你所有的AI需求。快来开始你的AI冒险吧! OpenAI的函数调用功能再次迎来重大更新!新版指南不仅大幅精简了文档,…

Redis 中 TTL 的基本知识与禁用缓存键的实现策略(Java)

目录 前言1. 基本知识2. Java代码 前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 单纯学习Redis可以看我前言的Java基本知识路线!! 对于Java的基本知识推荐阅读: java框架…

前端实习第二个月小结

时间飞快,第一次实习已经过去两个多月,作一些简单的总结和分享。 注:文章整体会比较轻松,提及的经历、经验仅作参考。 一、关于实习/工作内容 1、工作内容 近期做的是管理后台方面的业务,技术栈:前端re…

QT笔记- Qt6.8.1 Android编程 添加AndroidManifest.xml文件以支持修改权限

1. 切换项目选项卡,找到构建的步骤下的最后一项构建安卓APK,展开后找到应用程序栏,点击安卓自定义中的创建模板. 2. 弹出对话框勾选图中选项后点完成 3. 回到项目,查看.pro文件,里面多了很多内容不管,在下…

【鸿蒙】0x02-LiteOS-M基于Qemu RISC-V运行

OpenHarmony LiteOS-M基于Qemu RISC-V运行 系列文章目录更新日志OpenHarmony技术架构OH技术架构OH支持系统类型轻量系统(mini system)小型系统(small system)标准系统(standard system) 简介环境准备安装QE…

【Linux系统编程】—— 深入理解Linux中的环境变量与程序地址空间

文章目录 环境变量常见的环境变量查看环境变量环境变量的修改与使用环境变量的组织⽅式环境变量的命令通过代码如何获取环境变量环境变量的继承 前言:在Linux系统中,环境变量和程序地址空间是系统管理和进程运行的重要组成部分。本文将详细探讨环境变量的…

深度学习 Pytorch 张量的线性代数运算

pytorch中并未设置单独的矩阵对象类型,因此pytorch中,二维张量就相当于矩阵对象,并且拥有一系列线性代数相关函数和方法。 在实际机器学习和深度学习建模过程中,矩阵或者高维张量都是基本对象类型,而矩阵所涉及到的线…

dl学习笔记:(4)简单神经网络

(1)单层正向回归网络 bx1x2z100-0.2110-0.05101-0.051110.1 接下来我们用代码实现这组线性回归数据 import torch x torch.tensor([[1,0,0],[1,1,0],[1,0,1],[1,1,1]], dtype torch.float32) z torch.tensor([-0.2, -0.05, -0.05, 0.1]) w torch.…

【Unity3D】利用Hinge Joint 2D组件制作绳索效果

目录 一、动态绳索 (可移动根节点) 二、静态绳索 三、利用Skinning Editor(Unity2022.3.15f1正常使用) 四、注意事项 一、动态绳索 (可移动根节点) 动态绳索 DynamicRope空物体 Anchor和whitecircle是相同位置的物体&#xff…

OSPF小实验

引言 在前面的博客中我们学习了ospf的基础理论知识与配置:ospf(2),相信大家对ospf已经有了一定的了解了,那么接下来我们就开始尝试做一个ospf的综合实验吧 实验拓扑 实验需求 r1-3为区域0,r3-r4为区域1&…

蓝桥杯刷题第二天——背包问题

题目描述 有N件物品和一个容量是V的背包。每件物品只能使用一次。第i件物品的体积是Vi价值是Wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入格式 第一行两个整数,N,V&am…

mono3d汇总

lidar坐标系 lidar坐标系可以简单归纳为标准lidar坐标系和nucense lidar坐标系&#xff0c;参考链接。这个坐标系和车辆的ego坐标系是一致的。 标准lidar坐标系 opendet3d&#xff0c;mmdetection3d和kitt都i使用了该坐标系 up z^ x front| /| /left y <------ 0kitti采…

接口防篡改+防重放攻击

接口防止重放攻击&#xff1a;重放攻击是指攻击者截获了一次有效请求(如交易请求),并在之后的时间里多次发送相同的请求&#xff0c;从而达到欺骗系统的目的。为了防止重放攻击&#xff0c;通常需要在系统中引入一种机制&#xff0c;使得每个请求都有一个唯一的标识符(如时间戳…

流程与管理篇:IPD核心思想与框架

关注作者 IPD是英文&#xff08;Integrated Product Development&#xff09;的写&#xff0c;中文 翻译为“集成产品开发”&#xff0c;它是一套产品开发的模式、理念与方法。 IPD整合了客户需求、市场分析和产品开发&#xff0c;建立了需求和产品之间的联系&#xff0c;开辟…

阿里云通义实验室自然语言处理方向负责人黄非:通义灵码2.0,迈入 Agentic AI

通义灵码是基于阿里巴巴通义大模型研发的AI 智能编码助手&#xff0c;在通义灵码 1.0 时代&#xff0c;我们针对代码的生成、补全和问答&#xff0c;通过高效果、低时延&#xff0c;研发出了国内最受欢迎的编码助手。 在通义灵码 2.0 发布会上&#xff0c;阿里云通义实验室自然…

记录 idea 启动 tomcat 控制台输出乱码问题解决

文章目录 问题现象解决排查过程 1. **检查 idea 编码设置**2. **检查 tomcat 配置**3.检查 idea 配置文件4.在 Help 菜单栏中&#xff0c;修改Custom VM Options完成后保存&#xff0c;并重启 idea 问题现象 运行 tomcat 后&#xff0c;控制台输出乱码 解决排查过程 1. 检查…

微透镜阵列精准全检,白光干涉3D自动量测方案提效70%

广泛应用的微透镜阵列 微透镜是一种常见的微光学元件&#xff0c;通过设计微透镜&#xff0c;可对入射光进行扩散、光束整形、光线均分、光学聚焦、集成成像等调制&#xff0c;进而实现许多传统光学元器件难以实现的特殊功能。 微透镜阵列&#xff08;Microlens Array&#x…

企业级NoSQL数据库Redis

1.浏览器缓存过期机制 1.1 最后修改时间 last-modified 浏览器缓存机制是优化网页加载速度和减少服务器负载的重要手段。以下是关于浏览器缓存过期机制、Last-Modified 和 ETag 的详细讲解&#xff1a; 一、Last-Modified 头部 定义&#xff1a;Last-Modified 表示服务器上资源…