為虛擬機中的 openSUSE 12.1 安裝 VBoxGuestAdditions 4.1.10


前言

在 VirtualBox 4.1.10 軟件中安裝 openSUSE 12.1 操作系統后,它已經自帶了 VBoxGuestAdditions 4.1.4,如下所示:

ben@vbox:~> zypper search virtualbox-guest
Loading repository data...
Reading installed packages...

S | Name                         | Summary                                    | Type
--+------------------------------+--------------------------------------------+--------
  | virtualbox-guest-kmp-default | Guest kernel modules for VirtualBox        | package
i | virtualbox-guest-kmp-desktop | Guest kernel modules for VirtualBox        | package
  | virtualbox-guest-kmp-pae     | Guest kernel modules for VirtualBox        | package
i | virtualbox-guest-tools       | VirtualBox guest tools                     | package
i | virtualbox-guest-x11         | VirtualBox X11 drivers for mouse and video | package
ben@vbox:~>
ben@vbox:~> zypper search -s virtualbox-guest-kmp-desktop
Loading repository data...
Reading installed packages...

S | Name                         | Type    | Version                | Arch   | Repository
--+------------------------------+---------+------------------------+--------+-----------------------
i | virtualbox-guest-kmp-desktop | package | 4.1.4_k3.1.0_1.1-3.2.3 | x86_64 | 163/Oss
i | virtualbox-guest-kmp-desktop | package | 4.1.4_k3.1.0_1.1-3.2.3 | x86_64 | openSUSE-12.1-Oss
i | virtualbox-guest-kmp-desktop | package | 4.1.4_k3.1.0_1.1-3.2.3 | x86_64 | openSUSE-12.1-12.1-1.4
v | virtualbox-guest-kmp-desktop | package | 4.1.4_k3.1.0_1.1-3.2.3 | i586   | 163/Oss
v | virtualbox-guest-kmp-desktop | package | 4.1.4_k3.1.0_1.1-3.2.3 | i586   | openSUSE-12.1-Oss
ben@vbox:~>
ben@vbox:~> zypper info virtualbox-guest-kmp-desktop
Loading repository data...
Reading installed packages...


Information for package virtualbox-guest-kmp-desktop:

Repository: 163/Oss
Name: virtualbox-guest-kmp-desktop
Version: 4.1.4_k3.1.0_1.1-3.2.3
Arch: x86_64
Vendor: openSUSE
Installed: Yes
Status: up-to-date
Installed Size: 413.0 KiB
Summary: Guest kernel modules for VirtualBox
Description:
VirtualBox is an extremely feature rich, high performance product
for enterprise customers, it is also the only professional solution
that is freely available as Open Source Software under the terms of the
GNU Public License (GPL).

這樣的好處是不用在 VirtualBox 中另外安裝增強功能了,壞處是這個增強功能的版本太低了,才 4.1.4,而最新版本是 4.1.10。

現在讓我們開始安裝 VBoxGuestAdditions 4.1.10 吧。

卸載舊版本的 VBoxGuestAdditions

首先,使用 zypper 命令卸載 VBoxGuestAdditions 4.1.4:

ben@vbox:~> sudo zypper remove virtualbox-guest-kmp-desktop virtualbox-guest-tools virtualbox-guest-x11
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following packages are going to be REMOVED:
  virtualbox-guest-kmp-desktop virtualbox-guest-tools virtualbox-guest-x11

3 packages to remove.
After the operation, 6.1 MiB will be freed.
Continue? [y/n/?] (y):
Removing virtualbox-guest-tools-4.1.4-3.2.3 [done]
Additional rpm output:
redirecting to systemctl
Warning: Unit file of created job changed on disk, 'systemctl --system daemon-reload' recommended.
insserv: warning: script 'S01atop' missing LSB tags and overrides
insserv: warning: script 'atop' missing LSB tags and overrides


