yum(全稱為 Yellow dog Updater, Modified)是一個(gè)在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器?;禦PM包管理,能夠從指定的服務(wù)器自動(dòng)下載RPM包并且安裝,可以自動(dòng)處理依賴性關(guān)系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。yum提供了查找、安裝、刪除某一個(gè)、一組甚至全部軟件包的命令,而且命令簡潔而又好記。
yum的命令形式一般是如下:yum [options] [command] [package ...]
其中的[options]是可選的,選項(xiàng)包括-h(幫助),-y(當(dāng)安裝過程提示選擇全部為\"yes\"),-q(不顯示安裝的過程)等等。[command]為所要進(jìn)行的操作,[package ...]是操作的對(duì)象。
概括了部分常用的命令包括:
自動(dòng)搜索最快鏡像插件: yum install yum-fastestmirror
安裝yum圖形窗口插件: yum install yumex
查看可能批量安裝的列表: yum grouplist
1 安裝
yum install 全部安裝
yum install package1 安裝指定的安裝包package1
yum groupinsall group1 安裝程序組group1
2 更新和升級(jí)
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 檢查可更新的程序
yum upgrade package1 升級(jí)指定程序包package1
yum groupupdate group1 升級(jí)程序組group1
3 查找和顯示
yum info package1 顯示安裝包信息package1
yum list 顯示所有已經(jīng)安裝和可以安裝的程序包
yum list package1 顯示指定程序包安裝情況package1
yum groupinfo group1 顯示程序組group1信息yum search string 根據(jù)關(guān)鍵字string查找安裝包
4 刪除程序
yum remove | erase package1 刪除程序包package1
yum groupremove group1 刪除程序組group1
yum deplist package1 查看程序package1依賴情況
5 清除緩存
yum clean packages 清除緩存目錄下的軟件包
yum clean headers 清除緩存目錄下的 headers
yum clean oldheaders 清除緩存目錄下舊的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除緩存目錄下的軟件包及舊的headers
比如,要安裝游戲程序組,首先進(jìn)行查找:
#:yum grouplist
可以發(fā)現(xiàn),可安裝的游戲程序包名字是”Games and Entertainment“,這樣就可以進(jìn)行安裝:
#:yum groupinstall \"Games and Entertainment\"
所 有的游戲程序包就自動(dòng)安裝了。在這里Games and Entertainment的名字必須用雙引號(hào)選定,因?yàn)閘inux下面遇到空格會(huì)認(rèn)為文件名結(jié)束了,因此必須告訴系統(tǒng)安裝的程序包的名字是“Games and Entertainment”而不是“Games\"。
此外,還可以修改配置文件/etc/yum.conf選擇安裝源。可見yum進(jìn)行配置程序有多方便了吧。更多詳細(xì)的選項(xiàng)和命令,當(dāng)然只要在命令提示行下面:man yum
yum groupinstall \"KDE (K Desktop Environment)\"
yum install pirut k3b mikmod
yum groupinstall \"Server Configuration Tools\"
yum groupinstall \"Sound and Video\"
#yum groupinstall \"GNOME Desktop Environment\"
yum groupinstall \"Legacy Software Support\"
yum groupinstall \"Development Libraries\"
yum groupinstall \"Development Tools\"
#yum groupinstall \"Windows File Server\"
yum groupinstall \"System Tools\"
yum groupinstall \"X Window System\"
yum install php-gd
yum install gd-devel
yum groupinstall \"Chinese Support\"
#yum install samba-common //該執(zhí)行會(huì)一起安裝 samba-client
#yum install samba
yum install gcc
yum install cpp
yum install gcc-c++
yum install ncurses
yum install ncurses-devel
yum install gd-devel php-gd
yum install gd-devel
yum install gcc
yum install cpp
yum install gcc-c++
yum install ncurses
yum install ncurses-devel
yum install gd-devel php-gd
yum install gd-devel
yum install zlib-devel
yum install freetype-devel freetype-demos freetype-utils
yum install libpng-devel libpng10 libpng10-devel
yum install libjpeg-devel
yum install ImageMagick
yum install php-gd
yum install flex
yum install ImageMagick-devel
#yum install system-config-bind
#yum groupinstall \"DNS Name Server\" //安裝 bind 及 bind-chroot 套件
yum groupinstall \"MySQL Database\"'
yum clean all
-----------------------------------------------------------------------------------------------------------
裝了個(gè)fedora linux不能用中文輸入是一件很棘手的事,連搜解決方案都沒法搜。只能勉強(qiáng)用幾個(gè)拼音碰碰運(yùn)氣,看Google能不能識(shí)別了。而我就遇見了這樣的事。
解決方案:
yum install scim* -y
yum 命令詳解:
Redhat和Fedora的軟件安裝命令是rpm,但是用rpm安裝軟件最大的麻煩就是需要手動(dòng)尋找安裝該軟件所需要的一系列依賴關(guān)系,超級(jí) 麻煩不說,要是軟件不用了需要卸載的話由于卸載掉了某個(gè)依賴關(guān)系而導(dǎo)致其他的軟件不能用是非常惱人的。令人高興的是,F(xiàn)edora終于推出了類似于 ubuntu中的apt的命令yum,令Fedora的軟件安裝變得簡單容易。Yum 有以下特點(diǎn):
*可以同時(shí)配置多個(gè)資源庫(Repository)
*簡潔的配置文件(/etc/yum.conf)
*自動(dòng)解決增加或刪除rpm包時(shí)遇到的倚賴性問題
*使用方便
*保持與RPM數(shù)據(jù)庫的一致性
yum,是Yellow dog Updater Modified的簡稱,起初是由yellow dog這一發(fā)行版的開發(fā)者Terra Soft研發(fā),用python寫成,那時(shí)還叫做yup(yellow dog updater),后經(jīng)杜克大學(xué)的Linux@Duke開發(fā)團(tuán)隊(duì)進(jìn)行改進(jìn),遂有此名。yum的宗旨是自動(dòng)化地升級(jí),安裝/移除rpm包,收集rpm包的相關(guān)信息,檢查依賴性并自動(dòng)提示用戶解決。yum的關(guān)鍵之處是要有可靠的repository,顧名思義,這是軟件的倉庫,它可以是http或ftp站點(diǎn), 也可以是本地軟件池,但必須包含rpm的header, header包括了rpm包的各種信息,包括描述,功能,提供的文件,依賴性等.正是收集了這些 header并加以分析,才能自動(dòng)化地完成余下的任務(wù)。
1.yum的一切配置信息都儲(chǔ)存在一個(gè)叫yum.conf的配置文件中,通常位于/etc目 錄下,這是整個(gè)yum系統(tǒng)的重中之重,我在的F9中查看了這一文件,大家一起來看下:
[hanlong@localhost F9常用文檔]$ sudo more /etc/yum.conf
[main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
下面簡單的對(duì)這一文件作簡要的說明:
cachedir:yum緩存的目錄,yum在此存儲(chǔ)下載的rpm包和數(shù)據(jù)庫,一般是/var/cache/yum。
debuglevel:除錯(cuò)級(jí)別,0──10,默認(rèn)是2
logfile:yum的日志文件,默認(rèn)是/var/log/yum.log。
exactarch,有兩個(gè)選項(xiàng)1和0,代表是否只升級(jí)和你安裝軟件包c(diǎn)pu體系一致的包,如果設(shè)為1,則如你安裝了一個(gè)i386的rpm,則yum不會(huì)用686的包來升級(jí)。
gpgchkeck= 有1和0兩個(gè)選擇,分別代表是否是否進(jìn)行g(shù)pg校驗(yàn),如果沒有這一項(xiàng),默認(rèn)好像也是檢查的。
2.好了,接下來就是yum的使用了,首先用yum來升級(jí)軟件,yum的操作大都須有超級(jí)用戶的權(quán)限,當(dāng)然可以用sudo。
yum update,這一步是必須的,yum會(huì)從服務(wù)器的header目錄下載rpm的header,放在本地的緩存中,這可能會(huì)花費(fèi)一定的時(shí)間,但比起yum 給我們帶來方便,這些時(shí)間的花費(fèi)又算的了什么呢?header下載完畢,yum會(huì)判斷是否有可更新的軟件包,如果有,它會(huì)詢問你的意見,是否更新,還是說 y吧,把系統(tǒng)始終up to date總是不錯(cuò)的,這時(shí)yum開始下載軟件包并使用調(diào)用rpm安裝,這可能要一定時(shí)間,取決于要更新軟件的數(shù)目和網(wǎng)絡(luò)狀況,萬一網(wǎng)絡(luò)斷了,也沒關(guān)系,再 進(jìn)行一次就可以了。升級(jí)完畢,以后每天只
要使用yum check-update檢查一下有無跟新,如果有,就用yum update進(jìn)行跟新,時(shí)刻保持系統(tǒng)為最新,堵住一切發(fā)現(xiàn)的漏洞。用yum update packagename 對(duì)某個(gè)單獨(dú)包進(jìn)行升級(jí)。
現(xiàn)在簡單的把yum軟件升級(jí)的一些命令羅列一下:
(更新:我在安裝wine的時(shí)候是用rpm一個(gè)一個(gè)安裝的,先安裝以來關(guān)系,然后在安裝wine的主包,但是剛剛在論壇上發(fā)現(xiàn)來一個(gè)好的帖子,就yum的本地安裝。參數(shù)是-localinstall
$yum localinstall wine-*
這樣的話,yum會(huì)自動(dòng)安裝所有的依賴關(guān)系,而不用rpm一個(gè)一個(gè)的安裝了,省了好多工作。
還有一個(gè)與他類似的參數(shù):
$yum localupdate wine-*
如果有wine的新版本,而且你也下載到來本地,就可以這樣本地更新wine了。)
1.列出所有可更新的軟件清單
命令:yum check-update
2.安裝所有更新軟件
命令:yum update
3.僅安裝指定的軟件
命令:yum install
4.僅更新指定的軟件
命令:yum update
5.列出所有可安裝的軟件清單
命令:yum list
3.使用yum安裝和卸載軟件,有個(gè)前提是yum安裝的軟件包都是rpm格式的。
安裝的命令是,yum install xxx,yum會(huì)查詢數(shù)據(jù)庫,有無這一軟件包,如果有,則檢查其依賴沖突關(guān)系,如果沒有依賴沖突,那么最好,下載安裝;如果有,則會(huì)給出提示,詢問是否要同時(shí)安裝依賴,或刪除沖突的包,你可以自己作出判斷
刪除的命令是,yum remove xxx,同安裝一樣,yum也會(huì)查詢數(shù)據(jù)庫,給出解決依賴關(guān)系的提示。
1.用YUM安裝軟件包
命令:yum install
2.用YUM刪除軟件包
命令:yum remove
4.用yum查詢想安裝的軟件
我們常會(huì)碰到這樣的情況,想要安裝一個(gè)軟件,只知道它和某方面有關(guān),但又不能確切知道它的名字。這時(shí)yum的查詢功能就起作用了。你可以用 yum search keyword這樣的命令來進(jìn)行搜索,比如我們要?jiǎng)t安裝一個(gè)Instant Messenger,但又不知到底有哪些,這時(shí)不妨用 yum search messenger這樣的指令進(jìn)行搜索,yum會(huì)搜索所有可用rpm的描述,列出所有描述中和messeger有關(guān)的rpm包,于是我們可能得到 gaim,kopete等等,并從中選擇。
有時(shí)我們還會(huì)碰到安裝了一個(gè)包,但又不知道其用途,我們可以用yum info packagename這個(gè)指令來獲取信息。
1.使用YUM查找軟件包
命令:yum search
2.列出所有可安裝的軟件包
命令:yum list
3.列出所有可更新的軟件包
命令:yum list updates
4.列出所有已安裝的軟件包
命令:yum list installed
5.列出所有已安裝但不在 Yum Repository 內(nèi)的軟件包
命令:yum list extras
6.列出所指定的軟件包
命令:yum list 7.使用YUM獲取軟件包信息
命令:yum info 8.列出所有軟件包的信息
命令:yum info
9.列出所有可更新的軟件包信息
命令:yum info updates
10.列出所有已安裝的軟件包信息
命令:yum info installed
11.列出所有已安裝但不在 Yum Repository 內(nèi)的軟件包信息
命令:yum info extras
12.列出軟件包提供哪些文件
命令:yum provides
5.清除YUM緩存
yum 會(huì)把下載的軟件包和header存儲(chǔ)在cache中,而不會(huì)自動(dòng)刪除。如果我們覺得它們占用了磁盤空間,可以使用yum clean指令進(jìn)行清除,更精確的用法是yum clean headers清除header,yum clean packages清除下載的rpm包,yum clean all 清除所有
1.清除緩存目錄(/var/cache/yum)下的軟件包
命令:yum clean packages
2.清除緩存目錄(/var/cache/yum)下的 headers
命令:yum clean headers
3.清除緩存目錄(/var/cache/yum)下舊的 headers
命令:yum clean oldheaders
4.清除緩存目錄(/var/cache/yum)下的軟件包及舊的headers
命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)
以上所有命令參數(shù)的使用都可以用man來查看:
1、安裝圖形版yumex:yum install yumex。
2、安裝額外的軟件倉庫:
rpm.livna.org 的軟件包倉庫:
rpm -ivh http://livna-dl.reloumirrors.net … ease-7-2.noarch.rpm
freshrpms.net 的軟件包倉庫:
rpm –ivh http://ftp.freshrpms.net/pub/fre … 1.1-1.fc.noarch.rpm
3、安裝最快源 yum install yum-fastestmirror
資源真的是非常豐富,從Centos到Ubuntu,ISO鏡像、升級(jí)包,應(yīng)有盡有,上交的兄弟們真是幸福,羨慕啊。不過還好,我們好歹也算是在教育網(wǎng)內(nèi),湊合著也可以沾點(diǎn)光,下載一些。
網(wǎng)址為:ftp://ftp.sjtu.edu.cn/
相應(yīng)的yum的repo為
[updates]
name=Fedora updates
baseurl=ftp://ftp.sjtu.edu.cn/fedora/linux/updates/$releasever/$basearch/
enabled=1
gpgcheck=0
[fedora]
name=Fedora $releasever - $basearch
baseurl=ftp://ftp.sjtu.edu.cn/fedora/linux/releases/$releasever/Everything/$basearch/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY
如果在機(jī)器上安裝了apt管理器,則相應(yīng)的源為
repomd ftp://ftp.sjtu.edu.cn/ fedora/linux/updates/$(VERSION)/$(ARCH)/
repomd
fedora/linux/releases/$(VERSION)/Everything/$(ARCH)/os/
ftp://ftp.sjtu.edu.cn/
這與前面yum的源的格式上有一些差別,需要加以注意。
下面介紹一下fedora 下安裝 scim
1. 什么輸入法適合我?
fcitx和scim是目前比較好的輸入法, 但是他們的特點(diǎn)不同,fcitx只能輸入中文,而scim可以根據(jù)需要,利用不同的碼表達(dá)到中英日…等等各種語言的輸入問題。如果你只懂中文,或者只會(huì)輸 入英文&中文,那么fcitx是一個(gè)不錯(cuò)的選擇,因?yàn)樗?,小巧,?shí)用。如果你還需要輸入日文或者其他語言,那么你因該安裝scim。通 過合理的配置,他能夠讓你像在windows里面一樣,想輸入什么語言就能輸入什么語言,同一種語言想用什么輸入法就用什么輸入法。Scim的擴(kuò)充性很 強(qiáng),而且比較穩(wěn)定,我就是選擇的是scim.
2. 安裝一個(gè)新輸入法前需要哪些準(zhǔn)備?
如果你選擇fcitx或者scim,那么我建議你刪除系統(tǒng)自帶的中文輸入法。方法如下:
rpm –qa | grep iiimf | xargs rpm –e
rpm –qa | grep Chinput| xargs rpm –e
如果有哪一行提示rpm: no packages given for erase那表示本身你的系統(tǒng)里面沒有該輸入法,不用擔(dān)心,繼續(xù)往下看就行了。
說 明:rpm –qa是列出所有安裝的rpm包,grep iiimf是選擇出其中名字含有iiimf的那些包,xargs rpm –e的意思是把前面列出的這些包刪除掉。Xargs的作用就是把前面通過 | 傳過來的數(shù)據(jù)作為下面命令的參數(shù)。這就好比一個(gè)過濾器,首先是放著所有的安裝包,然后grep以后,只留下了含有某些特定關(guān)鍵字的rpm包,然后通過 xargs和rpm –e的組合運(yùn)用,把剩下的這些含有某特定關(guān)鍵字的包刪掉。這樣就達(dá)到了刪除該輸入法及相關(guān)包的目的。下面的Chinput也是如此,在此不再重復(fù)。如果你還安裝了其他輸入法,比如你原來裝的是fcitx,現(xiàn)在想裝scim,那么你最好模仿上面的樣子把fcitx刪除,方法就是把iiimf的位置改成 fcitx就可以了。
在安裝新輸入法之前,最好這樣做一下,因?yàn)槎喾N輸入法同時(shí)存在一個(gè)系統(tǒng)中沒有什么好處,你只可能去用一個(gè),而且他們同時(shí)存在可能有的時(shí)候會(huì)出現(xiàn)問題,想想也知道,會(huì)互相競爭嘛。所以在此以后,你應(yīng)該保證系統(tǒng)里面已經(jīng)沒有中文輸入法了。通過類似以下方式驗(yàn)證:
whereis fcitx
whereis scim
whereis miniChinput
…
3. 輸入法是何時(shí)被系統(tǒng)調(diào)用的?
很多人不知道輸入法到底什么時(shí)候被load進(jìn)來,不知道這個(gè)當(dāng)然就不知道為什么有的時(shí)候呼不出輸入法(因?yàn)榭赡芨緵]有調(diào)入)當(dāng)然也不會(huì)知道如何配置能夠符合自己的要求。
大 家都知道,linux下面比較常用的有兩個(gè)桌面系統(tǒng),gnome和kde,這都無所謂,他們其實(shí)都是架在X系統(tǒng)之上的。簡單的說X系統(tǒng)就是一個(gè)最核心,也 是最底層的桌面系統(tǒng),gnome也好,kde也罷,或者其他的什么fvwm之類的,都只不過是X系統(tǒng)和用戶之間的另一層軟件而已。所以要想達(dá)到不管使用什 么桌面系統(tǒng),都能調(diào)入輸入法,就是要在X系統(tǒng)啟動(dòng)的時(shí)候,讓輸入法也啟動(dòng)起來,那么這樣之后,無論你使用的是gnome還是kde或者其他什么桌面,都能 夠調(diào)入輸入法。因?yàn)楫?dāng)輪到他們啟動(dòng)的時(shí)候,X系統(tǒng)已經(jīng)啟動(dòng)好了,輸入法已經(jīng)被系統(tǒng)調(diào)入了。那么X系統(tǒng)又是如何啟動(dòng)的呢?讓我們從startx開始說起。
無論你用什么桌面系統(tǒng),都是通過startx啟動(dòng)的,那么startx究竟是什么呢?一個(gè)應(yīng)用程序還是一個(gè)腳本文件?為什么它能夠啟動(dòng)各種桌面系統(tǒng),并且能夠按照相應(yīng)的配置文件來設(shè)置呢?帶著疑問,我在console里面輸入whereis startx.
在 找到了存放startx的路徑以后,用編輯器打開它發(fā)現(xiàn)原來是一個(gè)腳本文件。這個(gè)腳本文件的內(nèi)容可能根據(jù)發(fā)行版不同,會(huì)有差異,如果你懂一些shell的 語言,那么你可以嘗試看看,不一定要全部看懂,但是你大致看過以后會(huì)發(fā)現(xiàn)最后有一個(gè)xinit的命令,然后跟著一些參數(shù)。我嘗試在console下面輸入 xinit(注意,不要在圖形界面下做此操作)
發(fā)現(xiàn)圖形界面啟動(dòng)拉,但是很丑陋,什么功能都沒有,鼠標(biāo)可以動(dòng),還有一個(gè)可以輸入命令的小窗口。怎 么退出來?ctrl+alt+backspace. 原來如此,startx只是一個(gè)腳本,里面通過對(duì)一系列配置文件的分析設(shè)置,最終利用xinit命令啟動(dòng)圖形界面。不管是kde還是gnome,都是在這 個(gè)腳本中完成的。那么讓我們再打開startx腳本看看里面還做了些什么。你仔細(xì)看看,會(huì)發(fā)現(xiàn)有一個(gè)東西很顯眼,就是/etc/X11/xinit /xinitrc,這個(gè)xinitrc好像很眼熟,在配置輸入法的其他貼中總是看到,這里出現(xiàn)了肯定是里面運(yùn)行了這個(gè)腳本。再看其他的一些東西,其實(shí)都是利用shell配置出一個(gè)xinit啟動(dòng)的參數(shù),用來配置桌面系統(tǒng)用的,不用管它。目前已知的就是startx的時(shí)候它會(huì)去執(zhí)行一個(gè)/etc/X11 /xinit/xinitrc的腳本,讓我們打開來看看里面有什么。
打開一看,其中一段我覺得最有價(jià)值,是一個(gè)for循環(huán),他依次執(zhí)行了/etc /X11/xinit/xinitrc.d/下面的所有腳本。你可以耐心的找一下,一定可以發(fā)現(xiàn)。那么這個(gè)目錄里面有些什么內(nèi)容呢?有一個(gè)文件看名字就知道和輸入相關(guān),他叫xinput。等等,讓我們理一下,是怎么從startx到xinput的。
首先是執(zhí)行startx這個(gè)腳本文件,里面他會(huì)執(zhí)行xinitrc這個(gè)腳本,然后xinitrc腳本里面的,叫xinput。OK, 我們繼續(xù),打開xinput看看。
4.安裝軟件包
rpm -Uvh scim-0.8.2-1.i586.rpm
rpm -Uvh scim-chinese-0.2.6-1.i586.rpm
5.修改配置文件
接下來重要的一步就是,修改一下
/etc /X11/xinit/xinitrc.d/xinput文件,讓SCIM在X啟動(dòng)的時(shí)候也啟動(dòng)。我看到網(wǎng)上很多文章也說過,但總是不得要領(lǐng),經(jīng)過自己試 驗(yàn),最簡單的就是把xinput文件里的Chinput全部替換為SCIM,chinput替換為scim,保存重啟X就可以了。
zh_CN*)
if [ -e /usr/bin/scim ]; then
XIM=\"SCIM\"
elif [ -e /usr/X11R6/bin/xcin ] ; then
export LC_CTYPE=zh_CN.GB2312
XIM=\"xcin-zh_CN.GB2312\"
fi
;;
..............................
SCIM)
XIM_PROGRAM=scim
XIM_ARGS=\"-d\"
;;
然后修改/etc/gtk-2.0/gtk.immodules,找到這一行:
\"xim\" \"X Input Method\" \"gtk20\" \"/usr/share/locale\" \"ko:ja:zh\"
改為:
\"xim\" \"X Input Method\" \"gtk20\" \"/usr/share/locale\" \"en:ko:ja:zh\"
可能表示輸入英文時(shí)也使用該輸入法
安裝完畢后運(yùn)行scim-setup,將輸入法的切換鍵改為ctrl+space
因篇幅問題不能全部顯示,請點(diǎn)此查看更多更全內(nèi)容
Copyright ? 2019- 91gzw.com 版權(quán)所有 湘ICP備2023023988號(hào)-2
違法及侵權(quán)請聯(lián)系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市萬商天勤律師事務(wù)所王興未律師提供法律服務(wù)