生成restart脚本

package_name=${package_name}
package_path=${package_path}
restart_script="$package_path/restart.sh"

# 组装启动命令
java_jar="java ${start_env} -jar $package_path$package_name ${start_params}"

# 确保包路径存在
mkdir -p "$package_path"

rm -rf "$restart_script"
# 创建并写入重启脚本
cat <<EOF > "$restart_script"
# 检查执行脚本的用户
REQUIRED_USER="aurora"
if [ \$(whoami) != "\$REQUIRED_USER" ]; then
  echo "This script must be run as \$REQUIRED_USER"
  exit 1
fi

# 获取Java进程的PID
java_pid=\$(pgrep -f $package_name)

# 杀掉进程
kill -9 \$java_pid

# 等待2秒
sleep 2

# 重启Java进程
nohup $java_jar > /dev/null 2>&1 &
# nohup $java_jar &
EOF

# 给予重启脚本执行权限
chmod 755 "$restart_script"

### 创建 Shell 脚本以配置 Ubuntu 的 SSHD 服务允许 Root 用户登录 以下是一个完整的 Shell 脚本,它可以根据需求自动配置 Ubuntu 中的 SSHD 服务以允许 Root 用户通过 SSH 登录。脚本的功能包括设置 Root 密码、修改 PAM 文件、更新 `.profile` 文件以及调整 SSH 配置文件。 #### 完整 Shell 脚本 ```bash #!/bin/bash # 设置 Root 密码 echo "正在设置 Root 密码..." sudo passwd root # 注释掉 GDM 自动登录中的相关内容 (防止潜在冲突) echo "正在注释 GDM 自动登录的相关内容..." sudo sed -i "s/.*root quiet_success$/#&/" /etc/pam.d/gdm-autologin sudo sed -i "s/.*root quiet_success$/#&/" /etc/pam.d/gdm-password # 修改 .profile 文件以确保消息不会干扰 Root 登录 echo "正在修改 .profile 文件..." sudo sed -i 's/^mesg.*/tty -s \&\& mesg n \|\| true/' /root/.profile # 确保 OpenSSH 已安装 echo "正在检查并安装 OpenSSH Server..." if ! dpkg-query -W -f='${Status}' openssh-server | grep -q "ok installed"; then sudo apt update && sudo apt install -y openssh-server fi # 延迟一秒等待环境稳定 sleep 1 # 修改 SSH 配置文件以允许 Root 登录 echo "正在修改 SSH 配置文件以允许 Root 登录..." sudo sed -i 's/^#PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config # 重启 SSH 服务使更改生效 echo "正在重启 SSH 服务..." sudo systemctl restart ssh echo "脚本执行完毕!现在已成功配置 SSHD 允许 Root 登录。" ``` --- #### 解析与说明 1. **设置 Root 密码** - 使用 `passwd` 命令为 Root 用户设置密码[^2]。 2. **注释 GDM 自动登录相关内容** - 编辑 `/etc/pam.d/gdm-autologin` 和 `/etc/pam.d/gdm-password` 文件,注释掉可能影响 Root 登录的部分行[^1]。 3. **修改 `.profile` 文件** - 更新 `/root/.profile` 文件的内容,避免因终端状态检测而导致的消息干扰。 4. **安装 OpenSSH** - 如果未安装 OpenSSH,则先更新包列表并通过 APT 安装 OpenSSH 服务器。 5. **延迟操作** - 添加短暂延时 (`sleep`) 来确保系统有时间加载必要的组件。 6. **修改 SSH 配置文件** - 将 `/etc/ssh/sshd_config` 文件中的 `PermitRootLogin` 参数改为 `yes`,从而允许 Root 用户通过 SSH 登录。 7. **重启 SSH 服务** - 执行 `systemctl restart ssh` 命令重新启动 SSH 服务,使得新的配置生效。 --- #### 注意事项 - 运行此脚本前需确保拥有足够的权限(通常需要以管理员身份运行)。 - 推荐在生产环境中谨慎开启 Root 登录功能,并考虑使用密钥认证而非密码认证来提升安全性[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值