2015年1月30日 星期五

縮小 VirtualBox 「虛擬機」的硬碟映像檔

一般在建立 VirtualBox 虛擬機時,所使用的『硬碟映像檔』多直接使用預設的『VDI (VirtualBox 磁碟映像)』。這個映像檔格式若同時設為『動態配置』,則其實際所佔硬碟空間將隨虛擬機的系統使用而增加,也就是說「虛擬機」新建立時在「實體主機」的硬碟映像檔較小,而會隨著「虛擬機」的使用漸漸增加。
  但是,隨著刪刪改改,「虛擬機」中所存的資料並未實際增加多少,可是已經增大的映像檔卻不會縮小。使用 VirtualBox 提供的『VBoxManage modifyhd ... --compact』這個『緊縮』命令,也不能回復到實際大小。這是因為:
  • 「虛擬機」的硬碟資料被刪除時,並未實際被清空,只在 FAT(檔案配置表)中註記為『該空間可再使用於儲存新資料』。
  • VirtualBox 的命令只將內容為0值之位置回收,而被註記為『空』的位置但內容不為0值,故並未回收。
當需要『減少實際硬碟映像檔大小』及『匯出「虛擬機」』時,上述的機制並不能滿足要求。網路上有許多『VDI 廋身』分享,以下是整理出來適合目前工作環境的方法:

2015年1月26日 星期一

查詢特定套件 (package) 所隸屬的套件群組 (group)

Fedora 社群已經將套件(package)依用途、桌面或需求的不同,分門別類地分成數個不同的群組(group),方便使用者一個步驟就做完整個群組的安裝,不用一一加裝。
  • 特定套件可能同時隸屬於數個群組,
  • 同一群組一起安裝,可減少使用時突然發現少了什麼套件。
查詢套件所隸屬的套件群組的命令為:
repoquery --groupmember <套件名>
以播放音樂常用的套件 Rhythmbox 為例,查詢的命令為:
[SiB@Core-i7 ~]$ repoquery --groupmember rhythmbox
rhythmbox-3.1-1.fc21.i686
  @gnome-desktop
  @sound-and-video
  @workstation-product
rhythmbox-3.1-1.fc21.x86_64
  @gnome-desktop
  @sound-and-video
  @workstation-product
由查詢結果得知,只安裝「MATE 桌面」是不會同時安裝 Rhythmbox 的。所以,讀者若要使用 Rhythmbox 時,需要自己加裝它。

已測試版本:

  • Fedora: 21

參考資料:

2015年1月25日 星期日

解決「在 Fedora 更新 Chrome 失敗」問題(二)

前文『解決「在 Fedora 更新 Chrome 失敗」問題(一)』只是暫時提供一個解決辦法,當 Google 再更新 Chrome 時,又得再做一次,並不能算是一勞永逸。再整理出兩個方法,應該可以根本解決這個問題了。

一、手動載入 Google 的 Linux 『數位簽章』

更新 Google Chrome 前,在「終端機」中以 root 身分輸入以下命令,
[root@Celeron-D ~]# rpm --import https://dl-ssl.google.com/linux/linux_signing_key.pub
這個命令是從 Google 官網下載 Linux 用的『數位簽章』,並將『數位簽章』加入「套件安裝程式」(即:RPM)的簽章資料庫。

註:筆者較推薦這個步驟,因其只要下一次命令即可,且不更改其它檔案設定。

二、修改 Google Chrome 的「套件資料庫」設定

另一個方法是在 Google Chrome 的「套件資料庫」設定檔中,加上一列指示『數位簽章』下載點的設定。用讀者熟悉的「文字編輯器」(gedit, pluma 或 vim)開啟位於『/etc/yum.repos.d/』目錄中,的 google-chrome.repo 檔。
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
上面的紅色文字,就是新加上的指示設定。

註:這個步驟筆者並不建議使用,只是查到這個解決辦法做個記錄。

三、正常的更新程序

經過上面的任一個步驟操作後,Google Chrome 的更新就可以如其它 Fedora 套件般,方便地用『yum update』命令更新了。

已測試版本:

  • Fedora: 21, 22

參考資料:

2015年1月19日 星期一

解決「在 Fedora 更新 Chrome 失敗」問題(一)

前幾天更新時,Google Chrome 發生更新失敗。之前也沒有碰過,先把它略過,再找時間處理。這幾天剛好有空,就試試看能否找出發生了什麼問題。
請參考另一篇發文:解決「在 Fedora 更新 Chrome 失敗」問題(二),
本篇留做備用方法。
在終端機中下達更新命令,出現如下的錯誤訊息:

2015年1月18日 星期日

解決「Fedora 21 Workstation (工作站) 的『SSH 服務』未自動啟用」問題

安裝 Fedora 21 Workstation (工作站)後,只將『SSH 服務』依前文『修改 SSH 的預設設定檔』的步驟設定,也沒有再用 SSH 連入這台『工作機』。最近,因想用 sftp 傳輸幾個檔案,才發現竟然不能連到『工作機』。
  之前的 Fedora 版本,都是將『SSH 服務』預設啟用,就查一下『SSH 服務』的狀態(以下的所有操作都在 ROOT 權限下):
[root@Celeron-D ~]# systemctl status sshd.service
●sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; disabled)
   Active: inactive (dead)
從查詢結果可以看出,Fedora 21 Workstation 沒有在開機時自動啟用『SSH 服務』(即:disable),且未啟用(即:『inactive (dead)』)。只好手動設定它了,

2015年1月13日 星期二

解決「在 Fedora 21 安裝 VirtualBox 失敗」的問題

VirtualBox 官網於 2015-2-12 釋出新版 4.3.22,並解決本篇所提問題,本篇所述步驟已暫時無需操作,僅留做記錄。
本篇是針對以前文『Linux 中 VirtualBox 的安裝與自動更新』操作時,所發生的錯誤訊息提出解決辨法。若是以其它方式安裝,如
  • 安裝 RPM-Fusion 社群重製的版本,或
  • 每次都從 VirtualBox 官網下載並安裝
的讀者,此篇發文的內容不一定有用。

2015年1月10日 星期六

解決「MATE 『程式選單』混合顯示 GNOME 應用程式」的問題

這篇發文實際上在一年多前就寫得差不多,後來因為可以只安裝「MATE 桌面」。這一來就沒有「GNOME 桌面」的程式造成混淆的問題,就一直擱置而未定稿。
  這次安裝 Fedora 21 Workstation 時,因為不想用「MATE-Compiz Spin」安裝;而是在安裝後,在預設的「GNOME 桌面」環境再加裝「MATE 桌面」。所以,程式選單中包含兩種桌面環境,稍不留神又點錯程式(請參閱另一篇有關兩種「終端機」容易混淆的發文)。
  加裝承襲自 GNOME 2 的「MATE 桌面」環境,與預設安裝的「GNOME 3 桌面」並存在同一台電腦,可以發現到有個『小』問題。
上圖中可以看出來,有幾個重覆的「程式選單」。