2015年12月11日 星期五

解決「找不到透過『藍牙』上傳的檔案」之問題

用「藍牙」將手機中的檔案上傳,很是方便。尤其是有這些考量時,
  • 沒有 USB 傳輸線,
  • 怕電腦不安全,用傳輸線可能會中毒、被植入程式等,
  • 想上傳檔案,又不想讓手機離開視線、或離身,
  • ……
每次用「藍牙」上傳檔案,不管怎麼設定,就是找不到上傳的檔案。

2015年12月4日 星期五

用 dconf 修改「工具列面板」的「小工具」之位置

常在不同電腦以 VNC 或 rdesktop(即 RDP, Remote Desktop Protocol, 遠端桌面)連接遠端電腦時,由於「本地電腦」的螢幕,常是不一樣的大小。Fedora 的「MATE 桌面」環境上下方『工作面板』上的『小工具圖示』位置常會從最右邊,跑到中間位置。特別是使用者有再加入其它由靠右邊排列的『小工具圖示」時,位置跑到中間的情形會更常見。
上圖中,「回收筒」和「工作區切換程式」的位置都跑掉了。
  雖然,只要將這幾個『小工具圖示」移回原來位置就可以,但是覺得有點麻煩。有個工具程式 dconf,可以很方便地解決這個問題,以下就是這些過程的紀錄。

2015年12月3日 星期四

用「文字列介面」命令修改「網路相關設定」

這幾天在一個電腦上安裝 Fedora 23,一時忘了在過程中順便設定網路,導致重開機以後不能上網。當然之後的步驟都不行操作了,當然也就沒有「MATE 桌面」((F22) 安裝只有『MATE 桌面』(無 GNOME 3) 的 Fedora 工作站)。覺得有必要先把這個補救步驟寫下來,免得下次又忘了先設定網路時,方便參考之用。

一、設定「網路位址」等相關資訊

當網路環境中沒有 DHCP 服務(:會自動設定網路環境)時,就要手動設定「網路位址」等相關資訊;不然是不能連上網路的。以下例子是假設網路環境為:
網路卡 編號:enp2s0(可用 ifconfig 或 ip link 查詢得之)
指定網路位址:192.168.10.15
網路遮罩:255.255.255.0(子網路通常是 C 級網路)
子網路位址:192.168.10.0(C 級「子網路」的網路位址)
預設網路閘道:192.168.10.10(子網路對外「閘道」的網路位址)
網域名稱服務:192.168.10.11(提供「域名服務」設備的網路位址)
網域名稱服務:8.8.8.8(這個「域名服務」比較不會當機)
通常,網路在安裝過程中未設定時,網路的預設設定為:DHCP;有時會預設網路卡關閉(:安裝時網路線未插妥),下表中將需要修改的設定列出,

2015年11月30日 星期一

有關 VirtualBox 的 Guest Additions 之記錄

最近在 VirtualBox 中安裝 Fedora 23 試用,照例會安裝 Guest Additions 讓畫面更順暢。這次安裝時卻失敗了,所以研究了一下 Guest Additions 安裝的驅動程式之相關內容。雖然,最後問題還是由 Fedora 23 核心版本的小更新(4.2.6-301)所解決,但是在這過程中也發現了一些有趣的東西,就把它記錄下來,也許以後會需要再參考到。

2015年11月17日 星期二

在 Fedora 的 Wine 裏安裝 Dev C++

學習 C 或 C++ 時,許多人是以「Dev-C++」為工具,不過「Dev-C++」這個整合開發環境是針對 Windows 系統。雖然最近也有 Linux 版的開發正在進行中,但仍處於 alpha(開發者測試)階段。想要在 Linux 上用「Dev-C++」學習 C/C++ 就要稍微麻煩些,接下來就將這些安裝步驟整理記錄,以供將來參考之用。
  安裝 Wine 的步驟,請參考另一篇發文〝在 Fedora 安裝 Wine 與修正中文亂碼問題〞,就不在此重覆。在本文將著重「Dev-C++」安裝在 Wine 的過程。

一、下載 Dev-C++ 安裝程式

由「Dev-C++ 官網」下載以下最新版的 Dev-C++ 安裝程式,以一般使用者身份即可下載。而 Wine 系統的「Winodws 應用程式」是由個別使用者自行安裝、設定。因此,都不需要 root 的權限。

2015年11月16日 星期一

在 Fedora 安裝 Wine 與修正中文亂碼問題

想在 Linux, BSD, Solaris 或 Mac OS X 直接執行 Windows 的應用程式,除了用「虛擬機」外,使用 WINE 是最方便的。
  接下來就將最近測試 Wine 安裝,與修正中文顯示出現亂碼的解決辦法,一併做個整理。

一、安裝 Wine

由於 Fedora 的套件資料庫有收錄,安裝 Wine 的命令很簡單,
[root@Core-i7 ~]# dnf install wine
安裝程序結束後,就可以在『程式選單』的《應用程式》下看到一個《Wine》的項目集,這就是 Wine 執行環境所提供:註冊、重啟 Wine、設定組態、檔案管理和幾個 Windows 環境的簡易文字編輯程式。

:在 Windows 的應用程式,不一定都可以在 WINE 的模擬環境下執行。

二、修改 Wine 的中文顯示

在 Wine 的模擬環境下,有些中文字不能正確顯示或出現亂碼,

2015年10月19日 星期一

解決「安裝『MATE 桌面』卡在 open-vm-tools 套件」的問題

最近在試用 Fedora 23 beta 版時,因不習慣用「GNOME 3 桌面」,就想只安裝「MATE 桌面」,用前文〝(F22) 安裝只有『MATE 桌面』(無 GNOME 3) 的 Fedora〞的步驟安裝,結果被卡在 open-vm-tools 這個套件,無法完成安裝。心想,之前怎麼都沒發生呢?
  經由一些測試、網路搜尋,整理出一些頭緒,
  • open-vm-tools 套件的用途是,當 VMware 的「虛擬機」安裝的客戶作業系統是 Linux 或 UNIX 時,這個套件可用於改善「虛擬機」的效能。
  • open-vm-tools 套件之於 VMware 「虛擬機」的功能,與 VirtualBox 所提供的 Guest Additions 相仿。
  • 在 Linux kernel 4.2 以前,所裝的 open-vm-tools 套件似乎不會出問題,應該是與 Linux kernel 4.2 有些衝突。
  • 在安裝「MATE 桌面」環境時,會同時安裝 open-vm-tools 套件。

2015年10月17日 星期六

修改「NFS 服務」設定方法,方便備份、回復

前文〝修改「AutoFS 服務」設定方法,方便備份、回復〞只修改更早的發文〝用「AutoFS 服務」改善 NFS 連線的方便性〞中的「AutoFS 服務」,有關「NFS 服務」(即:伺服器端)並沒有提及,本文就針對這個部分補充一下。

