Rocky Linux 8.10 虚拟机安装与配置完全指南
Rocky Linux 8.10 虚拟机安装与配置完全指南
本文是 Rocky Linux 8.10 EDA 开发环境系列的第一篇,主要介绍虚拟机系统的安装与基础配置。
- 本篇:虚拟机系统安装与配置
- 第二篇:EDA 工具安装与 License 制作
- 第三篇:实用工具安装与配置
一、安装 VMware Workstation Pro
登录博通账号,前往 VMware Workstation Pro 下载页面,选择对应平台的版本下载即可。


二、下载 Rocky Linux 8.10 安装镜像
推荐使用国内镜像源下载,速度更快。以下提供几个下载地址:
| 来源 | 地址 |
|---|---|
| 官网 | rockylinux.org |
| 中科大源(推荐) | mirrors.ustc.edu.cn/rocky |
| 阿里源 | mirrors.aliyun.com/rockylinux |
下载文件名为:
Rocky-8.10-x86_64-dvd1.iso
三、虚拟机安装 Rocky Linux 8.10
3.1 创建虚拟机
打开 VMware Workstation Pro,点击 创建新的虚拟机。

选择 自定义(高级),点击下一步。

硬件兼容性保持默认,下一步。

选择 稍后安装操作系统,下一步。

客户机操作系统选择 Linux,版本选择 Rocky Linux 64 位,下一步。

设置虚拟机名称,并点击浏览选择虚拟机文件的存放位置(示例中为 H:\Virtual Machine\Rocky8),下一步。

3.2 配置硬件参数
根据宿主机实际情况设置处理器数量和内核数量(参考:Windows 如何查看内核数量),下一步。

设置虚拟机内存大小,建议至少 8GB,下一步。

网络类型选择 使用网络地址转换(NAT),下一步。

I/O 控制器类型选择 LSI Logic,下一步。

磁盘类型选择 NVMe,下一步。

选择 创建新虚拟磁盘,下一步。

设置磁盘大小,选择 将虚拟磁盘拆分成多个文件,下一步。

磁盘文件名保持默认,下一步。

3.3 自定义硬件(重要)
点击 自定义硬件,有三处关键配置需要修改:

1) 处理器 — 开启虚拟化引擎
在处理器栏,勾选 虚拟化 Intel VT-x/EPT 或 AMD-V/RVI。如果不勾选,虚拟机内键盘响应会有明显延迟。

2) CD/DVD — 挂载 ISO 镜像
在 新 CD/DVD 栏选择 使用 ISO 映像文件,点击浏览选中之前下载的 Rocky-8.10-x86_64-dvd1.iso。

3) 显示 — 关闭 3D 加速
在 显示 栏取消勾选 加速 3D 图形,否则使用时可能会明显卡顿。

点击 关闭 返回,再点击 完成。

3.4 安装系统
点击 开启此虚拟机。
注意:如果遇到开机失败,可能是处理器虚拟化选项的兼容性问题,参考 Intel 12 代处理器 VMware 键盘延迟解决方案 处理。

用方向键选择 Install Rocky Linux 8.10,按 Enter 确认。

等待片刻后进入安装向导界面,向下滚动找到 中文 — 简体中文(中国),点击继续。

3.5 安装选项配置
安装目标位置
点击 安装目标位置。

系统会自动选中虚拟磁盘,确认后点击 完成。

软件选择
点击 软件选择。

基础环境选择 带 GUI 的服务器,附加软件建议勾选 开发工具 即可,其他按需选择。
建议:附加软件不要选太多,可能会有兼容性问题。勾选一个 开发工具 就够了。

网络和主机名
点击 网络和主机名。

将以太网开关打开,可以自定义主机名,然后点击 配置。

血泪教训:主机名千万不要用全大写!使用默认的
localhost.localdomain或者小写名称可以避免很多不必要的麻烦。全大写的主机名曾导致我重装了一次物理机、两次虚拟机......
点击 常规 选项卡,勾选 可用时自动连接到这个网络,保存并完成。

时间和日期
点击 时间和日期。

选择正确的地区和城市,确保 网络时间 已开启,点击完成。

ROOT 密码
点击 ROOT 密码,为管理员账户设置密码。

建议:ROOT 密码与普通用户密码设置为不同的值,提升安全性。

创建用户
点击 创建用户。

