Linux的crontab无法执行的一些问题
crontab 是 linux 平台的定时任务系统,不过有时候可以运行的命令或脚本在 crontab 里面就是不运行,下面找了一些可能的原因以及解决方案。 看不到日志一般来说,crontab 的任务控制台输出会打到 /var/spool/mail/<username> 里面,然后通过 email 发出去crontab 服务的运行的日志一般都在 /var/log/cron 里面,这个日志可以看到任务有没有执行 如果想将命令输出内容重定向到其他文件,可以在命令后添加 >> xxx.log 2>&1, 不加 2>&1 错误日志看不到 环境变量的问题crontab 环境变量和登录 shell 查看的环境变量是不同的,比如 查看一下: 比系统的环境变量要少很多,比如 PATH 只有 /usr/bin 和 /bin, 安装在其他位置的程序是会 command not found 的,解决方法有两个: 写绝对路径 但是这个方法对于很多脚本比较麻烦,因为脚本里面可能用的是相对路径也会 command not found ...
两台计算机直接传输文件的几种方式
这里的计算机指的是广义上的计算机,包括但不限于家用电脑、服务器、手机、树莓派等等 scp scp 使用的是 SSH 端口 ftp ftp 控制端口是 21,用于账号密码认证以及协商端口等。主动模式:数据端口是 20被动模式:客户端可服务端协商一个端口 使用 Python 简单搭建一个 ftp 服务器 sftp sftp 是安全的 ftp,走的是 SSH 协议 sftp 常用命令 命令 功能 cd path Change remote directory to ‘path’ get [-afpR] remote [local] Download file help Display this help text lcd path Change local directory to ‘path’ lls [ls-options [path]] Display local directory listing lmkdir path Create local directory ln [-s] oldpath newpath Link rem...
运维使用的Windows软件分享
终端工具xshell 全家桶Xmanager Power Suite 8 支持 rdp 协议连接 windows,包含四大金刚组件(xshell xftp xmanager xlpd)附上 7 和 6 版本备用。不过 xshell 的缺点是使用 rz 和 sz 上传下载文件的时候容易乱码(文件传输失败并且终端上会刷很多乱码文本) 软件名 包含组件 下载地址 xshell plus 7 包含 xshell 和 xftp ,解压即用,不用执行 bat,不写注册表,不弹窗。 github Xmanager Power Suite 6 包含 xshell xftp xmanager xlpd,需要执行 bat 脚本,不弹窗。 github Xmanager Power Suite 8 包含 xshell xftp xmanager xlpd,不用执行 bat 脚本,不弹窗。 github mobaxterm待完善 securecrt待完善 tsshtssh 是纯命令行软件,可以在 Windows Terminal 中运行,看起来更极客一点。tssh 可以兼容 lr...
使用s6-Overlay来管理多进程容器
容器使用最佳实践是:一个容器运行一个进程,进程退出容器也就退出,很优雅是不是?但是…在日常工作中总有一些你懂的的原因,就需要多个进程塞在一个容器里面,那么我们可以怎么来管理容器内进程呢?这个时候容器内的进程管理工具就派上用场了。s6-Overlay 就是其中之一s6-Overlay 官方 github 地址:https://github.com/just-containers/s6-overlay v2 和 v3 有配置区别,这里以 v3 版本为例。 安装容器是通过判断 pid=1 的进程来判断容器是否工作正常的,也就是说 s6-Overlay 进程 pid 为 1 通过官方安装脚本来安装, 在 Dockerfile 里加上这些配置: 需要安装 xz 解压缩工具,不然 docker build 的时候会报错。 目录结构 其中 run 和 finish 都是可执行文件(bash 或 python 或二进制等),容器启动会运行 run 程序,如果 run 意外退出则会运行 finish,并且会被自动拉起。整个过程容器不会退出。 type 文件的内容可以是 ones...
Flask之服务端持久化session
需求如下:开发一个 web 界面,用户经过 oauth 认证后,给用户生成一个随机密码显示出来,并将用户名和密码发送给 radiusserver 用来当作 WIFI 密码。因为希望密码不要随便就更换,那样员工出去再进来,手机就需要重新输入新密码才能连 WIFI,容易被人打。所以用 session 存储的方式,将密码保存一定时间。 什么是 sessionsession 基于 cookie 实现,保存在服务端的键值对(dict 类型),同时在浏览器中的 cookie 中也对应一相同的随机字符串,用来再次请求的时候验证Flask 中的 session 是加密的,所以需要配置 SECRET_KEY 开始使用导入模块 配置 SECRET_KEY 设置 session 类型可以存临时文件,还可以存 redis、memcached、mongodb 等 app.config[‘SESSION_TYPE’] = ‘filesystem’ 设置 session 过期时间,默认是浏览器关闭就过期app.config[‘PERMANENT_SESSION_LIFETIME’] =...
检查端口是否能通的几种方法
服务器上运行了一个服务,想测试一下端口通不通,可以通过以下一些方法来测试。 telnet常见的 tcp 端口测试都是用的 telnet,用法也很简单 成功会显示: 失败会显示: ssh使用 失败会显示 curlcurl ip:port 失败会显示 netcat检查 TCP 端口下面的命令会检查远程主机上是否打开了端口 80、22 和 9000: 也可以指定端口扫描的范围 (速度非常快): 检查 UDP 端口 通的话, 会显示: 不通的话, 会显示:
使用radius和OpenLDAP来认证unifi AP
公司目前用的 WIFI 是 unifi 的 AP,员工离职后仍然可以连接公司 WIFI,是一个安全隐患,所以准备将 AP 接入 radius 来认证,数据取自 openldap,员工离职删除 openldap 账号即可。 本次操作系统使用的是 CentOS 7 OpenLDAP 参考文章:https://www.server-world.info/en/note?os=CentOS_7&p=openldap 安装 OpenLDAP OpenLDAP 基础配置 生成一个密码 slappasswd 将生成的密码复制保存 设置 root 密码 chrootpw.ldif 导入基本结构 设置目录管理员密码chdomain.ldif OpenLDAP 创建用户basedomain.ldif add_user.ldif 防火墙放开端口略 FreeRadius安装 FreeRadius 配置 FreeRadius配置客户端连接信息客户端连接信息:/etc/raddb/clients.conf,客户端使用这个 secret 来连接 ...
将wsl里的文件挂载进虚拟机
虽然不同操作系统使用起来大致类似,很多开源软件同时支持 Linux 和 Windows,就算不支持,Windows 还有 cygwin 或 WSL,Linux 也有 wine,但是我感觉这两种系统最大的区别还是文件系统,比如将 Linux 下的文件复制到 Windows,然后再复制回 Linux,得到的文件和原来的是一样的吗,答案是否定的,因为文件权限可能已经发生了变化,另外 Windows 的 NTFS 大小写不敏感,导致很多时候从 Linux 复制文件到 Windows 的时候总会弹个窗问我是否覆盖,还有 Linux 的软链接也无法复制到 Windows 里面。本人平时写代码等都是在 linux 上运行的,不过最近系统换成了 Windows,为了避免以上问题,将文件放进了 WSL 里面,同时用到了虚拟机做测试,所以想将 wsl 和虚拟机的目录进行同步,才有了这篇文章。 在 Windows 环境下找到想要共享的目录 以下 3 种都可以 在 Windows 下可以这样访问 WSL\\wsl$\发行版名,比如 \\wsl$\Ubuntu,将完整的链接复制下来。 将 \wsl...
最后一个Typora免费版0.11.18
Typora 是一个所见即所得的 Markdown 跨平台写作工具,目前已经发布正式版,并且更改为付费模式,0.11.18_beta 是最后一个免费的测试版,有需要的可以选择下载。 Windows 用户下载地址: https://github.com/iuxt/src/releases/download/2.0/typora-0-11-18.exe 0.11.18 现在被远程施法了,会提示过期无法使用,可以使用 0.9.96 版 Mac 用户下载地址: https://github.com/iuxt/src/releases/download/2.0/typora-0-11-18.dmg Ubuntu 用户下载地址:https://github.com/iuxt/src/releases/download/2.0/Typora_Linux_0.11.18_amd64.deb 安装方法使用 apt 安装: 其他 Linux 用户(非 debian 系)下载地址:https://github.com/iuxt/src/releases/download/2.0/typora-...
Python使用dotenv来管理环境变量
管理环境变量是一件比较麻烦的事情,好在 python 有 python-dotenv 可以帮助我们来简化这个操作 安装直接 pip 来安装就好 使用创建.env 文件,记得添加到.gitignore 里面 .env 文件内容为键值对形式 shell 脚本怎么使用.env 文件



