Linux常用命令

1、防火墙

bash 复制代码
systemctl status firewalld # 查看防火墙状态
systemctl stop firewalld # 暂时关闭防火墙
systemctl disable firewalld # 永久关闭防火墙(开机不启动)
systemctl enable firewalld # 允许防火墙开机启动
systemctl start firewalld # 开启防火墙
firewall-cmd --zone=public --add-port=8080/tcp --permanent # 开放指定端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent # 关闭指定端口
firewall-cmd --reload # 立即生效
firewall-cmd --zone=public --list-ports # 查看开放的端口

2、Docker服务

bash 复制代码
systemctl start docker  # 启动docker服务
systemctl stop docker  # 停止docker服务
systemctl restart docker  # 重启docker服务
# 设置docker服务开机启动
systemctl enable docker.service
# 关闭docker服务开机启动
systemctl disable docker.service

# 镜像操作
docker images # 查看镜像
docker rmi 镜像名 # 删除镜像
docker pull # 拉取镜像
docker push # 推送镜像
docker save -o 打包名 需要打包的镜像  #打包镜像
# 如:docker save -o pandora.tar pengzhile/pandora:latest
docker load -i 镜像包名 # 加载镜像
# 如:docker load -i pandora.tar

# 容器操作
docker container start 容器名  # 启动容器 container可不加
docker restart 容器名 # 重启容器
docker ps -a # 查看已经存在容器(包括未运行的容器)
docker rm -f 容器名 # 删除容器(包括正在运行的容器)
docker logs -f 容器名 #查看对应容器的日志 -f表示跟踪日志输出

# exec:进入容器内部,执行一个命令 -it: 给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互
# bash:进入容器后执行的命令,bash是一个linux终端交互命令
docker exec -it 容器名 /bin/bash # 进入容器
exit # 退出进入的容器


# 数据卷
docker volume create 数据卷名 # 创建一个volume
docker volume inspect 数据卷名 # 显示一个或多个volume的信息
docker volume ls # 列出所有的volume
docker volume prune	# 删除未使用的volume
docker volume rm 数据卷名 # 删除一个或多个指定的volume
docker inspect [容器名称] |grep Mounts -A 20 # 查看容器挂载情况


# --name:指定容器名称 -p:指定端口映射 -d:让容器后台运行 -v:文件或目录挂载

# 启动Nginx容器
docker run --name mn -p 80:80 -v html:/usr/share/nginx/html -d nginx

#启动Redis容器
docker run --name mr -p 6379:6379 -d redis

# 启动mysql容器
docker run --name mysql \   
-e MYSQL_ROOT_PASSWORD=1111 \
-p 3306:3306 \
-v /root/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf \
-v /root/mysql/data/:/var/lib/mysql \
-d mysql:5.7.25

# 自定义镜像构建
docker build -t 镜像名 . # 镜像命名格式:javaweb:1.0 其中.表示Dockerfile在当前目录

# 推送镜像到私有镜像服务必须先tag,步骤如下:
# 1、重新tag本地镜像,名称前缀为私有仓库的地址:192.168.150.101:8080/
docker tag nginx:latest 192.168.150.101:8080/nginx:1.0
# 2、推送镜像
docker push 192.168.150.101:8080/nginx:1.0
# 3、拉取镜像
docker pull 192.168.150.101:8080/nginx:1.0 

docker update --restart=always 容器ID/容器名

3、Redis

bash 复制代码
systemctl enable redis # 设置redis开机自启
systemctl disable redis #禁止redis开机自启
systemctl start redis #启动redis服务

# 启动redis(注意config路径问题)
redis-server redis-config

# 登陆redis(默认端口是6379)
redis-cli -p 端口号

# 登陆redis(集群模式)
redis-cli -c -p 端口号

# 设置主从节点
slaveof ip port

# 查看redis集群各个节点关系(登陆状态)
info replication

# 查看集群状态
redis-cli -p 7001 cluster nodes

# 手动故障转移,使slave节点转变成master节点(登陆状态)
clustr failover

# 添加新节点到指定集群(第一个ip:port为新节点ip:port,第二个ip:port为集群中节点ip:port)
redis-cli --cluster add-node ip:port ip:port

# 对某个muster节点重新分片(将muster节点的部分插槽分配给一个新的master节点)
redis-cli --cluster reshard

4、Nginx

bash 复制代码
#配置nginx环境变量
export NGINX_HOME=/usr/local/openresty/nginx
export PATH=${NGINX_HOME}/sbin:$PATH

# 启动nginx(配置好环境变量以后)
nginx
# 重新加载配置
nginx -s reload
# 停止
nginx -s stop

5、常用

bash 复制代码
netstat -tunlp # 显示所有端口和所有对应的程序
ps -ef | grep 程序名 # 查看对应程序的端口号 
kill -9 进程id # 杀死对应进程id的进程  
systemctl restart network # 重启网络服务(修改网络配置时需要)  

# 修改配置文件后需要使其生效
source /etc/profile

#配置静态ip
vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.11.198
NETMASK=255.255.255.0
GATEWAY=192.168.11.2
DNS1=192.168.11.2   # 223.5.5.5
systemctl restart network

# 查看linux版本
cat /etc/redhat-release

# 查看主机名
hostnamectl

# 主机名解析
vim /etc/hosts
ip地址 域名

# 查看端口占用情况
netstat -tuln

# 查看某一端口占用情况
netstat -tln | grep 80
# 查看端口被哪个进程占用
lsof -i :9999

# windows端口设置
# 查询保留端口,*标注的代表这些范围内的端口不会被作为保留端口使用
netsh interface ipv4 show excludedportrange protocol=tcp
# 排除端口
netsh int ipv4 add excludedportrange  protocol=tcp startport=8081 numberofports=1

6、Vim

bash 复制代码
# vim文本编辑器显示行号
:set nu 

# vim快速切换到行尾
shift+g 

gg # vim快速切换到行

shift+$ # 定位到本行末尾

dd # 删除当前行

# 安装vim
yum -y install vim
相关推荐
梁萌15 分钟前
Linux安装Docker
linux·运维·docker·helloworld·容器化部署
翱翔-蓝天18 分钟前
在 CentOS 系统上安装 ClickHouse
运维·docker·容器
SRExianxian2 小时前
kubernetes存储架构之PV controller源码解读
容器·架构·kubernetes
cdg==吃蛋糕4 小时前
docker代理配置
docker·容器·eureka
web135085886354 小时前
使用docker compose安装gitlab
docker·容器·gitlab
IT机器猫5 小时前
Docker完整技术汇总
运维·docker·容器
董健正5 小时前
Docker安装
docker·容器·docker-compose
广而不精zhu小白5 小时前
CentOS Stream 9 挂载Windows共享FTP文件夹
linux·windows·centos
gs801405 小时前
替换 Docker.io 的 Harbor 安全部署指南:域名与 IP 双支持的镜像管理解决方案
docker·harbor
coco_1998_25 小时前
nvidia docker, nvidia docker2, nvidia container toolkits区别
docker·容器