一、編輯「NFS 服務」的設定檔

在前文中「NFS 服務」的設定是直接修改 /etc/exports 這個檔,而依照其目錄結構,自定的設定檔是可以放在 /etc/exports.d/ 這個目錄之下。

2015年10月16日 星期五

解決「Fedora 22 更新後 WoL (Wake on LAN) 失效」的問題

前一陣子 Fedora 22 做了一次更新後,突然,那台電腦就不能由遠端「網路喚醒」,也沒有變動任何設定,就是不能 WoL (Wake on LAN)。由於那台電腦是放在辦公室,下班後都會先關機,偶而要從家裏連去那台電腦寫些報告。少了 WoL 這個功能,就很不方便。
  查了一下網路訊息,大致看出一些端倪,不過能解決問題才是重點,先記下來有空再深入研究
  • NetworkManager 這個套件計畫將 WoL 加入管理介面,方便由 GUI 變更設定。
  • Fedora 22 收錄的套件,此功能尚未完整,以致不能設定。
  • 原本在 BIOS 設定即可,在某次更新 NetworkManager 後, WoL 功能被預設為關閉。而 NetworkManager 的 GUI 變更設定又尚未完成,所以 WoL 功能才會失效。

2015年10月15日 星期四

偵測、查詢 RocketRAID 的硬碟溫度

前文〝加裝偵測「硬碟溫度」、「散熱風扇轉速」的程式〞提到的 HDDTemp 套件,不能用於偵測 RocketRAID 硬碟組的硬碟溫度。但是,硬碟溫度的又會關係到硬碟的壽命長久,就需要在電腦運作時偵測硬碟溫度,決定是否要加裝散熱風扇來降低硬碟溫度。而且,不能打開機殼量測硬碟的溫度,這樣就不準確了。
  Linux 系統中有一個 smartmontools 套件,其中的 smartctl 這個程式,可用以查詢硬碟資訊,當然也包含硬碟溫度。查詢的命令為,

2015年10月14日 星期三

設定 RocketRAID 管理程式的「htpsvr 服務」為「開機自動啟動」

因為沒有時間研究驅動程式的安裝,以至於前的 Fedora 系統一直停留在 Fedora 18,直到前一陣子才升級到 Fedora 22。過程請參考這些發文:
但是,有件事一直耿耿於懷,就是 自動偵測 RAID 狀況的服務。使用 RAID 系統,就是為了保護儲存在硬碟的資料,當然最好是開機後會自動執行「RAID 管理服務」。
  前文安裝「RocketRAID 命令列管理程式」後,每次要開啟 hptraidconf 這個工具程式以管理「RocketRAID 硬碟陣列」時,都會出現『hptsvr 未載入』的錯誤。之前在 Fedora 18 時似乎也有這個問題,要再『手動』載入 hptsvr 這個背景服務。
  要設定 hptsvr 服務為『開機自動啟動』服務又都不能成功,也不能記錄「RocketRAID 硬碟陣列」的使用狀況。萬一有問題,連個紀錄也查不到。
  在 Fedora 18 時,剛好在『服務』程式的管理,由 chkconfig 過渡到 systemctl 的期間。不幸地,hptsvr 已不能用 chkconfig 設定為「開機自動啟動」,而 systemctl 因為 HighPoint 沒有提供適當的腳本,也不能用以設定。在這段時間,每次開機時 hptsvr 並不會自動載入,當想到已經很久沒有執行『驗證 RAID 硬碟陣列』時,才載入 hptsvr ,接著執行 hptraidcon 這個管理程式。

2015年10月13日 星期二

利用 TigerVNC Viewer 的「預設參數檔」,簡化 VNC 連線命令

使用 VNC Viewer 連線到「遠端電腦」是 Linux 系統常用的「圖形化使用者介面」桌面連線程式,在 Fedora 這個分支(distribution)是使用 TigerVNC。在連線時,除了「網路位址」和「通訊埠」是必要外,可能為了某些需求,使用者會加上一些其它參數。如果這些參數在每次連線都要加上去,可以參考〝用較短的命令,加快建立由 SSH 重導之 VNC 連線〞的作法,將 VNC 連線命令和參數包在一個自定的命令中。
  不想多增加一個「自定命令」,又想在每次的 VNC 連線時都加上相同參數,就可以用接下來的方法:設定一個 TigerVNC Viewer 的預設參數檔。讓 TigerVNC Viewer 在每次連線時,自動讀取這個『預設參數檔』,並加在連線命令中。

2015年10月11日 星期日

解決「vnStat 不能『追加』監控的網卡」的問題

前文〝網路流量監控工具(二):vnStat〞中提及依 vnStat 的文件操作,卻不能再追加監控的網卡。雖然前文有替代方案,不過將所監控的網卡關閉,同時也會清除之前的記錄,如果這些記錄想留下來做參考,就沒有辦法。
  最近找到問題點,也發現了解決辦法。記錄下來,供以後參考。

一、不能監控『追加』的網卡之原因

追加的網卡不能監控,是出於追加的網卡之設定檔,其「擁有者」及「擁有群組」被設定為 root,而 vnStat 服務讀取設定時權限不符,因此將追加的網卡忽略掉。用以下 5 個命令測試,就知道原因了。

2015年10月9日 星期五

修改「AutoFS 服務」設定方法,方便備份、回復

前文〝用「AutoFS 服務」改善 NFS 連線的方便性〞提及利用 AutoFS 這個套件,在與「NFS 伺服器」間連線不確定的情況下,例:
  • 所使用的「NFS 伺服器」,並非隨時處於開啟狀態,
  • 與「NFS 伺服器」間的網路連線,不一定隨時可以成功建立連線。
時,AutoFS 可以讓使用者電腦可以順利開機。但是,前文的方法
  • 必須修改預設的設定檔,每有更新系統,就要動到幾個 AutoFS 的設定檔。
  • 更新系統時,有時會忘了備份它,
  • 即使有備份,也不想直接複製取代它,擔心裏面有些新設定的預設值沒注意到。
想到另一個發文〝(增修) 改進「關閉 Fedora 17 的 IPv6 服務」的設定程序〞中,提到利用一個單獨的設定檔來設定 IPv6 關閉的方法。依照 Linux 系統修改的驅勢,應該 AutoFS 也有類似的做法。以下就是根據文件說明,所整理出來的方法。

2015年10月4日 星期日

解決「透過 SSH 連線,開啟遠端『圖形化用戶介面(GUI)』程式』失敗的問題

依前文〝透過 SSH 連線,開啟遠端的「圖形化用戶介面(GUI)」程式〞開啟「遠端電腦」的「圖形化用戶介面(GUI)」程式,卻出現錯誤訊息。
[SiB@Celeron-D ~]$ ssh 192.168.10.17 -p 5566 -X
SiB@192.168.10.17's password:
X11 forwarding request failed on channel 0
Last login: Sun Oct  4 11:18:10 2015 from 192.168.10.13
[SiB@Core-i7 ~]$ pluma

