Ubuntu 18.04を使用しており、次のコマンドを使用してMatlab ISOをインストールしようとしています。
sudo mount R2018a_glnxa64_dvd1.iso /mnt/cdrom -o loop
ただし、端末の応答は次のとおりです。
mount: /mnt/cdrom: failed to setup loop device for R2018a_glnxa64_dvd1.iso.
これが何を意味するのか、どうやって進むべきかはよくわかりません。
答え1
この問題に直面したとき、sshfsマウントディレクトリからisoイメージをマウントしようとしました。 isoイメージをローカルファイルシステムにコピーした後は機能します。
答え2
まず/mnt/cdrom
ディレクトリを作成します。
mkdir -p /mnt/cdrom
次に、iso イメージをマウントします。絶対画像パスを含める、例えば、/home/user/R2018a_glnxa64_dvd1.iso
次の代わりにR2018a_glnxa64_dvd1.iso
:
sudo mount -o loop /home/user/R2018a_glnxa64_dvd1.iso /mnt/cdrom
ディレクトリが/mnt/cdrom
存在する場合は、ISOイメージに関する追加情報を入手してください。
file R2018a_glnxa64_dvd1.iso
次のように明示的なファイルシステムタイプを使用してマウントしてみてください。
sudo mount -o loop -t iso9660 /home/user/R2018a_glnxa64_dvd1.iso /mnt/cdrom
また読んでくださいAskubuntuへの私の答え、画像にブートセクタがある可能性があり、offset
最初に計算する必要があるオプションを使用してマウントします。
答え3
私は非常に似た問題に直面しました。幸いなことに、@ user3049102の答えが私を正しい方向に導いて発見しました。説明する。
問題は、イメージファイルが保存されるファイルシステムにあります(私の考えでは、これがあなたの場合かもしれません)。
私の問題は、FUSEファイルシステムプロトタイプのISOイメージにあります。私が実装していないのか、それとも別のものがあるのかはわかりません。実際、質問は非常に簡単でよく説明されていますが、FUSEベースのファイルシステムに固有のものです(上記のように、sshfs
現在の実装ではFUSEを使用しています)。セキュリティ上の理由から、FUSEはファイルシステムをマウントしたユーザー以外のすべてのユーザーにマウントされたファイルシステムのファイルへのアクセスを拒否します。特定のFUSEインストールオプションによってこの動作が変更されることがあります。 - 説明FUSEのgihub- 章参照「セキュリティ影響」。
私はこれが他のファイルシステムでも問題になる可能性があると思います。したがって、sudo mount ... -o loop
一般的なエラーメッセージで失敗した場合は、最初にすべきことは、root
マウントされたイメージファイルにアクセスできることを確認することです。次に、画像が保存されているファイルシステムに特定の属性/制限がないことを確認します。これにより、保存されたファイルがループデバイスとして構成されない可能性があります。
の答えで述べたように、sshfs
最も簡単な解決策は、ファイルをもう少し「ローカル」ファイルシステムにコピーするか、少なくともISOイメージの場合は例を使用することです。fuseiso
同じユーザーでイメージをインストールします。