diff --git a/Quilibrium.sh b/Quilibrium.sh index de7d428..ab5c53e 100644 --- a/Quilibrium.sh +++ b/Quilibrium.sh @@ -91,7 +91,104 @@ screen -dmS Quili bash -c './poor_mans_cd.sh' } -# 查看节点日志 + + +# 节点安装功能 +function install_node_service() { + +# 检查是否以root用户执行脚本 +if [ "$(id -u)" != "0" ]; then + echo "该脚本必须以root权限运行" 1>&2 + exit 1 +fi + +# 增加swap空间 +sudo mkdir /swap +sudo fallocate -l 24G /swap/swapfile +sudo chmod 600 /swap/swapfile +sudo mkswap /swap/swapfile +sudo swapon /swap/swapfile +echo '/swap/swapfile swap swap defaults 0 0' >> /etc/fstab + +# 向/etc/sysctl.conf文件追加内容 +echo -e "\n# 自定义最大接收和发送缓冲区大小" >> /etc/sysctl.conf +echo "net.core.rmem_max=600000000" >> /etc/sysctl.conf +echo "net.core.wmem_max=600000000" >> /etc/sysctl.conf + +echo "配置已添加到/etc/sysctl.conf" + +# 重新加载sysctl配置以应用更改 +sysctl -p + +echo "sysctl配置已重新加载" + +# 更新并升级Ubuntu软件包 +sudo apt update && sudo apt -y upgrade + +# 安装wget、screen和git等组件 +sudo apt install git ufw bison screen binutils gcc make -y + +# 安装GVM +bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer) +source /root/.gvm/scripts/gvm + +gvm install go1.4 -B +gvm use go1.4 +export GOROOT_BOOTSTRAP=$GOROOT +gvm install go1.17.13 +gvm use go1.17.13 +export GOROOT_BOOTSTRAP=$GOROOT +gvm install go1.20.2 +gvm use go1.20.2 + +# 克隆仓库 +git clone https://github.com/quilibriumnetwork/ceremonyclient + +# 进入ceremonyclient/node目录 +cd ceremonyclient/node + +# 构建服务 +GOEXPERIMENT=arenas go install ./... + +# 写入服务 +sudo tee /lib/systemd/system/ceremonyclient.service > /dev/null <