(pluma:6316): Gtk-WARNING **: cannot open display: 
由於「遠端電腦」已經升級為 Fedora 22,因此可以判定問題出在「遠端電腦」SSH 服務的設定之預設值有修改所致。

2015年10月2日 星期五

網路流量監控工具(二):vnStat

使用電腦時,經常需要連上網路,但是網路流量常會受到限制,有時來自電信公司、有時來自網管人員。若不隨時注意網路的使用量,不小心就會超過流量限制,暫時不能上網。
  前文〝網路流量監控工具(一):MATE Netspeed〞介紹的「MATE Netspeed」,只能監控『即時(瞬時)網路流量』,而且沒有流量累計的功能。因此,再找尋其它具有累計流量的套件,就有其必要性。本篇就是介紹另一流量監控的套件 vnStat,具有:
  • 統計「累計網路流量」的功能,
  • 包含「每小時」、「每日」、「每週」、「每月」及「最高 10 次」等流量累計資料。
  • 不受「開、關機」、「網卡重啟」等影響,正確累計各時間區間的流量。
  • 不需用 root 權限,只要一般使用者就可以查詢結果。
似乎比「MATE Netspeed」更符合需求,網路上的說明有些部份不太適用,把自己安裝、設定和使用的步驟整理一下。

2015年9月27日 星期日

網路流量監控工具(一):MATE Netspeed

使用電腦時,經常需要連上網路,但是網路流量常會受到限制,有時來自電信公司、有時來自網管人員。若不隨時注意網路的使用量,不小心就會超過流量限制,暫時不能上網。網路暫停使用,少則一天,多則數天。若剛好有不得不上網的『正事』要辦,只好硬著頭皮去請網管人員開放。
  為了避免不小心被暫停『網路使用權』,一個能夠即時記錄網路流量、累積統計一段區間的使用量的工具程式,就是最佳的輔助了。現代常用的「圖形化桌面環境」是「MATE 桌面」,就把這個當做起點開始尋找,能夠即時顯示在『面板工具列』上的『面板小工具』應該是較方便的吧。
  最先發現到的工具程式是「MATE Netspeed」這個「面板小工具」,接下來就安裝它來用用看。

一、安裝「MATE Netspeed」

Fedora 中已經將它收錄在套件資料庫中,安裝非常方便,
[root@Core-i7 ~]# dnf install mate-netspeed
:「GNOME」專案有個「GNOME Netspeed」,所以「MATE Netspeed」應該也是源自「GNOME」。

2015年9月8日 星期二

修改「VNC 服務」預設的 xstartup 腳本

之前發過一篇〝設定「VNC 伺服器」使啟動後即為「MATE 桌面環境」〞,提及如何修改自己的「VNC 服務」設定,使其開啟「MATE 桌面環境」。這個方法需得在每個使用者的家目錄下,個別設定很是麻煩,故從上一篇發文後就一直有個想法,是否有系統層級的設定,讓每個新使用者在第一次啟動「VNC 服務」時,就自動產生一個已修改好的『啟動設定』。
  先以 Fedora 22 為例詳細說明整個設定過程,假設系統只安裝「MATE 桌面」環境,完全沒有安裝「GNOME 桌面」的情形。在文章最後,再貼上在 Fedora 20、21 系統中的修改設定,以供參考。

一、啟動 VNC 服務

除非是架設多人使用的伺服器,並需提供每個人以 VNC 連線登入,不然由使用者透過 SSH 連線,再自行啟動自己用的「VNC 服務」,是較簡單、不佔資源的作法。(參考〝開啟個人化的 VNC 服務,供「遠端桌面」連線〞)
[SiB@Core-i7 ~]$ vncserver :1888
上例是在連線後,於「SSH 終端機」開啟「VNC 服務」,並設定連接埠為 7788。

:7788 - 5900 = 1888。這是最容易被設錯的數字,可以參考這篇〝用較短的命令,加快建立由 SSH 重導之 VNC 連線〞的做法避免錯誤。

2015年9月7日 星期一

解決「F22 不能安裝 RocketRAID 命令列管理程式」的問題

成功安裝 HighPoint RocketRAID 驅動程式核心模組後,接下來的 Fedora 22 就沒問題了。Fedora 系統內建的 RAID 系統它自有工具程式可用,外接 RAID 介面卡就要由廠商來支援了。目前仍服役中的 RocketRAID 當然就是由 HighPoint 提供了,由公司官網下載的維護工具程式已經相檔老舊,之前的使用經驗只剩「命令列 (CLI)」的工具可用,其它的「圖形化」、網頁式的工具都不行。

一、從 HighPoint 下載「命令列」工具程式

這次安裝當然也是用「命令列」工具程式,但是過程就沒像以前那麼順利。從 HighPoint 官網的支援網頁下載「命令列(CLI)」的工具程式,這組程式適用好幾個型號的 RocketRAID 卡,筆者是下載『CLI-Linux-3.5-100701.tgz』這個檔案,看編號就可判斷出大概是 2010 年的程式。

2015年8月28日 星期五

加裝偵測「硬碟溫度」、「散熱風扇轉速」的程式

在之前的發文中
只提到要監測「硬碟溫度」、「散熱風扇」還要加裝 hddtemp、lm_sensors 這兩個程式,不過這兩個程式還要一些簡單的設定才會有偵測作用。設定的的步驟如下:

2015年8月9日 星期日

解決「用『AutoFS 服務』連線 NFS 伺服器失敗」問題

升級 Fedora 22 後想連線到「伺服器」,當然是用 NFS 是最方便的。把舊發文〝用「AutoFS 服務」改善 NFS 連線的方便性〞找出來參考,照上面的步驟做完;結果,並不能如願連線,應該是 Fedora 22 改了什麼東西,讓 AutoFS 不能像往常一樣連上「NFS 伺服器」。
  查了一下 AutoFS 的設定,沒看到什麼問題。就再查一下是否問題出在 NFS,看到 NFS 文件中,在掛載時有指定 NFS 版本的設定,試試看是否是「伺服器」和「客戶端」的版本不合所致?

:筆者的「伺服器」是 Fedora 14。

  接下來修改的步驟都在「客戶端」電腦上,在「終端機」中先切換為 root 身分,接著,再用文字編輯器開啟 /etc/auto.nfs 這個檔,在『 - 』後加上『nfsvers=4』這個設定,強制使用 NFS v4,修改的結果如下:
