解决ubuntu下定时任务不执行的问题
先打开日志查看cron运行日志(/var/log/cron.log),但是并未找到相关文件,原因是ubuntu默认没有开cron日志,执行命令: 1sudo vim /etc/rsyslog.d/50-default.conf 找到cron.log相关行,将前面注释符#去掉,保存退出,重启rsyslog: 1sudo service rsyslog restart 执行less -10 /var/log/cron.log再次查看cron运行日志,log出来了,提示如下信息: 1No MTA installed, discarding output 原因是cron把屏幕输出都发送到email了,而当前环境并未安装email server,于是系统报错,解决方面就是不要直接向屏幕输出内容,而是重定向到一个文件。 修改任务文件 1sudo vim /var/spool/cron/crontabs/waterfronter 将末行改为: 1* * * * * echo "Hello world!" >>...
d2l深度学习问题汇总
d2l安装问题第一步就是安装问题,可能是版本太新的问题,我安装时使用pip install d2l报过错误。所以现提供一个解决方案。有说是后面的版本,你需要提前安装mxnet,然后再安装d2l。但是我没装,所以提供下述解决方案 1234pip install d2l==0.15.1# 在之后还会遇到一个关于ipython新版本缺少指令的问题,需降级使用pip uninstall ipythonpip install ipython==7.22.0 更多版本可以查看d2l版本列表如此,即可解决d2l包无法使用的问题
下一站,上岸
...
Linux配置mihomo代理并开启TUN模式
先介绍一下什么是mihomo: Mihomo原名Clash Meta,是基于广受欢迎的开源网络代理工具Clash开发的增强网络代理工具。它不仅继承了Clash的核心功能,还增加了一些独特的特性,如支持更多的出站传输协议和复杂的规则控制等。在2023年经历了Clash for Windows删库事件之后,原Clash项目删库停止更新,于是开发者将Clash Meta改名为Mihomo,继续进行维护和更新。 所以,曾经使用过clash的应该可以很快上手。 mihomo官网 在本篇文章中,将会使用mihomo内核来进行代理,同时还会打开TUN模式实现透明代理。如有需要请接着往下看吧。 mihomo安装和配置下载mihomo内核 进入mihomo内核下载地址去下载对应架构版本的文件。比如mihomo-linux-amd64-alpha-b3db113.gz,解压后将mihomo-linux-amd64上传到虚拟机上,同时重命名为mihomo。 如果访问不到github的话,这里提供一个mihomo-linux-amd64-go120-v1.19.1.gz 给 mihomo...
nginx配置ws
在恢复服务器的过程中,get 到的一个小知识:因为所有的服务都是通过 nginx 代理出来的。而默认配置下并没有对 ws 进行代理。 WS的全称是WebSocket,Nginx配置WebSocket也比较简单,只需要在nginx.conf文件中进行相应的配置。这种方式很简单,但是很有效,能够横向扩展WebSocket服务端的服务能力。 这里直接贴代码: 123456789101112131415161718192021222324252627map $http_upgrade $connection_upgrade { default upgrade; '' close;}# 如果$http_upgrade 不为 '' (空), 则$connection_upgrade 为 upgrade 。# 如果$http_upgrade 为 '' (空), 则 $connection_upgrade 为 close。server{ ... location / { ...
docker,nginx,ssl最佳实践
基于我对docker,nginx还有ssl证书的部署,提出了我对这些服务最高效的部署方法。仅供参考,一定会有更好的方法,只是我还有待学习 使用docker部署nginxdocker部署nginx有什么好处呢?大概就是可以把所有相关的配置文件汇集在一块,也方便在不同的服务器中迁移。这里提供部署所使用的docker代码: 1234567891011# 先创建一个nginx网络docker network create nginx_container# 运行nginx并添加到该网络中docker run --name=nginx \--volume=/home/{user}/{your_path}/nginx/logs:/var/log/nginx \--volume=/home/{user}/{your_path}/nginx/html:/etc/nginx/html...
使用gitea action实现CICD
CICDCI/CD 是持续集成和持续交付/部署的缩写,旨在简化并加快软件开发生命周期。 持续集成(CI)是指自动且频繁地将代码更改集成到共享源代码存储库中的做法。持续交付和/或持续部署(CD)是一个由两部分组成的过程,涉及代码更改的集成、测试和交付。持续交付不会自动部署到生产环境,持续部署则会自动将更新发布到生产环境。 简单来说,就是我们将代码提交到远程仓库后,自动化服务会替我们完成测试交付和部署的功能。 常用的CICD工具在本文中我将演示使用gitea actions实现hexo的自动部署功能。 正片开始正如其名,其实gitea和github actions的功能几乎一致,就是沿用下来了而已。在我们的操作过程中,主要有三步: 使用docker启动一个act_runner,作为action的服务器 配置deploy.yml实现推送时,自动部署到服务器 使用nginx展示部署后的页面 安装act_runner打开gitea的官方文档可以查阅关于act_runner的配置信息 注册runner在运行Act...
docker服务器白嫖
这篇文章的主要面向人群:临时使用linux服务器来测试一些程序,项目等。 play with docker进入这个链接,然后登陆后,就会看到如下界面他会给你提供4个小时的免费使用时长,而且你可以创建多个实例。每个实例都是4h4g的docker服务器。而且这些示例你可以通过ssh远程连接,也可以直接开放端口直接开放在外网。(可是说是配置拉满的免费服务了) 创建完成后,会有一些问题需要解决,第一,他的服务器系统并不和我们常用的ubuntu,centos类似。于是要在这个服务器上跑项目,肯定会有很多环境配置不方便。所以我们使用docker来跑一个ubuntu供我们使用命令如下: 1234docker run -itd --privileged --init -v /:/mnt --network host ubuntu --name ubuntu# 可以避免僵尸进程和孤儿进程--privileged --initdocker exec -it ubuntu bash#...
ubuntu使用ssh密钥登录
配置公钥和私钥在Ubuntu或者Windows上运行ssh-keygen,生成一对公私钥。他会默认保存在C:/{User}/.ssh目录下id_rsa是私钥,需要传输到其他客户端机器,比如Windows做后续处理。id_ras.pub是公钥,里面含有公钥字符串。 然后将id_ras.pub公钥的内容复制到你ubuntu用户下的authorized_keys文件中把公钥复制到这个文件中即可。 注意,使用追加,而不是覆盖。不要把别人也部署过的公钥删除了 修改配置文件禁止密码登陆和允许免密码登陆都是通过修改/etc/ssh/sshd_config 文件实现,只需要设置如下的两个选项为yes 和no即可:PubkeyAuthentication yesPasswordAuthentication no 修改完毕后重启ssh 服务:sudo service ssh restart 注意,有的时候,你会发现你修改的配置没有生效。因为他在这个目录下也有相同的配置文件。你需要将这个目录下的配置文件也修改后才可以生效。
ubuntu server快速启动
在配置本地服务器时,安装了ubuntu server他有一个默认配置就是会在启动时检查所有网口是否都正确配置了网络。而且这个时候他会等待接近2分钟以上的时间,而对于部分人而言,只连接一个网口就足够使用了。所以为了快速启动服务跳过这些等待时间需要修改一些配置参数 自检命令:systemd-analyze blame系统自查,会检测系统启动耗费了哪些时间 /etc/systemd/system/network-online.target.wants在这个目录下,有关于系统网络启动时的配置文件:systemd-networkd-wait-online.service 加上TimeoutStartSec=3sec这个参数后,执行系统重启,你就可以享受快速的系统重启了