pm2 在 windows 下运行 jar 包

  • 安装 nodejs 环境,过程略。
  • 安装 java 环境,过程略。
  • 安装 pm2 并设置开机自启环境
npm i -g --registry=http://registry.npm.taobao.org npm tbify
tnpm i -g pm2
tnpm i -g pm2-windows-startup
pm2-startup install
  • 准备好 jar 包,例如放在 c:\app\my.jar
  • 准备一个 json 文件 c:\app\pm2.json
{
    "apps": {
        "name": "myapp",  //pm2管理列表中显示的程序名称
        "cwd": "C:/app",  //项目所在目录
        "script": "javaw",  //要执行的脚本,javaw 后台运行
        "exec_mode": "fork", //fork单例多进程模式,cluster多实例多进程模式只支持node
        "error_file": "./log/err.log",  //错误日志存放位置
        "out_file": "./log/out.log",  //全部日志存放位置
        "merge_logs": true,  //追加日志
        "log_date_format": "YYYY/MM/DD HH:mm:ss",  //日志文件输出的日期格式,可以为空
        "min_uptime": "60s",  //最小运行时间(范围内应用终止会触发异常退出而重启)
        "max_restarts": 30,  //异常退出重启的次数
        "autorestart": true,  //发生异常情况自动重启
        "restart_delay": "60",  //异常重启的延时重启时间
        "args": [
            "-jar",
            "./my.jar"
        ]
    }
}
  • 运行并设置自启
pm2 start c:\app\pm2.json
pm2 save
  • pm2 面板
pm2 dash
  • 删除项目
pm2 ls // 找出项目 ID
pm2 del <id>
pm2 save

linux 命令行使用 wifi

命令都可简写,例如:nmcli device status 可以简写成 nmcli d s

网卡状态

$ nmcli device status
DEVICE             TYPE      STATE         CONNECTION 
enp0s3             ethernet  connected     enp0s3     
wlp0s11u1          wifi      disconnected  --         
p2p-dev-wlp0s11u1  wifi-p2p  disconnected  --         
lo                 loopback  unmanaged     --

无线列表

$ nmcli -p device wifi list [ifname wlan0]
==============================
  Wi-Fi scan list (wlp0s11u1)
==============================
IN-USE  SSID                        MODE   CHAN  RATE        SIGNAL  BARS  SECURITY  
--------------------------------------------------------------------------------------------------------------
        ChinaNet-vh4h               Infra  6     130 Mbit/s  84      ▂▄▆█  WPA1 WPA2 
        ChinaNet-hxeh               Infra  8     130 Mbit/s  84      ▂▄▆█  WPA1      
        kefu                        Infra  1     135 Mbit/s  74      ▂▄▆_  WPA1 WPA2 
        TP-LINK_chen                Infra  6     405 Mbit/s  74      ▂▄▆_  WPA1 WPA2

连接网络

$ sudo nmcli -w 10 device wifi connect <SSID>  password <PASSWORD>

断开网络

$ sudo nmcli device disconnect

升级 CentOS7 内核

载入ELRepo仓库的公共密钥

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

安装ELRepo仓库的yum源

rpm -Uvh https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm

载入elrepo-kernel元数据

yum --disablerepo="*" --enablerepo="elrepo-kernel" repolist

查看可用的系统内核包,长期维护版本为lt,最新主线稳定版为ml

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

安装最新的内核,长期维护版本kernel-lt 最新稳定版选择kernel-ml

yum  --enablerepo=elrepo-kernel  install  -y  kernel-lt

查看可用内核版本及启动顺序

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/grub2/grub.cfg

安装辅助工具

yum install -y grub2-pc

设置内核默认启动顺序

grub2-set-default 0

编辑/etc/default/grub文件

设置 GRUB_DEFAULT=saved 为 GRUB_DEFAULT=0

生成 grub 配置文件

grub2-mkconfig -o /boot/grub2/grub.cfg

删除旧版本工具包–可选

yum remove kernel-tools-libs.x86_64 kernel-tools.x86_64

升级内核工具包

yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-lt-tools.x86_64