Data   -nfsvers=4,rw,soft,intr,rsize=8192,wsize=8192 192.168.10.17:/home/Data
Media  -nfsvers=4,rw,soft,intr,rsize=8192,wsize=8192 192.168.10.17:/home/Media
Upload -nfsvers=4,rw,soft,intr,rsize=8192,wsize=8192 192.168.10.17:/home/Upload
將檔案存回,再重啟 AutoFS 服務,
[root@Celeron-D ~]# systemctl restart autofs.service
之後就一切正常了。

已測試版本:

  • Fedora 22 (客戶端)-> Fedora 14(伺服器)

參考資料:

2015年8月7日 星期五

解決「因 avahi 未安裝,致 PulseAudio 不能連線」問題

最近想將工作機升級到 Fedora 22,不過暫時因為不支援 PDC 介面的 BIOS RAID 而未能順利升級。之前在這台電腦安裝 Fedora 21 時,是先安裝「GNOME 桌面」再安裝「MATE 桌面」,既然升級不成,就重新安裝一次 Fedora 21,不過這次只安裝「MATE 桌面」,安裝過程就參考〝(修訂)「安裝只有『MATE 桌面』(無 GNOME 3) 的 Fedora 21」〞的步驟。
  安裝後,照例將「遠端電腦」的音效利用 PulseAudio 送到「本地電腦」,參考之前有關 PulseAudio 安裝、設定的幾篇發文也不能成功。覺得問題可能不在 PulseAudio 本身的安裝、設定,就從使用 PulseAudio 需要開啟的幾個「通訊埠」(即:4713/TCP、16001/TCP、5353/UDP)查起,
[root@Celeron-D ~]# netstat -tulnp
Active Internet connections (only servers)
ProtoRecv-QSend-QLocal AddressForeign AddressStatePID/Program name
  . . . . .
tcp000.0.0.0:160010.0.0.0:*LISTEN2643/pulseaudio
  . . . . .
tcp000.0.0.0:47130.0.0.0:*LISTEN2643/pulseaudio
  . . . . .
上例中,只列出 IPv4 的埠號,可以發現 5353/UDP 並沒有出現。查一下另一台電腦,

2015年8月4日 星期二

在 Fedora 22 安裝「EDIMAX EW-7811Un」驅動程式

將舊筆電由 Fedora 20 升級到 Fedora 22,在編譯 EDIMAX EW-7811Un 的「驅動程式核心模組」時,果不其然地又遇到問題了。原因又是 Linux 中的 C 函式庫有些調整,花了些時間把問題全部解決了。既然,Fedora 改版了,乾脆前文也重新改寫一次,用一個有完整的安裝步驟的發文,開啟另一個階段的序幕。
  以下的操作步驟是基於這些條件,如果讀者有情況不同,要斟酌修改:
  • 下載的「驅動程式」原始檔案,先存在一般使用者目錄下。
  • 解壓縮、修改、編譯等步驟,也都在一般使用者的權限下進行。
  • 進行安裝前,切換成 root 身份

一、下載「驅動程式」、解壓縮

從 Realtek 的官網下載 RTL8192CU 最新版的驅動程式 (目前是 4.0.2_9000.20130911),因為要修改「核心模組原始碼」的一個 C 程式檔,所以原有驅動程式的安裝不可以讓它自動作業,要分段執行。
    第一步先解壓縮,

2015年7月27日 星期一

解決「用 semanage 修改 SSH 埠號的 SELinux 屬性失敗」之問題

前幾次的安裝步驟都是先從 Fedora Server 安裝起,重開機後立即切換成 Workstation 後,接著就是「MATE 桌面」,再設定 SSH 服務。這次安裝的電腦,主要是做為「伺服器」用,就想先設定 SSH 服務,等以後有需要再安裝「MATE 桌面」。沒想到設定到這個步驟出了問題
[root@Celeron-D ~]# semanage port -a -t ssh_port_t -p tcp 5566
bash: semanage: 找不到指令...
就是『semanage』這個命令找不到,一時覺得有些奇怪,以前怎麼都沒問題?

2015年7月26日 星期日

(F22) 安裝 HighPoint RocketRAID 的 Kernel 4.0.4-301 驅動程式

之前在“(F21) 安裝 HighPoint RocketRAID 1740 的 Kernel 3.17.4-301 驅動程式”一文中,記錄了安裝 HighPoint RocketRAID 的「驅動程式核心模組」的步驟。在當時的只能以 Live CD 的方式加載「驅動程式核心模組」,因此只能先安裝「GNOME 3 桌面」,當再安裝「MATE 桌面」時,又要解決“GNOME 與 MATE 程式選單同時出現”的問題。若平常不用「GNOME 3 桌面」時,又佔用不少寶貴的硬碟空間。這次利用安裝 Fedora 22 的機會,再找找更好的解決辦法。
  在 Fedora 22 安裝程式 Anaconda 的參數中找到一些新線索,就用這些新發現的參數試了一下,最後成功地在 HighPoint RocketRAID 1740 的 RAID 硬碟組中,安裝一個『只有 MATE 桌面的 Fedora 22』,詳細步驟說明如下:(為方便讀者參考,與前文重覆步驟仍予以保留)

2015年7月13日 星期一

用「可選版本 USB 安裝隨身碟」安裝失敗,原因探討

最近幾次的 Fedora 更新,幾台舊電腦沒有立即更新,而且當時也忘了紀錄下來,不記得是用 DVD 還是 USB 安裝的。這次想說來更新一下舊機的系統,才發現做好的『可選版本 USB 安裝隨身碟』不能直接用於安裝,當然得查明是什麼原因造成的。
  在 BIOS 中可以設定電腦的開機順序,可能的選擇為:硬碟 (HD)、CD-ROM (DVD-ROM)、USB FDD、USB ZIP、USB CD-ROM、USB HD。有 USB 可選時,才可能用 USB 裝置開機。不過,也不一定可以成功使用『可選版本 USB 安裝隨身碟』來安裝,寫這篇發文的原因正是如此。
  在提出解決方法之前,先整理其原因如下:
  • USB FDD、USB ZIP、USB CD-ROM:屬於較舊的 BIOS 所提供的 USB 開機功能,其會將 USB 裝置視為:FDD、ZIP 或 CD-ROM,而不是硬碟 (HD),當 USB 隨身碟所模擬的裝置是 BIOS 所不能辨識的話,就不能用以開機。(:此次安裝失敗的主因)
  • USB HD:在較新的 BIOS 所提供的 USB 開機功能,因為是將 USB 隨身碟模擬成硬碟,所以在設定時有兩個位置要注意,
    • 一個是開機硬碟的順序,有『一般硬碟』及『USB 碟碟』兩個選擇,要選擇『USB 硬碟』。
    • 另一個是開機裝置,可能會有『硬碟』、『網路』、『DVD-ROM』等,要選擇『硬碟』。
  • 可選版本 USB 安裝隨身碟』是將 USB 隨身碟模擬成硬碟 (HD),所以在新的 BIOS 中沒有問題,但是在較舊的 BIOS 系統是不能用來開機的。