Removing virtualbox-guest-x11-4.1.4-3.2.3 [done]
Removing virtualbox-guest-kmp-desktop-4.1.4_k3.1.0_1.1-3.2.3 [done]

准備工作

然后做一些准備工作:

ben@vbox:~> sudo zypper refresh
Repository '163/NON-Oss' is up to date.
Repository '163/Oss' is up to date.
Repository '163/Update' is up to date.
Repository 'Updates for openSUSE 12.1 12.1-1.4' is up to date.
Repository 'openSUSE-12.1-Non-Oss' is up to date.
Repository 'openSUSE-12.1-Oss' is up to date.
All repositories have been refreshed.
ben@vbox:~> sudo zypper update
Loading repository data...
Reading installed packages...

Nothing to do.
ben@vbox:~> sudo zypper install make gcc
Loading repository data...
Reading installed packages...
'gcc' is already installed.
No update candidate for 'gcc-4.6-15.1.3.x86_64'. The highest available version is already installed.
'make' is already installed.
No update candidate for 'make-3.82-147.1.2.x86_64'. The highest available version is already installed.
Resolving package dependencies...

Nothing to do.
ben@vbox:~> uname -a
Linux vbox 3.1.9-1.4-desktop #1 SMP PREEMPT Fri Jan 27 08:55:10 UTC 2012 (efb5ff4) x86_64 x86_64 x86_64 GNU/Linux
ben@vbox:~> sudo zypper install kernel-desktop-devel
Loading repository data...
Reading installed packages...
'kernel-desktop-devel' is already installed.
No update candidate for 'kernel-desktop-devel-3.1.9-1.4.1.x86_64'. The highest available version is already installed.
Resolving package dependencies...

Nothing to do.

也就是說要先安裝好 make、gcc 和 kernel-desktop-devel 軟件包,從上面可以看出,我的機器上以前已經安裝過這些軟件包了。

另外,需要先安裝好 dkms 軟件包:

Be sure to install DKMS before installing the Linux Guest Additions. If DKMS is not available or not installed, the guest kernel modules will need to be recreated manually whenever the guest kernel is updated using the command

/etc/init.d/vboxadd setup

as root.

但是 openSUSE 操作系統不支持 dkms,而其他主流的 Linux 操作系統基本上都支持 dkms。這是很糟糕的,如上所述,以后 openSUSE 操作系統的內核 kernel 有升級的話,每次都要手動運行一次 sudo /etc/init.d/vboxadd setup 命令了。

開始安裝

現在,把 VirtualBox 軟件安裝目錄下的 VBoxGuestAdditions.iso 文件拷貝到 openSUSE 操作系統中,然后:

ben@vbox:~/repo/VBoxGuestAdditions> 7z x VBoxGuestAdditions.iso

7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,1 CPU)

Processing archive: VBoxGuestAdditions.iso

Extracting  32Bit
Extracting  32Bit/OS2
Extracting  32Bit/OS2/VBoxGuest.sys
Extracting  32Bit/OS2/VBoxService.exe
Extracting  32Bit/OS2/gengradd.dll
Extracting  32Bit/OS2/libc063.dll
Extracting  32Bit/OS2/readme.txt
Extracting  32Bit/OS2/vboxmouse.sys
Extracting  32Bit/Readme.txt
Extracting  64Bit
Extracting  64Bit/Readme.txt
Extracting  AUTORUN.INF
Extracting  VBoxLinuxAdditions.run
Extracting  VBoxSolarisAdditions.pkg
Extracting  VBoxWindowsAdditions-amd64.exe
Extracting  VBoxWindowsAdditions-x86.exe
Extracting  VBoxWindowsAdditions.exe
Extracting  autorun.sh
Extracting  runasroot.sh

Everything is Ok

