更新repo为国内镜像
更换yum源
mv /etc/yum.repos.d/CentOS-Base.repo{,.backup}
cat > /etc/yum.repos.d/CentOS-Base.repo << \EOF
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
EOF
sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://mirror.centos.org/centos/|baseurl=https://mirrors.aliyun.com/centos/|g' \
-i.bak \
/etc/yum.repos.d/CentOS-Base.repo
yum clean all
yum makecache
添加EPEL库
yum install -y epel-release
sed -e 's|^metalink=|#metalink=|g' \
-e 's|^#baseurl=https\?://download.fedoraproject.org/pub/epel/|baseurl=https://mirrors.ustc.edu.cn/epel/|g' \
-e 's|^#baseurl=https\?://download.example/pub/epel/|baseurl=https://mirrors.ustc.edu.cn/epel/|g' \
-i.bak \
/etc/yum.repos.d/epel.repo
yum makecache fast
工具
yum install -y curl git lrzsz net-tools screen sysstat vim wget unzip zip yum-utils
Python3
yum install -y python3 python3-devel python3-pip
python3 -m pip install -i https://pypi.doubanio.com/simple/ -U pip setuptools
python3 -m pip config set global.index-url https://pypi.doubanio.com/simple/
JDK
yum install -y java-1.8.0-openjdk
java -version
docker
yum install -y yum-utils device-mapper-persistent-data lvm2
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
sed -i.bak 's|download.docker.com|mirrors.ustc.edu.cn/docker-ce|' /etc/yum.repos.d/docker-ce.repo
yum makecache fast
yum install -y docker-ce
mkdir -p /etc/docker && cat > /etc/docker/daemon.json << EOF
{
"iptables": false,
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://d5eeyghy.mirror.aliyuncs.com",
"https://reg-mirror.qiniu.com",
"https://hub-mirror.c.163.com",
"https://mirror.ccs.tencentyun.com",
"https://dockerproxy.com",
"https://registry.hub.docker.com",
"https://docker.io"
]
}
EOF
systemctl --now enable docker
modprobe br_netfilter
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
echo "net.bridge.bridge-nf-call-iptables = 1" >> /etc/sysctl.conf
echo "net.bridge.bridge-nf-call-ip6tables = 1" >> /etc/sysctl.conf
sysctl -p
安装ELRepo
最新稳定内核
# yum -y install yum-plugin-fastestmirror
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
#长期维护版:kernel-lt 最新稳定版:kernel-ml
yum install -y --enablerepo=elrepo-kernel kernel-lt kernel-lt-devel kernel-lt-headers
grub2-set-default 0
reboot
yum install -y --enablerepo=elrepo-kernel kernel-lt-tools kernel-lt-tools-libs kernel-lt-tools-libs-devel
查看可用内核版本及启动顺序
# BIOS
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/grub2/grub.cfg
# UEFI
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/efi/EFI/centos/grub.cfg
删除多余内核
cat << "EOF" > del_kernel.sh
detele_kernel(){
release="centos"
kernel_version=`uname -r | awk -F "-" '{print $1}'`
rpm_total=`rpm -qa | grep kernel | grep -v "${kernel_version}" | grep -v "noarch" | wc -l`
if [ "${rpm_total}" > "1" ]; then
echo -e "检测到 ${rpm_total} 个其余内核,开始卸载..."
for((integer = 1; integer <= ${rpm_total}; integer++)); do
rpm_del=`rpm -qa | grep kernel | grep -v "${kernel_version}" | grep -v "noarch" | head -${integer}`
echo -e "开始卸载 ${rpm_del} 内核..."
rpm --nodeps -e ${rpm_del}
echo -e "卸载 ${rpm_del} 内核卸载完成,继续..."
done
echo -e "内核卸载完毕,继续..."
else
echo -e " 检测到 内核 数量不正确,请检查 !" && exit 1
fi
}
detele_kernel
EOF
bash del_kernel.sh
此处评论已关闭