前言
昨天安装redis
后晚上提醒被当做跳板机给入侵了,当时也没有管,那台机器上没啥紧急重要的东西,也就挂了两个node
的定时任务,但是在今天早上发现定时任务没触发,进服务器里wget
、curl
、node
等命令都失效了,看来是给服务器深层保洁了一遍,连定时任务都没了。
重装完系统重新安装一下node
,配置一下定时任务。
安装node
这里安装16.17.0
长期支持版本的
下载安装包
执行下载命令,下载压缩包
wget https://cdn.npmmirror.com/binaries/node/v16.17.0/node-v16.17.0-linux-x64.tar.xz
解压压缩包
tar -xvf node-v16.17.0-linux-x64.tar.xz
配置node
在当前目录将node
文件移动到/usr/local
下,并重命名为node
mv node-v16.17.0-linux-x64 /usr/local/node
调整好目录后配置node
的环境变量
vim /etc/profile
配置文件如下图所示
在最下面添加如下配置
export PATH=$PATH:/usr/local/node/bin
保存后执行刷新命令使环境变量立刻生效
source /etc/profile
验证node
配置完环境变量后可以通过如下命令查看node
版本
node -v
npm -v
如下图即安装完成
配置定时任务
配置定时任务使用的crontab
,在配置里不能直接使用node
关键字,因为不识别,需要指定node
的bin
目录和对应的执行js
。
指向命令编辑定时任务
crontab -e
表达式为了验证就挑下一分钟,14:25
,实际node
的地址为/usr/local/node/bin/node
再加上js
地址,定时命令如下:
* 27 14 * * /usr/local/node/bin/node /usr/local/node/project/an/app.js
保存验证没问题即可