Folders: 3
Files: 16
Size:       50349560
Compressed: 50751488
ben@vbox:~/repo/VBoxGuestAdditions> sudo ./VBoxLinuxAdditions.run
Verifying archive integrity... All good.
Uncompressing VirtualBox 4.1.10 Guest Additions for Linux.........
VirtualBox Guest Additions installer
insserv: warning: script 'S01atop' missing LSB tags and overrides
insserv: warning: script 'atop' missing LSB tags and overrides
insserv: warning: script 'S01atop' missing LSB tags and overrides
insserv: warning: script 'atop' missing LSB tags and overrides
Removing existing VirtualBox DKMS kernel modules                                          done
Removing existing VirtualBox non-DKMS kernel modules                                      done
Building the VirtualBox Guest Additions kernel modules
Building the main Guest Additions module                                                  done
Building the shared folder support module                                                 done
Building the OpenGL support module                                                        done
Doing non-kernel setup of the Guest Additions                                             done
You should restart your guest to make sure the new modules are actually used

insserv: warning: script 'S01atop' missing LSB tags and overrides
insserv: warning: script 'atop' missing LSB tags and overrides
insserv: warning: script 'S01atop' missing LSB tags and overrides
insserv: warning: script 'atop' missing LSB tags and overrides
insserv: warning: script 'S01atop' missing LSB tags and overrides
insserv: warning: script 'atop' missing LSB tags and overrides
insserv: warning: script 'S01atop' missing LSB tags and overrides
insserv: warning: script 'atop' missing LSB tags and overrides
Installing the Window System drivers                                                      failed
(Could not find the X.Org or XFree86 Window System.)

最后的 Installing the Window System drivers 失敗是正常的,因為我安裝 openSUSE 操作系統是文本模式的,根本沒有安裝 X-Window。

ben@vbox:~/repo/VBoxGuestAdditions> ll /opt
total 8
drwxr-xr-x 8 root root 4096 Mar  4 10:08 mono-2.10.9
drwxr-xr-x 8 root root 4096 Mar 17 16:20 VBoxGuestAdditions-4.1.10

可以看出,VBoxGuestAdditions 安裝在 /opt 目錄下。

最后,重啟虛擬機以完成安裝:

ben@vbox:~> sudo /sbin/shutdown -r now

Broadcast message from ben@vbox on pts/0 (Sat, 17 Mar 2012 16:27:46 +0800):

The system is going down for reboot NOW!

安裝后的情況

在 VirtualBox 中為 openSUSE 操作系統分配一個數據空間,名稱是 ISO,並且設為 Auto-Mount,如下所示:

VirtualBox 數據空間

那么在啟動 openSUSE 操作系統后,在 /media 目錄下就有一個相應的以 sf_ 開頭目錄,如下所示:

ben@vbox:~> df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          9.1G  2.7G  5.9G  32% /
devtmpfs        242M   32K  242M   1% /dev
tmpfs           246M     0  246M   0% /dev/shm
tmpfs           246M  308K  245M   1% /run
/dev/sda1       9.1G  2.7G  5.9G  32% /
tmpfs           246M     0  246M   0% /sys/fs/cgroup
tmpfs           246M  308K  245M   1% /var/run
tmpfs           246M  308K  245M   1% /var/lock
tmpfs           246M     0  246M   0% /media
none             80G   42G   39G  53% /media/sf_ISO
ben@vbox:~> ll /media
total 4
drwxrwx--- 1 root vboxsf 4096 Mar 17 14:33 sf_ISO

這個目錄是屬於 vboxsf 用戶組的,所以我們使用以下命令將自己加入這個用戶組:

ben@vbox:~> sudo /usr/sbin/usermod -A vboxsf `whoami`
ben@vbox:~> grep `whoami` /etc/group
video:x:33:ben
sudo:!:1000:ben
vboxsf:!:1001:ben

如果這個數據空間不是 Auto-Mount 的,則可以用 sudo mount -t vboxsf ISO /mnt 命令手動安裝。

參考資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM