Debian dpkg给出错误“;是一个目录";
我正在尝试创建一个Debain.deb包。已成功创建程序包,但尝试安装时出现以下错误:Debian dpkg给出错误“;是一个目录";,debian,packaging,dpkg,Debian,Packaging,Dpkg,我正在尝试创建一个Debain.deb包。已成功创建程序包,但尝试安装时出现以下错误: unable to open file '/var/lib/dpkg/tmp.ci//opt': Is a directory 包目录结构为: . └── DEBIAN ├── control ├── opt │ └── myDir │ └── myfile ├── postinst └── preinst 在preinst中,我已经-mk
unable to open file '/var/lib/dpkg/tmp.ci//opt': Is a directory
包目录结构为:
.
└── DEBIAN
├── control
├── opt
│ └── myDir
│ └── myfile
├── postinst
└── preinst
在preinst中,我已经-mkdir-p/opt/myDir
postinst为空
如果我尝试在其他主机上安装软件包,则会出现以下错误:
“opt”的包控制信息rmdir没有说不是dir:Directory
不空
有什么想法吗?您的目录布局错误。应该是这样的:
.
├── opt
│ └── myDir
│ └── myfile
└── DEBIAN
├── control
├── postinst
└── preinst
构建软件包后,您可以使用以下工具测试其格式:
我也遇到了你和林寻帮我解决的问题。首先,你不想在preinst中创建目录。Dpkg将根据需要创建此功能。其次,您不想在/opt中安装Debian软件包。这违反了Debian政策和FHS。话虽如此,我不知道您看到错误的确切原因。请发布您的整个
preinst
脚本。
lintian my-package.deb