Ubuntu用のバイナリをopenSUSE で動かす
By ribbon @
2022-12-03 00:00
この記事は openSUSE Advent Calendar 2022 の3日目です。
メーカー製のプロダクトの一部には、Windows/Mac だけではなくて Linux 向けの物を用意している場合があります。しかし、たまたま使おうとしたものが、Ubuntu 向けしかありませんでした。
そこで、Ubuntu 向けのバイナリ(dpkg として提供されている物) が openSUSE で動くかどうかを試してみました。
結論から言うと、できます。しかもやり方は難しくありません。
まず、Ubuntu 上で、openSUSE で動かしたいバイナリ(dpkg) をインストールします。この時、どこにインストールされたかを控えておきます。dpkg -deb -c dpkg名 とすれば一覧が表示されます。
次に、インストールされたファイルを全部まとめて openSUSE 側に持って行き、展開します。その後、展開したファイル中にあるターゲットのプログラムを起動すれば動作します。
たとえば、QNAP が提供している、QNAP NAS 一覧を表示したり、ログインしたりするためのツール QFinderPro で試してみましょう。Ubuntu 上では、dpkg の内容は
$ dpkg-deb -c QNAPQfinderProUbuntux64-7.8.2.0928.deb
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./usr/
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./usr/local/
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./usr/local/bin/
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./usr/local/bin/QNAP/
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/
-rw-rw-r-- qnap/qnap 5587 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/cs.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6546 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/da.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5731 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/de.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 13337 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/el.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5497 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/en.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5847 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/es.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6431 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/fi.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5945 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/fr.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6025 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/hu.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5752 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/it.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6276 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/ja.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 38927 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/ko.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6498 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/nl.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6454 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/nn.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5714 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/pl.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5700 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/pt.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5716 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/ro.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 7367 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/ru.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6516 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/sv.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 8952 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/th.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5696 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/tr.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 5093 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/zhcn.UEPConsentForm.htm
-rw-rw-r-- qnap/qnap 6582 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/Docs/zhtw.UEPConsentForm.htm
drwxrwxr-x qnap/qnap 0 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/License/
-rw-rw-r-- qnap/qnap 94964 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/License/QfinderThirdPartySoftwareNotices.htm
-rwxrwxr-x qnap/qnap 20314824 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/QfinderPro
-rwxrwxr-x qnap/qnap 274 2022-09-28 18:55 ./usr/local/bin/QNAP/QfinderPro/QfinderPro.sh
(以下略)
となっています。ですので、/usr/local/bin/QNAP 配下やその他を何らかの手段で openSUSE 側に持って行き、展開します。あとは、 /usr/local/bin/QNAP/QfinderPro/QfinderPro.sh を実行すれば、Ubuntu 向けとして提供されているプログラムが openSUSE でも動きます。