CentOS如何配置国内YUM源

网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常的不错,将yum源设置为163yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。具体设置方法如下:

1,进入yum源配置目录
cd /etc/yum.repos.d

2,备份系统自带的yum源
mv CentOS-Base.repo CentOS-Base.repo.bk
下载163网易的yum源:
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

3,更新玩yum源后,执行下边命令更新yum配置,使操作立即生效
yum makecache

4,除了网易之外,国内还有其他不错的yum源,比如中科大和搜狐的,大家可以根据自己需求下载
中科大的yum源:
wget http://centos.ustc.edu.cn/CentOS-Base.repo
sohu的yum源
wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo

理论上讲,这些yum源redhat系统以及fedora也是可以用 的,但是没有经过测试


(二)yum指令的使用

当第一次使用yum管理软件时,yum会自动下载所需要的headers放置在/var/cache/yum目录下;

1) rpm包的更新


#检查可以更新的软件包 
yum check-update 
#更新所有的软件包 
yum update 

#更新特定的软件包 
yum update kernel 

#大规模的升级 
yum upgrade

2) rpm包的安装和删除

#rpm包的安装和删除 
yum install xxx【服务名】 
yum remove xxx【服务名】

3) yum缓存的相关信息


#清楚缓存中rpm包文件 
yum clean packages 
#清楚缓存中rpm的头文件 
yum clean  headers 
#清除缓存中旧的头文件 
yum clean old headers 
#清除缓存中旧的rpm头文件和包文件 
yum clean all

4)软件包信息查询

#列出资源库中所有可以安装或更新的rpm包 
yum list 

#列出资源库中特定的可以安装或更新以及已经安装的rpm包 
yum list firfox* 
N:可以在rpm包名中使用通配符,查询类似的rpm包

#列出资源库中所有可以更新的rpm包 
yum list updates 

#列出已经安装的所有的rpm包 
yum list installed 

#列出已经安装的但是不包含在资源库中的rpm包 
yum list extras 
N:通过如网站下载安装的rpm包  

#rpm包信息显示(info参数同list),列出资源库中所有可以安装或更新的rpm包的信息 
yum info 

#列出资源库中特定的可以安装或更新以及已经安装的rpm包的信息 

yum info firefox* 
N:可以在rpm包名中使用匹配符 

#列出资源库中所有可以更新的rpm包的信息
yum info updates 

#列出已经安装的所有的rpm包的信息

 yum info installed 

#列出已经安装的但是不包含在资源库中的rpm包的信息 
yum info extras 
N:通过如网站下载安装的rpm包的信息

#搜索匹配特定字符的rpm包
yum search firofox
#搜索包含特定文件的rpm包
yum provides firefox

 

(三)yum软件源更新

http://mirrors.163.com/.help/centos.html



然后安装时会报错签名问题:

warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID e8562897
base /gpgkey                                                                        | 1.7 kB     00:00    
 
 
Public key for mysql-5.0.95-5.el5_9.x86_64.rpm is not installed

解决方案:


此时导入rpm的签名信息即可,用root登录,执行下面命令(我的linux版本是centos 5.1)

[root@freeman opt]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

?
1
[root@freeman opt] # rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5


如果是其它版本,例如redhat,执行以下命令


rpm --import/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

?
1
rpm -- import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release


OK,问题解决

参考文章:http://www.cnblogs.com/JemBai/archive/2012/11/07/2759140.html



最后编辑VIM的配置文件:

runtime! debian.vim
"设置编码
set encoding=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
set fileencodings=utf-8,ucs-bom,chinese
 
"语言设置
set langmenu=zh_CN.UTF-8
 
"设置语法高亮
syntax enable
syntax on
 
"设置配色方案
colorscheme torte
 
"可以在buffer的任何地方使用鼠标
set mouse=a
set selection=exclusive
set selectmode=mouse,key
 
"高亮显示匹配的括号
set showmatch
 
"去掉vi一致性
set nocompatible
 
