Linux---centos
2024-10-06 16:51:21 0 举报
AI智能生成
centos系统学习笔记及遇到的问题记录
作者其他创作
大纲/内容
centos7.9
linux目录结构
/VAR
/BOOT
/PROC
/OPT
/SRV
/MNT
/MEDIA
/ROOT
/Bin---二进制文件
/DEV---设备文件
/ETC---配置文件
/USR---存储可共享只读数据
/HOME
/LIB
/SBIN
/TMP
centos常用命令及各类常用工具---持续更新中
centos初始化脚本
centos实用命令工具
yum -y install traceroute
yum -y install bzip2
yum -y install htop
yum -y install sysstat
yum -y install iotop
yum -y install rsync
yum -y install tcpdump
yum -y install net-tools
yum -y install telnet
ntpdate ntp.aliyun.com
yum install -y ntp gcc gcc-c++
yum install -y unzip
yum install -y lrzsz
yum install -y vim
wget http://mirrors.aliyun.com/repo/epel-7.repo -O /etc/yum.repos.d/CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
yum install -y wget
centos内核优化
查看当前网络链接信息和网络连接---netstat
安装工具
yum -y install net-tools
yum -y install net-tools
删除当前所有来自某个IP地址的2222端口连接
删除当前所有来自某个IP地址的2222端口连接
kill $(netstat -tnap | awk '$4 ~ /119\.159\.174\.61:2222/ && $5 ~ /60\.2\.249\.115/ {print $7}' | cut -d'/' -f1)
kill $(netstat -tnap | awk '$4 ~ /119\.159\.174\.61:2222/ && $5 ~ /60\.2\.249\.115/ {print $7}' | cut -d'/' -f1)
查看时间---date
查看系统启动时间
date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"
date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"
抓包及分析工具
抓包工具---tcpdump
安装工具
yum -y install tcpdump
yum -y install tcpdump
抓包命令:
tcpdump -i bond0 host 60.2.249.115 -s0 -w output.pcap
使用tcpdump捕获在bond0接口上与主机60.2.249.115之间的所有网络流量,并将结果保存在名为output.pcap的文件中。抓包得到的文件可以通过wireshark查看
使用tcpdump捕获在bond0接口上与主机60.2.249.115之间的所有网络流量,并将结果保存在名为output.pcap的文件中。抓包得到的文件可以通过wireshark查看
分析工具---wireshark
安装工具
yum install -y wireshark
yum install -y wireshark
分析命令
tshark -r output.pcap---查看抓包生产的文件
tshark -r output.pcap
上述示例中的字段粗略解释
可以看到此次抓的包里没有回包,正常应该会有三次握手的包:
第一次握手(SYN):
客户端发送一个SYN包,将自己的初始序列号设为一个随机数。
这个包的目的是告诉服务器,客户端希望建立连接。
第二次握手(SYN + ACK):
服务器收到客户端的SYN包后,发送一个SYN + ACK包作为响应。
这个包中将确认号设置为客户端的序列号加1,同时服务器也选择一个随机的初始序列号。
第三次握手(ACK):
客户端收到服务器的SYN + ACK包后,发送一个确认包ACK。
这个包中将确认号设置为服务器的序列号加1,同时客户端的序列号也加1。
可以看到此次抓的包里没有回包,正常应该会有三次握手的包:
第一次握手(SYN):
客户端发送一个SYN包,将自己的初始序列号设为一个随机数。
这个包的目的是告诉服务器,客户端希望建立连接。
第二次握手(SYN + ACK):
服务器收到客户端的SYN包后,发送一个SYN + ACK包作为响应。
这个包中将确认号设置为客户端的序列号加1,同时服务器也选择一个随机的初始序列号。
第三次握手(ACK):
客户端收到服务器的SYN + ACK包后,发送一个确认包ACK。
这个包中将确认号设置为服务器的序列号加1,同时客户端的序列号也加1。
Curl命令
curl 是一个命令行工具,用于在网络上传输数据。它支持多种协议,如 HTTP、HTTPS、FTP 等,可以执行各种网络请求并获取返回的数据。
常用命令
curl [options] [URL]
curl [options] [URL]
-X:指定 HTTP 请求方法,如 GET、POST、PUT、DELETE 等。
发送 GET 请求获取数据:
curl -X GET "http://example.com/api/data"
发送 POST 请求并附带数据:
curl -X POST -H "Content-Type: application/json" -d '{"key": "value"}' "http://example.com/api/endpoint"
发送 DELETE 请求删除资源:
curl -X DELETE "http://example.com/api/resource"
-u:提供用户名和密码进行基本身份验证。
使用基本身份验证发送请求:
curl -u username:password -X GET "http://example.com/api/data"
-H:指定请求头信息,比如 Content-Type。
-d:发送数据作为请求体。
-o 发送请求并将结果输出到文件:
curl -o output.txt "http://example.com/api/data"
-i 显示Response的Header信息,连同Body数据
curl -i www.baidu.com
-I 大写的i 只显示Response的Header信息
curl -I www.baidu.com
磁盘管理
新增的硬盘挂载
查看磁盘信息并分区
需要分区的磁盘小于2T
fdisk -l 查看磁盘信息
fdisk /dev/sda
fdisk -l
对2T以上的磁盘分区
fdisk -l 查看磁盘信息
parted /dev/sda 新建分区
mklabel gpt 设置磁盘分区表类型为GPT
mkpart primary 0% 100% 表示新建的分区大小为磁盘的100%
print打印分区信息
quit退出,这里输完就保存了,直接退出即可
再次查看/dev下,sda下多了一个sda1
格式化分区并设置文件系统
mkfs.ext4 /dev/sda1
挂载目录,这里在根目录下新建data目录
mkdir /data
mount /dev/sda1 /data
格式化磁盘并写入文件系统
mkfs.ext4 /dev/sda1
fdisk -l
系统启动模式
网络相关
安装无线网卡驱动
列出所有识别到的虚线网卡型号
lspci | grep -i wireless
lspci -nnk | grep -i net
lspci | grep -i network
升级内核
cetnos7自停止维护之后,最新的内核版本的是6.7.9
下载地址
http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/
6.9.7版本安装
子主题
下载6.9.7版本的内核包
wget http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64.rpm
wget http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-ml-devel-6.9.7-1.el7.elrepo.x86_64.rpm
wget http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-ml-6.9.7-1.el7.elrepo.x86_64.rpm
安装内核
rpm -ivh kernel-ml-6.9.7-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-ml-devel-6.9.7-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64.rpm
安装 kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64.rpm报错:
error: Failed dependencies:
kernel-headers < 6.9.7-1.el7.elrepo conflicts with kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64
解决: 先重启到最新的内核,卸载旧内核,再安装
error: Failed dependencies:
kernel-headers < 6.9.7-1.el7.elrepo conflicts with kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64
解决: 先重启到最新的内核,卸载旧内核,再安装
查看已安装的内核
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
设置默认引导至最新内核
grub2-set-default 0
生成 grub配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
重启
reboot
#将内核升级包传到其他机器
for i in k8s-master01 k8s-master02 k8s-master03 k8s-node01 k8s-node02 k8s-node03;do scp kernel-ml-4.20.13-1.el7.elrepo.x86_64.rpm kernel-ml-devel-4.20.13-1.el7.elrepo.x86_64.rpm $i:/root/ ; done
yum update -y --exclude=kernel* #升级除内核外的所有软件
#安装内核
cd /root && yum localinstall -y kernel-ml*
grub2-set-default 0 && grub2-mkconfig -o /etc/grub2.cfg
grubby --args="user_namespace.enable=1" --update-kernel="$(grubby --default-kernel)" #更改内核启动顺序
grubby --default-kernel #查看默认启动内核
reboot #重启电脑
for i in k8s-master01 k8s-master02 k8s-master03 k8s-node01 k8s-node02 k8s-node03;do scp kernel-ml-4.20.13-1.el7.elrepo.x86_64.rpm kernel-ml-devel-4.20.13-1.el7.elrepo.x86_64.rpm $i:/root/ ; done
yum update -y --exclude=kernel* #升级除内核外的所有软件
#安装内核
cd /root && yum localinstall -y kernel-ml*
grub2-set-default 0 && grub2-mkconfig -o /etc/grub2.cfg
grubby --args="user_namespace.enable=1" --update-kernel="$(grubby --default-kernel)" #更改内核启动顺序
grubby --default-kernel #查看默认启动内核
reboot #重启电脑
0 条评论
下一页