於 command 分類下的文章
yum的相關設定資料,都在yum.conf這隻檔案裡面,通常都放在/etc/下。對yum而言是相當重要的檔案。因此就來介紹一下此檔吧。
以下為預設的 yum.conf 設定檔
[root@localhost ~]# vim /etc/yun.conf [main] cachedir=/var/cache/yum #設定yum暫存檔的目錄 keepcache=0 #安裝完成後是否要保留軟件包。0為不保留,1為保留。(預設為0) debuglevel=2 #除錯的等級設定。範圍0-10,而預設的是2 logfile=/var/log/yum.log #yum的log記錄位置。 distroverpkg=redhat-release #指定一個套件時,yum會根據這個套件判斷系統的發行 版本。預設為redhat-release。 tolerant=1 #yum是否容忍當程式發生與套件有關的錯誤,若設為1不會出現錯誤訊息, 預設為0 exactarch=1 #設定是否只升級和已經安裝的套件CPU位元(i386、x86_64)相同的套件。 預設為1表示只安裝一致的套件,0表示可以不一致。 obsoletes=1 gpgcheck=1 #可設定為1或0,分別表示是否要進行gpg校驗,若無設定此項。預設也會檢查。 plugins=1 #設定為是否啟用擴充元件,預設為1允許,0表示不允許。 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum # Note: yum-RHN-plugin doesn't honor this. metadata_expire=1h installonly_limit = 5 # PUT YOUR REPOS HERE OR IN separate files named file.repo # in /etc/yum.repos.d #repo文件存放的位置 |
前言 :
想必大家對yum這個指令應該不陌生吧。輕輕鬆鬆就把想要的東西安裝好了。但是真的了解yum的人應該就不多了。所以今天就來介紹一下yum吧。
一、yum介紹
YUM 是一個自動安裝工具,它可以幫助RPM系統安裝,移除,升級軟體套件(應用程式,函式庫等)。您不需要在一一檢查手冊查閱相依性需要的套件,它能夠自動檢測軟體安裝時的相依性。這使得我們在管理(升級,安裝,移除)相關群組時更加簡單便利。您可以使用YUM擴充套件的界面來安裝簡單的功能。您也可以從其他Python程式來使用(大部份Linux的YUM使用python實作)
二、yum移除與安裝
1. 查詢是否有安裝yum
[root@localhost ~]# rpm -qa | grep yum #若有看到以下內容就比較有安裝 yum-metadata-parser-1.1.2-3.el5.centos yum-3.2.22-33.el5.centos yum-fastestmirror-1.1.16-14.el5.centos.1 yum-updatesd-0.9-2.el5 |
2. 移除yum (移除的方式有兩種擇一即可)
2.1 用yum的方式移除
[root@localhost ~]# yum remove yum* |
在使用Linux的情況下,一定會時常使用到vim或是vi來編輯。所以多少要會使用一些基本的vim指令。以下內容大部份是在閱讀鳥哥時所整理的筆記。若想更加了解可以參考鳥哥的完整說明。
Vim命令的圖解
常用指令 :
以下為在使用Vim時常使用到的一些指令
進入編輯模式 (I,l a,A o,O r,R )
[Ctrl] + [f] 螢幕『向下』移動一頁
[Ctrl] + [b] 螢幕『向上』移動一頁
0或[Home] 移動到這一行的最前面
$ 或[End] 移動到這一行的最後面
G 移動到這個檔案的最後一行
gg 移動到這個檔案的第一行,相當於 1G 啊
n<Enter> n 為數字。游標向下移動 n 行
刪除檔案指令:
find ./ -name "example?*" -exec rm -rf {} \; #找到該目錄下名稱為example的檔案並刪除
rm -f cat ../list.txt
#從list.txt中把要刪除的檔案列表之後一次刪除
rm ./-* 若檔名有-必須要使用相對路徑
ls |grep -v unwant_del | xargs -i rm {} //五顆星指令
ls |grep -v unwant_del | xargs -i rm -rf ./{}
簡單的比較說明:
【which】 通常都是用來尋找『執行檔』
【whereis】 通常是用來尋找『特定檔案』
【whersis】和【locate】搜尋時是以資料庫檔案裡的資料為主
【find】搜尋時是以整個硬碟裡的資料為主
在Linux下,find這個指令不常用到,因為不僅速度慢也很操硬碟。所以通常都是先使用whereis或是locate來檢查,最後真的找不到的話,才會使用到find來搜尋。
Whereis和locate是利用資料庫來搜尋資料,並非實際搜尋硬碟。因此在找資料上的速度相當快速,也較省時間。
以下是各指令的說明
which
這個指令是根據『PATH』這個環境變數所規範的路徑,去搜尋『執行檔』的檔名,而且which後面接的是『完整檔名』。若加上 -a 選項,則可以列出所有的可以找到的同名執行檔,而非僅顯示第一個!
[root@www ~]# which [-a] command
選項或參數:
-a :將所有由 PATH 目錄中可以找到的指令均列出,而不止第一個被找到的指令名稱
範例一:分別用root與一般帳號搜尋 ifconfig 這個指令的完整檔名
[root@www ~]# which ifconfig
/sbin/ifconfig <==用 root 可以找到正確的執行檔名喔!
[root@www ~]# su – derek <==切換身份成為 derek 去!
[derek@www ~]$ which ifconfig
/usr/bin/which: no ifconfig in (/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin
:/home/derek/bin) <==竟然一般身份帳號找不到!
# 因為 which 是根據使用者所設定的 PATH 變數內的目錄去搜尋可執行檔的!
# 不同的 PATH 設定內容所找到的指令當然不一樣啦!因為 /sbin 不在 derek 的
# PATH 中,找不到也是理所當然的啊!瞭乎?
whereis
為什麼whereis的搜尋速度會比find快這麼多呢?
因為Linux 會將系統內所有的檔案都記錄在一個資料庫檔案裡面,當要使用whereis和locate時,就會先以此資料庫檔案的內容為準。有時在使用這兩個執行檔的時後,會找到已經被殺掉的檔案。也有時後會找不到剛剛所建立的最新檔案,因為還沒有被記錄到此資料庫檔案中。
[root@www ~]# whereis [-bmsu] 檔案或目錄名
選項與參數:
-b :只找可執行檔( binary )格式的檔案
-m :只找在說明檔 manual 路徑下的檔案
-s :只找 source 來源檔案
-u :搜尋不在上述三個項目當中的其他特殊檔案
如果不加任何選項的話,那麼就將所有的資料列出來囉!
範例一:請用不同的身份找出 ifconfig 這個檔名
[root@www ~]# whereis ifconfig
ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
[root@www ~]# su – derek <==切換身份成為 derek
[derek@www ~]$ whereis ifconfig <==找到同樣的結果喔!
ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
[derek@www ~]$ exit <==回歸身份成為 root 去!
# 注意看,明明 which 一般使用者找不到的 ifconfig 卻可以讓 whereis 找到!
# 這是因為系統真的有 ifconfig 這個『檔案』,但是使用者的 PATH 並沒有加入 /sbin
# 所以,未來你找不到某些指令時,先用檔案搜尋指令找找看再說!
近期迴響