zoukankan      html  css  js  c++  java
  • Linux软件间的依赖关系(转)

    Linux中的软件大部分是零碎的,其粒度比windows的小很多,软件之间的依赖关系很强烈,下面是自己的一些理解:

    一、Linux中的软件依赖
    Linux中的软件依赖关系成一颗拓扑树结构,比如A直接或间接依赖B,那么B就不可能直接或间接依赖A。试想从时间上A、B必然有一个先出现,而先出现的不可能依赖于后出现的;并且如果A与B互相依赖则就是“鸡与蛋”的问题,因此必然有一个先出现而另一个依赖于先者。


    二、Linux的软件安装与卸载
    (1)安装软件A必须率先安装A依赖的所有软件;卸载软件A则必须率先卸载依赖A的所有软件。如下图:
    a
       b
       c
    b,c依赖于a,那么安装b或c都先要确保a的存在;同时卸载a必须确保b和c都已经被卸载。
    (2)卸载A不代表同时卸载A所依赖的所有无用软件,比如:B<--A,卸载A以后B就没用了(因为没有其他软件再依赖B了),Linux默认不卸载B,但可以使用特殊的参数让系统这么做。
    Ubuntu下,apt-get remove就是一般的卸载,而apt-get autoremove则是同时卸载其所依赖的无用软件
    --------------------------------
    autoremove的伪代码:
    autoremove_soft(entity x) {
        remove x;
        for each p in x->parent {
            p->child_num--;
            if(p->child_num == 0)
                autoremove_soft(p);
        }
    }
    ----------------------------------
    sudo apt-get autoclean 清理旧版本的软件缓存
    sudo apt-get clean 清理所有软件缓存
    sudo apt-get remove softname1 softname2 ...
    sudo apt-get --purge remove softname1 softname2 ...(同时清除配置)
    sudo apt-get autoremove 删除系统不再使用的孤立软件

    转自:http://www.linuxidc.com/Linux/2010-08/27972.htm

  • 相关阅读:
    while($info = mysql_fetch_assoc($result))
    网站问题搜索
    call apply js
    函数和变量名为啥不能包含
    js 函数 理解
    smtp 4个点
    使用视频作为网页背景的技术探讨
    php表达式内含表达式
    hook_theme作用小思考
    php中引用&的真正理解-变量引用、函数引用、对象引用
  • 原文地址:https://www.cnblogs.com/jimmy1989/p/4867182.html
Copyright © 2011-2022 走看看