家中自己部署leanote

  1. 安装软件

​ 下载mongDB、leanote,解压

cd /home
wget http://labs-1253675457.cosgz.myqcloud.com/mongodb-linux-x86_64-3.0.1.tgz
wget http://labs-1253675457.cosgz.myqcloud.com/leanote-linux-amd64-v2.4.bin.tar.gz
tar -xzvf mongodb-linux-x86_64-3.0.1.tgz
tar -zxvf leanote-linux-amd64-v2.4.bin.tar.gz
  1. 配置MongDB的环境变量:

    mkdir -p /data/db              #建立用于存储的文件目录
    vim /etc/profile
    export PATH=$PATH:/home/mongodb-linux-x86_64-3.0.1/bin   #文件末尾追加此变量信息
    source /etc/profile   #执行命令使变量生效	
    
  2. 启动MongDB

    mongod --bind_ip localhost --port 27017 --dbpath /data/db/ --logpath=/var/log/mongod.log --fork
    
  3. 编辑leanote配置文件

    vim /home/leanote/conf/app.conf
    app.secret=qcloud666   #将文件中app.secret=命令行,更改。
    
  4. 初始化数据库,导入初始数据

    mongorestore -h localhost -d leanote --dir /home/leanote/mongodb_backup/leanote_install_data/
    
  5. 启动leanote服务

    nohup /bin/bash /home/leanote/bin/run.sh >> /var/log/leanote.log 2>&1 &
    
  6. 通过访问 http://您的服务器 IP 地址:9000 就可以了使用自己的笔记本。

    初始化账户:admin
    初始化密码: abc123

    leanote备份与还原

    1. 备份、将备份文件拷贝到新的服务器上

      mongodump --port 27017 --db leanote -o /data/leanoteBackUp/   #备份文件
      scp -r leanoteBackUp root@xx.x.xxx.xx:/developer/data   #将备份文件拷贝另一服务器上
      
  7. 关闭新服务器leanote服务

    ps -ef | grep leanote          #找到关于leanote的服务
    kill  进程号                       #直接杀死进程
    
  8. 恢复数据

    mongorestore -h 127.0.0.1:27017 -d leanote /developer/data/leanoteBackUp/leanote -u=root -p=xxxx
    
  9. 重启服务leanote

    nohup bash /developer/leanote/bin/run.sh >/developer/log/leanote.log 2>&1 &
    

    到此蚂蚁笔记数据迁移恢复完毕,但是在新的机器上登录蚂蚁笔记时,发现有很多图片没有显示,原因在于图片信息存放在leanote下的files目录下,所以还需要将files目录备份。具体操作方法:直接将原机器中的files目录拷贝到新机器中即可。

    leanote、MongDB开机自启动

    1. 进入目录、创建脚本
    cd  /etc/rc.d/init.d             #进入目录
    
    #!/bin/bash
    # chkconfig: 2345 80 90
    #description:leanote.sh
    cd /developer/leanote/bin/
    bash run.sh
    
    chmod 754 leanote.sh        #设置脚本文件的权限
    

    将脚本放到启动队列

    chkconfig --add leanote.sh  
    chkconfig leanote.sh on
    
    cd /etc/rc.local
      #将以下代码添加以上脚本文件中
    # add mongodb service
    mongod --fork --logpath /developer/log/mongodb.log --dbpath /developer/mongodbdata
    

    定时完成备份

    编写数据定时备份脚本leanote.bak.sh

    DUMP=/usr/bin/mongodump             # mongodump备份文件执行路径
    OUT_DIR=/data/backupLeanoteMongodb    # 临时备份目录
    TAR_DIR=/data/backupLeanoteMongodb   # 备份存放路径
    DATE=`date -d "today" +"%Y-%m-%d-%H-%M-%S"`         # 获取当前系统时间,作为文件名的一部分
    DAYS=7
    TAR_BAK="leanote_mongodb_bak_$DATE.tar.gz"                 # 最终保存的数据库备份文件名
    cd $OUT_DIR
    rm -rf $OUT_DIR/
    mkdir -p $OUT_DIR/$DATE
    mkdir -p $TAR_DIR/
    $DUMP -d leanote -o $OUT_DIR/$DATE                             # 备份leanote数据库
    tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE                      # 压缩为.tar.gz格式
    #find $TAR_DIR/ -mtime +$DAYS -delete                # 删除7天前的备份文件
    sshpass -p xxxx scp $TAR_DIR/$TAR_BAK  root@xxx.xx.xxx.xx:$TAR_DIR  # 通过 scp 发送至另一台服务器
    

    将定时任务执行脚本写入/var/spool/cron/root

    30 0-23/12  * * * bash /developer/leanote_bak.sh
    
posted @ 2021-11-12 16:19  djd221  阅读(172)  评论(0)    收藏  举报