如何在 Freebsd 上安装 Tresorit 以使用 Linux 兼容

Posted

技术标签:

【中文标题】如何在 Freebsd 上安装 Tresorit 以使用 Linux 兼容【英文标题】:How to install Tresorit on Freebsd to use Linux compat 【发布时间】:2022-01-16 14:47:20 【问题描述】:

经过编辑以使其更适合 ***:

我有一个二进制 shell 脚本,它充当 tarball 的自解压器。它最初是针对 Linux 的,但我试图在 FreeBSD 上运行它。适合我的主线是:

tail -n$SKIP "$0" | tar xz -C /path/to/install

我遇到了关于“无法打开 /dev/sda0”的错误,我通过将 tar 命令更改为 xzf - 以强制它从标准输入读取来解决该错误。但是,它现在抱怨“无法识别的存档格式”,这表明它无法确定二进制 tarball 的压缩格式。

我可以使用哪些技术来检查该标头并找出如何解压缩此二进制 blob? tail -n 在 BSD 和 Linux 之间的工作方式是否不同?

原问题: 我正在尝试在我的 FBSD13 机器上安装 Tresorit (https://tresorit.com/download/linux) 的 linux 安装程序。这是一个二进制 sh 脚本,其中前 92 行是 shell,其余的是某种压缩的 tarball。首先,我必须将我自己创建的uname 首先放在路径中,因为它正在检查uname -m 是x86_64 还是i686。 FBSD 返回 amd64。更改脚本会使它变得无用,因为它会检查自己的签名。无论如何,这很容易绕过。接下来它抱怨从标准输入读取压缩包时无法打开“/dev/sda0”。通过指定“-f -”来强制它从标准输入读取也很容易“修复”。

我一直在尝试执行安装行。是这样的:

tail -n92 tresorit_installer.run | tar xzf -

现在它抱怨“tar:打开存档时出错:无法识别的存档格式”。这令人沮丧。它必须是 gzip/bzip/xz 或类似的东西。如何确定压缩格式并进入下一步?

我相当肯定,如果我可以解压缩它,那么我可以安装程序并让 FBSD linux compat 工作。对下一步做什么有什么建议吗?

【问题讨论】:

SO 是一个错误的地方寻求此类问题的帮助。试试freebsd-ports 邮件列表、EFNet 上的#bsdports IRC 频道或我们的 Discord discord.gg/YPbXneca 你需要有人来解决这个问题。 【参考方案1】:

-n92(或-92,因为-n 是默认值)为您提供文件的最后 92 行。为了在第 93 行开始(跳过前 92 行),您需要一个加号:-n+93

这在 Linux 和 BSD 上是一样的。

【讨论】:

谢谢,这让我通过了这一步。原始问题包含一个转录错误,其中缺少“+”。我应该复制/粘贴但没有。无论如何,我现在有一个可以发送给上游供应商的补丁,这将使该产品能够成功安装在 FBSD 上。成功!

以上是关于如何在 Freebsd 上安装 Tresorit 以使用 Linux 兼容的主要内容,如果未能解决你的问题,请参考以下文章

在 FreeBSD 12 上安装 Gitea

sh 在FreeBSD上安装和配置MySQL

在FreeBSD上安装Bugzilla

在FreeBSD上安装Bugzilla

FreeBSD 安装主管

freebsd7.0安装完成怎么起图形界面?