目录
区别和不同
对于使用度不高的用户来说区别不大,最大的区别就是centos
用yum
命令,debian/ubuntu
用apt-get
命令,常用的软件包应该是都有的可以直接运行执行使用。在国内centos文档相对多一些,但是如果翻阅一些主机商的专属文档或者海外的技术文章,发现使用debian和ubuntu更多一些。
如果深入一些使用我们会发现centos有些软件不能直接yum,则需要下载源然后编译安装才可以,而debian或者ubuntu自带的软件软件直接就可以apt安装成功,很方便。Ubuntu是在 Debian的unstable版本加强而来,Ubuntu拥有Debian的优点,且自身也再加强,包括我们常用的Linux桌面系统,一般都是Ubuntu。
redhat系列
redhat系列的势力大概有以下几个:RHEL(redhat enterprise linux)、Fedora core、centos。
- RHEL:就是redhat公司发行的收费版,非常稳定。
- Fedora:就是redhat的桌面版本,界面优雅,功能和工具版本都非常靠前,但不是很稳定。
- centos:redhat的社区版,功能和RHEL类似,但免费。
- redhat系列的包管理方式采用的是:基于RPM包的YUM包管理方式。
- redhat系列的包分发方式采用的是:编译好的二进制文件。
- redhat这个派系的特点是:资料多,很多网上教程都是基于centos讲的。
debian系列
- debian是社区类Linux发展的典范,是迄今为止最遵循GNU规范的Linux系统,该系列主要包含:debian和Ubuntu。
- debian分三个branch:stable、testing、unstable。unstable有最新的软件包,但可能会有bug,一般适合桌面用户。testing相对更加稳定,也支持不少新技术。stable非常稳定,但软件包可能就比较过时了。
- debian最具特色的是apt-get/dpkg包管理方式,其实redhat的YUM也是在模仿debian的apt方式,但在二进制文件发行方式中,apt应该是最好的了。
- debian特点:有丰富的社区,有问题可以去里面请教。
- Ubuntu:Ubuntu是一个拥有debian所有的优点,以及自己所加强的优点的近乎完美的Linux桌面系统。
如何选择
CentOS、Debian,还是Ubuntu系统,当然还有一些其他系统,都有用户在使用的,相对而言CentOS国内的文档多一些,适合入门用户使用。但是,Debian占用资源是比较少的,早年VPS内存小的时候一般都使用Debian Mini版本,毕竟从体积上是比较小的。
同时,我们还需要看所安装软件的支持,比如有些软件主推支持CentOS系统,比如宝塔面板开始好像只兼容CentOS,虽然如今也支持Debian/Ubunut,但是之前老左也测试过,发现并不是太好,所以遇到这个情况,我们只能选择兼容最好的系统。
如果我们仅仅是用来建站用途的,我们选择一个熟悉的就可以了,如果我们趋于开发用途,建议可以选择Debian或者ubuntu,毕竟安装软件直接一键安装确实太方便。
安装软件的方式-在线安装
debian/ubuntu apt-get
- apt-get update
- apt-get install 软件名
apt-get 方式,那么它的工作原理简单说明一下,apt-get相关的有两个重要文件:
- 是/etc/apt/sources.list,
- 是/var/lib/apt/lists/目录.
#通过更新源安装软件
echo "deb https://mirrors.aliyun.com/debian stable main contrib non-free" >>/etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/debian stable-updates main contrib non-free" >>/etc/apt/sources.list
apt-get update
apt-get install vim
当我们执行apt-get update程序分析sources.list看这个文件里是否有对应的Packages/Sources/Release列表文件,如果有更新则下载之,存入/var/lib/apt/lists/目录(其实就是保持与当前系统版本软件源表最新);apt-get install 安装相应的包 ,下载并安装。
这种方式的好处在于:如果你想要加载的应用需要依赖另一个应用程序才能正常工作,apt-get会帮你找到并加载所需的程序库或应用代码,这种方式是比较常用的的。
centos yum
Yum(全称为 Yellow dog Updater, Modified)是一个rpm包管理器。它能够从指定的服务器上自动下载RPM包并安装,可以自动处理包之间的依赖性关系,并且一次性安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum仓库配置文件:/etc/yum.repos.d
目录下存放着描述各yum仓库基本信息的文件。
一般,只要我们的网络连通,上面的yum源都是合法的yum源。通常在有网的情况下,会默认从"Base"yum源中下载我们需要的rpm包以及各种依赖包进行自动安装,在没有网络的情况下,则会选择"Media"yum源——本地光盘yum源。
仓库相关命令
- 启用仓库:yum-config-manager --enable "repo id"
- 禁用仓库:yum-config-manager --disable "repo id "
- 显示仓库列表:yum repolist
- 显示仓库中所有的软件列表:yum list
软件的安装卸载与更新
- 安装:yum -y install package1 加上参数y后,所有的依赖均自动安装
- 重新安装:yum reinstall package
- 卸载:yum remove package
- 更新:yum update package
- 查找是否已安装某个软件包:yum search package
- 降级:yum downgrage package
- 检查可用的更新:yum check-update
- 查询软件包的依赖:yum deplist package1
缓存命令
- 清除缓存:yum clean all
- 构建缓存:yum makecache
安装软件的方式-线下安装
所以叫线下的安装方式,也就是说你要把软件下载到本地去安装。一般我们下载的文件后缀名都是zip、tar.gz等压缩包,解压后会看到rpm、bin、deb、run之类扩展名文件。很多软件都会提供不同LINUX版本的安装格式,你可以根据自己的系统下载不同扩展名的软件。
rpm安装包
这时一款老牌的安装格式,是红帽创建的安装格式,现在已成为一种标准,常用在opensuse/turbo/redhat版本),安装方法rpm -ivh 软件名.rpm (如果只是安装一个i参数就够了,如果还要看安装进度和软件信息就加个vh)
deb安装包
DEB是Debian软件包格式的文件扩展名,常用在centos/ubuntu,在苹果系统里也常见此安装方式。安装方法:dpkg -i 软件名.deb
run安装包
以QT(一种编程工具)的安装文件为例,
- 授权: chmod x qt-unified-linux-x64-2.0.2-2-online.run
- 执行:./qt-unified-linux-x64-2.0.2-2-online.run即可安装。
bin安装包
bin包是一个自解压格式的安装包,要想执行它,需要先赋予它可执行的权限。
以安装jdk为例)# chmod x jdk-6u21-linux-i586.bin# ./jdk-6u21-linux-i586.bin
编译后安装方式
举例安装nagios插件(nagios是一种开源的监控软件,需要多种插件支持监控模块)
- cd /tmp/nagios-plugins-* //先进入目录
- ./configure --with-nagios-user=nagios --with-nagios-group=nagios // 配置,即安装的用户安装的路径都可在此设置,这一步一般用来生成 Makefile,为下一步的编译做准备
- make 编译过程如果 在 make 过程中出现 error ,你就要记下错误代码,缺少什么包就按照什么包。
- make install 如果make无问题就可以直接安装了。
这种安装方法的好处是你可以自定义安装路径、安装账号等参数,常见开源平台下载的源码安装方式。
其它
还有一些软件解压后生成的文件夹内包含很多文件,一般文件夹内有install.sh、setup.py等安装文件方式,此种方式类似windows的exe安装方式,你需要先授权该文件的可执行权限,在执行安装。以上基本上囊括了所有的Linux环境下的软件安装方式,供各位参考。