我正在尝试安装Oracle SQL Developer
到 Debian Linux 服务器上。
我首先从 Oracle 网站下载了一个包;
sqldeveloper-4.0.3.16.84-1.noarch.rpm
然后我调用以下命令将其打包成一个.deb
包。
alien sqldeveloper-4.0.3.16.84-1.noarch.rpm
此命令成功运行并创建了新文件:
sqldeveloper_4.0.3.16.84-2_all.deb
为了安装这个包,我调用了以下命令:
dpkg -i sqldeveloper_4.0.0.12.27-2_all.deb
输出以下内容:
dpkg: warning: downgrading sqldeveloper from 4.0.3.16.84+0.2.3-1 to 4.0.3.16.84-2.
(Reading database ... 33017 files and directories currently installed.)
Preparing to replace sqldeveloper 4.0.3.16.84+0.2.3-1 (using sqldeveloper_4.0.3.16.84-2_all.deb) ...
Unpacking replacement sqldeveloper ...
dpkg-deb (subprocess): short read on buffer copy for failed to write to pipe in copy
dpkg-deb: subprocess paste returned error exit status 2
dpkg: error processing sqldeveloper_4.0.3.16.84-2_all.deb (--install):
short read on buffer copy for backend dpkg-deb during `./opt/sqldeveloper/sqldeveloper/extensions/oracle.datamodeler/lib/pdfbox-app-1.8.0.jar'
Errors were encountered while processing:
sqldeveloper_4.0.3.16.84-2_all.deb
我已经通过 Google 尝试找到此问题的解决方案,并且遇到了类似的错误问题和--configure
--uninstall but nothing for
--install`。
答案1
您已使用过外星人将包格式从 转换.rpm
为.deb
.
在大多数情况下,该工具可以完美运行。但构建可安装包的情况很少会失败。特别是如果 .rpm 包中包含一些安装或配置脚本(类似于 .deb 包中的安装前和安装后/删除脚本)。
你没有告诉,运行时是否输出一些错误或警告外星人。
尽管如此,它仍然可以“成功运行”并产生空包或破损包……
如果有一些错误或警告,请仔细查看它们。这些消息可能会指向正确的方向。但对于以下内容,我假设没有输出错误外星人。
查找问题所在的第一个检查是提取两个包格式版本并比较内容。
首先制作两个临时目录
mkdir /tmp/sqldeveloper.deb /tmp/sqldeveloper.rpm
然后解压.deb
包
dpkg-deb -X sqldeveloper_4.0.0.12.27-2_all.deb /tmp/sqldeveloper.deb
以及rpm包
cd /tmp/sqldeveloper.rpm
rpm2cpio sqldeveloper-4.0.3.16.84-1.noarch.rpm | cpio -idmv
然后您可以将目录与差异
diff . /tmp/sqldeveloper.deb
如果 .deb 目录中缺少文件,则该包已被破坏外星人。也许可以向该工具的开发人员寻求帮助。
但是我如何阅读您发布的输出消息dpkg -i
,包装本身存在一些问题,并且文件
./opt/sqldeveloper/sqldeveloper/extensions/oracle.datamodeler/lib/pdfbox-app-1.8.0.jar
无法提取。也许父目录丢失或者存在一些有线访问权限问题。
.deb
我认为当您尝试像上面所示手动提取存档时会出现问题。
顺便说一句:它是一个java软件,可供下载的“其他平台”版本是一个zip存档。当解压到您的主目录中时,它可能无需安装即可运行。