如何解決 yum 安裝 glibc-headers 失敗的問題

最近我用 yum 在安裝套件時,突然出現這些錯誤訊息:

---> Package glibc-headers.x86_64 0:2.12-1.107.el6 will be installed
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.12-1.107.el6.x86_64
--> Processing Dependency: kernel-headers for package: glibc-headers-2.12-1.107.el6.x86_64
--> Finished Dependency Resolution
Error: Package: glibc-headers-2.12-1.107.el6.x86_64 (base)
           Requires: kernel-headers >= 2.2.1
Error: Package: glibc-headers-2.12-1.107.el6.x86_64 (base)
           Requires: kernel-headers
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

錯誤訊息有提到跟 "kernel" 有關!!

原來是我當初為了不讓 yum 自動更新 Kernel,所以我在 "/etc/yum.conf" 加了這一行:

exclude=kernel*

把這一行刪除就好了。之後如果遇到有關 Kernel 的失敗狀況,應該都是這個問題。

解決無法讀取 mcrypt 模組的問題

明明已經用 yum 安裝 php-mcrypt 了,在登入 phpMyAdmin 時,卻出現了錯誤訊息:

無法讀取 mcrypt 模組, 請檢查 PHP 設定

執行 php -v ,也出現:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/module.so' - /usr/lib64/php/modules/module.so: cannot open shared object file: No such file or directory in Unknown on line 0
; Enable mcrypt extension module

依照錯誤訊息,到 /usr/lib64/php/modules/ 查看,確實沒有「module.so」,倒是有一個 「mcrypt.so」。
繼續閱讀

CentOS 5/6 安裝 GNOME 與 KDE 桌面環境

最近開始接觸 LinodeDigitalOcean 這兩家的 VPS,裡面提供的 Linux 系統都是採「最小安裝」,於是我就想試試看是否能安裝 GNOME 桌面,再以 xrdp 連接遠端桌面

GroupInstall

yum 本身就提供 groupinstall 的方式來安裝套件組,先以下列指令查看有哪些套件組:

$ yum grouplist | more

CentOS 5.x 與 6.x 套件組的名稱不太一樣,例如桌面環境套件:

CentOS 5.x:

  • GNOME: GNOME Desktop Environment
  • KDE: KDE (K Desktop Environment)

CentOS 6.x:

  • GNOME: Desktop
  • KDE: KDE Desktop

以下的步驟是以 CentOS 6.x 來做安裝,如果你是用 CentOS 5.x,請自行替換這兩個套件組的名稱。

繼續閱讀

CentOS 安裝 vsftpd FTP Server

為什麼這次要安裝 vsftpd,而不安裝 proftpd 呢? 其實只有一個原因,就是 vsftpd 直接支援 UTF8,並且會自動轉換為 Client 端 FTP 軟體的語系。

1. 安裝 vsftpd:

yum -y install vsftpd
touch /etc/vsftpd/chroot_list
chkconfig vsftpd on

2. 安裝完後讓防火牆可以通過 21 Port:

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
service iptables save

3. 編輯 "/etc/vsftpd/vsftpd.conf",找到:

anonymous_enable=YES

將 YES 改成 NO。
如要限制用戶只能在自己的家目錄,則在檔案加入:

# 限制用戶只能在家目錄 (/etc/vsftpd/chroot_list 的用戶可不受限制)
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

如果沒有 /etc/vsftpd/chroot_list,你仍須建立這個空白檔案,否則 ftp 會連不上。

如要 ftp 的檔案列表可以看到跟 Server 上同樣的時間,請在檔案加入:

# 使用本地時區
use_localtime=YES

4. 啟動 vsftpd:

service vsftpd start