LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1859|回复: 10

Debian apt 如何不安装其中一些组件

[复制链接]
发表于 2009-10-9 12:34:14 | 显示全部楼层 |阅读模式
apt-get install openjdk 的时候,机器提示会安装一些另外的包,比如 pulse 相关的包,但是我不想安装 pulse ,有什么命令可以将提示中不想安装的包剔除掉?
发表于 2009-10-9 13:56:07 | 显示全部楼层
安装后再删掉。
回复 支持 反对

使用道具 举报

发表于 2009-10-9 14:25:32 | 显示全部楼层
Post by sdpq;2034524
安装后再删掉。


更新系统还是会安装上。

没有办法,Debian的默认打包就是这么依赖的。

其他发行版可以:
1. slackware不检测依赖
2. gentoo的USE控制
回复 支持 反对

使用道具 举报

发表于 2009-10-10 07:32:11 | 显示全部楼层
楼主是时候学习使用 dpkg 命令了
回复 支持 反对

使用道具 举报

发表于 2009-10-10 10:50:22 | 显示全部楼层
deb 包所谓的依赖有这么几种

Pre-Depends
极强的依赖,一般碰不到。这种是绝对不能破坏的,除非你认为开发者都是傻子。

Depends
普通的依赖,开发者认为是不能破坏的。如果你对开发很熟,明确知道自己在做什么,可以用 dpkg 重新打包修改依赖,上面版主说的是这个。

Recommends
中文翻译为推荐,严格讲不算依赖。apt 工具在检测到 Recommends 时默认会安装,然后再删除不影响原软件。上面 sdpq 说的是这种,其实可以用 sudo apt-get --no-install-recommends install foo 来忽略这种程序,用 sudo apt-get dist-upgrade --no-install-recommends 避免被忽略的程序再次安装。

Suggests
中文翻译为建议,基本上相当宽松的联系。apt 会忽略这个字段,aptitude 好像会默认安装。


Squeeze 中的 openjdk-6-jre 依赖 libpulse0 (>= 0.9.15~test5) 并推荐 pulseaudio (>= 0.9.12) ,具体要砍掉哪个看你的需求。


依赖介绍
http://www.debian.org/doc/manuals/maint-guide/ch-dreq.zh-cn.html
打包方法
http://debian.linuxsir.cn/doc/in ... _build_package.html
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-11 12:15:10 | 显示全部楼层
谢谢几位,又学到东西了
回复 支持 反对

使用道具 举报

发表于 2009-10-12 16:13:48 | 显示全部楼层
Post by AutoXBC;2034881
deb 包所谓的依赖有这么几种

Pre-Depends
极强的依赖,一般碰不到。这种是绝对不能破坏的,除非你认为开发者都是傻子。

Depends
普通的依赖,开发者认为是不能破坏的。如果你对开发很熟,明确知道自己在做什么,可以用 dpkg 重新打包修改依赖,上面版主说的是这个。

Recommends
中文翻译为推荐,严格讲不算依赖。apt 工具在检测到 Recommends 时默认会安装,然后再删除不影响原软件。上面 sdpq 说的是这种,其实可以用 sudo apt-get --no-install-recommends install foo 来忽略这种程序,用 sudo apt-get dist-upgrade --no-install-recommends 避免被忽略的程序再次安装。

Suggests
中文翻译为建议,基本上相当宽松的联系。apt 会忽略这个字段,aptitude 好像会默认安装。


Squeeze 中的 openjdk-6-jre 依赖 libpulse0 (>= 0.9.15~test5) 并推荐 pulseaudio (>= 0.9.12) ,具体要砍掉哪个看你的需求。


依赖介绍
http://www.debian.org/doc/manuals/maint-guide/ch-dreq.zh-cn.html
打包方法
http://debian.linuxsir.cn/doc/in ... _build_package.html


占个位,学习一下
回复 支持 反对

使用道具 举报

发表于 2009-10-13 15:25:02 | 显示全部楼层
Post by zhou3345;2034535
更新系统还是会安装上。

没有办法,Debian的默认打包就是这么依赖的。

其他发行版可以:
1. slackware不检测依赖
2. gentoo的USE控制


:Music:debian有个最小依赖开关,用那个跟gentoo差不多的,有些依赖更少(不用编译依赖)

  1. cat /etc/apt/apt.conf.d/06-norecommends
  2. {
  3. Install-Recommends "false";
  4. Install-Suggests "false";
  5. }
复制代码
回复 支持 反对

使用道具 举报

发表于 2011-3-8 20:08:31 | 显示全部楼层
还管用吗?
设置后运行的结果是
E:Syntax  error /etc/apt/apt.conf.d/06-revommends:5:Extra junk after value .
回复 支持 反对

使用道具 举报

发表于 2011-3-9 00:40:44 | 显示全部楼层
Post by zswlb9999;2130305
还管用吗?
设置后运行的结果是
E:Syntax  error /etc/apt/apt.conf.d/06-revommends:5:Extra junk after value .
应该管用吧,下面是我的配置
  1. cat /etc/apt/apt.conf.d/90no-recommended
  2. APT
  3. {
  4.     Install-Recommends    False;
  5.     AutoRemove
  6.     {
  7.         RecommendsImportant    0;
  8.     }
  9. };
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表