CentOS操作系统

系统目录说明

/usr 系统级的目录,可以理解为C:/Windows
	/usr/lib 对照 C:/Windows/System32
	/usr/src 系统级的源码目录
	/usr/local 对照 C:/Progrem Files 存放手动安装的软件
    /usr/bin 系统预装可执行程序,系统升级有可能会被覆盖
    /usr/etc 系统预装可执行程序的配置文件,系统升级有可能会被覆盖
/opt 对照 D:/Software,大型软件的安装目录,安装到该目录下的程序的数据、库文件等等都是放在同个目录下面
/etc 用户自定义的可执行程序的配置文件

修改yum源(加速文件下载)

# 备份yum(注意:centos7和centos8的文件名不一样)
cd /etc/yum.repos.d && cp CentOS-Linux-BaseOS.repo CentOS-Linux-BaseOS.repo.back
yum -y install wget && wget http://mirrors.aliyun.com/repo/Centos-8.repo
mv Centos-8.repo CentOS-Linux-BaseOS.repo
yum clean all && yum makecache
yum -y install yum-utils

系统参数查看

CentOS系统版本号: cat /etc/centos-release
Linux内核版本号:cat /proc/version
#
CPU个数:grep 'physical id' /proc/cpuinfo | sort -u | wc -l
CPU核数:cat /proc/cpuinfo | grep "cpu cores" | uniq
CPU型号:cat /proc/cpuinfo | grep 'model name' |uniq
CPU内核频率:cat /proc/cpuinfo |grep MHz|uniq

系统升级

yum -y update #升级所有包,系统、内核都升级
yum -y upgrade #升级所有包,系统升级,内核不变
uname -a # 查询当前系统版本
rpm -q kernel # 查询所有内核版本
rpm -e xxx # 删除xxx旧的内核版本(系统升级后会备份原有系统)

系统资源监控

# 内存使用情况
free -m
# 各个磁盘分区的使用情况
df -h
# 当前目录下的各个目录的磁盘使用情况
du -sh * 
top # 查询消耗CPU最多的(进程)PID 7
top -H -p 7 # 根据进程号7查询消耗(线程)CPU最多的PID 46
printf '%x\n' 46 # 将46转化成16进制数字2ac
jstack 7 | grep 2ac -A 100 # 查询进程号7下的线程运行日志

防火墙操作

systemctl status firewalld    #查看firewalld服务状态
systemctl enable firewalld   #设置firewalld服务开机自启
systemctl start  firewalld   #开启firewalld服务
systemctl stop firewalld     #停止firewalld服务
firewall-cmd --reload       #重启firewalld服务

端口操作

firewall-cmd --zone=public --add-port=80/tcp --permanent # Nginx
firewall-cmd --zone=public --add-port=81/tcp --permanent # Gitlab
firewall-cmd --zone=public --add-port=3306/tcp --permanent # Mysql
firewall-cmd --zone=public --add-port=6379/tcp --permanent # Redis
firewall-cmd --zone=public --add-port=9876/tcp --permanent # RocketMQ
firewall-cmd --zone=public --add-port=8848/tcp --permanent # Nacos
firewall-cmd --zone=public --add-port=27017/tcp --permanent # MongoBD
firewall-cmd --zone=public --add-port=8091/tcp --permanent # Seata
firewall-cmd --zone=public --add-port=8849/tcp --permanent # Sentinel
firewall-cmd --zone=public --add-port=5000/tcp --permanent # Docker服务端
#
firewall-cmd --reload # 重启防火墙并查看端口
firewall-cmd --zone=public --list-ports  # 防火墙查看打开的端口
firewall-cmd --zone=public --query-port=80/tcp # 查询端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent # 删除端口
yum install net-tools
netstat -nultp # 查看端口暂用情况
netstat -alnp | grep 8081 # 查询置定端口暂用情况

启动顺序与设置

在这里插入图片描述

启动第8步--根据运行级别的不同,系统会运行 rc0.d - rc6.d 中的相应的脚本程序,来完成相应的初始化工作和启动相应的服务
启动第9步--执行/etc/rc.d/rc.local。linux初始化后留给用户进行个性化的地方,你可以把你想设置和启动的东西放到这里
  • 自定义开机自启
cd /etc/rc.d && vi rc.local # 编辑该文件,添加如下内容:

# nginx自启
/usr/local/bin/nginx -c /usr/local/nginx/nginx-1.20.1/conf/nginx.conf

# redis自启
/usr/local/bin/redis-server /usr/local/redis/redis-6.2.5/redis.conf