填写用户名和密码,务必勾选"将此用户设为管理员",点击完成。

3.6 开始安装
点击 开始安装,然后耐心等待。


安装完成后,点击 重启系统。

3.7 首次启动配置
重启后需要同意许可协议。点击 许可信息。

勾选 我同意许可协议,点击完成。

点击 结束配置。

选择用户账户,输入密码登录。

大功告成!强烈建议此时立即保存一个虚拟机快照,以备不时之需。

3.8 安装后的虚拟机设置
虚拟机关机后,点击 编辑虚拟机设置。

1) CD/DVD — 切换回物理驱动器
点击 CD/DVD,选择 使用物理驱动器,释放 ISO 镜像。

2) VMware Tools — 时间同步
点击 选项 → VMware Tools,勾选 将客户机时间与主机同步。

3) 共享文件夹
点击 共享文件夹,选择 总是启用,点击添加。

点击下一步。

点击浏览设置宿主机共享目录路径,配置完成后虚拟机可以访问该目录下的内容。

勾选 启用此共享,点击完成。

四、系统初始化配置
4.1 换源与系统更新
系统装好后的第一件事就是把默认源替换为国内镜像源,大幅提升软件安装速度。
# 切换到 root 用户
$ su
密码:
# 将默认源替换为中科大源
$ sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.ustc.edu.cn/rocky|g' \
-i.bak \
/etc/yum.repos.d/Rocky-AppStream.repo \
/etc/yum.repos.d/Rocky-BaseOS.repo \
/etc/yum.repos.d/Rocky-Extras.repo \
/etc/yum.repos.d/Rocky-PowerTools.repo
# 重建缓存并更新系统
$ yum clean all
$ yum makecache
$ yum update -y
# 安装 EPEL 源(提供更多第三方软件包)
$ yum install -y epel-release
4.2 防火墙配置
开放后续 EDA License 服务所需的 27000 端口:
$ firewall-cmd --zone=public --add-port=27000/tcp --permanent
$ firewall-cmd --reload
4.3 安装并配置 Gvim
$ sudo yum install -y gvim
Gvim 的详细配置可以参考:数字 IC 设计开发 Gvim 配置 - IC 攻城狮的摸鱼小屋
4.4 安装 tcsh
很多 EDA 工具的脚本基于 csh/tcsh,因此需要安装 tcsh:
$ sudo yum install -y tcsh
# 进入 tcsh shell
$ tcsh
4.5 配置 Shell 环境变量
这是整个环境配置中最核心的一步。我们需要配置 bash 和 csh 两套环境,并为不同厂商的 EDA 工具分别创建独立的环境配置文件。
~/.bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific environment
if ! ["$PATH" =~ "$HOME/.local/bin:$HOME/bin:"](/wiki/"$PATH" =~ "$HOME/.local/bin:$HOME/bin:")
then
PATH="$HOME/.local/bin:$HOME/bin:$PATH"
fi
export PATH
# User specific aliases and functions
alias share_dir="sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other"
alias g="gvim"
alias la="la -a"
alias ..="cd .."
cd() { builtin cd "$@" && ls; }
export PS1='[\u@\h `pwd`]\$'
alias sc="source ~/.bashrc"
alias vb="gvim ~/.bashrc"
~/.cshrc
# .cshrc
#-----------------------------------------------------------------------------
# 基础配置
#-----------------------------------------------------------------------------
alias g 'gvim'
alias la 'ls -a'
alias .. 'cd ..'
alias vc 'gvim ~/.cshrc'
alias sc 'source ~/.cshrc'
alias cd 'cd \!*; ls'
alias python 'python3'
alias pip 'pip3'
alias grep 'grep --color=auto'
set prompt = "%n@%m:%~%#"
setenv LSCOLORS ExGxFxdxCxegedabagExEx
setenv CLICOLOR yes
set autolist
set correct = cmd
set noclobber
alias virtualip 'sudo ip link add vmnic0 type dummy && sudo ip link set vmnic0 addr 00:15:5d:f2:bc:d8'
alias sharedir 'sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other'
#-----------------------------------------------------------------------------
# EDA 工具环境(按厂商分离,按需加载)
#-----------------------------------------------------------------------------
alias scs 'source ~/synopsys.cshrc'
alias scc 'source ~/cadence.cshrc'
alias scx 'source ~/xilinx.cshrc'
设计思路:EDA 工具的环境变量按厂商拆分为独立文件(
synopsys.cshrc、cadence.cshrc、xilinx.cshrc),通过别名按需加载,避免启动 Shell 时加载大量不必要的环境变量。
~/synopsys.cshrc
#!csh
# Synopsys EDA Tool Settings
#-----------------------------------------------------------------------------
# Directory Settings
#-----------------------------------------------------------------------------
setenv SNPS_TOOLS_HOME "${HOME}/EDA/Synopsys"
#-----------------------------------------------------------------------------
# Synopsys Client License (SCL)
#-----------------------------------------------------------------------------
setenv SCL_HOME "${SNPS_TOOLS_HOME}/scl/2025.03"
setenv PATH "${PATH}:${SCL_HOME}/linux64/bin"
setenv VCS_ARCH_OVERRIDE "linux"
setenv LM_LICENSE_FILE "27000@bed"
alias lmg_synopsys '${SCL_HOME}/linux64/bin/lmgrd -c ${SCL_HOME}/admin/license/Synopsys.dat -l ${SCL_HOME}/admin/lmg.log'
alias vlmg 'gvim ${SCL_HOME}/admin/lmg.log'
#-----------------------------------------------------------------------------
# DVE
#-----------------------------------------------------------------------------
setenv DVE_HOME "${SNPS_TOOLS_HOME}/vcs/W-2024.09-SP1"
setenv PATH "${PATH}:${DVE_HOME}/gui/dve/bin"
alias dve 'dve -full64'
#-----------------------------------------------------------------------------
# Formality
#-----------------------------------------------------------------------------
setenv FM_HOME "${SNPS_TOOLS_HOME}/formality/V-2023.12-SP3"
setenv PATH "${PATH}:${FM_HOME}/bin"
alias fm 'fm_shell'
#-----------------------------------------------------------------------------
# IC Compiler II
#-----------------------------------------------------------------------------
setenv ICC2_HOME "${SNPS_TOOLS_HOME}/icc2/V-2023.12-SP3"
setenv PATH "${PATH}:${ICC2_HOME}/bin"
alias icc2 'icc2_shell'
#-----------------------------------------------------------------------------
# Library Compiler
#-----------------------------------------------------------------------------
setenv LC_HOME "${SNPS_TOOLS_HOME}/lc/V-2023.12-SP3"
setenv PATH "${PATH}:${LC_HOME}/bin"
alias lc 'lc_shell'
#-----------------------------------------------------------------------------
# Milkyway
#-----------------------------------------------------------------------------
setenv MW_HOME "${SNPS_TOOLS_HOME}/milkyway/V-2023.12-SP3"
setenv PATH "${PATH}:${MW_HOME}/bin"
alias mw 'mw_shell'
#-----------------------------------------------------------------------------
# PrimeTime
#-----------------------------------------------------------------------------
setenv PT_HOME "${SNPS_TOOLS_HOME}/pt/V-2023.12-SP2"
setenv PATH "${PATH}:${PT_HOME}/bin"
alias pt 'pt_shell'
#-----------------------------------------------------------------------------
# RTL Architect
#-----------------------------------------------------------------------------
setenv RTL_ARCH_HOME "${SNPS_TOOLS_HOME}/rtl_arch/V-2023.12-SP5"
setenv PATH "${PATH}:${RTL_ARCH_HOME}/bin"
alias rtl_arch 'rtl_arch_shell'
#-----------------------------------------------------------------------------
# SpyGlass
#-----------------------------------------------------------------------------
setenv SG_HOME "${SNPS_TOOLS_HOME}/spyglass/V-2023.12-SP3"
setenv PATH "${PATH}:${SG_HOME}/SPYGLASS_HOME/bin"
alias sg 'spyglass'
#-----------------------------------------------------------------------------
# StarRC
#-----------------------------------------------------------------------------
setenv STAR_RC_HOME "${SNPS_TOOLS_HOME}/starrc/V-2023.12-SP3"
setenv PATH "${PATH}:${STAR_RC_HOME}/bin"
alias starrc 'starrc_shell'
#-----------------------------------------------------------------------------
# Design Compiler
#-----------------------------------------------------------------------------
setenv DC_HOME "${SNPS_TOOLS_HOME}/dc/V-2023.12-SP3"
setenv PATH "${PATH}:${DC_HOME}/bin"
alias dc 'dc_shell'
#-----------------------------------------------------------------------------
# TetraMAX
#-----------------------------------------------------------------------------
setenv TMX_HOME "${SNPS_TOOLS_HOME}/tetramax/V-2023.12-SP3"
setenv PATH "${PATH}:${TMX_HOME}/bin"
alias tmx 'tmx_shell'
#-----------------------------------------------------------------------------
# VCS
#-----------------------------------------------------------------------------
setenv VCS_HOME "${SNPS_TOOLS_HOME}/vcs/W-2024.09-SP1"
setenv PATH "${PATH}:${VCS_HOME}/bin"
alias vcs 'vcs -full64'
#-----------------------------------------------------------------------------
# Verdi
#-----------------------------------------------------------------------------
setenv VERDI_HOME "${SNPS_TOOLS_HOME}/verdi/W-2024.09-SP1"
setenv PATH "${PATH}:${VERDI_HOME}/bin"
alias verdi 'verdi'
setenv LD_LIBRARY_PATH "${VERDI_HOME}/share/PLI/VCS/LINUX64"
#-----------------------------------------------------------------------------
# 打印已加载的工具路径
#-----------------------------------------------------------------------------
foreach t ( dve fm icc2 lc mw pt rtl_arch sg starrc dc tmx vcs verdi)
echo "Found $t at `which $t` "
end
~/xilinx.cshrc
#!csh
# Xilinx EDA Tool Settings
#-----------------------------------------------------------------------------
# Directory Settings
#-----------------------------------------------------------------------------
setenv XILINX_TOOLS_HOME "${HOME}/EDA/Xilinx"
#-----------------------------------------------------------------------------
# License
#-----------------------------------------------------------------------------
setenv XILINX_LICENSE_FILE "${HOME}/.Xilinx/xilinx_ise_vivado.lic"
#-----------------------------------------------------------------------------
# Tool Sources
#-----------------------------------------------------------------------------
source ${XILINX_TOOLS_HOME}/2025.1/PDM/.settings64-Power_Design_Manager__PDM_.csh
source ${XILINX_TOOLS_HOME}/2025.1/Vitis/.settings64-Vitis_Embedded_Development.csh
source ${XILINX_TOOLS_HOME}/2025.1/Vivado/.settings64-Vivado.csh
source ${XILINX_TOOLS_HOME}/2025.1/Model_Composer/.settings64-Model_Composer.csh
source ${XILINX_TOOLS_HOME}/DocNav/.settings64-DocNav.csh
source ${XILINX_TOOLS_HOME}/2025.1/Vitis/.settings64-Vitis_for_HLS.csh
#-----------------------------------------------------------------------------
# 打印已加载的工具路径
#-----------------------------------------------------------------------------
foreach t (vivado vitis pdm model_composer docnav vitis_for_hls)
echo "Found $t at `which $t` "
end
五、开发环境搭建
5.1 安装 Git
$ sudo yum install git
5.2 配置 Python3
Rocky Linux 8.10 自带 Python3,可以通过 alternatives 命令管理多个版本:
# 查看当前 Python 版本
$ python -V
Python 3.6.8
# 切换 Python 版本(选择你需要的版本编号)
$ sudo alternatives --config python3
共有 3 个提供"python3"的程序。
选项 命令
-----------------------------------------------
* 1 /usr/bin/python3.6
2 /usr/bin/python3.11
+ 3 /usr/bin/python3.12
按 Enter 保留当前选项[+],或者键入选项编号: 3
$ python -V
Python 3.12.11
安装 pip
$ python -m ensurepip
安装常用 Python 库
# pyverilog:用 Python 分析 Verilog 代码的利器
$ python -m pip install pyverilog
总结
至此,我们完成了以下工作:
- VMware 虚拟机创建 — 合理配置了处理器虚拟化、内存、磁盘和显示参数
- Rocky Linux 8.10 系统安装 — 包括 GUI 桌面、网络、用户等基础配置
- 系统初始化 — 换源、防火墙、Shell 环境变量的完整配置
- 开发工具链 — Git、Python3 等基础开发环境
下一篇将介绍 EDA 工具的安装与 License 制作,包括 Synopsys、Cadence 和 Xilinx 全家桶的安装流程。
Comments (0)
No comments yet. Be the first!