LinuxSir.cn,穿越时空的Linuxsir!

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

如何让某个包不被--depclean删除(已解决)

[复制链接]
发表于 2009-1-8 22:49:59 | 显示全部楼层 |阅读模式
如何能把老内核留住呢?

  1. # emerge --depclean -p
  2. [color=red]!!! CONFIG_PROTECT is empty[/color]
  3. * Depclean may break link level dependencies.  Thus, it is
  4. * recommended to use a tool such as `revdep-rebuild` (from
  5. * app-portage/gentoolkit) in order to detect such breakage.
  6. *
  7. * Always study the list of packages to be cleaned for any obvious
  8. * mistakes. Packages that are part of the world set will always
  9. * be kept.  They can be manually added to this set with
  10. * `emerge --noreplace <atom>`.  Packages that are listed in
  11. * package.provided (see portage(5)) will be removed by
  12. * depclean, even if they are part of the world set.
  13. *
  14. * As a safety measure, depclean will not remove any packages
  15. * unless *all* required dependencies have been resolved.  As a
  16. * consequence, it is often necessary to run `emerge --update
  17. * --newuse --deep world` prior to depclean.

  18. Calculating dependencies... done!

  19. >>> These are the packages that would be unmerged:

  20. sys-kernel/gentoo-sources
  21.     selected: 2.6.26-r3 2.6.26-r4
  22.    [color=red]protected: none [/color]
  23.      omitted: 2.6.28

  24. >>> 'Selected' packages are slated for removal.
  25. >>> 'Protected' and 'omitted' packages will not be removed.

  26. Packages installed:   1103
  27. Packages in world:    128
  28. Packages in system:   51
  29. Required packages:    1101
  30. Number to remove:     2
复制代码
发表于 2009-1-8 22:55:24 | 显示全部楼层
官方WIKI上有吧..

好像是把 sys-kernel/gentoo-sources
加到一个文件中去..文件名记不住,你去查一下
回复 支持 反对

使用道具 举报

发表于 2009-1-8 23:50:27 | 显示全部楼层
是不是/etc/portage/package.mask?
我也是新人,错了别怪我。
回复 支持 反对

使用道具 举报

发表于 2009-1-9 05:14:34 | 显示全部楼层
Post by yourfriend;1935959
如何能把老内核留住呢?
  1. # emerge --depclean -p
  2. [color=red]!!! CONFIG_PROTECT is empty[/color]
  3. * Depclean may break link level dependencies.  Thus, it is
  4. * recommended to use a tool such as `revdep-rebuild` (from
  5. * app-portage/gentoolkit) in order to detect such breakage.
  6. *
  7. * Always study the list of packages to be cleaned for any obvious
  8. * mistakes. Packages that are part of the world set will always
  9. * be kept.  They can be manually added to this set with
  10. * `emerge --noreplace <atom>`.  Packages that are listed in
  11. * package.provided (see portage(5)) will be removed by
  12. * depclean, even if they are part of the world set.
  13. *
  14. * As a safety measure, depclean will not remove any packages
  15. * unless *all* required dependencies have been resolved.  As a
  16. * consequence, it is often necessary to run `emerge --update
  17. * --newuse --deep world` prior to depclean.
  18. Calculating dependencies... done!
  19. >>> These are the packages that would be unmerged:
  20. sys-kernel/gentoo-sources
  21.     selected: 2.6.26-r3 2.6.26-r4
  22.    [color=red]protected: none [/color]
  23.      omitted: 2.6.28
  24. >>> 'Selected' packages are slated for removal.
  25. >>> 'Protected' and 'omitted' packages will not be removed.
  26. Packages installed:   1103
  27. Packages in world:    128
  28. Packages in system:   51
  29. Required packages:    1101
  30. Number to remove:     2
复制代码

直接写到/var/lib/portage/world里面去:
  1. sys-kernel/gentoo-sources:2.6.26*
复制代码

不过我觉得不要依赖--depclean来除包。用它来决定那些包需要除,然后自己-C。
回复 支持 反对

使用道具 举报

发表于 2009-1-9 08:41:49 | 显示全部楼层
--depclean 之后他会自动检查依赖什么的,给你重新 emerge 需要的包。
回复 支持 反对

使用道具 举报

发表于 2009-1-9 08:54:15 | 显示全部楼层
emerge --noreplace  包名就行了
回复 支持 反对

使用道具 举报

发表于 2009-1-9 09:27:31 | 显示全部楼层
前段时间 emerge --depclean -av 也发现了,以前因为没几个无所谓,现在发现几个内核同时存在,gcc不同版本(4.1 4.3 包括arm ,mipsel) 等,就懒得去管了

回头看看四楼的这个方法
直接写到/var/lib/portage/world里面去:
代码:
sys-kernel/gentoo-sources:2.6.26*

回头报告结果
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-1-9 19:31:00 | 显示全部楼层
4楼、6楼的方法都可行,4楼是手动,6楼是自动。哈哈。
回复 支持 反对

使用道具 举报

发表于 2009-1-10 13:36:25 | 显示全部楼层
回来两台机子测试了
第一次在我的本本上
用 sys-kernel/gentoo-sources:2.6.25*
提示有错误
!!! Problems have been detected with your world file
!!! Please run emaint --check world
运行就提示这句有问题
然后改成
sys-kernel/gentoo-sources:2.6.25-*  后成功

然后在我的台式机上使用
sys-kernel/gentoo-sources:2.6.25-*  没反应
用sys-kernel/gentoo-sources:2.6.25* 也没提示错误,也没反应
最后
sys-kernel/gentoo-sources:2.6.25-r9  后成功
之前在本本上一边编辑world一边emerge -C 什么的,结果,world不见了,emerge -p --depclean 提示有一千多个包要remove, 好在还有 world~ ,cp 回去就好了
所以不要偷懒,一是备份好world,二是最好不要一边编辑一边XXOO (除了我应该没别人这么干的)


Checking world for problems
100% [========================================================================>]

'sys-kernel/gentoo-sources:2.6.28-*' is not installed

其实也没啥,大不了把版本号写全 注意一下带r? 还有不带的
回复 支持 反对

使用道具 举报

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

本版积分规则

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