centos虚拟机配置

安装选项

先说我的选择,选择<标准安装>、<开发工具>、<系统工具>,关闭Kdump

选项说明

标准安装(Base System)

  • 作用:
    基础系统组件,包含操作系统运行的核心文件,例如:
    • 内核、启动引导程序(GRUB)、系统初始化工具(systemd)。
    • 基础文件系统工具(如 ls、cp、mkdir)、网络协议栈、SSH 服务等。
    • 最小化依赖的软件包(如 glibc、systemd、openssh)。
  • 是否必须:必须勾选,否则无法安装完整的操作系统。

开发工具(Development Tools)

  • 作用:
    软件开发所需的工具链,包含:
    • 编译器(GCC、G++)、调试器(GDB)、构建工具(make、cmake)。
    • 版本控制工具(Git)、库文件开发包(如 glibc-devel、openssl-devel)。
    • 用于编译源代码的依赖环境。
  • 适用场景:
    • 开发人员编译程序、自定义软件安装(如从源码安装 Nginx、Python 等)。
    • 系统管理员需要修改或编译内核模块。
  • 是否必须:
    • 非必须,但若需进行开发或源码编译,必须安装。普通用户(如仅使用图形界面办公)可跳过。

.NET Development

  • 作用:
    用于在 Linux 上开发和运行 .NET 应用程序,包含:
    • .NET SDK(如 dotnet-sdk)、运行时环境(.NET Runtime)。
    • 相关工具链和库(如 ASP.NET Core 组件)。
  • 适用场景:
    • 开发人员使用 C#、F# 等语言编写 .NET 应用(如 Web 服务、控制台程序)。
    • 需要在 CentOS 上部署 .NET Core/6/7/8 应用。
  • 是否必须:
    • 非必须,仅当需要开发或运行 .NET 程序时勾选。若无需使用 .NET,可忽略。
      RPM 开发工具(RPM Development Tools)
  • 作用:
    用于创建、修改和管理 RPM 软件包,包含:
    • rpmbuild 工具、SPEC 文件模板、打包依赖库。
    • 用于将源代码或二进制文件封装为 RPM 包,便于分发和管理。
  • 适用场景:
    • 系统管理员或软件发布者需要制作自定义 RPM 包。
    • 参与开源项目的 RPM 包维护。
  • 是否必须:
    • 非必须,仅专业 RPM 包开发者需要,普通用户或开发者可跳过。

系统工具(System Tools)

  • 作用:
    系统管理和维护工具,包含:
    • 磁盘管理工具(如 fdisk、parted、lsblk)。
    • 性能监控工具(如 top、htop、vmstat)。
    • 日志分析工具(如 journalctl)、网络调试工具(如 tcpdump、wget)。
    • 文件系统检查工具(如 fsck)、系统服务管理工具等。
  • 适用场景:
    • 系统管理员进行日常运维、故障排查、性能优化。
    • 普通用户可能需要部分工具(如 wget 下载文件)。
  • 是否必须:
    • 部分必须,基础系统工具(如 wget、net-tools)通常默认包含或建议安装,高级工具(如 htop)可按需选择。

Kdump

Kdump 是 Linux 系统中的一种 内核崩溃转储机制,用于在系统内核(Kernel)发生严重错误(如 Oops、Panic)导致崩溃时,将当前内核的内存状态(包括寄存器、内存数据、调用栈等)保存到一个 独立的内存区域 或磁盘文件中。

Kdump 的工作原理

  1. 独立内存区域:
  • Kdump 会在系统启动时预留一部分内存(通常为几百 MB 到数 GB,默认约 256MB),用于运行一个名为 kdump kernel 的轻量级内核。
  • 当主内核崩溃时,系统会切换到 kdump kernel,将主内核的内存数据写入磁盘(如 /var/crash/ 目录)。
  1. 核心组件:
  • kexec:用于在不重启硬件的情况下切换到 kdump kernel。
  • crash:分析转储文件的工具,需单独安装(如 yum install crash)。

初始化配置

网络配置

  • vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPADDR=192.168.248.10
PREFIX=24
GATEWAY=192.168.248.1
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=75020da1-0c75-4108-b2a1-106d57c70f12
DEVICE=ens33
ONBOOT=yes
  • vim /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.248.1

systemctl restart network

配置CentOS-Base.repo

CentOS-Base.repo 是 YUM(Yellowdog Updater, Modified)包管理器的核心配置文件,用于定义系统软件仓库的源地址和参数。
它的主要作用是告诉系统从哪里下载软件包、如何验证安全性以及哪些仓库可用
修改后需执行 yum clean all && yum makecache 更新缓存。

sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum clean all        # 清理旧缓存
sudo yum makecache        # 生成新缓存
yum install epel-release  # 激活并配置 EPEL软件源
sudo yum update -y        # 可选:更新系统
systemctl stop firewalld.service 
systemctl disable firewalld.service 
systemctl stop NetworkManager.service 
systemctl disable NetworkManager.service 

setenforce 0  # 宽容模式、1:强制模式
getenforce
systemctl stop postfix.service
systemctl disable postfix.service

ssh优化

vim /etc/ssh/sshd_config
UseDNS no  # 禁用DNS反向解析,提高SSH连接速度
posted @ 2025-05-26 10:35  WiseHYH  阅读(42)  评论(0)    收藏  举报