我报名参加金石计划1期挑战——瓜分10万奖池,这是我的第1篇文章,点击查看活动详情
前言
大家好,我是小阵 🔥,一路奔波不停的码字业务员
如果喜欢我的文章,可以关注 ➕ 点赞,与我一同成长吧~😋
加我微信:zzz886885,邀你进群,一起学习交流,摸鱼学习两不误🌟
开开心心学技术大法~~
来了来了,他真的来了~
正文
可以通过wget安装node包到云服务器上
先安装curl
yum -y install curl
我这里是
CentOS7,所以用的是yum,如果你可以使用apt-get的话,用apt-get来代替yum即可如果是
ubuntu的话,可以直接先使用apt安装,也可以先用apt安装yum,然后再安装curl
能使用apt的也可以用apt直接安装curl
sudo apt install curl
安装nvm
通过curl或者wget
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
安装之后直接在终端nvm的时候提示找不到命令:nvm
因此需要配置下环境变量
按照提示配置
将以下命令配置到~/.bashrc中
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
然后source一下
source ~/.bashrc
在之后nvm发现ok了
或者直接安装带有node.js环境的云服务器
安装文件处理可视化
有了服务器,自然想跟本地文件系统做交互
一般通过scp命令即可,但是目录要手动复制,习惯了可视化的同学可以使用lrzszz
安装
yum -y install lrzsz
或者
brew install lrzsz
使用lrzsz
-
通过
rz来开启本地文件系统的窗口,选择指定文件安装到当前目录 -
通过
sz来将当前云服务器安装到指定本地目录
我这里使用的是
FinalShell或者XShell用本地的终端和
iTerm的话需要单独设置
使用scp上传文件
有时会报
输入以下命令解除限制
ssh-keygen -R 43.142.120.53
可以看到解除限制后可以连接到远端服务器
输入密码即可
scp实际使用方式
scp上传文件格式
scp /home/space/music/1.mp3 root@www.runoob.com:/home/root/others/music
scp /home/space/music/1.mp3 root@www.runoob.com:/home/root/others/music/001.mp3
scp /home/space/music/1.mp3 www.runoob.com:/home/root/others/music
scp /home/space/music/1.mp3 www.runoob.com:/home/root/others/music/001.mp3
scp上传目录格式
scp -r local_folder remote_username@remote_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder
scp从远端复制到本地
远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可,如下实例
scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3
scp -r www.runoob.com:/home/root/others/ /home/space/music/
说明
- 如果远程服务器防火墙有为scp命令设置了指定的端口,我们需要使用 -P 参数来设置命令的端口号,命令格式如下:
#scp 命令使用端口号 4588
scp -P 4588 remote@www.runoob.com:/usr/local/sin.sh /home/administrator
- 使用scp命令要确保使用的用户具有可读取远程服务器相应文件的权限,否则scp命令是无法起作用的。
比如,如果是没有权限的话,会提示
所以要修改圆度服务器/home文件夹的操作权限
在远端服务器输入
chmod 777 /home
一般这样就ok了,再次上传也没问题,如果chmod 777 /home时报
则可以加sudo
sudo chmod 777 /home
之后再scp上传就ok了
使用FileZilla可视化上传
安装FileZilla或者其他的ftp软件,建立远端服务器连接,然后就可以拖拽上传啦
云服务添加微信机器人
之前搞了个微信机器人定时发消息的项目,用腾讯云的CentOs8.0报错,看了排错文档安装了CentOs的依赖依然没有解决
所以重装了下ubuntu的系统,第一次启动依然报错,后来根据排错文档安装了ubuntu的依赖
之后再启动就没问题了
保持云服务器的进程一直运行
正常情况下,一旦断掉与远端服务器的链接,则进程就会结束,所以没办法一直运行一个进程,但是我们要想要我们的微信机器人一直生效,则需要通过screen来使进程永远处于运行状态
安装screen
CentOS 系列系统: yum install screen Ubuntu 系列系统: sudo apt-get install screen
创建 screen 窗口
screen -S name
name可以设置为ssh、ftp或者任意字符串,用于标注该 screen 窗口用途
注意,执行 screen -S name 之后系统会跳进一个新窗口,这个窗口就是我们创建的新进程
在新窗口进行的任务会一直存在,只要不关闭该窗口任务,注意不关闭该窗口任务的意思是不手动关闭screen任务即可,而不是不能关闭该shell窗口
查看所有screen任务
可以通过
screen -ls
来查看所有的screen任务
比如我看起一个screen窗口之后node index.js启动了一个服务器,然后关闭了改窗口,再次通过screen -ls的时候会发现
可以看到一个Attached状态的screen窗口在运行
进入某个screen任务
可以通过
screen -r -d 20952
进入到该窗口进行操作
然后 通过screen创建一个screen任务一直保持运行我们的微信机器人即可
删除某个screen任务
可以通过
screen -S screen名称 -X quit
删除之后再通过
screen -ls
来查看,发现确实是删除了
发现screen is terminating问题之后的解决方法
手动bash中输入exit退出,重新登陆即可
结语
如果文章真的有帮到你,希望可以多多点赞、收藏、关注支持一波呀!!小阵会很开心哒~
文章如有错误或不严谨之处,还望指出,感谢感谢!!!
热爱开源,支持开源,拥抱开源!
往期好文推荐「我不推荐下,大家可能就错过了史上最牛逼vscode插件集合啦!!!(嘎嘎嘎~)😄」