# nacos自启
# 单机
#sh /usr/local/nacos/nacos-standalone-8840/bin/startup.sh -m standalone
# 集群
sh /usr/local/nacos/nacos-cluster-8841/bin/startup.sh
sh /usr/local/nacos/nacos-cluster-8843/bin/startup.sh
sh /usr/local/nacos/nacos-cluster-8845/bin/startup.sh

# rocketmq自启
# rocketmq server自启
nohup /usr/local/rocketmq/rocketmq-4.9.0/bin/mqnamesrv -n 127.0.0.1:9876 &
# rocketmq broker自启
nohup /usr/local/rocketmq/rocketmq-4.9.0/bin/mqbroker 
	-n 127.0.0.1:9876 
	-c /usr/local/rocketmq/rocketmq-4.9.0/conf/broker.conf 
	autoCreateTopicEnable=true &
	
# mongodb自启
/usr/local/mongodb/mongodb5.0.3/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf

# jenkins
nohup /usr/local/java/jdk1.8.0_301/bin/java -jar /usr/local/jenkins/jenkins.war --httpPort=8080 >/dev/null 2>&1 &
chmod +x /etc/rc.d/rc.local # 保存后添加执行权限

CentOs虚拟机网络映射

网络选择(优选NAT模式)
1、桥接模式:此模式下,虚拟机的操作系统就像和物理机同一段网络中的物理机一样,它可以访问网络中的任何机器,同时只要物理机可以访问网络,虚拟机也可以实现上网。此模式是懒人模式首选!但换来一个问题就是,如果你的物理机网络IP发生变化,虚拟机的IP也会相应的改变。如果IP变化对虚拟机有影响的环境,此模式慎用!
2、Host-only模式:在一些网络环境中,由于安全,调试等原因,可能需要讲虚拟机和真实的物理环境隔离开来,那么此模式是首选。此模式下的所有虚拟机可以相互访问,但和真实的物理网络环境是隔离开的,此模式下的IP信息,是由host-only虚拟网络的DHCP服务器来分配的。当然了,此模式由于是和真实环境隔离开的,如果要上网,可能比较麻烦,博主没试过,有兴趣的可以自己研究下。
3、NAT模式:使用NAT模式,就是让虚拟机借助NAT(网络地址转换)功能,通过物理机来访问网络。此模式下,如果物理机可以访问互联网,那么虚拟机也可以,默认情况下 和物理机同一网络中的其它机器不能访问虚拟机,但虚拟机可以访问其它物理机

经过以下配置即可实现宿主机80端口的访问自动映射到虚拟机的80端口

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

CentOs虚拟机网络穿透(Natapp)

# 下载:https://natapp.cn/#download 并安装
cd /usr/local/ && mkdir natapp && cd natapp
#
# 运行
方式1:nohup ./natapp -authtoken=2c1ad2664029ea02 -log=stdout &
方式2:nohup ./natapp -authtoken=2c1ad2664029ea02 -log=stdout -loglevel=ERROR &
#
# 访问
http://lixing.nat300.top
# 开机自启
cd /etc/rc.d && vi rc.local # 编辑该文件,添加内容: nohup /usr/local/natapp/natapp -authtoken=2c1ad2664029ea02 -log=stdout -loglevel=ERROR &
chmod +x rc.local # 添加执行权限

用户组(group)就指具有相同特征用户(user)的集合体
比如有时我们要让多个用户具有相同的权限,比如查看、修改某一文件或执行某个命令,这时我们需要用户组,我们把用户都定义到同一用户组,我们通过修改文件或目录的权限,让用户组具有一定的操作权限,这样用户组下的用户对该文件或目录都具有相同的权限
cat /etc/group # 查看组列表

用户

root用户  (ID 0)
系统用户  (ID 1-499)
普通用户  (ID 500以上)
cat /etc/passwd # 查看用户列表
whoami # 查看当前登录用户名
who # 显示当前登录系统的用户列表
groups # 显示当前登录用户所属的组
groups lixing # 查看用户lixing所属的组
usermod -G root lixing # 将用户lixing添加到root组
gpasswd -d lixing root # 将用户lixing从root组中删除
su - 切换到root,需要输入root密码,能获得root的环境变量及执行权限
su   切换到root,需要输入root密码,但并不能获得root的环境变量
su lixing 切换到lixing,需要输入lixing密码
sudo 临时申请root权限,所以输入的不是root用户密码,而是当前用户的密码

常用指令

# 模糊查询文件、文件夹
find / -name '*gitlab-runner*'  
# 删除所有包含gitlab-runner文件
find / -name '*gitlab-runner*' | xargs rm -rf
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大能嘚吧嘚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值