ssh 转发 X11

  • CentOS7
    • 服务器配置 /etc/ssh/sshd_config
    AllowTcpForwarding yes X11Forwarding yes
    • 服务器安装 xorg-x11-xauth
    yum install -y xorg-x11-xauth
  • 本地修改文件 /etc/ssh/ssh_config
ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes
  • 登录
ssh -X root@ip

windows下安装node-red

  • 使用管理员权限打开 PowerShell,运行以下脚本:
Set-ExecutionPolicy RemoteSigned
  • 下载安装nodejs:https://nodejs.org/dist/v16.15.0/node-v16.15.0-x86.msi
  • 在cmd中运行以下脚本:
npm i -g --registry=http://registry.npm.taobao.org npm tbify
tnpm install -g --unsafe-perm node-red
# 运行node-red
node-red
  • 测试:在浏览器中打开 http://localhost:1880 ,应该可以正常打开。
  • 下载安装 python3:https://www.python.org/ftp/python/3.10.4/python-3.10.4-amd64.exe
  • 安装扩展节点 :从开始菜单中打开 cmd,运行以下命令:
cd .node-red
tnpm i --no-audit --no-update-notifier --no-fund --save --save-prefix=~ --production --engine-strict node-red-contrib-modbus node-red-contrib-uibuilder
  • 利用 pm2 开机自启

替换 <user> 为您的实际用户名

tnpm i -g pm2
tnpm i -g pm2-windows-startup
pm2-startup install
pm2 start C:\Users\<user>\AppData\Roaming\npm\node_modules\node-red\red.js
pm2 save
pm2 ls

卸载

pm2-startup uninstall

AUR 安装旧版/指定版本

  1. 打开 AUR 包仓库 https://aur.archlinux.org/packages
  2. 通过「关键字」找到要安装的包详情页面
  3. 在包详情页面右侧,点击「查看更改」
  4. 找到对应的版本,点击「Commit message」,进入版本详情
  5. 找到「download」链接,下载
  6. 解压下载的压缩包,并在解压后的目录内执行以下命令安装:
makepkg -s
sudo pacman -U *.pkg.tar.zst
  1. 特定版本禁止更新:在 /etc/pacman.conf 中的 IgnorePkg = 中添加对应的包名,用空格分隔多个包名。

参考:http://www.huasay.com/2020/08/05/manjaro-install-old-version/

利用 nexus 部署 maven 私库

nexus3 配置

Repository > Repositories

  • 添加一个新的存储库
  • 选择 maven2 (proxy)
  • 输入以下项(其他使用默认值)
    • Name maven-central
    • Remote store https://maven.aliyun.com/repository/public

Security > Roles

添加一个新的 Role

  • 类型选择 Nexus role
  • ID 设为 publish
  • Privileges 添加以下项:
    • nx-repository-view-*-*-add
    • nx-repository-view-*-*-edit
  • Roles 添加以下项:
    • nx-anonymous

Security > Users

添加一个 User

  • ID 设为 publish
  • Roles 添加以下项:
    • publish

System > Tasks

  • 创建任务 Admin - Compact blob store
  • 创建任务 Docker-Delete incomplete uploads
继续阅读

从命令行启动 android studio 模拟器

  1. 安装并打开 Android Studio ,打开菜单 Tools > Device Manager ,添加一个虚拟机
  2. 找到 SDK/emulator 目录,常见目录如下:
  • Linux – ~/Android/Sdk/emulator/
  • Mac OS X – ~/Library/Android/sdk/emulator
  • Microsoft Windows XP – C:\Documents and Settings\user\Library\Android\sdk\emulator
  • Windows Vista – C:\Users\user\Library\Android\sdk\emulator
  1. 打开命令行,进入 SDK/emulator 目录
  2. 查看 AVD 名称列表
$ ./emulator -list-avds
Nexus_5X_API_23
  1. 启动模拟器
$ ./emulator -avd Nexus_5X_API_23 -netdelay none -netspeed full

官方文档:https://developer.android.com/studio/run/emulator-commandline?hl=zh-cn

ubuntu 安装 virtualbox 增强功能

  1. 安装准备
sudo apt update
sudo apt install build-essential dkms linux-headers-$(uname -r)
  1. 菜单中选择「设备 – 安装增强功能」,进入光盘目录,运行以下命令:
sudo ./VBoxLinuxAdditions.run
  1. 重启系统