429 lines
11 KiB
Plaintext
429 lines
11 KiB
Plaintext
================================================================================
|
||
服务器启停操作说明
|
||
================================================================================
|
||
|
||
文档名称:服务器启停操作说明
|
||
创建日期:2025-01-XX
|
||
服务器类型:Gerrit Code Review
|
||
服务器路径:/home/renjianbo/gerrit_install/review_site
|
||
Java 版本:Java 17
|
||
|
||
================================================================================
|
||
一、快速操作命令
|
||
================================================================================
|
||
|
||
【启动服务器】
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
|
||
【停止服务器】
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
bin/gerrit.sh stop
|
||
|
||
【重启服务器】
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
bin/gerrit.sh stop
|
||
sleep 3
|
||
JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
|
||
【查看服务状态】
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
bin/gerrit.sh status
|
||
|
||
【查看进程】
|
||
ps aux | grep gerrit | grep -v grep
|
||
|
||
================================================================================
|
||
二、详细操作步骤
|
||
================================================================================
|
||
|
||
【启动服务器】
|
||
|
||
1. 进入服务器目录:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
|
||
2. 启动服务(使用 Java 17):
|
||
JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
|
||
3. 等待服务启动(建议等待 5-10 秒):
|
||
sleep 5
|
||
|
||
4. 检查服务状态:
|
||
bin/gerrit.sh status
|
||
|
||
5. 验证服务是否正常运行:
|
||
- 检查端口监听:netstat -tlnp | grep 8080
|
||
- 测试 HTTP 访问:curl http://localhost:8080/
|
||
- 访问 Web 界面:http://101.43.95.130:8080
|
||
|
||
【停止服务器】
|
||
|
||
1. 进入服务器目录:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
|
||
2. 停止服务:
|
||
bin/gerrit.sh stop
|
||
|
||
3. 等待服务停止(建议等待 3-5 秒):
|
||
sleep 3
|
||
|
||
4. 验证服务已停止:
|
||
bin/gerrit.sh status
|
||
ps aux | grep gerrit | grep -v grep
|
||
|
||
5. 如果服务未正常停止,强制停止:
|
||
# 查找进程 ID
|
||
ps aux | grep gerrit | grep -v grep
|
||
|
||
# 强制停止(替换 PID 为实际进程 ID)
|
||
kill -9 <PID>
|
||
|
||
# 或者直接停止所有 Gerrit 进程
|
||
pkill -9 -f gerrit
|
||
|
||
【重启服务器】
|
||
|
||
1. 进入服务器目录:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
|
||
2. 停止服务:
|
||
bin/gerrit.sh stop
|
||
|
||
3. 等待服务完全停止:
|
||
sleep 3
|
||
|
||
4. 启动服务(使用 Java 17):
|
||
JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
|
||
5. 等待服务启动:
|
||
sleep 5
|
||
|
||
6. 检查服务状态:
|
||
bin/gerrit.sh status
|
||
|
||
7. 验证服务正常运行:
|
||
curl -s -o /dev/null -w "HTTP Status: %{http_code}\n" http://localhost:8080/
|
||
|
||
================================================================================
|
||
三、服务状态检查
|
||
================================================================================
|
||
|
||
【检查服务状态】
|
||
|
||
1. 使用 Gerrit 脚本检查:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
bin/gerrit.sh status
|
||
|
||
2. 检查进程:
|
||
ps aux | grep gerrit | grep -v grep
|
||
|
||
3. 检查端口监听:
|
||
# HTTP 端口(默认 8080)
|
||
netstat -tlnp | grep 8080
|
||
# 或使用 ss 命令
|
||
ss -tlnp | grep 8080
|
||
|
||
# SSH 端口(默认 29418)
|
||
netstat -tlnp | grep 29418
|
||
# 或使用 ss 命令
|
||
ss -tlnp | grep 29418
|
||
|
||
4. 测试 HTTP 服务:
|
||
curl http://localhost:8080/
|
||
# 或检查 HTTP 状态码
|
||
curl -s -o /dev/null -w "HTTP Status: %{http_code}\n" http://localhost:8080/
|
||
|
||
5. 测试 SSH 服务:
|
||
ssh -p 29418 renjianbo@localhost gerrit version
|
||
|
||
6. 检查 Web 界面访问:
|
||
浏览器访问:http://101.43.95.130:8080
|
||
|
||
================================================================================
|
||
四、日志查看
|
||
================================================================================
|
||
|
||
【查看实时日志】
|
||
|
||
1. HTTP 访问日志:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
tail -f logs/httpd_log
|
||
|
||
2. SSH 访问日志:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
tail -f logs/sshd_log
|
||
|
||
3. Gerrit 主日志:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
tail -f logs/gerrit.log
|
||
|
||
4. 错误日志:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
tail -f logs/error_log
|
||
|
||
【查看历史日志】
|
||
|
||
1. 查看最后 N 行日志:
|
||
tail -100 logs/gerrit.log # 查看最后 100 行
|
||
tail -50 logs/error_log # 查看最后 50 行错误日志
|
||
|
||
2. 搜索日志内容:
|
||
grep "error" logs/gerrit.log | tail -20
|
||
grep "renjianbo" logs/httpd_log | tail -20
|
||
|
||
================================================================================
|
||
五、常见问题处理
|
||
================================================================================
|
||
|
||
【问题1】服务启动失败
|
||
|
||
检查步骤:
|
||
1. 检查 Java 版本和路径:
|
||
/usr/local/java/jdk-17.0.12+7/bin/java -version
|
||
echo $JAVA_HOME
|
||
|
||
2. 检查端口是否被占用:
|
||
netstat -tlnp | grep 8080
|
||
netstat -tlnp | grep 29418
|
||
|
||
如果端口被占用:
|
||
- 查找占用进程:lsof -i :8080
|
||
- 停止占用进程或修改配置文件中的端口
|
||
|
||
3. 查看错误日志:
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
tail -50 logs/error_log
|
||
|
||
4. 检查磁盘空间:
|
||
df -h
|
||
|
||
5. 检查内存:
|
||
free -h
|
||
|
||
【问题2】服务无法停止
|
||
|
||
解决方法:
|
||
1. 查找进程:
|
||
ps aux | grep gerrit | grep -v grep
|
||
|
||
2. 强制停止:
|
||
kill -9 <PID>
|
||
|
||
或:
|
||
pkill -9 -f gerrit
|
||
|
||
3. 验证已停止:
|
||
bin/gerrit.sh status
|
||
ps aux | grep gerrit | grep -v grep
|
||
|
||
【问题3】服务启动后无法访问
|
||
|
||
检查步骤:
|
||
1. 检查服务状态:
|
||
bin/gerrit.sh status
|
||
|
||
2. 检查端口监听:
|
||
netstat -tlnp | grep 8080
|
||
|
||
3. 检查防火墙:
|
||
sudo firewall-cmd --list-ports
|
||
# 确保 8080 和 29418 端口已开放
|
||
|
||
# 如果需要开放端口:
|
||
sudo firewall-cmd --permanent --add-port=8080/tcp
|
||
sudo firewall-cmd --permanent --add-port=29418/tcp
|
||
sudo firewall-cmd --reload
|
||
|
||
4. 检查配置文件:
|
||
cat etc/gerrit.config | grep listenUrl
|
||
cat etc/gerrit.config | grep canonicalWebUrl
|
||
|
||
5. 测试本地访问:
|
||
curl http://localhost:8080/
|
||
|
||
【问题4】Java 版本问题
|
||
|
||
如果遇到 Java 版本错误:
|
||
1. 检查 Java 安装路径:
|
||
ls -la /usr/local/java/
|
||
|
||
2. 使用指定 Java 版本启动:
|
||
JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
|
||
3. 或者设置环境变量:
|
||
export JAVA_HOME=/usr/local/java/jdk-17.0.12+7
|
||
export PATH=$JAVA_HOME/bin:$PATH
|
||
bin/gerrit.sh start
|
||
|
||
================================================================================
|
||
六、一键操作脚本
|
||
================================================================================
|
||
|
||
【启动脚本】
|
||
|
||
#!/bin/bash
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
sleep 5
|
||
bin/gerrit.sh status
|
||
|
||
【停止脚本】
|
||
|
||
#!/bin/bash
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
bin/gerrit.sh stop
|
||
sleep 3
|
||
ps aux | grep gerrit | grep -v grep
|
||
|
||
【重启脚本】
|
||
|
||
#!/bin/bash
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
bin/gerrit.sh stop
|
||
sleep 3
|
||
JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
sleep 5
|
||
bin/gerrit.sh status
|
||
curl -s -o /dev/null -w "HTTP Status: %{http_code}\n" http://localhost:8080/
|
||
|
||
【状态检查脚本】
|
||
|
||
#!/bin/bash
|
||
cd /home/renjianbo/gerrit_install/review_site
|
||
echo "=== 服务状态 ==="
|
||
bin/gerrit.sh status
|
||
echo ""
|
||
echo "=== 端口监听状态 ==="
|
||
netstat -tlnp | grep -E "8080|29418"
|
||
echo ""
|
||
echo "=== 进程状态 ==="
|
||
ps aux | grep gerrit | grep -v grep
|
||
echo ""
|
||
echo "=== HTTP 服务测试 ==="
|
||
curl -s -o /dev/null -w "HTTP Status: %{http_code}\n" http://localhost:8080/
|
||
|
||
================================================================================
|
||
七、系统服务配置(可选)
|
||
================================================================================
|
||
|
||
如果需要将服务器配置为系统服务(开机自启动),可以使用 systemd:
|
||
|
||
【创建服务文件】
|
||
|
||
sudo vi /etc/systemd/system/gerrit.service
|
||
|
||
【服务文件内容】
|
||
|
||
[Unit]
|
||
Description=Gerrit Code Review
|
||
After=network.target
|
||
|
||
[Service]
|
||
Type=forking
|
||
User=renjianbo
|
||
Group=renjianbo
|
||
WorkingDirectory=/home/renjianbo/gerrit_install/review_site
|
||
Environment="JAVA_HOME=/usr/local/java/jdk-17.0.12+7"
|
||
ExecStart=/home/renjianbo/gerrit_install/review_site/bin/gerrit.sh start
|
||
ExecStop=/home/renjianbo/gerrit_install/review_site/bin/gerrit.sh stop
|
||
Restart=on-failure
|
||
RestartSec=10
|
||
|
||
[Install]
|
||
WantedBy=multi-user.target
|
||
|
||
【使用系统服务】
|
||
|
||
1. 重新加载 systemd:
|
||
sudo systemctl daemon-reload
|
||
|
||
2. 启动服务:
|
||
sudo systemctl start gerrit
|
||
|
||
3. 停止服务:
|
||
sudo systemctl stop gerrit
|
||
|
||
4. 重启服务:
|
||
sudo systemctl restart gerrit
|
||
|
||
5. 查看状态:
|
||
sudo systemctl status gerrit
|
||
|
||
6. 设置开机自启动:
|
||
sudo systemctl enable gerrit
|
||
|
||
7. 取消开机自启动:
|
||
sudo systemctl disable gerrit
|
||
|
||
================================================================================
|
||
八、快速参考命令
|
||
================================================================================
|
||
|
||
# 启动服务器
|
||
cd /home/renjianbo/gerrit_install/review_site && JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
|
||
# 停止服务器
|
||
cd /home/renjianbo/gerrit_install/review_site && bin/gerrit.sh stop
|
||
|
||
# 重启服务器
|
||
cd /home/renjianbo/gerrit_install/review_site && bin/gerrit.sh stop && sleep 3 && JAVA_HOME=/usr/local/java/jdk-17.0.12+7 bin/gerrit.sh start
|
||
|
||
# 查看状态
|
||
cd /home/renjianbo/gerrit_install/review_site && bin/gerrit.sh status
|
||
|
||
# 查看日志
|
||
cd /home/renjianbo/gerrit_install/review_site && tail -f logs/gerrit.log
|
||
|
||
# 检查端口
|
||
netstat -tlnp | grep -E "8080|29418"
|
||
|
||
# 测试 HTTP
|
||
curl http://localhost:8080/
|
||
|
||
# 测试 SSH
|
||
ssh -p 29418 renjianbo@localhost gerrit version
|
||
|
||
================================================================================
|
||
九、重要提示
|
||
================================================================================
|
||
|
||
1. 启动服务前,确保:
|
||
- Java 17 已正确安装(路径:/usr/local/java/jdk-17.0.12+7)
|
||
- 端口 8080(HTTP)和 29418(SSH)未被占用
|
||
- 有足够的磁盘空间和内存
|
||
- 服务器目录存在:/home/renjianbo/gerrit_install/review_site
|
||
|
||
2. 停止服务前,建议:
|
||
- 等待当前操作完成
|
||
- 通知相关用户(如果有)
|
||
|
||
3. 重启服务后,建议:
|
||
- 等待 5-10 秒让服务完全启动
|
||
- 检查服务状态
|
||
- 测试 HTTP 和 SSH 访问
|
||
- 验证 Web 界面可正常访问
|
||
|
||
4. 日志文件位置:
|
||
- HTTP 日志:logs/httpd_log
|
||
- SSH 日志:logs/sshd_log
|
||
- 主日志:logs/gerrit.log
|
||
- 错误日志:logs/error_log
|
||
|
||
5. 配置文件位置:
|
||
- 主配置:etc/gerrit.config
|
||
- 安全配置:etc/secure.config
|
||
|
||
6. 数据目录:
|
||
- Git 仓库:git/
|
||
- 数据库:db/
|
||
- 缓存:cache/
|
||
|
||
7. 服务器访问地址:
|
||
- Web 界面:http://101.43.95.130:8080
|
||
- SSH 端口:29418
|
||
|
||
================================================================================
|
||
文档结束
|
||
================================================================================
|
||
|