擅长:python、mysql、java
<p>j3ll3,在Ubuntu(或任何基于DPKG的Linux操作系统)中,您可以通过键入</p>
<pre><code>dpkg -S /path/to/XYZ
</code></pre>
<p>例如,在Ubuntu9.10中</p>
<pre><code>dpkg -S /usr/lib/python2.5/lib-dynload/gdbm.so
</code></pre>
<p>回报</p>
<pre><code>python-gdbm: /usr/lib/python2.5/lib-dynload/gdbm.so
</code></pre>
<p>您可以通过键入</p>
<pre><code>apt-cache show python-gdbm
</code></pre>
<p>也就是说python gdbm为python提供了“GNU dbm数据库支持”。
更有趣的是,如果你输入</p>
<pre><code>dpkg --listfiles python-gdbm
</code></pre>
<p>您将看到python gdbm安装的所有文件的列表:</p>
<pre><code>...
/usr/lib/python2.4
/usr/lib/python2.4/lib-dynload
/usr/lib/python2.4/lib-dynload/gdbm.so
/usr/lib/python2.5
/usr/lib/python2.5/lib-dynload
/usr/lib/python2.5/lib-dynload/gdbm.so
/usr/lib/python2.6
/usr/lib/python2.6/lib-dynload
/usr/lib/python2.6/lib-dynload/gdbm.so
...
</code></pre>
<p>看起来这个包安装了3个库,每个版本的python都有一个。</p>
<p>Python2.6是Ubuntu 9.10中python的默认版本,但是也可以安装
Python2.4、2.5和/或3.0。除非这样做,否则只使用/usr/lib/python2.6/lib-dynload/gdbm.so,其他的只是在浪费空间。</p>
<p>由于python2.4、2.5、3.0中不需要的文件并不是很大,包维护人员可能觉得为python的每个版本发布一个包比发布一个包更容易。</p>
<p>但是,除非你知道如何修复将来的apt-get错误,否则我建议不要手动删除Ubuntu中由软件包安装的任何文件。</p>