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

How to install Tresorit on Freebsd to use Linux compat

编辑以更适合 Whosebug:

我有一个二进制 shell 脚本作为 tar 球的自提取器。它最初是 tar 为 Linux 获取的,但我试图在 FreeBSD 上 运行 它。给我适合的主线是:

tail -n$SKIP "[=11=]" | tar xz -C /path/to/install

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

的压缩格式

我可以使用什么技术来检查 header 并弄清楚如何解压缩这个二进制 blob? tail -n 在 BSD 和 Linux 之间的工作方式是否不同?

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

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

tail -n92 tresorit_installer.run | tar xzf -

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

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

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

这在 Linux 和 BSD 上是一样的。