Fedora 20在兩次跳票后正式發布,主要特性包括:遠程桌面方案X2Go;網絡管理器支持擴大綁定和橋接功能;改進3D打印機支持等,本文中,作者對Fedora 20 進行安裝試用,分享一下試用心得。
一、安裝方面
安裝方面沒有特別的說明,現在Fedora 20的安裝界面對比Fedora 18和19相比基本相同,都是相同的UI(主要是有一個是集中配置界面)。不過現在官方已經不再推薦下載i386,而是x86-64位了。安裝的步驟基本就是設置分區、設置時區、選擇軟件源、設置鍵盤、設置網絡接口等,對于一般Linux 用戶來說也可以輕松完成。第一次使用GNOME 要進行簡單的設置,包括幾個步驟:首先選擇語言,接著選擇輸入源, 接著選擇在線帳號,下面就開始使用Gnome 3。
二、安裝MATE 桌面環境
總的來說筆者不太喜歡GNOME 3桌面環境 ,所以安裝MATE 桌面環境。MATE 是一個基于 Gnome 2 開發的 Linux 桌面系統 。MATE是基于GNOME 2的代碼庫開發的(GNOME2已經停止維護),并將代碼進行了重命名,主要為了和GNOME 3的組建發生沖突。GNOME3的發布遭到了社區很多用戶的反對,為了繼續開發經典的Gnome2桌面環境,Arch Linux用戶開始建立MATE項目。后來Linux Mint開發者也支持該項目。
-
#yum -y groupinstall "MATE Desktop"
-
#echo "exec /usr/bin/mate-session" >> ~/.xinitrc
重新進行登錄,登錄時需要選擇MATE桌面,如圖1:
圖1 登錄時需要選擇MATE桌面
圖2的MATE 桌面環境大家看這界面有種centos 6的感覺,最熟悉的感覺。
圖2 MATE桌面環境
三、安裝后的 一些設置
這里介紹一下命令行下的 一些操作步驟:
1、設置服務
首先查看一下服務列表:
-
#systemctl -t service
停止一些沒有使用的服務以便提高性能例如關閉telnet。
-
#systemctl stop telnet.service #systemctl disable telnet.service
對于一些殘留的SysV 服務類型,可以使用如下命令查看:
-
#chkconfig –list
關閉netconsole服務的命令:
-
#chkconfig netconsole off
2、更新系統
-
# yum -y install yum-plugin-fastestmirror # yum -y update
另外還可以給一些其他軟件源:例如remi。
Remi repository 是包含最新版本 PHP 和 MySQL 包的 Linux 源,由 Remi 提供維護。有個這個源之后,使用 YUM 安裝或更新 PHP、MySQL、phpMyAdmin 等服務器相關程序的時候就非常方便了。
對于Fedora 20 i386 or x86_64:
-
# wget http://rpms.famillecollet.com/remi-release-20.rpm # yum install remi-release-20.rpm
然后修改Remi 源配置文件 /etc/yum.repos.d/remi.repo
啟用 Remi Repository修改 enabled=0 為 enabled=1。
3、調整語言
筆者安裝過程沒有正確設置語言,這里需要調整一下。
查看當前語言命令:
首先顯示當前編碼:
-
# echo $LANG en_US
如果修改為中文的話就是:
-
vi /etc/locale.conf
修改為:
-
LANG=" zh_CN.UTF-8"
重新加載一下:
-
#source /etc/locale.conf
3 介紹一下常見yum命令的故障排除
使用yum安裝軟件包的的時候可能會出現如下幾個常見故障:
(1)404 errors
要修復yum的404錯誤,清理一下metadata(元數據)即可
$ sudo yum clean metadata
或者清理一下緩存
$ sudo yum clean all
(2)連接錯誤
如果發現"network is unreachable" 或者"couldn't connect to host" 提示,首先檢查網絡連接。如果沒有問題
就查看一下是否使用代理服務器上網。Yum的代理服務器設置是:
-
___FCKpd___11nbsp;sudo vi /etc/yum.conf [main]
-
proxy=http://proxy.com:8000
(3)修改metadata checksum errors
如果發現" "Metadata file does not match checksum" " 提示,清理一下metadata(元數據)即可:
-
___FCKpd___12nbsp;sudo yum clean metadata
(4)yum lock errors
這個錯誤是最常見的,通常顯示:
-
Loaded plugins: langpacks, presto, refresh-packagekit Existing lock /var/run/yum.pid: another copy is running as pid 1880.
-
Another app is currently holding the yum lock; waiting for it to exit..
最簡單的方法是殺掉這個進程:
-
#rm –f /var/run/yum.pid
還有一個方法是修改軟件源設置,關閉自動更新。操作如圖3 .4 。
圖3 選擇軟件源
圖4 關閉自動更新
和之前筆者介紹Fedora 19 的時候不同,這里的web服務器沒有選擇Apache也沒有選擇nginx,這里筆者選擇Lighttpd 。Lighttpd提供一個專門針對高性能網站,安全、快速、兼容性好并且靈活的web 服務器環境。具有非常低的內存開銷、cpu占用率低、效能好以及豐富的模塊等特點。下面看看它和php以及MariaDB 數據庫的整合配置過程:
1、安裝MariaDB/ mysql數據庫
-
#yum install mysql mysql-server
啟動服務:
-
#systemctl enable mysqld.service #systemctl start mysqld.service
下面是初始化操作:
-
# mysql_secure_installation
操作過程主要是 初始化數據目錄和授權表,設置root口令等。
2、安裝Lighttpd
安裝軟件包:
-
#yum install lighttpd
啟動服務:
-
#systemctl enable lighttpd.service #systemctl restart lighttpd.service
3、簡單測試一下web服務器
測試web服務是否成功安裝并啟動,瀏覽器訪問IP 顯示如下即可如圖5:
圖5 簡單測試一下web服務器
4、安裝PHP5軟件包
-
#yum install php-fpm lighttpd-fastcgi
說明一下PHP-FPM 是FastCGI server ,使用端口是9000。
啟動服務:
-
#systemctl enable php-fpm.service #systemctl start php-fpm.service
5、修改相關的配置文件
首先修改/etc/php.ini:
-
把下面一行的注釋去掉 [...]
-
cgi.fix_pathinfo=1 [...]
-
然后修改/etc/lighttpd/conf.d/fastcgi.conf配置文件為如下格式: [...]
-
server.modules += ( "mod_fastcgi" ) [...]
-
注意fastcgi.server 字段內容如下: [...]
-
## ## PHP Example
-
## For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini. ##
-
## The number of php processes you will get can be easily calculated: ##
-
## num-procs = max-procs * ( 1 + PHP_FCGI_CHILDREN ) ##
-
## for the php-num-procs example it means you will get 17*5 = 85 php ## processes. you always should need this high number for your very
-
## busy sites. And if you have a lot of RAM. :) ##
-
fastcgi.server += ( ".php" => ((
-
"host" => "127.0.0.1", "port" => "9000",
-
"broken-scriptfilename" => "enable" ))
-
) #fastcgi.server = ( ".php" =>
-
# ( "php-local" => # (
-
# "socket" => socket_dir + "/php-fastcgi-1.socket", # "bin-path" => server_root + "/cgi-bin/php5",
-
# "max-procs" => 1, # "broken-scriptfilename" => "enable",
-
# ) # ),
-
# ( "php-tcp" => # (
-
# "host" => "127.0.0.1", # "port" => 9999,
-
# "check-local" => "disable", # "broken-scriptfilename" => "enable",
-
# ) # ),
-
# # ( "php-num-procs" =>
-
# ( # "socket" => socket_dir + "/php-fastcgi-2.socket",
-
# "bin-path" => server_root + "/cgi-bin/php5", # "bin-environment" => (
-
# "PHP_FCGI_CHILDREN" => "16", # "PHP_FCGI_MAX_REQUESTS" => "10000",
-
# ), # "max-procs" => 5,
-
# "broken-scriptfilename" => "enable", # )
-
# ), # )
-
), [...]
然后還要激活這個模塊,修改配置文件/etc/lighttpd/conf.d/fastcgi.conf
-
[...] ## FastCGI (mod_fastcgi)
-
## include "conf.d/fastcgi.conf"
-
[...]
就是去掉include "conf.d/fastcgi.conf"前面的注釋符號。
下面測試一下php腳本:
-
# vi /var/www/lighttpd/info.php <?php
-
phpinfo(); ?>
-
# systemctl restart lighttpd.service
然后使用瀏覽器查看如圖6 ,大家看紅色圈框部分(Server API FPM/FastCGI )
圖6 測試一下php腳本
圖6顯示則表明web服務器可以解析靜態頁面和php頁面(但目前還無法連接mysql數據庫)。
下面設置為PHP安裝MySQL支持:
php5支持MySQL很簡單,只要安裝php-mysql軟件包即可;但php程序要運行可能需要多個php模塊的支持
-
# yum install php-mysqlnd php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-magickwand php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy php-opcache
安裝完成后重啟:
-
#systemctl reload php-fpm.service
重新訪問瀏覽器查看安裝的php模塊 如mysql:(如下圖7)
圖7 為PHP安裝MySQL支持
Unix域Socket因為不走網絡,的確可以提高web服務器和php-fpm通信的性能,但在高并發時會不穩定。設置如下:
-
vi /etc/php-fpm.d/www.conf 修改為如下內容
-
[...] ;listen = 127.0.0.1:9000
-
listen = /tmp/php5-fpm.sock [...]
-
然后重啟服務: # systemctl reload php-fpm.service
-
下面修改etc/lighttpd/conf.d/fastcgi.conf 文件,修改為如下內容 vi /etc/lighttpd/conf.d/fastcgi.conf
-
fastcgi.server += ( ".php" => ((
-
"socket" => "/tmp/php5-fpm.sock", "broken-scriptfilename" => "enable"
-
)) )
-
然后重啟服務: # systemctl restart lighttpd.service
五、簡單介紹一下NFS 服務器和客戶端設置
這里筆者的安裝環境如下:
NFS 服務器端,ip 10.0.0.20 ,計算機名稱 www.cjh.net NFS 客戶端端,ip 10.0.0.21 ,計算機名稱 www.cjh1.net
NFS 服務器端配置
安裝軟件包:
-
安裝軟件包 #yum -y install nfs-utils
-
修改配置文件: #vi /etc/idmapd.conf
-
# line 5: 修改為相對應的名稱 Domain = cjh.net
-
修改文件 #vi /etc/exports
-
# write like below *note /home 10.0.0.0/24(rw,sync,no_root_squash,no_all_squash)
-
# *note /home ? shared directory
-
10.0.0.0/24 ? range of networks NFS permits accesses rw ? writable
-
sync ? synchronize no_root_squash ? enable root privilege
-
no_all_squash ? enable users' authority 啟動相關服務
-
# systemctl start rpcbind.service # systemctl start nfs-server.service
-
# systemctl start nfs-lock.service # systemctl start nfs-idmap.service
-
# systemctl enable rpcbind.service # systemctl enable nfs-server.service
-
# systemctl enable nfs-lock.service # systemctl enable nfs-idmap.service
-
NFS 客戶端端設置: 安裝軟件包
-
# yum -y install nfs-utils 修改配置文件
-
# vi /etc/idmapd.conf # line 5: 修改為相對應的名稱
-
Domain = cjh.net 啟動服務
-
# systemctl start rpcbind.service # systemctl start nfs-lock.service
-
# systemctl start nfs-idmap.service # systemctl start nfs-mountd.service
-
# systemctl enable rpcbind.service # systemctl enable nfs-lock.service
-
# systemctl enable nfs-idmap.service # systemctl enable nfs-mountd.service
-
掛載磁盤 # mount -t nfs dlp.server.world:/home /home
fedora 20的不足之處
介紹一下 Gnome 開發的軟件中心,這個軟件中心還在完善當中,所以我打開軟件中心,感覺有BUG,一是軟件加載很慢,可能是服務器在國外的原因,二是無法添加直接其他軟件源。使用界面分成三個部分:全部軟件、已經安裝、更新。不過目前沒有軟件課提供更新。
圖8 軟件中心
這個軟件中心設計思路和Ubuntu軟件中心相似,不過卻沒有任何設置選項,筆者使用它首先安裝另外一個軟件包工具:Gonme Package 后才能設置其他軟件源等工作。
總結:
總體感覺Fedora 20的 使用感覺和上個版本Fedora 19變化不大,所以筆者就不多贅述了,大家還是關注2014 年 即將發布的Red Hat Enterprise Linux 7 吧 。