Skip to main content

2 posts tagged with "systemctl"

View All Tags

systemctl设置开机启动,管理service

· 2 min read

需求场景

有时候需要将go项目或其他项目加入service,并且实现开机自启动。

配置文件

systemd有两处可以配置,一处为系统配置文件位于/etc/systemd/system/,一处为用户配置文件/user/lib/systemd/system/,一般新增的开机启动service建议放在系统配置文件下。

步骤一:新增service文件

在/etc/systemd/system/目录下新增一个配置文件,如prometheus.service

[Unit]
Description=Prometheus
After=network-online.target

[Service]
ExecStart=/home/go-projects/prometheus-2.19.2.linux-amd64/prometheus.sh
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

步骤二:执行systemctl命令

#刷新配置
sudo systemctl daemon-reload
#设置开机启动
sudo systemctl enable prometheus
#启动服务
sudo systemctl start prometheus

service文件参数说明

service文件分为[Unit],[Service],[Install]三部分

  • [Unit]

Description:描述
Documentation:文档
Before:定义启动顺序
After:定义启动顺序

  • [Service]

Type=服务类型
User=用户名
Group=用户组
ExecStart: 执行启动脚本
Restart:当服务进程 正常退出、异常退出、被杀死、超时的时候, 是否重新启动该服务
RestartSec:设置在重启服务(Restart=)前暂停多长时间

  • [Install]

Alias:服务别名
WangtedBy: 多用户模式下需要的

详细文档

service中文文档
service英文文档

ubuntu常用命令

· 2 min read

用户权限

#修改文件用户组
sudo chown -R pi:pi downloads/
sudo chown -R $(whoami) downloads/
#将用户添加到docker用户组,使用docker命令免输sudo
sudo usermod -aG docker $USER

端口

#查看开放端口
netstat -ltp
sudo lsof -i | grep -i listen
# 查看v2ray端口占用
sudo lsof -i | grep v2ray
# 查看80端口占用
sudo lsof -i:80

文件查找

# 递归查找并删除文件
find . -name "*.less" | xargs rm -rf

systemctl

#刷新配置
systemctl daemon-reload
#查看定时任务
systemctl list-timers
#查看开机启动项
systemctl list-unit-files --type=service | grep enabled
# 设置开机启动
systemctl enable v2ray
# 运行v2ray
systemctl start v2ray
# 重启v2ray
systemctl restart v2ray

解压缩

#解压tar包
tar -xvf file.tar
#解压tar.gz包
tar -zxvf file.tar.gz
#压缩tar.gz包
tar -zcvf file.tar.gz dir/
#解压tar.xz包
tar -xvJf node-v8.11.1-linux-x64.tar.xz

其他

#查看service启动日志
journalctl -u nginx.service -f
#查看应用日志文件
tail -f /var/log/nginx/error.log
#查看磁盘容量
df -h
#查看目录大小
du -sh *
#生成ssh公钥
ssh-keygen -t rsa
#设置别名
alias rm='rm -f'
#复制到剪切板
cat file.txt | pbcopy
# 查看防火墙当前状态
sudo ufw status
#查看系统时间
date -R
#设置时区
dpkg-reconfigure tzdata