命令行
生成密钥
ssh-keygen -t rsaCMD设置UTF8编码
chcp 65001配置文件
vi /etc/rsyncd.conf看看端口
netstat -ntpl如果没有873端口的话,就肯定是没安装xinetd!
yum -y install xinetd rsync启动
service xinetd restart
service rsyncd restart就好了!
安装HEXO
npm install hexo-cli -g配置文件
_config.yml
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: rsync
host: 119.3.212.206
user: root
root: /data/myblog/
port: 22
delete: true
verbose: true
ignore_errors: false发布
hexo clean
hexo deploy如果在Linux上或Mac上这样就成功了,但是在Windows上我们需要安装rsync客户端,下面就说一下Windows上的客户端的两种方式
先说结果这种方式只能用命令推成功 用Hexo自动发布没有成功
下载安装cwRsync
Windows上需要安装客户端,否则无法用rsync命令上传至服务器,安装完成后要设置环境变量
链接:https://pan.baidu.com/s/1FTiyrKMA4LIzugk4nUPbYA 提取码:x829
或者
官网下载地址: https://www.itefix.net/cwrsync
打开终端
cmd安装HEXO
测试一下:
rsync -avz ./public/ root@119.3.212.206:/data/myblog/我这里这种方式一直不成功 报下面的错误
dup() in/out/err failed rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.3]
原因是:
不要用第三方Shell 例如Git Bash,用CMD才可以。
但通过以下命令部署
hexo g
hexo d又报错误
Error: Could not create directory ‘/home/Jian/.ssh’. Host key verification failed.
在cwRsync文件夹下建/home/Jian/.ssh即可并生成公钥和私钥,并把公钥内容复制到服务器的/root/.ssh/authorized_keys文件中即可。
注意.ssh为隐藏文件夹 直接命令进入即可
又报错误
Host key verification failed. rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.3]
这个问题到这就卡住了 我就只能换下面的一种方式了
Win10先更新到新版本
控制面板=>程序=>启动或关闭Windows功能=>勾选适用于Linux的Windows子系统
下载地址
安装Ubuntu
安装后默认用cmd进入后输入bash即可进入
进入Ubuntu
bash切换为root用户
sudo su安装rsync
apt install rsync进入项目后
cd /mnt/c/Users/Jian/Documents/project/myblog发布
rsync -avz ./public/ root@119.3.212.206:/data/myblog/但是我们并不能通过以下命令部署
hexo clean
hexo deploy因为我们在Ubuntu中,里面没有安装Node环境也没有安装Hexo,只能重新安装了
Ubuntu系统的路径
C:\Users\Jian\AppData\Local\Packages里面找到类似于CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc这样的文件夹
.ssh的目录在
C:\Users\Jian\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\root\.ssh就可以把我们的公钥和私钥在这生成或者复制到这里
其他用户路径
C:\Users\Jian\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\psvmc\.ssh还要设置文件的访问权限
chmod 700 ./*这里不能给组和其它用户设置权限 否者也不行
更新Ubuntu软件源
sudo apt-get update
sudo apt-get install -y python-software-properties software-properties-common
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update安装nodejs
sudo apt install nodejs
sudo apt install npm更新npm的包镜像源,方便快速下载
sudo npm config set registry https://registry.npm.taobao.org
sudo npm config list恢复
sudo npm config set registry https://registry.npmjs.org全局安装n管理器(用于管理nodejs版本)
sudo npm install n -g安装最新稳定版的nodejs(stable版本)
sudo n stable其它版本安装
sudo n latest
sudo n stable
sudo n lts查看安装的版本
sudo node -v
sudo npm -vsudo npm install hexo-cli -g部署
sudo hexo g
sudo hexo d