其实这个问题挺少见的,既然能ftp,哪有不能ssh的,虽然少见但我还是遇到了。
废话
昨天在升级某云中心项目登录到跳板机上时,发现那台跳板机上的xshell提示试用期到了,需购买。看,多坑爹。本着节约的态度,本地下载了一个社区版的xshell,上传上去安装时,提示只有管理员权限才能删除程序重装。没折了,试着用电脑上的ftp工具连接服务器,上传了需要更新的项目jar包。发现没ssh是没法执行命令的。
思索过后,想到上传个重启项目的脚本,改下crontab的配置文件,然后定时去执行一次不就行吗。当我打开crontab的配置文件时,懵逼了,上面8、9条任务跑着,本着谨慎的态度,放弃了。后来想到服务器上其他主项目也有调用shell命令的功能,通过那个项目执行了一波。
但是为了满足好奇心,用crontab到底行不行,今天用自己的阿里云服务器测试了一波,发现是可行的。
crontab的默认配置文件路径是:/var/spool/cron
下的root文件,修改保存即可。
方法
感觉本篇文章好水,一句话就是:当只能ftp时,可修改crontab的配置文件去执行脚本文件,达到执行命令的效果。当然前提是,服务器安装过crontab。