web-dev-qa-db-ja.com

Windows 10bashから同期されたParallelsディレクトリにアクセスします

長年のMac開発者と私は最近、Parallelsの下にWin10をインストールして、古典的なASPプロジェクトの下で軽い開発を行いました。

Macに同期ディレクトリがあり、Windowsエクスプローラーで参照でき、VisualStudioのディレクトリにもアクセスできます。問題ありません。

私が興味を持っているのは、bashプロンプトを介して同じディレクトリにアクセスできるかどうかです。 Microsoft StoreからUbuntuアプリをインストールしましたが、すべてうまく機能しています。ローカルのWindowsファイルも/mnt/c/Usersの下に表示されます。

私がアクセスできないように見えるのは、Windowsが\\Mac\Home\Documents\Projects\-myProjectFolderにあると言っているファイルです。

考え?

2
Drew

私は方法を発見しました!一言で言えば、Windows(WSL)bash内のMacからSMB共有をマウントします。

私のセットアップ:

  • macOS 10.14.2
  • Parallels 14.1.0 Pro
  • Windows 10バージョン1803(ビルド17134.472)
  • WSLbashはUbuntu18.04.1 LTS(Bionic Beaver)です。

Macホストでの共有を有効にするSMB

  1. システム環境設定を開きます。
  2. 共有に移動します。
  3. 左端のメニューで、ファイル共有を有効にしてクリックします。
  4. 右側の[オプション...]ボタンをクリックします。
  5. SMBを使用してファイルとフォルダーを共有するをチェックします。
  6. メニューで、ユーザー名を有効にします。
  7. パスワードは安全性の低い方法で保存されるという警告が表示される場合があります。 Macアカウントのパスワードを入力し、[OK]をクリックします。

ParallelsHost-Onlyネットワークを有効にする

  1. Parallelsを開きます。
  2. Cmd-,を押して設定を開きます。
  3. [ネットワーク]タブを開きます。
  4. 左側のメニューで[ホストのみ]を選択します。
  5. 「Macをこのネットワークに接続する」にチェックを入れます。
  6. Macシステム環境設定を開きます。
  7. ネットワークをクリックします。
  8. デバイスの左側のメニューで、「Parallels Host-Only#1」などと表示されているメニューをクリックします。 (メニューに完全に表示するには長すぎる場合は、クリックした後で正しいものがあることを確認できます。[ステータス:接続済み]の下の小さなテキストに、「Parallels Host-Only#1が現在アクティブであり、IPアドレスは10.37.129.2です。 ")
  9. [IPアドレス]フィールドの値を覚えておいてください。このウィンドウは開いたままにしておくことができます。

WindowsからSMB共有)に接続します

  1. Windows 10が起動したら、Windowsエクスプローラーウィンドウを開きます。
  2. 左側のペインで、[ネットワーク]を右クリックし、[ネットワークドライブのマップ]を選択します。
  3. 使用可能なドライブ文字を選択します。 Y:を使用します。
  4. この次のステップでは、最初はエラーが発生しますが、問題ありません。 \\に続けてIPアドレスを入力し、Enterキーを押します。
  5. エラーダイアログを閉じます。
  6. [参照...]をクリックします.
  7. IPがリストに表示されます。展開します。
  8. Macのユーザー名とパスワードを入力します。
  9. マウントするフォルダを選択し、[OK]をクリックします。ユーザーフォルダを選択しました。
  10. [完了]をクリックします。

SMBシェアをWSLbashからマウントする

  1. Sudo mkdir /mnt/y(以前に選択したドライブ文字を使用できます。)
  2. Sudo mount -t drvfs Y: /mnt/y
  3. それだけです!完了です!

オプション:SMB共有へのRWアクセスを確認します

このセクションはオプションですが、適切なサニティチェックです。

  1. WSLbashプロンプトが開いている必要があります。
  2. ls -l(ファイルが表示されるはずです。すべてがrootによって所有されていることを心配しないでください。Sudoがなくてもマウントされた共有に書き込むことができ、ユーザーが所有するものはMac側。)
  3. echo hello > hi.txt
  4. Macで、ターミナルウィンドウを開きます。
  5. hi.txtファイルを含むディレクトリにcdします。
  6. cat hi.txt(「こんにちは」と表示されます。)
  7. echo world > hi.txt
  8. WSLbashに切り替えます。
  9. cat hi.txt(「世界」が表示されるはずです。)

警告

パスワードの問題は最適ではないことに気づきました。通常のParallels共有Macフォルダーをマウントしようとしても機能しなかったため、このルートを選択しました。起こったことは次のとおりです。

$ Sudo mkdir /mnt/y
$ Sudo mount -t drvfs '\\Mac\Home' /mnt/y
$ cd /mnt/y
$ ls
ls: reading directory '.': Invalid argument
$ cd ..
$ Sudo umount /mnt/y
$ Sudo mount -t drvfs Z: /mnt/y
$ cd y
$ ls
ls: reading directory '.': Invalid argument

WSLとParallelsがうまく連携していないように見えるので、Parallelsを少し回避しました。私はそうする必要がなかったらいいのにと思います、そして私はより良い解決策を見たいです。

2
MusashiAharon