2015年6月8日 星期一

(F22) 安裝只有『MATE 桌面』(無 GNOME 3) 的 Fedora 工作站

在以前的 Fedora 版本都用的 YUM 安裝、更新管理套件,到 Fedora 22 已經被一個新的套件 DNF 所取代,雖然用 YUM 所下的命令仍會自動轉換為 YUM 的命令。但是,仍有一些步驟要做些修改,將新的步驟重新整理,並且節錄重點記錄下來。
本文所述步驟是使用 Fedora 官網釋出的 ISO 光碟安裝,若想省麻煩可以下載另外封裝的 ISO(即:『MATE-COMPIZ DESKTOP』spin)
詳細步驟如下:

2015年6月7日 星期日

適用 Fedora 22 的「可選版本 USB 安裝隨身碟」

Fedora 22 已經釋出幾個星期了,這次 ISO 的改版只有增加兩個『工作站』的『網路安裝光碟』。要建立「適用 Fedora 22 的『可選版本 USB 安裝隨身碟』」應該不是太難,過程也和以前差不多。話說如此,也做個記錄方便製做 USB 安裝隨身碟時快些。
  這個記錄中,『工作站』用的光碟仍是『Live 光碟』,記錄如下:
這個程序主要是由前文的程序修改而來,為方便讀者參考,將前文相關內容複製過來,以求完整。部份截圖可能仍為舊版,請讀者包涵。

一、下載開機檔案

下載的檔名列表如下:
CPU版本分類網路
需求
網路
頻寬
選用 / 燒錄之 ISO 檔檔案大小
32-bit工作站--Fedora-Live-Workstation-i686-22-3.iso1.4 GB
必需Fedora-Workstation-netinst-i386-22.iso535 MB
伺服器--Fedora-Server-DVD-i386-22.iso2.3 GB
必需Fedora-Server-netinst-i386-22.iso535 MB
64-bit工作站--Fedora-Live-Workstation-x86_64-22-3.iso1.4 GB
必需Fedora-Workstation-netinst-x86_64-22.iso469 MB
伺服器--Fedora-Server-DVD-x86_64-22.iso2.2 GB
必需Fedora-Server-netinst-x86_64-22.iso469 MB
其中,
  • 『工作站』版有『Live 光碟』(檔名有 Live)及『網路安裝光碟』(檔名有 netinst)兩個版,
  • 『伺服器』版則有「DVD 安裝光碟」(檔名有 DVD)及「網路安裝光碟」。
請依需要下載適當版本,以製做「可選版本 USB 安裝隨身碟」,
  • 『工作站』及『伺服器』版都依 CPU 下載適當該 ISO 檔,及其網路安裝光碟。
下列步驟以 Fedora 22 在上表中所列的版本為例。

2015年5月25日 星期一

(增修) 解決「更新 Fedora 後,仍啟動舊版 Kernel」的問題

前文『解決「更新 Fedora 後,仍啟動舊版 Kernel」的問題』雖解決系統更新後,但仍啟動舊版本核心(Kernel)的問題。可是,隨著 Fedora 的更新,負責啟動管理的 GRUB 有時仍會以錯誤的版本開機。原因不明,可能是更新 Linux 核心的描述檔有些錯誤吧,未正確修改『預設啟動的核心版本』為最新版。
  想找尋更完整的解決辦法,可惜並未找到適當的方法,但是又找到另一個類似的方法,就將它『增補』在原來的辨法之後。
  會仍啟動舊版的核心,主要原因是在設定開機啟動程序那個檔案,在檔案『 /boot/grub2/grub.conf 』的約第 18 列,有一段設定預設啟動版本的腳本,
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="${saved_entry}"
fi
上例中,預設的設定為『${saved_entry}』,表示它將以『前一次開機』的版本啟動。有些版本設定值為數字,是指會由『開機選單』特定順位的版本開機。
  但是,這些設定都有可能在下一次『更新版本』時,未能正確修改設定,造成『下次開機』時不能使用『最新』或『預設』的開機版本。要修改這個啟動順序,有幾個方式:

2015年5月22日 星期五

2015年4月18日 星期六

(F21) 安裝 HighPoint RocketRAID 的 Kernel 3.17.4-301 驅動程式

安裝 Fedora 21 後,大概是自已工作上事情稍微多了些。幾台安裝 HighPoint RocketRAID RAID 硬碟加速卡的電腦,一直沒有時間升級。最近有些時間,就想將它們升級為 Fedora 21。
  雖然試了很多次,不過目前只能以 Workstation(工作站)版,將整個 Fedora 21 系統安裝在 RocketRAID 硬碟加速卡所管轄的硬碟組中。Server(伺服器)版只能將「RAID 硬碟組」當做資料碟使用(:目前的嘗試的做法,尚未能在系統安裝前就載入 RokcetRAID 驅動程式)。

  以下就是這幾台電腦的安裝紀錄,這次的升級例子是使用 RocketRAID 1740,詳細步驟如下:

一、編譯驅動程式的核心模組

記得一定要從 HighPoint 官網下載 Linux 的「開放原始碼驅動程式」,才不容易有『後遺症』。不過,這次不用像以前一樣,一列一列去找要修改的地方,在 ubuntu 的一份文件中,有提供一份「修補檔 (patch)」的壓縮檔,『rocketraid-linux-3.11-patch-r2.tar.bz2』,裏面有有許多適用 HighPoint RocketRAID RAID 不同型號硬碟加速卡的「修補檔」。解開壓縮找出適用該型號的「修補檔」。

2015年4月16日 星期四

解決「Chrome 因 sandbox 被 SELinux 禁止,而出現錯誤訊息」的問題

昨天更新 Google Chrome,因習慣於關機前下達更新、關機的複合命令,今天開機後一執行 Google Chrome 就出現 SELinux 的安全性警告,
不理會它直接也不影響 Google Chrome 繼續執行,但是 SELinux 是 Fedora 重要的安全機制,會出現警告訊息,也不知是否有安全顧慮。

2015年4月12日 星期日

解決「Scilab 因 OpenGL 而不能繪出圖形,只有空白視窗」的問題

Scilab 是一個免費、開放原碼軟體,可提供工程及科學應用領域所需的強大數值運算環境。忘了從哪個版本(F17 或 F18)開始,Fedora 就已經將之收錄在套件資料庫中,方便使用者安裝、使用。
  將工作用電腦升級到 Fedora 21 後,由於顯示卡(FX 5200)較舊,不能再使用原廠提供的驅動程式,只能用開源碼社群所開發的驅動程式。平常的用途除了慢一點外也沒什麼大礙,就不以為意。
  最近需要用到 Scilab,就安裝 Scilab 並試用一下,原本要出現一個函數圖形,結果只跳出一個空白視窗。
