この記事では、使われていないコンピュータを使用して、独自の図書館を構築する方法について説明します。ソフトウェアの操作は、Proxmox VE の Debian 12 仮想マシンで Calibre をインストールして実行することが主な操作です。これには、X11 転送の設定と Qt プラグインエラーの解決が含まれます。
1. Debian 12 仮想マシンの作成と設定#
- Proxmox VE Web インターフェースにログインします。
- 仮想マシンの作成:
- 「仮想マシンの作成」をクリックします。
- 仮想マシンの基本情報(例:名前)を入力します。
- 「オペレーティングシステム」タブで「Linux」を選択し、Debian 12 の ISO ファイル(Debian 公式ウェブサイトからダウンロードできます)を選択します。
- CPU、メモリ、ディスク、ネットワークなどのハードウェア設定を構成します。
- ウィザードを完了し、仮想マシンを作成します。
 
- 仮想マシンを起動し、Debian 12 をインストールします。
2. システムの更新と必要なソフトウェアのインストール#
Debian 12 仮想マシンにログインし、システムパッケージを更新し、必要なソフトウェアパッケージをインストールします。
sudo apt update
sudo apt upgrade -y
sudo apt install -y xorg openbox xauth x11-apps libxcb-xinerama0
3. Calibre のインストール#
公式のスクリプトを使用して、最新バージョンの Calibre をインストールします。
sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin
4. X11 転送の設定#
ローカルコンピュータ上#
- Windows:
- Xming または VcXsrv をインストール:
- Xming をダウンロードしてインストールするか、VcXsrv をダウンロードしてインストールします。
- Xming または VcXsrv を起動します。
 
- PuTTY の設定:
- PuTTY を開きます。
- 「Session」ページで、仮想マシンの IP アドレスを入力します。
- 左側のメニューで、「Connection -> SSH -> X11」に移動します。
- 「Enable X11 forwarding」にチェックを入れます。
- 「Session」ページに戻り、仮想マシンに接続します。
 
 
- Xming または VcXsrv をインストール:
- macOS/Linux:
- 
XQuartz をインストールして起動(macOS): - XQuartz をダウンロードしてインストールします。
- XQuartz を起動します。
 
- 
SSH 接続して X11 転送を有効にする: ssh -X user@your-debian-vm-ip
 
- 
Debian 仮想マシン上#
- 
DISPLAY 変数を確認: echo $DISPLAY出力が localhost:10.0または:0に似ていることを確認します。
- 
X11 アプリケーションのテスト実行: xeyesX11 アプリケーションウィンドウが正常に表示されることを確認します。 
5. Calibre の実行と Qt プラグインエラーの解決#
Calibre を実行する際に Qt プラグインエラーが発生した場合は、必要な依存関係がインストールされていることを確認してください。
- 
Calibre を実行: calibreエラーが続く場合は、次のライブラリをインストールしてください: sudo apt install -y libxcb-xinerama0
- 
Calibre を再実行: calibre
6. VNC を使用したグラフィカルインターフェースアクセス(オプション)#
X11 転送に問題がある場合は、VNC を使用してグラフィカルインターフェースにアクセスできます。
- 
VNC サーバーをインストール: sudo apt install -y tightvncserver
- 
VNC サーバーを起動: vncserver :1
- 
VNC クライアントを設定: - ローカルコンピュータに VNC クライアント(例:TightVNC Viewer)をインストールします。
- バーチャルマシンの VNC サーバーに接続し、アドレス形式は your-debian-vm-ip:5901です。
 
- 
VNC セッションで Calibre を実行: calibre
これらの具体的な手順により、Proxmox VE の Debian 12 仮想マシンで Calibre を正常にインストールして実行できるはずです。問題が発生した場合は、各ステップの設定を注意深く確認し、すべての依存関係が正しくインストールされていることを確認してください。
PuTTY で X11 転送を設定する際には、以下の手順に従って設定を行い、リモート Linux サーバーでグラフィカルインターフェースプログラムを正常に実行し、それらのプログラムのグラフィカルインターフェースをローカルの Windows システムに表示できるようにしてください。
ステップ 1:サーバー側の設定#
- 必要なソフトウェアパッケージをインストール:
- 
Linux サーバー上で、 xterm(または他のグラフィカルインターフェースプログラム)とxauthプログラムがインストールされていることを確認します。これらのプログラムは通常、パッケージマネージャー(yumやapt-getなど)を使用してインストールできます。
- 
たとえば、CentOS では、次のコマンドを使用してインストールできます: sudo yum install xterm xauth
- 
Ubuntu では、次のコマンドを使用してインストールできます: sudo apt-get install xterm xauth
 
- 
- SSH サービスを設定:
- SSH サービスの設定ファイルである/etc/ssh/sshd_configを編集し、X11 転送が有効になっていることを確認します。X11Forwardingという行を見つけ、その値をyesに設定します。
- 変更を適用するために SSH サービスを再起動します。これは通常、sudo systemctl restart sshdなどのコマンドを実行することで行われます(具体的なコマンドは使用している Linux ディストリビューションにより異なります)。
 
- SSH サービスの設定ファイルである
ステップ 2:デスクトップ側の設定#
- Xming をダウンロードしてインストール:
- Xming は、Windows で実行される X サーバーであり、SSH 接続を介してリモート Linux サーバーでグラフィカルインターフェースプログラムを実行し、それらのプログラムのグラフィカルインターフェースをローカルの Windows システムに表示することができます。
- Xming の公式ウェブサイト(http://www.straightrunning.com/XmingNotes/)や SourceForge ページ(http://sourceforge.net/projects/xming/)から Xming のインストーラをダウンロードします。
- ダウンロードした後、インストーラの指示に従ってインストールします。
 
- PuTTY を X11 転送に設定:
- PuTTY プログラムを開きます。
- 「Host Name (or IP address)」フィールドにリモート Linux サーバーの IP アドレスまたはホスト名を入力します。
- 左側のナビゲーションバーで、「Connection」->「SSH」->「X11」を展開します。
- 右側のパネルで、「Enable X11 forwarding」のチェックボックスをオンにします。
- (オプション)「X display location」フィールドにlocalhost:0.0またはlocalhost:10.0(設定と要件に応じて)を入力します。通常、localhost:0.0がデフォルトの設定ですが、一部の場合では他の値を使用する必要があります。
- 「Open」ボタンをクリックして SSH 接続を確立します。
 
ステップ 3:X11 転送のテスト#
- リモートサーバーにログイン:
- PuTTY で設定した資格情報(ユーザー名とパスワードまたは秘密鍵)を使用して、リモート Linux サーバーにログインします。
 
- グラフィカルインターフェースプログラムを実行:
- リモートサーバーにログインしたら、xtermなどのグラフィカルインターフェースプログラムを実行して、X11 転送が正常に機能しているかどうかをテストできます。
- ターミナルにxtermコマンドを入力し、Enter キーを押します。すべてが正常に機能していれば、新しいxtermウィンドウがローカルの Windows システムに表示されるはずです。
 
- リモートサーバーにログインしたら、
もしxtermウィンドウや他のグラフィカルインターフェースプログラムが表示された場合、おめでとうございます!PuTTY を X11 転送に設定することに成功しました。これで、リモート Linux サーバー上で SSH 接続を介して任意のグラフィカルインターフェースプログラムを実行し、それらのプログラムのグラフィカルインターフェースをローカルの Windows システムに表示できるようになりました。
この記事はCG Art Labで最初に公開されました。無料のメール購読をご利用ください。
