dpkg:警告:删除目录时/ usr / local不是空的,所以不删除

时间:2010-09-13 20:56:09

标签: debian dpkg

我使用以下文件夹结构构建并安装了debian软件包:

  • MYPROG
    • DEBIAN
      • 控制
    • USR
      • 本地
          • myprog.sh

...使用以下命令:

  

dpkg -b myprog / myprog.deb&& dpkg -i myprog.deb

当我现在通过输入以下内容删除包时:

  

dpkg -r myprog

..我收到了以下警告:

  

dpkg:警告:在删除myprog时,目录'/ usr / local'不为空,因此不会删除。

我认为这是一个每天的情景,我怎么能避免警告?

Greets Thorsten!

#Edit

我尝试将文件安装到/ bin而不是/ usr / local / bin,并在删除时没有收到警告。似乎是这样,/ usr / local / ..文件夹不会被dpkg视为系统文件夹(?)。

2 个答案:

答案 0 :(得分:8)

没错 - 软件包绝不应该通过Filesystem Hierarchy Standard触及/usr/local目录,it's reserved for system administrators,而是它们的责任区。

答案 1 :(得分:0)

根据this post,要避免出现警告,要创建一个“核心自定义”/虚拟包,它将安装在/ opt中,并由主包提供。

因此,当您卸载主程序包时,至少您的虚拟程序包将保留在/ opt中,而dpkg不会发出警告。

您也可以将该虚拟包用作元数据包来安装您喜欢的所有常规包。