注:1般的软件的默许安装目录在/usr/local或/opt里,可以到那里去找找.
指令名称:whereis
功能介绍:在特定目录中查找符合条件的文件。这些文件的烈性应属于原始代码,2进制文件,或是帮助文件。
语法格式:whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
经常使用参数说明:
-b 只查找2进制文件。
-B <目录> 只在设置的目录下查找2进制文件。
-f 不显示文件名前的路径名称。
-m 只查找说明文件。
-M <目录> 只在设置的目录下查找说明文件。
-s 只查找原始代码文件。
-S <目录> 只在设置的目录下查找原始代码文件。
-u 查找不包括指定类型的文件。
利用:#whereis 软件名 -->查看软件安装路径
#which 软件名 -->软件软件的运行路径
首先要肯定是通过包管理器安装的还是通过源代码安装的。
1、通过rpm包管理器安装的软件:
1、rpm包
可以用命令:
#rpm –ql 包名 如 rpm -ql gcc 来查看gcc的文件都安装到哪里去了
#rpm -qa | grep 包名 来查看有无安装这个包 ,
#rpm -qa 查看全部已安装的包名
2、deb包
可以用命令:
#dpkg -L 包名 查看如 dpkg -L gcc 来查看gcc的文件。
#dpkg -l | grep 包名 来查看有无安装某个包 ,
# dpkg -l 是查看全部包的
2、通过源代码安装的软件:
1、如果是通过源代码安装的话 ,在源代码的configure的时候会有参数让你指定安装目录,具体体现在Makefile文件的install目标(也可能会是*install* 目标,*代表任意字符)里。例如以下Makefile文件的install目标:
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(bindir)
@list='$(bin_PROGRAMS)'; for p in $$list; do \
if test -f $$p; then \
echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
$(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
else :; fi; \
done
是1个脚本,把可履行文件复制到$bindir这个变量所代表的目录下,在Makefile前面的代码中这个变量会有定义,在我这里是定义了
prefix = /usr/local
exec_prefix = ${prefix}
bindir = ${exec_prefix}/bin
也就是 /usr/local/bin下面。
2、最后,如果已安装好的,也能够直接调用,要看它的路径很好弄定
例如我用gcc这个命令,我要看gcc这个命令的目录位置,可以用以下命令查询
[wade@mycentos ~]$ whereis gcc
gcc: /usr/bin/gcc /usr/lib/gcc /usr/libexec/gcc /usr/share/man/man1/gcc.1.gz
1个whereis命令就查询到位置了。
第2章Linux系统下软件的安装与卸载管理
我分下面3个部份来说linux中的软件管理,前2个部份是基本介绍,也是重点,让大家明白linux的不同的管理软件的方法。在实际用中,推荐大家多使用apt-get和yum.那是相当的方便。
Windows下安装软件时,只需运行软件的安装程序(setup、install等)或用zip等解紧缩软件解开便可安装,运行反安装程序(uninstall、unware、"卸载"等)就可以将软件清除干净,完全图形化的操作界面,简单到只要用鼠标1直点击"下1步"就能够了。Linux系统好象就不1样了,很多的初学者都抱怨在Linux下安装和卸载软件非常地困难,没有像使用Windows时那末直观。其实在Linux下安装和卸载软件也非常简单,一样也有安装向导或解压安装的方式,不相同的只不过是除2进制情势的软件分发外,还有许许多多以源代码情势分发的软件包。
下面就来详细地讲1讲这些软件的安装与卸载:
1、2进制分发软件包的安装与卸载
Linux软件的2进制分发是指事前已编译好2进制情势的软件包的发布情势,其优点是安装使用容易,缺点则是缺少灵活性,如果该软件包是为特定的硬件平台编译的,那它就不能在另外的平台或环境下正确履行。
1、*.rpm情势的2进制软件包
首先进入软件所在目录
安装:rpm -ivh *.rpm
卸载:rpm -e packgename
实例:
1、找到相应的软件包,比如soft.version.rpm,下载到本机某个目录;
2、打开1个终端,在非超级管理员终端使用命令:su – 转换成root用户;
3、cd soft.version.rpm所在的目录;
4、输入rpm -ivh soft.version.rpm
说明:RPM(RedHat PackgeManager)是RedHat公司出的软件包管理器,使用它可以很容易地对rpm情势的软件包进行安装、升级、卸载、验证、查询等操作,安装简单,而卸载时也能够将软件安装在多处目录中的文件删除干净,因此推荐初学者尽量使用rpm情势的软件包。rpm的参数中-i是安装,-v是校验,-h是用散列符显示安装进度,*.rpm是软件包的文件名(这里的*.rpm特指*.src.rpm之外的以.rpm为后缀的文件);参数-e是删除软件包,packgename是软件包名,与软件包的文件名有所区分,它常常是文件名中位于版本号前面的字符串,例如apache⑶.1.12-i386.rpm和apache-devel⑶.1.12-i386.rpm是软件包文件名,它们的软件包名称分别是apache和apache-devel.更多的rpm参数请自行参看手册页:man rpm.
如果你不喜欢在字符界面下安装或卸载这些软件包,完全可以在X-Window下使用图形界面的软件包管理程序。现在这些做的非常好了。
2、*.tar.gz/*.tgz、*.bz2情势的2进制软件包
安装:tar zxvf *.tar.gz 或 tar yxvf *.bz2
卸载:手动删除
说明:*.tar.gz/*.bz2情势的2进制软件包是用tar工具来打包、用gzip/bzip2紧缩的,安装时直接解包便可。对解压后只有单1目录的软件,卸载时用命令"rm –rf 软件目录名";如果解压后文件分散在多处目录中,则必须逐一手动删除(稍麻烦),想知道解压时向系统中安装了哪些文件,可以用命令"tar ztvf *.tar.gz"/"tar ytvf *.bz2"获得清单。tar的参数z是调用gzip解压,x是解包,v是校验,f是显示结果,y是调用bzip2解压,t是列出包的文件清单。更多的参数请参看手册页:man tar.
注:如果你更喜欢图形界面的操作,可以到Ubuntu上看看他的包管理,超级方便。
3、*.tgz情势的2进制软件包
解压:tar -zxvf soft.tgz
切换到当前解压后目录:cd soft (ps: Linux的shell下按TAB键可以直接自动补全文件名)
安装:#./soft-*-*-installer
卸载:手动删除安装所在的文件夹
示例:安装myeclipse⑻.0.0-linux-gtk-x86.tgz
解压:#tar -zxvf myeclipse⑻.0.0-linux-gtk-x86.tgz
解压切换到当前安装目录:cd myeclipse⑻.0.0-linux-gtk-x86
安装:#./myeclipse⑻-stable-installer
3、提供安装程序的软件包
这类软件包已提供了安装脚本或2进制的安装向导程序(setup、install、install.sh等),只需运行它就能够完成软件的安装;而卸载时也相应地提供了反安装的脚本或程序。例如SUN公司的StarOffice办公软件套件就使用名为setup的安装程序,而且在软件安装后提供反安装的功能,目前这类类型的软件包还比较少,因其安装与卸载的方式与Windows软件1样,所以就无需多讲了。
2、源代码分发软件包的安装与卸载
Linux软件的源代码分发是指提供了该软件所有程序源代码的发布情势,需要用户自己编译成可履行的2进制代码并进行安装,其优点是配置灵活,可以随便去掉或保存某些功能/模块,适应多种硬件/操作系统平台及编译环境,缺点是难度较大,1般不合适初学者使用。
1、*.src.rpm情势的源代码软件包
安装:rpm -rebuild *.src.rpm
cd /usr/src/dist/RPMS
rpm -ivh *.rpm
卸载:rpm -e packgename
说明:rpm -rebuild *.src.rpm命令将源代码编译并在/usr/src/dist/RPMS下生成2进制的rpm包,然后再安装该2进制包便可。packgename如前所述。
2、tar.gz源代码包安装方式:
1、找到相应的软件包,比如soft.tar.gz,下载到本机某个目录;
2、打开1个终端,使用命令:su –转换成root用户;
3、cd soft.tar.gz所在的目录;
4、tar -xzvf soft.tar.gz //1般会生成1个soft目录
5、cd soft
6、./configure --prefix=/usr/local/soft(指定安装目录)
7、make
8、make install
卸载:用cd 命令进入编译后的软件目录,即安装时的目录
履行反安装命令:make uninstall或 手动删除
3. tar.bz2源代码包安装方式:
1、找到相应的软件包,比如soft.tar.bz2,下载到本机某个目录;
2、打开1个终端,su -成root用户;
3、cd soft.tar.bz2所在的目录;
4、tar -xjvf soft.tar.bz2 //1般会生成1个soft目录
5、cd soft
6、./configure --prefix=/usr/local/soft(指定安装目录)
7、make
8、make install
卸载:用cd 命令进入编译后的软件目录,即安装时的目录
履行反安装命令:make uninstall或 手动删除
说明:建议解压后先浏览说明文件,可以了解安装有哪些需求,有必要时还需改动编译配置。有些软件包的源代码在编译安装后可以用make install命令来进行卸载,如果不提供此功能,则软件的卸载必须手动删除。由于软件可能将文件分散地安装在系统的多个目录中,常常很难把它删除干净,那你应当在编译前进行配置,指定软件将要安装到目标路径:./configure --prefix=目录名,这样可使用"rm –rf 软件目录名"命令来进行干净完全的卸载。与其它安装方式相比,需要用户自己编译安装是最麻烦的,其实我个人认为,以后会愈来愈少人用这类方法。由于现在的硬件发展到没有必要多这少许的性能,来浪费这么多时间。
安装目录:注意make install命令进程中的安装目录,或浏览安装目录里面的readme文件,固然最好的办法是在安装的进程中指定安装目录,即在./configure命令后面加参数--prefix=/**,如:./configure --prefix=/usr/local/soft,即把软件装在/usr/local/路径的soft这个目录里。
3、bin文档安装:
假设您下载到的软件名是soft.bin,1般情况下是个可履行文档,安装方法以下:
1、 打开1个终端,su -成root用户;
2、 用CD 命令进入源代码紧缩包所在的目录
3、 chmod x soft.bin
4、./soft.bin //运行这个命令就可以够安装软件了,并且此软件被安装在了:源代码紧缩包所在的目录/soft中!
===如何卸载:把安装时当选择的安装目录删除就OK,
===履行安装进程中可以指定,类似于windows下安装。
示例:欲将jdk安装到指定目录/usr/java下
说明:1.CentOS默许情况下,会安装OpenOffice之类的软件,这些软件需要Java的支持,默许会安装JDK的环境,若需要特定的Java环境,最好将默许的JDK完全删除;
2.查看默许的JDK命令:java -version
3.但是如果先删除默许再装新的JDK,则与之相干的软件比如openoffice等也会随之删除,所以,先装新的jdk再卸系统默许自带的jdk。
***卸载系统自带原JDK的方法示例:(注意,此操作应当在新jdk安装终了后再履行)
终端输入,查看gcj的版本号:rpm -qa|grep jdk
得到结果:
jdk⑴.7.0_04-fcs.x86_64
java⑴.6.0-openjdk⑴.6.0.0⑴.49.1.11.4.el6_3.x86_64
终端输入,卸载:yum -y remove java java⑴.6.0-openjdk⑴.6.0.0⑴.49.1.11.4.el6_3.x86_64
等待系统自动卸载,终究终端显示 Complete,卸载完成
首先,在/usr下新建java文件夹,将安装包放在/usr/java目录下
然落后入此目录(根据安装包的不同选择①或②两种安装方式之1)
①jdk⑴_6_0_14-linux-i586-rpm.bin文件安装
# chmod 777 jdk⑴_6_0_14-linux-i586-rpm.bin ←修改成可履行
# ./jdk⑴_6_0_14-linux-i586-rpm.bin ←选择yes同意上面的协议
# rpm -ivh jdk⑴_6_0_14-linux-i586.rpm ←选择yes直到安装终了
②jdk⑴_6_0_14-linux-i586.bin文件安装
# chmod
a+x jdk⑴_6_0_14-linux-i586.bin ←使当前用户具有履行权限
# ./jdk⑴_6_0_14-linux-i586.bin
←这时候会显示出JDK的安装许可协议,按空格翻页,最后程序会问你是否是同意上面的协议,固然同意啦,输入“yes”以后开始解压JDK到当前目录。此时屏幕上会显示解压的进度,直到安装终了。
最后为jdk配置环境变量
<1># vi /etc/profile
<2>在最后加入以下几行:注意,在linux系统中,环境变量配置的分隔符不能用;(分号),要用:(冒号)
# set java environment
export JAVA_HOME=/usr/program/jdk1.6.0_13
export JRE_HOME=/usr/program/jdk1.6.0_13/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
<3>在vi编辑器增加以上内容后保存退出,并履行以下命令使配置生效!
#chmod +x /etc/profile ;增加履行权限
#source /etc/profile; 使配置生效
配置终了后,在命令行中输入:java -version,如出现以下信息说明java环境安装成功。
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
Java HotSpot(TM) Server VM (build 16.3-b01, mixed mode)
完成以上,我们就在CentOS系统中完成了JDK的安装和配置。
卸载自己安装的jdk的方法:把安装时当选择的安装目录删除就OK命令:#rm –rf jdk⑴.6.0_13命令便可删除JDK,别忘了把配置文件/etc/profile的相干配置也删除!!!
4、无需安装的软件:
有些软件,比如lumaqq,是无需安装的,自带jre解紧缩后可直接运行。假定下载的是lumaqq.tar.gz,使用方法以下:
1、打开1个终端,su -成root用户;
2、tar -xzvf lumaqq.tar.gz //这1步会生成1个叫LumaQQ的目录
3、cd LumaQQ
4、chmod x lumaqq //配置lumaqq这个程式文档为可运行
5、此时就可以够运行lumaqq了,用命令./lumaqq便可,但每次运行要输入全路径或转换到刚才生成的LumaQQ目录里
6、为了确保不配置路径就可以够用,您能够在/bin目录下建立1个lumaqq的链接, 用命令ln -s lumaqq /bin/ 便可,以后任什么时候候打开1个终端输入lumaqq就可以够 启动QQ聊天软件了
7、 假设您要想lumaqq有个菜单项,使用菜单编辑工具,比如Alacarte Menu Editor,找到上面生成的LumaQQ目录里的lumaqq配置1个菜单项就可以够了,固然您 也能够直接到 /usr/share/applications目录,依照里面其他*.desktop文档的格式生成1个自己的desktop文档便可。
5、使用yum和apt-get.软件管理方法的升级。
看过上面的介绍。大家1定会感觉,太麻烦了,下面这个是先进的linux才有的功能,这个实在太方便了,比windows还要方便,要是你用过Ubuntu的apt-get你会感觉爽极了的。那个方便。
1.我们来先讲Redhat的yum这类高级的包管理。
1).用YUM安装删除软件
注:Yum( Yellow dog Updater, Modified)是1个在Fedora和RedHat和SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且1次安装所有依赖的软体包,不必繁琐地1次次下载、安装。
在系统中添加删除软件是常事,yum一样可以胜任这1任务,只要软件是rpm安装的。安装的命令是,yum install xxx,yum会查询数据库,有没有这1软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那末最好,下载安装;如果有,则会给出提示,询问是不是要同时安装依赖,或删除冲突的包,你可以自己作出判断。删除的命令是,yum remove xxx,同安装1样,yum也会查询数据库,给出解决依赖关系的提示。
用YUM安装软件包
命令:yum install xxx
用YUM删除软件包
命令:yum remove xxx
2).用YUM查询软件信息
我们常会碰到这样的情况,想要安装1个软件,只知道它和某方面有关,但又不能确切知道它的名字。这时候yum的查询功能就起作用了。你可以用 yum search keyword这样的命令来进行搜索,比如我们要则安装1个Instant Messenger,但又不知到底有哪些,这时候无妨用yum search messenger这样的指令进行搜索,yum会搜索所有可用rpm的描写,列出所有描写中和messeger有关的rpm包,因而我们可能得到gaim,kopete等等,并从当选择。有时我们还会碰到安装了1个包,但又不知道其用处,我们可以用yum info packagename这个指令来获得信息。
使用YUM查找软件包
命令:yum search
列出所有可安装的软件包
命令:yum list
列出所有可更新的软件包
命令:yum list updates
列出所有已安装的软件包
命令:yum list installed
列出所有已安装但不在 Yum Repository 内的软件包
命令:yum list extras
列出所指定的软件包
命令:yum list
2.讲讲Ubuntu中的高级包管理方法apt-get
除apt的便捷之外,apt-get的1大好处是极大地减小了所谓依赖关系噩梦的产生概率(dependency hell),即便是堕入了dependency hell,apt-get也提供了很好的支援手段,帮你逃出魔窟。通常 apt-get 都和网上的紧缩包1起出没,从互联网上下载或是安装。全球有超过200个 debian 官方镜像,还有繁多的非官方软件包提供网站。你所使用的基于Debian的发布版不同,你所使用的软件仓库可能需要手工选择或是可以自动设置。你能从Debian官方网站得到完全的镜像列表。而很多非官方网站提供各种特殊用处的非官方软件包,固然,使用非官方软件包会有更多风险了。软件包都是为某1个基本的Debian发布版所准备的(从unstable到stable),并且划分到不同种别中(如 main contrib nonfree),这个是根据 debian 自由软件纲领而划分的(也就是常说的dfsg),由于美国限制加密软件出口,还有1个non-us种别。
apt方式安装:
1、打开1个终端,su -成root用户;
2、apt-cache search soft 注:soft是您要找的软件的名称或相干信息
3、假设2中找到了软件soft.version,则用apt-get install soft.version命令安
装软件 注:只要您能够上网,只需要用apt-cache search查找软件,用apt-get
install软件
经常使用的APT命令参数
apt-cache search package 搜索包
apt-cache show package 获得包的相干信息,如说明、大小、版本等
sudo apt-get install package 安装包
sudo apt-get install package - - reinstall 重新安装包
sudo apt-get -f install 修复安装"-f = --fix-missing"
sudo apt-get remove package 删除包
sudo apt-get remove package - - purge 删除包,包括删除配置文件等
sudo apt-get update 更新源sudo apt-get upgrade 更新已安装的包
sudo apt-get dist-upgrade 升级系统
sudo apt-get dselect-upgrade 使用 dselect 升级
apt-cache depends package 了解使用依赖
apt-cache rdepends package 是查看该包被哪些包依赖
sudo apt-get build-dep package 安装相干的编译环境
apt-get source package 下载该包的源代码
sudo apt-get clean && sudo apt-get autoclean 清算无用的包
sudo apt-get check 检查是不是有破坏的依赖
参考链接:http://soft.chinabyte.com/os/85/12332085.shtml
6、安装完软件后如何履行。 安装完软件后可以有好多种方法履行软件:
A、有些软件安装后会自动在利用程序列表里加上快捷键,和windows1样,到那里找就好了。
B、 如果在利用程序列表里找不到的话,可以直接在/开始/运行命令里输入命令:启动命令1般就是软件名,如firefox,realplay,xmms等
C、可以打开1个shell终端,输入软件名,和在“运行命令”里1样。如果不知道命令全程的话,可以输入开头的字母,然后按tab键查找,系统会自动显示以输入字母开头的所有命令/
D、你也能够直接到安装目录下运行启动文件,Linux下的可履行图标和shell终端图标很像
E、到/usr/bin目录里找安装的软件启动文件履行命令。Linux系统把所有可履行的文件命令在/usr/bin目录里都作了启动连接,你可以去那个目录寻觅你安装的文件的启动命令,双击启动。
下一篇 java- Java IO