Hyper-Vに開発用UbuntuLinux22.04環境を作るときに参考にしたサイトのメモ
Hyper-Vに開発用UbuntuLinux22.04環境を作るときに参考にしたサイトのメモです。
想定OSは、Windows11Proです。
このエントリでは、以下の点についてメモを残しています。
- Hyper-V・UbuntuLinuxのセットアップ
- Windowsとの運用環境
- ネットワーク
- WSLとの接続
- Windows TerminalからのSSH接続
- XServer(VcXsrv)の導入
- 日本語環境
- Windowsショートカット
- ファイル共有
- Windows ← Ubuntu (UbuntuからWindowsのファイルを操作)
- Ubuntu ← Windows (WindowsからUbuntuのファイルを操作)
- Ubuntu ← Windows ← WSL (WSLからWindows経由でUbuntuのファイルを操作)
- Ubuntu ← WSL (WSLからUbuntuのファイルを操作)
- OneDrive
- ミドルウェア・アプリケーションのインストール
- Chrome (Webブラウザ)
- pcmanfm (ファイルマネージャ)
- docker (コンテナ基盤)
- Visual Studio Code (テキストエディタ)
- IntelliJ (統合開発環境)
Hyper-V・UbuntuLinuxのセットアップ
まずはHyper-Vの有効化、
Windowsの設定→アプリ→Windowsのその他の機能→Hyper-Vにチェックを入れてインストールする。
Windows 11でより使いやすくなったHyper-V。サクッと無料で仮想環境を作ってみる | PC Watch
Ubuntuのインストール手順は、以下を参考に実施する。
Windows10のHyper-V上でUbuntuを動かす | ぼったんの技術系ブログ
イメージは、以下から「Ubuntu Server 22.04.2 LTS」を取得し、仮想マシンに接続する。
Desktop版はインストール時の画面解像度が低くて見にくいので、Serverをインストールした。
ネットワーク設定は、ひとまずDefault Switchで良い。
Ubuntuを入手する | Ubuntu
Windowsとの運用環境
ネットワーク
Windows側からアクセスする時に都合が良いので、UbuntuホストのIPアドレスを固定したい。
以下を参考にして、仮想ネットワークスイッチを作って、Windows側の設定を行う。
Hyper-Vの仮想マシンで固定IPを使う | パソコン鳥のブログ
Ubuntu側は、普通にnetplanでIPアドレスを設定する。
Linuxメモ: Netplan で Ubuntu のネットワーク設定を行う | まくろぐ
先ほどのブログのように、
Windows側を「192.168.24.1」としていた場合は、次のような設定になる。
/etc/netplan/00-installer-config.yaml
network:
ethernets:
eth0:
addresses: [192.168.24.2/24]
nameservers:
addresses: [8.8.8.8]
routes:
- to: default
via: 192.168.24.1
version: 2
WSLとの接続
WSLとHyper-VのUbuntu間でsshなどの通信を行いたい場合は、
次のサイトを参考に、ネットワークインターフェイス間のフォワーディングを有効にする。
WSL2とHyper-V仮想マシンの間で通信ができるようにする | メモの日々
Windows TerminalからのSSH接続
WindowsTerminalからUbuntuにSSH接続したい場合は、次のサイトを参考に設定をする。
Windows Terminal で SSH 接続 | Unity Indies
新しいプロファイルを追加して、コマンドラインを次のように指定すればよい。
C:\Windows\System32\OpenSSH\ssh.exe ※ユーザ名※@※IPアドレス(Ubuntu側)※
XServer(VcXsrv)の導入
WindowsにVcXsrcを導入して、Xを利用できるようにする。
次のサイトを参考に、Windows側のセットアップを行う。
x server
VcXsrv(Xサーバー)をWindowsにインストールしLinuxのGUIをリモート操作する設定方法 | りんかネット
VcXsrv自体は、以下からダウンロードする。
VcXsrv Windows X Server | SourceForge
セットアップ後、Ubuntu側にxtermを入れて起動できるかを試してみる。
Windows側にxtermのウィンドウが開けば成功。
sudo apt-get install xterm
export DISPLAY=※IPアドレス(Windows側)※:0.0
xterm
日本語環境
フォントが無いと、Xで日本語が表示できないので、以下のようにしてフォントをインストールする。
sudo apt install -y fonts-noto
次のサイトのように、使えるフォントはいろいろある。とりあえずはnotoで良いかと。
Ubuntu 18.04 の apt で入れられる日本語フォントまとめ | Neo's World
日本語の入力環境(mozc)は、以下のサイトを参考に設定する。
「3.2. 日本語フォントを読み込む」はWSL2固有なので、実施しない。
Win11のWSL2 (WSLg)を日本語化 & Mozcで日本語入力 | AsTechLog
Windowsショートカット
特にX前提のアプリケーションは、
Windowsにショートカットを作って、直接起動できると都合がよい。
作成したショートカットのリンク先を、次のように指定すればよい。
C:\Windows\System32\OpenSSH\ssh.exe ※ユーザ名※@※IPアドレス(Ubuntu側)※ ※起動プログラム※
Ubuntu側に以下のようなシェルスクリプトを作って、
Windowsショートカットから、シェルスクリプトを呼ぶようにすれば、
Xや日本語入力が利用できる状態で起動できる。
#!/bin/bash
. ~/.profile
export DISPLAY=※IPアドレス(Windows側)※:0.0
/usr/bin/xterm
ファイル共有
全て試した訳ではないけれど、Ubuntu-Windows間はさまざまなファイル共有方法がある。
Windows ← Ubuntu (UbuntuからWindowsのファイルを操作)
Windowsで共有したフォルダを、Ubuntu側から操作したい場合は、
次のサイトを参考に、cifsでマウントする。
【Linux】【Windows】Hyper-vのLinuxにWindowsの共有フォルダをマウントする | なんだかGoodVibes
Ubuntu ← Windows (WindowsからUbuntuのファイルを操作)
Ubuntuで共有したフォルダを、Windows側から利用したい場合は、sambaを使えば良い。
Ubuntu 22.04にsambaをインストールしてファイルサーバにする(Linuxユーザーのホームディレクトリを共有) | qiita
Ubuntu ← Windows ← WSL (WSLからWindows経由でUbuntuのファイルを操作)
Ubuntu(Hyper-V)でsamba共有したフォルダを、WSLから利用したい場合は、cifsでマウントすればよい。
SMB/CIFS→可能 | UbuntuをWindows11上で動かす その6: NASのファイルを利用する | メモ置場のブログ
Ubuntu ← WSL (WSLからUbuntuのファイルを操作)
Ubuntuのファイルを、WSLから利用したい場合は、sshfsでマウントで利用できる。
OpenSSH : SSHFS を利用する | Server World
OneDrive
UbuntuにOneDriveを入れてクラウド経由で共有するという方法もある。
LinuxでOneDriveを使用する | 気まぐれブログ
ミドルウェア・アプリケーションのインストール
Chrome (Webブラウザ)
Chromeブラウザは、次のコマンドでインストールできる。
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install ./google-chrome-stable_current_amd64.deb
【コマンドだけで一番楽】ubuntu 20.04LTS にChromeをインストール | Inno-Tech-Life
pcmanfm (ファイルマネージャ)
pcmanfmは、次のコマンドでインストールできる。
sudo apt-get install pcmanfm
docker (コンテナ基盤)
以下のサイトのとおり、Dockerのリポジトリを追加してaptでインストールする。
Install Docker Engine on Ubuntu | docker docs
Visual Studio Code (テキストエディタ)
以下のサイトのとおり、Microsoftのリポジトリを追加してaptでインストールする。
Visual Studio Code on Linux | Visual Studio Code Docs
IntelliJ (統合開発環境)
以下のサイトのとおり、snapでインストールする。
Install as a snap package on Linux | Install IntelliJ IDEA
Install as a snap package on Linux | Install PyCharm
実行ファイルが、/snap/binの下に作られる。
以上。
Discussion