VMware Tools工具安装脚本(CentOS & Ubuntu)

1、VMware Tools(CentOS版)

bash 复制代码
#!/bin/bash

log_info() {
echo "[INFO] $1"
echo "[INFO] $1" >> "$LOGFILE"
}

log_error() {
echo "[ERROR] $1"
echo "[ERROR] $1" >> "$LOGFILE"
exit 1
}

# log to record install process
LOGFILE="/var/log/env-script.log"

mkdir -p /mnt/cdrom || log_error "Failed to create mount point"

chmod 777 /dev/sr0 || log_error "Failed to set CD-ROM permissions"

mount -t iso9660 /dev/sr0 /mnt/cdrom || log_error "Failed to mount ISO image"

cp /mnt/cdrom/VMwareTools-10.3.25-20206839.tar.gz /usr/local/src || log_error "Failed to copy VMware Tools package"

cd /usr/local/src || log_error "Cannot enter extraction directory"
tar -xf VMwareTools-10.3.25-20206839.tar.gz || log_error "Failed to extract VMware Tools package"

cd vmware-tools-distrib || log_error "Cannot enter vmware-tools-distrib directory"

yum install -y perl || log_error "Failed to install Perl dependency"

echo -e "y\n" | ./vmware-install.pl || log_error "Failed to execute VMware Tools installation script"

chmod 660 /dev/sr0 || log_error "Failed to reset CD-ROM permissions"

# recoard success information
log_info "All steps completed."
echo "All steps completed." >> "$LOGFILE"

2、VMware Tools(Ubuntu版)

bash 复制代码
#!/bin/bash

log_info() {
echo "[INFO] $1"
echo "[INFO] $1" >> "$LOGFILE"
}

log_error() {
echo "[ERROR] $1"
echo "[ERROR] $1" >> "$LOGFILE"
exit 1
}

# Log file to record install process
LOGFILE="/var/log/env-script.log"

# Create mount point if it doesn't exist
mkdir -p /mnt/cdrom || log_error "Failed to create mount point"

# Set CD-ROM permissions
chmod 777 /dev/cdrom || log_error "Failed to set CD-ROM permissions"

# Mount the ISO image
mount -t iso9660 /dev/cdrom /mnt/cdrom || log_error "Failed to mount ISO image"

# Copy VMware Tools package
cp /mnt/cdrom/VMwareTools-10.3.25-20206839.tar.gz /usr/local/src || log_error "Failed to copy VMware Tools package"

# Change to the extraction directory
cd /usr/local/src || log_error "Cannot enter extraction directory"

# Extract VMware Tools package
tar -xf VMwareTools-10.3.25-20206839.tar.gz || log_error "Failed to extract VMware Tools package"

# Change to the extracted directory
cd vmware-tools-distrib || log_error "Cannot enter vmware-tools-distrib directory"

# Install Perl dependency
apt-get update || log_error "Failed to update package list"
apt-get install -y perl || log_error "Failed to install Perl dependency"

# Execute VMware Tools installation script
echo -e "y\n" | ./vmware-install.pl || log_error "Failed to execute VMware Tools installation script"

# Reset CD-ROM permissions
chmod 660 /dev/cdrom || log_error "Failed to reset CD-ROM permissions"

# Record success information
log_info "All steps completed."
echo "All steps completed." >> "$LOGFILE"
相关推荐
道满科技9 分钟前
Function Calling 参数总出错?只修参数就行
linux·windows·python
Android系统攻城狮37 分钟前
Linux Gstreamer深度解析之gst_audio_ring_buffer_prepare_read调用流程与实战(七十四)
linux·运维·服务器·gstreamer音视频·音视频进阶
我科绝伦(Huanhuan Zhou)1 小时前
Linux 通用压力测试脚本合集:磁盘 + 网络
linux·网络·压力测试
Soneswy3 小时前
Linux系统篇--重定向与文件操作命令
linux
有毒的教程3 小时前
Linux底层存储路由配
linux·运维·网络
Linux系统运维工程师_郭主任4 小时前
运维人还在被拒offer?现在能考的,只有 RHCE 10.0。
linux
我先去打把游戏先4 小时前
NimBLE是什么-ESP32蓝牙协议栈详解
单片机·嵌入式硬件·ubuntu
自养Agent5 小时前
MCP Server Boundary Audit Report
linux·服务器·人工智能·windows·大模型·llm
Coisinier6 小时前
docker命令管理镜像及容器
linux·运维·nginx·docker·容器·操作系统
A心有千千结6 小时前
通过 SSH 反向代理让服务器借用本机网络访问 GitHub 的最佳实践
linux·服务器·网络·git·ssh·github