Linux杂项常用命令
# 系统服务
# systemctl
systemctl (参数) (服务名)
## 启动http服务
systemctl start httpd.service
## 设置开机自启动
systemctl enable httpd.service
## 停止http服务
systemctl stop httpd.service
## 查看服务当前状态
systemctl status httpd.service
##列出所有运行的服务单位,即状态是active的
systemctl list-units --all --state=active --type=service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# service
service (服务名) (参数)
服务名:自动要控制的服务名,即
/etc/init.d
目录下的脚本文件名;控制命令:系统服务脚本支持的控制命令。
## 启动network服务
service network start
## 停止network服务
service network stop
## 重启network服务
service network restart
## 查看服务当前状态
service network status
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 防火墙
# 启动、禁用、重置命令,查看状态
# 启动
sudo ufw enable
# 禁用
sudo ufw disable
# 重置
sudo ufw reset
# 状态
sudo ufw status
# 按编号显示
sudo ufw status numbered
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 启动
systemctl start firewalld
# 状态
systemctl status firewalld
# firewall-cmd #state
# 停止
systemctl disable firewalld
# 禁用
systemctl stop firewalld
# 更新防火墙
firewall-cmd --reload
# 查看所有打开的端口/服务
firewall-cmd --list-ports
firewall-cmd --list-services
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# 启动
#/etc/init.d/iptables start
service iptables start
# 停止
# /etc/init.d/iptables stop
service iptables stop
# 重启
# /etc/init.d/iptables restart
service iptables restart
# 保存设置
#/etc/init.d/iptables save
service iptables save
# 查看iptables的配置信息
iptables -L -n
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
// Make sure to add code blocks to your code group
# 允许、禁止、删除配置命令
# 允许80端口
sudo ufw allow 80
sudo ufw allow http
# 允许范围端口
sudo ufw allow 1000:2000/tcp
# 允许特定IP特定端口的连接
sudo ufw allow from 111.111.111.111 to any port 22
# 拒绝http连接
sudo ufw deny http
# 拒绝特定IP连接
sudo ufw deny from 111.111.111.111
# 按编号显示
sudo ufw status numbered
# 按规则编号删除防火墙规则
sudo ufw delete [numbered]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 开启80端口
firewall-cmd--zone=public--add-port=80/tcp --permanent
# 删除80端口
firewall-cmd--zone=public--remove-port=80/tcp --permanent
# 允许SSH服务通过
firewall-cmd --new-service=ssh
# 禁止SSH服务通过
firewall-cmd --delete-service=ssh
# # 将80端口的流量转发至8080
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 开启80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# 屏蔽单个IP的命令
iptables -I INPUT -s 123.45.6.7 -j DROP
# 把访问本机 8091 端口的请求转发到8090端口
$ iptables -t nat -A PREROUTING -p tcp --dport 8091 -j REDIRECT --to-ports 8090
# 允许所有本机向外的访问
iptables -A OUTPUT -j ACCEPT
# 禁止其他未允许的规则访问
iptables -A INPUT -j reject
# 只允许192.168.0.3的机器进行SSH连接
iptables -A INPUT -s 192.168.0.3 -p tcp --dport 22 -j ACCEPT
# 显示规则编号
iptables -L -n --line-number
# 删除规则
iptables -D INPUT [numbered]
# 清空 filter表INPUT所有规则
iptables -F INPUT
# 清空所有规则
iptables -F
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Make sure to add code blocks to your code group
# crontab命令
# 检查、安装命令
# 检查Cronta工具是否安装:
crontab -l
# 执行命令手动安装(ubuntu):
apt-get install cron
# 执行命令手动安装(Centos):
yum install -y crontabs
1
2
3
4
5
6
2
3
4
5
6
# 查看、编辑、删除当前用户的定时任务
# 查看:
crontab -l
# 编辑:
crontab -e
# 编辑完之后需要重启cron来激活之前的修改:
service cron restart
# 或者重启命令
systemctl restart crond
# 删除:
crontab -r
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 配置说明
crontab在线工具 (opens new window)
# .---------------- 分钟,取值范围为 0-59
# | .------------- 小时,取值范围为 0-23
# | | .---------- 日,取值范围为 1-31
# | | | .------- 月,取值范围为 1-12
# | | | | .---- 星期,取值范围为 0-7,0 和 7 都表示星期日
# | | | | | .-- 要执行的命令
# | | | | | |
0 19 * * * bash /root/test.sh
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8