"设置缩进
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent
if &term=="xterm"
     set t_Co=8
     set t_Sb=^[[4%dm
     set t_Sf=^[[3%dm
endif
 
"打开文件类型自动检测功能
filetype on
 
"设置taglist
let Tlist_Show_One_File=0   "显示多个文件的tags
let Tlist_File_Fold_Auto_Close=1 "非当前文件,函数列表折叠隐藏
let Tlist_Exit_OnlyWindow=1 "在taglist是最后一个窗口时退出vim
let Tlist_Use_SingleClick=1 "单击时跳转
let Tlist_GainFocus_On_ToggleOpen=1 "打开taglist时获得输入焦点
let Tlist_Process_File_Always=1 "不管taglist窗口是否打开,始终解析文件中的tag
 
"设置WinManager插件
let g:winManagerWindowLayout='FileExplorer|TagList'
nmap wm :WMToggle<cr>
map <silent> <F9> :WMToggle<cr> "将F9绑定至WinManager,即打开WimManager
 
"设置CSCOPE
set cscopequickfix=s-,c-,d-,i-,t-,e- "设定是否使用quickfix窗口显示cscope结果
 
"设置Grep插件
nnoremap <silent> <F3> :Grep<CR>
 
"设置一键编译
map <F6> :make<CR>
 
"设置自动补全
filetype plugin indent on   "打开文件类型检测
set completeopt=longest,menu "关掉智能补全时的预览窗口
 
"启动vim时如果存在tags则自动加载
if exists("tags")
     set tags=./tags
endif
 
"设置按F12就更新tags的方法
map <F12> :call Do_CsTag()<CR>
nmap <C-@>s :cs find s <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <C-@>g :cs find g <C-R>=expand("<cword>")<CR><CR>
nmap <C-@>c :cs find c <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <C-@>t :cs find t <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <C-@>e :cs find e <C-R>=expand("<cword>")<CR><CR>:copen<CR>
nmap <C-@>f :cs find f <C-R>=expand("<cfile>")<CR><CR>:copen<CR>
nmap <C-@>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>:copen<CR>
nmap <C-@>d :cs find d <C-R>=expand("<cword>")<CR><CR>:copen<CR>
function Do_CsTag()
         let dir = getcwd()
         if filereadable("tags")
             if(g:iswindows==1)
                 let tagsdeleted=delete(dir."\\"."tags")
             else
                 let tagsdeleted=delete("./"."tags")
             endif
             if(tagsdeleted!=0)
                 echohl WarningMsg | echo "Fail to do tags! I cannot delete the tags" | echohl None
                 return
             endif
         endif
         
         if has("cscope")
             silent! execute "cs kill -1"
         endif
         
         if filereadable("cscope.files")
             if(g:iswindows==1)
                 let csfilesdeleted=delete(dir."\\"."cscope.files")
             else
                 let csfilesdeleted=delete("./"."cscope.files")
             endif
             if(csfilesdeleted!=0)
                 echohl WarningMsg | echo "Fail to do cscope! I cannot delete the cscope.files" | echohl None
                 return
             endif
         endif
                                             
         if filereadable("cscope.out")
             if(g:iswindows==1)
                 let csoutdeleted=delete(dir."\\"."cscope.out")
             else
                 let csoutdeleted=delete("./"."cscope.out")
             endif
             if(csoutdeleted!=0)
                 echohl WarningMsg | echo "Fail to do cscope! I cannot delete the cscope.out" | echohl None
                 return
             endif
         endif
                                             
         if(executable('ctags'))
             "silent! execute "!ctags -R --c-types=+p --fields=+S *"
             silent! execute "!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q ."
         endif
             
         if(executable('cscope') && has("cscope") )
             if(g:iswindows!=1)
                 silent! execute "!find . -name '*.h' -o -name '*.c' -o -name '*.cpp' -o -name '*.java' -o -name '*.cs' > cscope.files"
             else
                 silent! execute "!dir /s/b *.c,*.cpp,*.h,*.java,*.cs >> cscope.files"
             endif
             silent! execute "!cscope -b"
             execute "normal :"
                                                                     
             if filereadable("cscope.out")
                 execute "cs add cscope.out"
             endif
         endif
endfunction
 
"设置默认shell
set shell=bash
 
"设置VIM记录的历史数
set history=400
 
"设置当文件被外部改变的时侯自动读入文件
if exists("&autoread")
     set autoread
endif
 
"设置ambiwidth
set ambiwidth=double
 
"设置文件类型
set ffs=unix,dos,mac
 
"设置增量搜索模式
set incsearch
 
"设置静音模式
set noerrorbells
set novisualbell
set t_vb=
 
"不要备份文件
set nobackup
set nowb


你可能感兴趣的:(CentOS如何配置国内YUM源)