web-dev-qa-db-ja.com

sshfsとMacFUSEを使用してボリュームをマウントしようとすると、「操作は許可されません」と表示されるのはなぜですか?

MacFUSEをインストールし( http://code.google.com/p/macfuse/downloads/list から)、再起動してからsshfs-static-leopard.gzをダウンロードし、 sshfs-static-leopardを/ usr/sbin/sshfsに移動しました(それにchmod 755を実行しました)。

私は、Ubuntuマシンを(ホスト名 "daryls"で)構成しているので、パスワードなしでsshを実行できます。しかし、sshfs daryls:/ /Volumes/daryls -oauto_cache,reconnect,volname=darylsを試してみると、次のようになります。

warning: ssh nodelay workaround disabled
mount_fusefs: failed to mount /Volumes/daryls@/dev/Fuse0: Operation not permitted

許可されていない操作は何ですか?

Mac OS X 10.6.7を実行していますか? sshfs-static-leopard.gzがSnow Leopardで機能しないのでしょうか?それとも32ビットモードでしか機能しないのでしょうか? Mac OS Xを64ビットモードで起動しているかどうかを確認するにはどうすればよいですか?

更新:金曜日に私はUbuntu 11.04でこれを試しましたVM(VMware Fusion 3.1.3で実行中)。I私は通常のmkdir /Volumes/ubuntu(Sudoなし)を実行し、その後にsshfs ubuntu:/ /Volumes/ubuntu -oauto_cache,reconnect,volname=ubuntuを実行しただけで、それはうまくいきました。

しかし、今日は同じmount_fusefs: failed to mount /Volumes/ubuntu@/dev/Fuse0: Operation not permittedエラーが発生します。

Sudoで/ Volumes/ubuntuディレクトリを作成してみましたが、違いはありませんでした。次に、Sudo sshfs ubuntu:/ /Volumes/ubuntu -oauto_cache,reconnect,volname=ubuntuを実行してみました。

warning: ssh nodelay workaround disabled
remote Host has disconnected

しかし、ssh ubuntuは機能します。

なぜそれが機能していたのか私にはわかりませんが、今は機能しません。念のため、MacBook Airを再起動してみます。

Update#2:再起動後、実行しました:

$ cd /Volumes/
$ mkdir ubuntu
$ sshfs ubuntu:/ /Volumes/ubuntu -oauto_cache,reconnect,volname=ubuntu
warning: ssh nodelay workaround disabled

出来た。

ですから、私の質問にはまだ答えがありません。しかし、私には回避策があるかもしれません。

ところで:システムプロファイラーの(システムソフトウェアの概要)の下にある「64-しかしカーネルと拡張機能」の反対側に(いいえ)と表示されています(私は Handyman5 の指示に従って開きました)。

Update#3:「操作は許可されていません」エラーが発生した後、再起動して再度取得しました。 (つまり、再起動は信頼できる回避策ではありません。)

Update#4:これは機能していて、sshfsをアンマウントせずにUbuntuを再起動するというミスを犯しましたVMボリューム。「操作は許可されていません」というエラーが再び表示されます(/ Volumesディレクトリが何らかのロック状態のままになっている可能性があります)。

以下の Handyman5 のコメントを読んだ後、 http://hints.macworld.com/article.php?story=20031017061722471 とchflagsのmanページ。私はそれから:

$ ls -lOd /Volumes/
drwxrwxrwt@ 5 root  admin  hidden 170 Jul 15 13:22 /Volumes/
$ ls -lOd /Volumes/ubuntu/
drwxr-xr-x+ 2 root  admin  - 68 Jul 15 13:08 /Volumes/ubuntu/

(chflagsのマニュアルページによると、フラグを表示するlsオプションは-oではなく-Oです。これはlsのマニュアルページで確認されています。)

ご覧のとおり、フラグは表示されていません。 (「@」と「+」は何を意味しているのだろうと思いますが、 を読んでいますhttp://lists.Apple.com/archives/Macos-x-server/2008/Jan/msg00138.html xattrで遊んだが、何も学習しなかった。)

必死でSudo chflags nouchg /VolumesSudo chflags nouchg /Volumes/ubuntuを試しましたが、「操作は許可されていません」というエラーが表示されます。

更新#5:最初にこれを投稿してからしばらく経ちましたが、IIRCはすべて、回避しようとした私の問題から生じました MacFusion がMacFUSEおよびSSHFSで動作しない(SSHFSを使用してUbuntu VMで実行されているボリュームをマウントしようとした場合)。私は最近、 Fuse for OS X について学びました。インストールして再インストールしました [〜#〜] sshfs [〜#〜] 、そしてMacFusionは問題なく動作しています。

4
Daryl Spitzer

ユーザーアカウントが/Volumesディレクトリにボリュームを直接マウントできない可能性があります。 sshfsを自分のホームディレクトリ内のディレクトリにマウントしてみましたか?

これに失敗すると、Sudoを実行するための管理(sshfs)権限が必要になる場合があります。次のように、そのコマンドの前にSudoを付けてみてください。

Sudo sshfs daryls:/ /Volumes/daryls -oauto_cache,reconnect,volname=daryls

余談ですが、Macが64ビットモードで実行されているかどうか を確認するには

  1. AppleメニューからこのMacについて)を選択します。
  2. 詳細をクリックします。
  3. [コンテンツ]ウィンドウでSoftwareを選択します。
  4. システムソフトウェアの概要という見出しの下にある「64ビットカーネルと拡張機能:はい(またはいいえ)」を探します。
5
Handyman5

ある日、ボリュームをsshfsマウントすることができました。次はそうではなかった。コマンドライン(ターミナル)でSudo -iを試してみたところ、「ユーザーがsudoersファイルにありません」というメッセージが表示されました。再起動してSudo -iを試してみたところ、成功したので、sshfsマウントをもう一度試してみました。基本的に、再起動によって修正されましたが、それ以外の詳細はありません。 OS:Mac 10.11.6(El Capitan)

0
harperville