這一來,Scilab 的使用就不方便了,該上網找一下解決辦法。找到不少結果,而且說法相當不一致,有的說無解,有的說有解,就都試試看並將結果整理下來。

官方網站的說法

官網上的回答應該是比較正確的,但也不是百分之百完全正確,要看它的前提是什麼。

2015年4月5日 星期日

用 ethtool 查詢網路卡的規格

通常使用者對網路卡使用時的狀態(如:是否連線中?忙碌程度?)是比較有興趣的,若是想知道目前網路卡運作時的狀態時,從桌面上方的工具列之右側,在『』上按【滑鼠右鍵】會跳出一個下拉選單,點選《連線資訊》可以得知。
但若想要判斷:驅動程式是否能正確設定網路卡?網路效能是否完全發揮?光靠這些資訊是不足夠的,需要能查詢網路卡的規格,才可以正確得知答案。

2015年4月4日 星期六

(修訂)「安裝只有『MATE 桌面』(無 GNOME 3) 的 Fedora 21 工作站」

依前文〝安裝只有「MATE 桌面」(無 GNOME 3) 的 Fedora 21〞所述步驟,的確可以得到一個只有「MATE 桌面」的圖形化環境。經過幾週來的試用,還是有些問題未完全解決,就是
  • 「終端機」的文字字型與由「Fedora 21 工作站」再加裝「MATE 桌面」不同。(請參考前面發文
  • 許多英文字的顯示字型看起來都覺得不太習慣,可能是字距與平時常見的不同。
看樣子除了字型外,可能也有其它的設定不同,還是儘量查一下,以免將來又有什麼狀況發生。比較了「Fedora 21 工作站」+「MATE 桌面」及「Fedora 21 伺服器」+「MATE 桌面」,發現安裝的套件有些不太一樣,前者為

2015年4月3日 星期五

解決「加裝的『MATE 桌面 』之『終端機』顯示字型不正確」的問題

依前文〝安裝只有「MATE 桌面」(無 GNOME 3) 的 Fedora 21〞所述步驟,的確可以得到一個只有「MATE 桌面」的圖形化環境。經過幾週來的試用,還是有個問題未完全解決,就是「終端機」的文字字型與由「Fedora 21 工作站」再加裝「MATE 桌面」不同。
如圖所示,上圖是由「Fedora 21 工作站」再加裝「MATE 桌面」的「終端機」,下圖是由「Fedora 21 伺服器」只裝「MATE 桌面」的「終端機」,可以看出顯示的字型明顯不同。應該是有某些步驟未執行。

2015年3月27日 星期五

安裝只有「MATE 桌面」(無 GNOME 3) 的 Fedora 21

有幾台比較老舊的電腦,所執行的「圖型化介面」必須選擇硬體需求較少的「MATE 桌面」環境。但是,「Fedora 21 工作站」版會預設安裝「GNOME 3 桌面」環境,雖然可以再加裝「MATE 桌面」並切換成以『LightDM』登入。但是,安裝「GNOME 3 桌面」所占去的硬碟空間卻無法收回,也會導致『程式選單』中包含來自兩個桌面環境的程式選項之重覆問題
  以前寫過『在 Fedora 18 只安裝 MATE 桌面環境(無 GNOME)』的安裝步驟,最近的測試已經不適用了。所以,又得重新找一個新的操作流程,安裝一個只有「MATE 桌面」,而且沒有「GNOME 3 桌面」的環境。

一、Fedora 21 光碟的分類

以往 Fedora 的釋出的光碟是分成:
光碟分類ISO說 明
Live CDCD-ROM試用及安裝,但以此光碟安裝時,會有某些套件未預設安裝。
NetInst
網路安裝
CD-ROM安裝時需有網路連線,大部分的套件會從網路下載再安裝。
完整版DVD安裝時所需套件都可存在光碟中,除非要直接安裝『最新』版套件,才需連上網路。
依需要下載不同的光碟映像檔 (ISO)。而 Fedora 系統的用途是『工作站』或『伺服器』是依所安裝的套件而決定,使用者可隨個人喜好自由安裝,或隨時轉換用途。隨著 Fedora 版本的演進,收錄的套件數和檔案大小愈來愈多,已經快超過一片單面 DVD 的容量(:約 4.7GB)。
  在 Fedora 21 釋出時,將光碟的分類做了一些改變,分成:
用 途ISO說 明
 工作站  DVD 依「工作站」用途安裝套件,非必要套件並不會預先安裝或某些『服務』未預設開機自動啟動(如:SSH 服務)。
伺服器DVD依「伺服器」用途安裝套件,非必要套件並不會預先安裝(如:「圖形化」介面非「伺服器」必需,故未預光安裝)。
雲端-專供「虛擬機」或「雲端」虛擬機之用。
SpinsDVD為不同使用者量身訂做的 Fedora 版本,包括一些經過挑選的應用程式及客製化修改。
一般安裝用途多直接安裝「工作站」版,但是會預設安裝「GNOME 3 桌面」。若安裝「MATE-Compiz」這個 Spin,是會只有「MATE 桌面」,可是不知是否與原有的「工作站」版有何差別,會不會影響其它用途。
  因此,就想直接由「工作站」或「伺服器」這兩個版本著手,目前的使用經驗,除了預設套件的安裝、設定有些不同外,其它都與之前版本並未差異太大。另外的看法是:是 Fedora 社群正式的釋出版本,未經其他工作調整過,預期將有較佳的延續性。。
更新後的步驟請參考〝(修訂)「安裝只有『MATE 桌面』(無 GNOME 3) 的 Fedora 21」

2015年3月25日 星期三

用 pkg-config 查詢「設定 Eclipse 使用函式庫 (library)」所需的參數

之前寫過幾篇有關用 Eclipse 開發程式的文章,關於所使用的函式庫(Library)如何正確設定,使得 Eclipse 可以編譯程式、鏈結函數庫以產生『可執行』檔案(:參考篇末文章列表)。
  由於函式庫的發展也會加入新功能,安裝時也可能會因系統不同而放在不同目錄。每次版本有更新,可能就要找一次這些參數的正確設定值,也是一件麻煩的事。
  之前的發文中有一篇提到 Linux 的工具程式 pkg-config,剛好最近要使用新的函式庫開發程式,就對 pkg-config 這個程式深入研究一下。
  一般在使用 Eclipse 開發程式時,有幾個『專案屬性』的設定與函式庫的正確使用有極大關係。在『專案瀏覽器』選擇欲設定的專案,按【滑鼠右鍵】點選選單下方的《內容》,跳出『專案內容』的設定視窗。在左欄的點選《C/C++ Build》→《Setting》,接著在右方『Tool Settings』分頁下方,分別位於
  • 《GCC C Compiler》→《Includes》,在右欄上方的『Include paths (-I)』
  • 《GCC C Linker》→《Libraries》,在右欄上方的『Libraries (-l)』
  • 《GCC C Linker》→《Libraries》,在右欄下方的『Libraries search path (-L)』
這三個地方,其中
  • 第一個參數(-I)是「GCC 編譯器」的參數,指定程式中引用的「標頭檔」目錄。
  • 第二個參數(-l)是「GCC 鏈結器」的參數,指定所引用「函式庫」的所在目錄。
  • 第三個參數(-L)也是「GCC 鏈結器」的參數,指定搜尋所引用「函式庫」目錄的起點。

2015年3月24日 星期二

解決「Fedora 21 的 Eclipse Luna 未正確顯示中文」的問題

試著在 Fedora 21 安裝 Eclipse 來用,安裝完成後由《應用程式》→ 《軟體開發》點選《Eclipse》。發現 Fedora 21 已經收錄新版的 Eclipse Luna 了。
再稍等片刻,跳出一個選擇『工作區』的視窗,
正想點下去,奇怪!怎麼是「簡體中文」?

2015年3月18日 星期三

恢復「Fedora 21 工作站」版的「防火牆」保護

Fedora 一向給我的印象是:安裝完成後,預設的安全防護相當足夠,甚至會影響使用者對某些『服務』的修改(如:更改 SSH 的埠號時,除了「防火牆」外也要動到「SELinux」)。這些不便對一般使用者而言,不一定會受到太大的影響。基於安全考量,筆者是支持這種作法。
  但是,這個情況在「Fedora 21 工作站」版卻有些不同,「防火牆」的預設值竟然是所有埠號全部開啟的狀況。
在「MATE 桌面」的查詢步驟主要有兩個地方,一個是在「網路卡」設定
  • 從『程式選單』的《系統》→《偏好設定》→《系統》點選《網路連線》,出現一個設定「網路連線」的視窗。
  • 接著,點選網卡,按【編輯】。在【一般】這個分頁內的『防火牆地帶』可以看到,預設值為『預設』。
另一個是「防火牆」的設定,
  • 由『程式選單』的《系統》→《管理》點選《防火牆》,出現設定「防火牆」的視窗。
  • 從《功能選單》→《選項》點選《變更預設界域》,會跳出一個名為『預設界域』的視窗,可以看到『預設界域』為『FedoraWorkstation』,按【取消】關閉視窗。
  • 點選底下『界域』清單的『FedoraWorkstation』,在右方的『連接埠』分頁,可以看到開啟的埠號無論是 TCP 或 UDP 都是從 1025 到 65535,其意思就是說『全部開放』,也就是說『形同虛設』。

2015年3月14日 星期六

在 Fedora 系統以手動方式『重新取得網路位址』

在測試系統時,有時要手動讓電腦重新取得一次網路位址(IP address)。除了圖型化的操作方法外,也有文字式的命令『dhclient』。本文將就『如何重新取得網路位址』這兩種操作做個整理。

一、圖型化介面

從桌面上方的工具列之右側,在『』上按【滑鼠左鍵】會跳出一個下拉選單如下:
點選欲『重新取得網路位址』的網路卡,則該網路卡立即
  • 將該網路卡強制斷線,此時,所有處於連接狀態的網路連線都會斷線
  • 該網路卡將再重新取得網路位址。
接下來的新建立連線就會以新的網路位址重新建立。

2015年3月12日 星期四

Fedora 21 不能安裝 NVIDIA FX 5200 原廠驅動程式

升級到 Fedora 21 後想再編譯 nVIDIA FX 5200 顯示卡的驅動程式,卻無法成功編譯,之前試過的方法也都無效。就轉而找尋提否有其它原因,就它們的版本先查起:
  • Fedora 所用的 X Server 版本為 1.16.3(註:用『Xorg -version』查得)。
  • nVIDIA 173.1439 所支援的 X Server 版本只到 1.15,且未再更新。
  • 「RPM Fusion 套件資料庫」也沒有 nVIDIA 173.1439 驅動程式的已編譯模組可下載。
基於這幾個原因,可以得到一個結論就是:
nVIDIA FX 5200 只能使用 nouveau 這個由社群發展的驅動程式
不過,這一陣子的使用經驗,nouveau 倒也相當穩定、效能也不算太差。

已測試版本:

  • Fedora: 21

參考資料:

2015年3月10日 星期二

解決「VLC 更新,因關聯模組 libgpg-error.so 版本不合而失敗」問題

VLC 是 VideoLAN 社群所開發的多媒體播放程式(:要先加裝「RPM Fusion 套件資料庫」),因其所使用的相關套件之故,在較老舊電腦的效能表現也相當不凡。若是電腦需要使用「MATE 桌面」環境,那麼用 VLC 播放多媒體是不錯的選擇。
  最近的更新中,VideoLAB 社群釋出的 VLC 2.2 正式版,也出現在「RPM Fusion 套件資料庫」的更新列表中。但是,更新時卻出現這樣的錯誤訊息
[root@Celeron-D ~]# yum update vlc
Loaded plugins: langpacks
Resolving Dependencies
--> Running transaction check
---> Package vlc.x86_64 0:2.2.0-0.2.fc21 will be updated
---> Package vlc.x86_64 0:2.2.0-1.fc21 will be an update
--> Processing Dependency: vlc-core(x86-64) = 2.2.0-1.fc21 for package: vlc-2.2.0-1.fc21.x86_64
--> Running transaction check
---> Package vlc-core.x86_64 0:2.2.0-0.2.fc21 will be updated
---> Package vlc-core.x86_64 0:2.2.0-1.fc21 will be an update
--> Processing Dependency: libgpg-error.so.0(GPG_ERROR_1.0)(64bit) for package: vlc-core-2.2.0-1.fc21.x86_64
--> Finished Dependency Resolution
Error: Package: vlc-core-2.2.0-1.fc21.x86_64 (rpmfusion-free-updates)
           Requires: libgpg-error.so.0(GPG_ERROR_1.0)(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

2015年3月7日 星期六

有關「根目錄」出現檔名為 core.xxxxx 的問題

在『根目錄』出現一個檔案,名稱為『core.xxxxx』(其中 xxxxx 為數字)大小為 31297536 位元組。以前的系統中,偶而也會出現幾個,但不影響系統運作,也就不理會它。這次的出現,就順便做個記錄,方便以後參考。
  回想一下之前的運作情形,雖說 Linux 不容易當機,但是所用的 Fedora 分支常引入一些新的套件做測試。也因此偶而會有某個服務當機的時候,但是整個系統當機的情形,的確是很少見。
  在這些少數當機的情形下,系統會將當機當下的系統記憶體內容存下(即『core dump (核心傾印)』),以利事後分析發生的原因。而所存下來的記憶體內容就記錄在『core.xxxxx』這些檔案中,大小與當下系統所佔的大小有關,不一定每次都一樣。
  知道出現這些檔案的原因,而重新啟動服務或重開機後,運作也不受影響。因此,將來有需要深入研究這些檔案內容時,再做進一步分析。目前的處理方法為:
  • 記錄當機時,正在操作的程式。下次再操作時,要多注意。
  • 過些時候,若不再出現類似的檔案時,再把它們刪掉。
  • 將這些檔案回傳 Fedora 開發團隊,提供其除錯的參考。

已測試版本:

  • Fedora: 20, 21

參考資料:

2015年3月1日 星期日

適用 Fedora 21 的「可選版本 USB 安裝隨身碟」

Fedora 21 已經釋出兩個多月,由於這次的光碟分成『工作站(Workstation)』、『伺服器(Server)』和『雲技術(Cloud)』三片,讓使用者依自已的需求安裝。在這種情形下,「多版本 USB 安裝隨身碟」的製作更是需要。
  一直想寫篇「可選版本 USB 安裝隨身碟」的製作步驟,但是,這次的『工作站』光碟是『Live 光碟』,所以原有的「可選版本 USB 安裝隨身碟」製做步驟不能沿用,新的方法記錄如下:
這個程序主要是由前文的程序修改而來,為方便讀者參考,將前文相關內容複製過來,以求完整。部份截圖可能仍為舊版,請讀者包涵。

一、下載開機檔案

下載的檔名列表如下:
CPU版本分類網路
需求
網路
頻寬
選用 / 燒錄之 ISO 檔檔案大小
32-bit工作站--Fedora-Live-Workstation-i686-21-5.iso1.2 GB
伺服器--Fedora-Server-DVD-i386-21.iso2.0 GB
必需Fedora-Server-netinst-i386-21.iso482 MB
64-bit工作站--Fedora-Live-Workstation-x86_64-21-5.iso1.4 GB
伺服器--Fedora-Server-DVD-x86_64-21.iso1.9 GB
必需Fedora-Server-netinst-x86_64-21.iso424 MB
其中,『工作站』版為 Live 光碟,『伺服器』版則有兩個版:DVD 安裝光碟(檔名有 DVD)及網路安裝光碟(檔名有 netinst)。請依需要下載適當版本,以製做「可選版本 USB 安裝隨身碟」,
  • 『工作站』版依 CPU 下載適當該 ISO 檔即可。
  • 『伺服器』版除依 CPU 下載該 ISO 檔外,其網路安裝光碟也要下載。
下列步驟以 Fedora 21 在上表中所列的版本為例。

2015年2月24日 星期二

用 systemctl 更改 Fedora 的「運行等級」

Linux 為方便管理系統功能,發展一套 systemd 的管理架構。自 Fedora 15 後,Fedora 社群也開始導入這個技術。因為習慣原有的方式,並沒有特別去留意利用 systemd 的管理方式。最近,在『啟動』、『關閉』某些服務,才注意到 systemctl 有許多參數。好奇心驅使下,就查了相關資料。
  其中,Systemctl 這個命令有幾個參數可用以『查詢』、『設定』Fedora 的「運行等級 (runlevel)」。還滿方便的不用打上一長串目錄名稱。

2015年2月18日 星期三

解決「成功編譯的『驅動模組 (driver module)』卻掛載失敗」的問題

最近一個多月來 Linux 的核心的版本更新頻繁,從 3.17.x ~ 3.18.x 每個的更新都要編譯一次『驅動模組』。根據前文所述的步驟:
製作『驅動程式模組』時,偶而會出現掛載失敗的情況。『驅動模組』掛載失敗時,錯誤訊息不一定會看得到或容易被忽略,較明顯、可察覺的現像就是:原先可以使用的週邊設備(上例中為:無線網路及 RAID 硬碟組)變成不可用。

2015年2月6日 星期五

VirtualBox 的 CPU『熱插拔 (Hot-Plug)』功能之實驗

若「虛擬機」所使用的 CPU 數量,會因不同的應用需求而常常調整。以往都需要將「虛擬機」先關機、設定 CPU 數、再開機,過程相當麻煩。VirtualBox 有提供一個可動態『插』、『拔』CPU 的功能。覺得相當有趣,就試了一下。
  這次測試過程中,無論是「主機」或「虛擬機」都是使用 Fedora。其它 Linux 分支應該也適用,至於 Windows 系統,就不得而知了。當然,過程也順便整理、記錄下來,以備將來不時之需。記錄如下:

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 桌面」並存在同一台電腦,可以發現到有個『小』問題。
上圖中可以看出來,有幾個重覆的「程式選單」。

2015年1月5日 星期一

解決「安裝在 DMRAID 硬碟的 Fedora,升級後不能正確掛載目錄」的問題

平常用的工作機雖然有些舊了,卻還有兩個 SATA 插座,也提供 RAID 1 的硬碟資料保護。有鑑於硬碟發生故障時,常是是沒有任何預警。就用這個簡易的 BIOS RAID 保護硬碟資料,也不是說資料有多重要,只是系統壞了,要重新復原到正常狀態需要不少時間。
  之前,在安裝 Fedora 19 時,並沒有什麼大問題,依照說明書,或操作介面的提示訊息就足夠。在之後的使用時,也都很正常;唯一可以抱怨的,就是速度因 BIOS RAID 而有些微損失。

:BIOS RAID 部分容錯計算是由軟體完成,硬體只提供部分加速功能。

Fedora 21 發佈後,只安裝在「虛擬機」體驗,沒有在實體安裝測試。利用元旦的連假,將原本執行 Fedora 19 的工作機,升級到 Fedora 21 Workstation。進行實用測試,比較能試出問題點來。
  由於是原有的工作機,所以安裝時保留 /home 這個目錄。其它『分割』只做格式化,大小及掛載點都不變。安裝過程除了『分割』設定時小心一點外,其它的操作反因少了一些選項,而變得較簡單。
  安裝後,重新啟動就發生問題,查看開機時的訊息,顯示 /boot 和 /home 未能自動掛載。幾次手動掛載 /home 目錄,才勉強讓系統開機,並登入桌面。但是,下次開機又是一番折騰,難道要重新換回 Fedora 19 才行?

2015年1月4日 星期日

解決「上方『控制面板』的 iBus (輸入法) 未啟動」的問題

利用元旦的連假,將一個平常用的工作機由 Fedora 19 升級到 Fedora 21 Workstation。因為原來的工作機使用了主機板的 RAID 功能,安裝過程倒有些曲折;當然,RAID 的問題是解決了,但是需要整理的資料比較多,就在另一篇發文再詳述它了,先把中文輸入的問題整理記錄下來。
  電腦不是很新,所以加裝「MATE 桌面」,原本應該出現輸入法選單的位置,卻沒有看到!
這是要怎麼選擇輸入法呢?