darwin 的 bash 怎么用? 我发现bash终端很多命令都用不上,像rpm yum 区别等工具,我的是macbook air ,求解

文章数:93
评论数:14
访问量:7083
注册日期:
阅读量:5863
阅读量:12276
阅读量:349486
阅读量:1048507
51CTO推荐博文
&RPM包管理器:RPM is package manage程序包的组成部分:二进制程序:/bin, /sbin,/ /usr/bin, /usr/sbin,库文件:/lib64, /usr/lib64配置文件:/etc帮助文件:manual, infoRPM包的命名:分包机制核心包testapp-version& 分支包 testapp-devel-versionVersion版本&主版本号major(重大功能改进等)-次版本号minor(小幅功能修改)-修正号release(通常是bug的修复)例:bash-4.4.2.tar.gz命名机制格式:name-version-release.arch.rpm例:bash-4.2.4-1.el7.x86_64.rpmbash 软件名称4.2.4程序版本号1.el7 其中1是软件包版本号,作者有可能不断改进,el7是适用操作系统X86_64硬件平台,还有i386,i486,i586,i686,x86_64、ppc、sparc、alphaRPM包的制作:rpmbuild命令,不多做介绍&RPM包管理命令&查询功能&1.已安装软件的查询&1)对系统中已经安装软件的查询& &语法:rpm Cq 软件名& &例:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&2)查看系统中所有安装的包就用rpm Cqa,输出信息太长后面还可以管道加more分页查看&&&&&&&&&&&&&&&&&&&&&&&&&&&&&3)在所有已经安装软件中查找某个软件& &语法:rpm Cqa | grep httpd&4)查询一个已安装文件属于哪个软件包,这里用which httpd查询它的绝对路径&&&&&&&&&&&&&&&&&&&&&5)查询一个已安装软件包的信息& &语法:&6)查询已安装软件包的文件都安装到何处,或者是列出已安装软件包所安装的文件& &语法:rpm Cql httpd&&7)查看已安装软件的配置文件& &语法:rpm Cqc httpd& & & & & & & & &&&8)查看已安装软件的文档安装位置& &语法:rpm Cqd httpd& & & & & & & & & & & & &&&&9)查看已安装软件所依赖的软件包及文件& &语法:rpm CqR httpd& & & & & & & & & & & & & &&&技巧:可以把一系列的查询条件组合起来使用,例:rpm Cqil httpd 就一次输出信息了&&2.未安装软件包的查询&1) 查看的前提是要有一个.rpm文件,对现有rpm文件的查看,其实就是在查看的基础上增加了一个p参数1)查看一个软件包的用途、版本等信息&rpm Cqip 软件名&&2)查看一件软件包所包含的文件&&语法: rpm -qpl 软件包.rpm&&例:&&[root@dx201-lvm RPMS]# rpm -qpl lynx-2.8.5-23.i386.rpm&&3)查看软件包的文档所在的位置&&语法: rpm -qpd 软件包.rpm&&例:&&[root@dx201-lvm RPMS]# rpm -qpd lynx-2.8.5-23.i386.rpm&&4)查看一个软件包的配置文件&&语法: rpm -qpc 软件包.rpm&&例:&&[root@dx201-lvm RPMS]# rpm -qpc lynx-2.8.5-23.i386.rpm&&5)查看一个软件包的依赖关系&&语法: rpm -qpR软件包.rpm&&例:&&[root@dx201-lvm RPMS]# rpm -qpR lynx-2.8.5-23.i386.rpm&RPM包的安装&语法:rpm {-i|--install} [install-options] PACKAGE_FILE ...&&-i 安装&&-v 显示安装进程,如果需要更详细信息可用-vv或-vvv&&-h 安装时输出hash记号(#),进度条&&--test 只对安装进行测试,或者用于检测依赖关系,并不实际安装&&--nodeps 忽略依赖关系&&--replacepkgs 重装,已安装软件再安装多一次&&--prefix 将软件安装到指定路径&&--force 强制安装,忽略软件及文件等冲突&&&&&&&&&&&例:rpm -ivh --test php-common-5.3.3-40.el6_6.x86_64.rpm &测试安装&RPM包升级& 语法:rpm -U ( or --upgrade) options file1.rpm ... fileN.rpm&&-Uvh: 如果有旧版程序包,则升级之;如果没有,则安装之;&&-Fvh: 如果有旧版程序包,则升级之;如果没有,则不安装;&&--oldpackage:降级,由新版本降为旧版本&&--nodeps 忽略依赖关系&&&例:rpm -Fvh php-common-5.3.3-40.el6_6.x86_64.rpm&&&&rpm -Uvh php-common-5.3.3-40.el6_6.x86_64.rpm&RPM包卸载:& 语法:rpm {-e|--erase} [--nodeps] [--noscripts] [--notriggers] [--test] PACKAGE_NAME ...& 例:rpm -e php-common-5.3.3-40.el6_6.x86_64.rpm&RPM包检验、导入签名(包来源合法性验证、完整性验证)&密钥导入&语法:rpm Cimport key&&包检验&语法:rpm CK 软件名称&&&&&&&& &YUM: Yellowdog Updater Modified&配置文件/etc/yum.conf&&&&定义全局配置:对所有仓库都适用的配置/etc/yum.repos.d/*.repo&&&&一个文件通常用于一个或一组功能相近或相关的仓库&repo文件解析(定义一个仓库指向):&&&&[REPO_ID]唯一ID,可以在一个文件内定义多个&&&&name= 该组的说明&&&&baseurl= 源的地址链接&&&&# mirrorlist=SCHEME://HOSTNAME/PATH/TO/MIRROR_LIST_FILE地址列表&&&&enabled={1|0} 该配置是否生效&&&&gpgcheck={1|0} 是否检查合法来源&&&&gpgkey= key路径&&&&cost= 相当与优先级,越小优先级越高&定义仓库指向可用变量:&&&&$releasever: 引用当前系统的主版本号;&&&&$basearch: 当前系统的基本架构i386, i486, i586, i686,x86_64&&&&例:&命令&安装:install 例:yum Cy install httpd 安装httpd并且无需确认&卸载:remove&&&升级:updates& & & 例:yum list updates列出已安装的可升级的软件包列表yum check-update很像 yum list updates 但是如果有可用更新的话会返回退出代号 100。方便写 shell 脚本&查询:info& 例:yum info httpdsearch KEYWORD 例:yum search httpdlist &all|installed|availiable例:yum list 默认列出所有,和list all一样& & &yum list all 列出所有软件仓库里和系统已安装的包yum list installed 列出系统已经安装的包yum list availiable 列出所有可用的软件仓库可安装的包& & &yum list updates这个命令列出已安装的可升级的软件包列表& & yum list recent这个命令列出最近 7 天加入的软件包列表&& & &provides /PATH/TO/SOMEFILE: 查询指定文件由哪个包安装生成,类似rpm -qf例:yum provides `which httpd`&重新安装:reinstall例:yum reinstall autofs&降级:downgrade&清理缓存:clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]例: yum clear all&&&yum clean packages&&&yum clean metadata&手动生成缓存:makecache例:yum makecache就是把服务器的包信息下载到本地电脑缓存起来& & & & 配合yum -C search xxx使用,不用上网检索就能查找软件信息& & & & 执行完 yum makecache之后,你可以用yum search subversion和yum -C search subversion试下,看看二者速度差别有多大&&包组管理:grouplistgroupinfo groupnamegroupinstall groupnamegroupremove groupnamegrouplist例:yum grouplist这个操作将为你的系统在两个单独的列表中列出所有已经安装的和可用的组。&groupinfo例:yum groupinfo groupname该操作将显示每个组的详细信息,包括:描述信息,是必须安装还是默认或者可选安装包。&groupinstall例:yum groupinstall groupname安装命名组的包&groupupdate例:yum groupupdate groupname升级命名组的包&groupremove例:yum groupremove groupname删除在命名组中的任何类型的所有包,并且所有依赖于该组中的包也会被删除。&&YUM技巧& &a)查看一个软件的依赖关系&&&&yum deplist name&1)更换其他YUM源,新增或编辑/etc/yum.repo/yumname.repo文件,更改baseurl,指向新的源即可&&2)创建本地仓库,建立本地源&先创建源的本地目录mkdir /local-yum,再在其目录下创建一个放置rpm包的目录mkdir /local-yum/i386,然后拷贝rpm包到i386目录下,最后用createrepo /local-yum 生成源必须的repodata目录及文件,最后修改/etc/yum.repo.d/yumname.repo文件即可&&3)利用http服务建立本地YUM源&首先安装httpd服务:yum Cy install httpd编辑/etc/httpd/conf/httpd.conf里的#ServerName ,改为ServerName localhost:80,如果有自己的域名改成域名也可以在/var/www/html下创建目录mkdir Cp /local-yum/i386拷贝rpm包到/local-yum/i386下建立源Createrepo /local-yum启动httpd服务:server httpd start 设置开机启动httpd服务:chkconfig httpd on修改/etc/yum.repo.d/yumname.repo文件,baseurl=http://localhost/local-yum&4)本地源如果增加了新的rpm包,需要再运行一次createrepo 源目录 以便更新配置文件&5)可以利用reposync命令同步软件到本地&& 例:reposync Cp /local-yum/i386 Crepoid=aliyun&&&& 根据repo文件中的aliyun字段的配置,把上面的软件同步到/local-yum/i386目录下&
了这篇文章
类别:┆阅读(0)┆评论(0)
18:49:42 18:18:09Linux中yum管理工具被误删的解决办法
作者:佚名
字体:[ ] 来源:互联网 时间:03-07 11:49:42
这篇文章主要介绍了Linux中yum管理工具被误删的解决办法,需要的朋友可以参考下
今天在安装程序时,发现有一个插件未安装,我就随手敲了一个命令,看都没看代码如下:yum remove yum然后就杯具了...代码如下:[root@localhost ~]# yum -bash: /usr/bin/yum: No such file or directory&
这个粗心的手误倒不至于让整个系统瘫痪,yum 却无法使用了。于是,我试着折腾了一番代码如下:
--nodeps &a href="/centos/5/os/x86_64/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm"&/centos/5/os/x86_64/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm&/a&
--nodeps &a href="/centos/5/os/x86_64/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.x86_64.rpm"&/centos/5/os/x86_64/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.x86_64.rpm&/a&
--nodeps &a href="/centos/5/os/x86_64/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm[/code"&/centos/5/os/x86_64/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm[/code&/a&]关于rpm --nodeps的解释[code] --nodeps
don't verify package dependencies 接下来,再次尝试输入yum,结果再次出现莫名错误
[root@localhost ~]# yum
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
libxml2.so.2: cannot open shared object file: No such file or directory
Please install a package which provides this module, or
verify that the module is installed correctly.
It's possible that the above module doesn't match the
current version of Python, which is:
2.4.3 (#1, Nov 11 :19)
[GCC 4.1.2
(Red Hat 4.1.2-48)]
If you cannot solve this problem yourself, please go to
the yum faq at:
&a href="http://wiki.linux.duke.edu/YumFaq"&http://wiki.linux.duke.edu/YumFaq&/a&
因为yum调用的是python,运行 Python,试下是否可行代码如下: [root@localhost~]# python
Python 2.4.3 (#1, Nov 11 :19)
[GCC 4.1.2
Red Hat 4.1.2-48)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
&&& import yum
Traceback (most recent call last):
File "&stdin&", line 1, in ?
File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 54, in ?
import transactioninfo
File "/usr/lib/python2.4/site-packages/yum/transactioninfo.py", line 31, in ?
from sqlitesack import YumAvailablePackageSqlite
File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 26, in ?
import yumRepo
File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 32, in ?
import sqlitecachec
File "/usr/lib64/python2.4/site-packages/sqlitecachec.py", line 19, in ?
import _sqlitecache
ImportError: libxml2.so.2: cannot open shared object file: No such file or directory
提示缺少libxml2.so.2,安装一下试试代码如下:rpm -ivh &a href="/centos/5/os/x86_64/CentOS/libxml2-2.6.26-2.1.2.8.x86_64.rpm[/code"&/centos/5/os/x86_64/CentOS/libxml2-2.6.26-2.1.2.8.x86_64.rpm[/code&/a&]再次测试运行下yum命令,结果正常了,大喜[code] [root@localhost ~]# yum
Loaded plugins: fastestmirror
You need to give some command
usage: yum [options] COMMAND
List of Commands:
check-update
Check for available package updates
Remove cached data
List a package's dependencies
downgrade a package
Remove a package or packages from your system
Display details about a package group
groupinstall
Install the packages in a group on your system
List available package groups
groupremove
Remove the packages in a group from your system
Display a helpful usage message
Display details about a package or group of packages
Install a package or packages on your system
List a package or groups of packages
localinstall
Install a local RPM
Generate the metadata cache
Find what package provides the given value
reinstall a package
Display the configured software repositories
resolvedep
Determine which package provides the given dependency
Search package details for the given string
Run an interactive yum shell
Update a package or packages on your system
Update packages taking obsoletes into account
-h, --help
show this help message and exit
-t, --tolerant
be tolerant of errors
run entirely from cache, don't update cache
[config file]
config file location
maximum command wait time
[debug level]
debugging output level
--showduplicates
show duplicates, in repos, in list/search commands
[error level]
error output level
-q, --quiet
quiet operation
-v, --verbose
verbose operation
answer yes for all questions
show Yum version and exit
--installroot=[path]
set install root
--enablerepo=[repo]
enable one or more repositories (wildcards allowed)
--disablerepo=[repo]
disable one or more repositories (wildcards allowed)
-x [package], --exclude=[package]
exclude package(s) by name or glob
--disableexcludes=[repo]
disable exclude from main, for a repo or for
everything
--obsoletes
enable obsoletes processing during updates
--noplugins
disable Yum plugins
--nogpgcheck
disable gpg signature checking
--disableplugin=[plugin]
disable plugins by name
--enableplugin=[plugin]
enable plugins by name
--skip-broken
skip packages with depsolving problems
--color=COLOR
control whether color is used
Plugin Options:
最后,赶紧更新一下系统吧代码如下:yum update好了 这样yum问题就完全解决了!
大家感兴趣的内容
12345678910
最近更新的内容}

我要回帖

更多关于 rpm yum 区别 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信