一般Tarball 软件安装的建议事项 (如何移除?升级?)

一般Tarball 软件安装的建议事项 (如何移除?升级?)

或许你已经发现了也说不定,那就是为什么前一个小节里面,Tarball 要在 /usr/local/src 里面解压缩呢?基本上,在默认的情况下,原本的Linux distribution 释出安装的软件大多是在 /usr 里面的,而使用者自行安装的软件则建议放置在/usr/local 里面。这是考量到管理使用者所安装软件的便利性。

怎么说呢?我们晓得几乎每个软件都会提供线上说明的服务,那就是info 与 man 的功能。在默认的情况下, man 会去搜寻 /usr/local/man 里面的说明文件,因此,如果我们将软件安装在 /usr/local 底下的话,那么自然安装完成之后,该软件的说明文件就可以被找到了。此外,如果你所管理的主机其实是由多人共同管理的,或者是如同学校里面,一部主机是由学生管理的,但是学生总会毕业吧?所以需要进行交接,如果大家都将软件安装在/usr/local 底下,那么管理上不就显的特别的容易吗!

所以罗,通常我们会建议大家将自己安装的软件放置在 /usr/local 下,至於原始码(Tarball)则建议放置在 /usr/local/src (src 为 source 的缩写)底下啊。

再来,让我们先来看一看 Linux distribution 默认的安装软件的路径会用到哪些?我们以apache 这个软件来说明的话 (apache 是 WWW 服务器软件,详细的数据请参考服务器架设篇。你的系统不见得有装这个软件):

  • /etc/httpd
  • /usr/lib
  • /usr/bin
  • /usr/share/man

我们会发现软件的内容大致上是摆在 etc, lib, bin, man等目录当中,分别代表『配置档、函式库、运行档、线上说明档』。好了,那么你是以 tarball 来安装时呢?如果是放在默认的 /usr/local 里面,由於 /usr/local 原本就默认这几个目录了,所以你的数据就会被放在:

  • /usr/local/etc
  • /usr/local/bin
  • /usr/local/lib
  • /usr/local/man

但是如果你每个软件都选择在这个默认的路径下安装的话,那么所有的软件的文件都将放置在这四个目录当中,因此,如果你都安装在这个目录下的话,那么未来再想要升级或移除的时候,就会比较难以追查文件的来源罗!而如果你在安装的时候选择的是单独的目录,例如我将apache 安装在 /usr/local/apache 当中,那么你的文件目录就会变成:

  • /usr/local/apache/etc
  • /usr/local/apache/bin
  • /usr/local/apache/lib
  • /usr/local/apache/man

呵呵!单一软件的文件都在同一个目录之下,那么要移除该软件就简单的多了!只要将该目录移除即可视为该软件已经被移除罗!以上面为例,我想要移除apache 只要下达『rm -rf /usr/local/apache』就算移除这个软件啦!当然罗,实际安装的时候还是得视该软件的Makefile 里头的 install 资讯才能知道到底他的安装情况为何的。因为例如 sendmail的安装就很麻烦......

这个方式虽然有利於软件的移除,但不晓得你有没有发现,我们在运行某些命令的时候,与该命令是否在PATH 这个环境变量所记录的路径有关,以上面为例,我的 /usr/local/apache/bin肯定是不在 PATH 里面的,所以运行 apache 的命令就得要利用绝对路径了,否则就得将这个/usr/local/apache/bin 加入 PATH 里面。另外,那个 /usr/local/apache/man也需要加入 man page 搜寻的路径当中啊!

除此之外, Tarball 在升级的时候也是挺困扰的,怎么说呢?我们还是以 apache来说明好了。WWW 服务器为了考虑互动性,所以通常会将 PHP+MySQL+Apache 一起安装起来 (详细的资讯请参考服务器架设篇),果真如此的话,那么每个软件在安装的时候『都有一定的顺序与程序!』因为他们三者之间具有相关性,所以安装时必需要三者同时考虑到他们的函式库与相关的编译参数。

假设今天我只要升级 PHP 呢?有的时候因为只有涉及动态函式库的升级,那么我只要升级 PHP 即可!其他的部分或许影响不大。但是如果今天 PHP 需要重新编译的模块比较多,那么可能会连带的,连 Apache 这个程序也需要重新编译过才行!真是有点给他头痛的!没办法啦!使用tarball 确实有他的优点啦,但是在这方面,确实也有他一定的伤脑筋程度。

由於 Tarball 在升级与安装上面具有这些特色,亦即 Tarball 在反安装上面具有比较高的难度 (如果你没有好好规划的话~),所以,为了方便 Tarball 的管理,通常鸟哥会这样建议使用者:

  1. 最好将 tarball 的原始数据解压缩到 /usr/local/src 当中;

  2. 安装时,最好安装到 /usr/local 这个默认路径下;

  3. 考虑未来的反安装步骤,最好可以将每个软件单独的安装在 /usr/local 底下;

  4. 为安装到单独目录的软件之 man page 加入 man path 搜寻:
    如果你安装的软件放置到 /usr/local/software/ ,那么 man page 搜寻的配置中,可能就得要在 /etc/man.config 内的 40~50 行左右处,写入如下的一行:
    MANPATH /usr/local/software/man
    这样才可以使用 man 来查询该软件的线上文件罗!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值