标签 shell 下的文章

PHP远程执行SSH封装

有一个特殊需求,需要远程在管理多台主机,执行一些命令操作,又不想在远程机器上多装程序或者做接口。考虑了几个方案,nginx+lua,nginx+python,都比较麻烦。想来想去,干脆直接php执行shell好了。查了一下,有libssh2+ssh2的方案,了解之后觉得还不错,只需要在主控一端安装,并且是熟悉的PHP。于是装了个试试,封装了一下常用的几个ssh操作。

- 阅读剩余部分 -

服务器运维同步备份脚本 打包篇

之前的通用Linux服务器备份打包脚本因为有新的需求,添加了一些功能.新版本能根据配置文件对指定目录单独打包,更新规则还是一样,保留1号的包,删除指定天数前的包。打包与同步的程序不一样,但是配置文件相同,这就只需要将配置文件放在需要同步的目录下,就能确保打包与同步的策略一致,具体同步程序的代码请猛击服务器运维同步备份脚本 同步篇。数据库使用主从同步到备份的服务器上,打包程序会将它导出,放到指定位置。配置文件及打包程序代码如下:

- 阅读剩余部分 -

列出指定目录和其子目录下文件数量的shell脚本

这个脚本可以用来检查服务器上哪个目录发生了文件过量的情况,提前发现可能发生的超多文件目录的情况。主要使用的是find命令,先find所有的子目录,然后再用find找出所有文件,然后用wc来获取文件数量。脚本能够设定成邮件模式,加入crontab可以在指定时间执行,然后将运行结果邮件给指定的用户。还可以设定find的深度,避免目录层数过多而浪费时间。详细内容见代码。

- 阅读剩余部分 -

Nginx启动脚本

因为最近需要高并发,还要文件索引强,于是看中了nginx,而且不久前它发布了第一个稳定版,于是坚强勇敢的将它搭了起来。通常nginx是没有启动脚本的,这里分享一个自己随便写的,包括start|stop|restart|status|configtest功能,各位看官有需求就拷了用吧,见代码,记得针对自己的环境修改一下代码中的路径:

- 阅读剩余部分 -

Shell下判断输入是否合法IP

最近在做一些服务器安全方面的shell,有用到判断输入是否合法ip地址。在网上搜了一圈,有很多做法,最简单的就是直接判断输入内容是否全部为数字和“.”符号,这样的判断太范了,无法做到准确。更准确一些的就包含了字符个数等。后来找到了一个比较严谨的做法,经验证的确可用,代码如下:

- 阅读剩余部分 -