Fedora 20安裝試用體驗
原創(chuàng)【51CTO專稿】12月中旬,Fedora 20在兩次跳票后正式發(fā)布,主要特性包括:遠程桌面方案X2Go;網(wǎng)絡(luò)管理器支持擴大綁定和橋接功能;改進3D打印機支持等,本文中,作者對Fedora 20 進行安裝試用,分享一下試用心得。
一、安裝方面
安裝方面沒有特別的說明,現(xiàn)在Fedora 20的安裝界面對比Fedora 18和19相比基本相同,都是相同的UI(主要是有一個是集中配置界面)。不過現(xiàn)在官方已經(jīng)不再推薦下載i386,而是x86-64位了。安裝的步驟基本就是設(shè)置分區(qū)、設(shè)置時區(qū)、選擇軟件源、設(shè)置鍵盤、設(shè)置網(wǎng)絡(luò)接口等,對于一般Linux 用戶來說也可以輕松完成。第一次使用GNOME 要進行簡單的設(shè)置,包括幾個步驟:首先選擇語言,接著選擇輸入源, 接著選擇在線帳號,下面就開始使用Gnome 3。
二、安裝MATE 桌面環(huán)境
總的來說筆者不太喜歡GNOME 3桌面環(huán)境 ,所以安裝MATE 桌面環(huán)境。MATE 是一個基于 Gnome 2 開發(fā)的 Linux 桌面系統(tǒng) 。MATE是基于GNOME 2的代碼庫開發(fā)的(GNOME2已經(jīng)停止維護),并將代碼進行了重命名,主要為了和GNOME 3的組建發(fā)生沖突。GNOME3的發(fā)布遭到了社區(qū)很多用戶的反對,為了繼續(xù)開發(fā)經(jīng)典的Gnome2桌面環(huán)境,Arch Linux用戶開始建立MATE項目。后來Linux Mint開發(fā)者也支持該項目。
- #yum -y groupinstall "MATE Desktop"
- #echo "exec /usr/bin/mate-session" >> ~/.xinitrc
重新進行登錄,登錄時需要選擇MATE桌面,如圖1:
圖1 登錄時需要選擇MATE桌面
圖2的MATE 桌面環(huán)境大家看這界面有種centos 6的感覺,最熟悉的感覺。
圖2 MATE桌面環(huán)境
#p#
三、安裝后的 一些設(shè)置
這里介紹一下命令行下的 一些操作步驟:
1、設(shè)置服務(wù)
首先查看一下服務(wù)列表:
- #systemctl -t service
停止一些沒有使用的服務(wù)以便提高性能例如關(guān)閉telnet。
- #systemctl stop telnet.service
- #systemctl disable telnet.service
對于一些殘留的SysV 服務(wù)類型,可以使用如下命令查看:
- #chkconfig –list
關(guān)閉netconsole服務(wù)的命令:
- #chkconfig netconsole off
2、更新系統(tǒng)
- # yum -y install yum-plugin-fastestmirror
- # yum -y update
另外還可以給一些其他軟件源:例如remi。
Remi repository 是包含最新版本 PHP 和 MySQL 包的 Linux 源,由 Remi 提供維護。有個這個源之后,使用 YUM 安裝或更新 PHP、MySQL、phpMyAdmin 等服務(wù)器相關(guān)程序的時候就非常方便了。
對于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、調(diào)整語言
筆者安裝過程沒有正確設(shè)置語言,這里需要調(diào)整一下。
查看當前語言命令:
首先顯示當前編碼:
- # echo $LANG
- en_US
如果修改為中文的話就是:
- vi /etc/locale.conf
修改為:
- LANG=" zh_CN.UTF-8"
重新加載一下:
- #source /etc/locale.conf
3 介紹一下常見yum命令的故障排除
使用yum安裝軟件包的的時候可能會出現(xiàn)如下幾個常見故障:
(1)404 errors
要修復(fù)yum的404錯誤,清理一下metadata(元數(shù)據(jù))即可
$ sudo yum clean metadata
或者清理一下緩存
$ sudo yum clean all
(2)連接錯誤
如果發(fā)現(xiàn)"network is unreachable" 或者"couldn't connect to host" 提示,首先檢查網(wǎng)絡(luò)連接。如果沒有問題
就查看一下是否使用代理服務(wù)器上網(wǎng)。Yum的代理服務(wù)器設(shè)置是:
- $ sudo vi /etc/yum.conf
- [main]
- proxy=http://proxy.com:8000
(3)修改metadata checksum errors
如果發(fā)現(xiàn)" "Metadata file does not match checksum" " 提示,清理一下metadata(元數(shù)據(jù))即可:
- $ 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
還有一個方法是修改軟件源設(shè)置,關(guān)閉自動更新。操作如圖3 .4 。
圖3 選擇軟件源
圖4 關(guān)閉自動更新
#p#
四、快速搭建一個web開發(fā)環(huán)境
和之前筆者介紹Fedora 19 的時候不同,這里的web服務(wù)器沒有選擇Apache也沒有選擇nginx,這里筆者選擇Lighttpd 。Lighttpd提供一個專門針對高性能網(wǎng)站,安全、快速、兼容性好并且靈活的web 服務(wù)器環(huán)境。具有非常低的內(nèi)存開銷、cpu占用率低、效能好以及豐富的模塊等特點。下面看看它和php以及MariaDB 數(shù)據(jù)庫的整合配置過程:
1、安裝MariaDB/ mysql數(shù)據(jù)庫
- #yum install mysql mysql-server
啟動服務(wù):
- #systemctl enable mysqld.service
- #systemctl start mysqld.service
下面是初始化操作:
- # mysql_secure_installation
操作過程主要是 初始化數(shù)據(jù)目錄和授權(quán)表,設(shè)置root口令等。
2、安裝Lighttpd
安裝軟件包:
- #yum install lighttpd
啟動服務(wù):
- #systemctl enable lighttpd.service
- #systemctl restart lighttpd.service
3、簡單測試一下web服務(wù)器
測試web服務(wù)是否成功安裝并啟動,瀏覽器訪問IP 顯示如下即可如圖5:
圖5 簡單測試一下web服務(wù)器
4、安裝PHP5軟件包
- #yum install php-fpm lighttpd-fastcgi
說明一下PHP-FPM 是FastCGI server ,使用端口是9000。
啟動服務(wù):
- #systemctl enable php-fpm.service
- #systemctl start php-fpm.service
5、修改相關(guān)的配置文件
首先修改/etc/php.ini:
- 把下面一行的注釋去掉
- [...]
- cgi.fix_pathinfo=1
- [...]
- 然后修改/etc/lighttpd/conf.d/fastcgi.conf配置文件為如下格式:
- [...]
- server.modules += ( "mod_fastcgi" )
- [...]
- 注意fastcgi.server 字段內(nèi)容如下:
- [...]
- ##
- ## 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服務(wù)器可以解析靜態(tài)頁面和php頁面(但目前還無法連接mysql數(shù)據(jù)庫)。
下面設(shè)置為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支持
#p#
Unix域Socket通信設(shè)置
Unix域Socket因為不走網(wǎng)絡(luò),的確可以提高web服務(wù)器和php-fpm通信的性能,但在高并發(fā)時會不穩(wěn)定。設(shè)置如下:
- vi /etc/php-fpm.d/www.conf
- 修改為如下內(nèi)容
- [...]
- ;listen = 127.0.0.1:9000
- listen = /tmp/php5-fpm.sock
- [...]
- 然后重啟服務(wù):
- # systemctl reload php-fpm.service
- 下面修改etc/lighttpd/conf.d/fastcgi.conf 文件,修改為如下內(nèi)容
- vi /etc/lighttpd/conf.d/fastcgi.conf
- fastcgi.server += ( ".php" =>
- ((
- "socket" => "/tmp/php5-fpm.sock",
- "broken-scriptfilename" => "enable"
- ))
- )
- 然后重啟服務(wù):
- # systemctl restart lighttpd.service
五、簡單介紹一下NFS 服務(wù)器和客戶端設(shè)置
這里筆者的安裝環(huán)境如下:
- NFS 服務(wù)器端,ip 10.0.0.20 ,計算機名稱 www.cjh.net
- NFS 客戶端端,ip 10.0.0.21 ,計算機名稱 www.cjh1.net
NFS 服務(wù)器端配置
安裝軟件包:
- 安裝軟件包
- #yum -y install nfs-utils
- 修改配置文件:
- #vi /etc/idmapd.conf
- # line 5: 修改為相對應(yīng)的名稱
- 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
- 啟動相關(guān)服務(wù)
- # 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 客戶端端設(shè)置:
- 安裝軟件包
- # yum -y install nfs-utils
- 修改配置文件
- # vi /etc/idmapd.conf
- # line 5: 修改為相對應(yīng)的名稱
- Domain = cjh.net
- 啟動服務(wù)
- # 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 開發(fā)的軟件中心,這個軟件中心還在完善當中,所以我打開軟件中心,感覺有BUG,一是軟件加載很慢,可能是服務(wù)器在國外的原因,二是無法添加直接其他軟件源。使用界面分成三個部分:全部軟件、已經(jīng)安裝、更新。不過目前沒有軟件課提供更新。
圖8 軟件中心
這個軟件中心設(shè)計思路和Ubuntu軟件中心相似,不過卻沒有任何設(shè)置選項,筆者使用它首先安裝另外一個軟件包工具:Gonme Package 后才能設(shè)置其他軟件源等工作。
總結(jié):
總體感覺Fedora 20的 使用感覺和上個版本Fedora 19變化不大,所以筆者就不多贅述了,大家還是關(guān)注2014 年 即將發(fā)布的Red Hat Enterprise Linux 7 吧 。