1台目 シリアル***6
33時間23分
120,180 秒
190.4 MiB / 秒
2台目 シリアル***C
40時間19分
145,140 秒
157.7 MiB / 秒
3台目 シリアル***1
41時間53分
150,780 秒
151.8 MiB / 秒
3台目 2回目のsanitize
40時間33分
145,980 秒
156.9 MiB / 秒
1台目 シリアル***6
33時間23分
120,180 秒
190.4 MiB / 秒
2台目 シリアル***C
40時間19分
145,140 秒
157.7 MiB / 秒
3台目 シリアル***1
41時間53分
150,780 秒
151.8 MiB / 秒
3台目 2回目のsanitize
40時間33分
145,980 秒
156.9 MiB / 秒
Oracle Linux 9 (ARM/A1インスタンス) にSSH接続した直後の状態から、「ブラウザで操作できる日本語環境のUbuntuデスクトップ (HTTPS接続)」 を一発で構築する「完成版コード」をまとめました。
これまでの修正(ARM対応、HTTPS対応、環境変数エラー修正)をすべて反映しています。
このコードブロックをすべてコピーして、SSH接続したターミナルに貼り付けて実行してください。
cat << 'EOF' > setup_complete_bot.sh
#!/bin/bash
set -e
# ==========================================
# ★設定エリア (自由に変更してください)
# ==========================================
CONTAINER_NAME="twitch-bot-desktop"
WEB_USER="myuser" # ログインID
WEB_PASSWORD="password" # ログインパスワード
HOST_PORT="3000" # 接続するポート番号
# ==========================================
echo "=== [1/5] システム準備とPodmanのインストール ==="
# システム更新とPodmanの導入
sudo dnf install -y podman crun firewalld
sudo systemctl enable --now firewalld
echo "=== [2/5] クリーンアップとコンテナ起動 (ARM対応/HTTPS版) ==="
# 古いコンテナがあれば削除
sudo podman rm -f "$CONTAINER_NAME" 2>/dev/null || true
# Webtopコンテナの起動
# ホストの3000番ポートを、コンテナ内の3001番(HTTPS)に転送します
sudo podman run -d \
--name "$CONTAINER_NAME" \
--security-opt seccomp=unconfined \
-e PUID=1000 -e PGID=1000 \
-e TZ=Asia/Tokyo \
-e CUSTOM_USER="$WEB_USER" \
-e PASSWORD="$WEB_PASSWORD" \
-p ${HOST_PORT}:3001 \
--shm-size=4g \
--restart unless-stopped \
lscr.io/linuxserver/webtop:ubuntu-xfce
echo "コンテナの初期化待ち (20秒)..."
sleep 20
echo "=== [3/5] パッケージリストの更新 ==="
sudo podman exec -u 0 "$CONTAINER_NAME" apt-get update
echo "=== [4/5] Firefox・日本語フォント・入力システムのインストール ==="
echo "インストールを実行中 (数分かかります)..."
# 環境変数を正しく渡してインストール
sudo podman exec -u 0 -e DEBIAN_FRONTEND=noninteractive "$CONTAINER_NAME" \
apt-get install -y \
firefox \
fonts-noto-cjk \
language-pack-ja \
im-config \
fcitx-mozc \
dbus-x11
echo "=== [5/5] ファイアウォール設定 (ポート ${HOST_PORT}) ==="
if systemctl is-active --quiet firewalld; then
sudo firewall-cmd --permanent --add-port=${HOST_PORT}/tcp
sudo firewall-cmd --reload
echo "ポート ${HOST_PORT} を開放しました"
fi
echo ""
echo "========================================================"
echo " 🎉 完全セットアップ完了!"
echo "========================================================"
echo " 【接続方法】"
echo " ブラウザで以下のURLにアクセスしてください (https必須):"
echo ""
echo " 👉 https://$(curl -s ifconfig.me):${HOST_PORT}"
echo ""
echo " ID: $WEB_USER"
echo " PW: $WEB_PASSWORD"
echo ""
echo " 【注意点】"
echo " 1. アクセス時に「保護されていない通信」等の警告が出ますが"
echo " 「詳細設定」→「アクセスする」で進んでください。"
echo " 2. Oracle CloudのWeb管理画面(セキュリティリスト)で"
echo " ポート ${HOST_PORT} (TCP) の受信許可を忘れずに!"
echo "========================================================"
EOF
# 実行権限を与えて実行
chmod +x setup_complete_bot.sh
./setup_complete_bot.sh
スクリプト実行後に、人間が手動でやる必要があるのは以下の2点だけです。
スクリプトはサーバー内部の扉を開けましたが、Oracle Cloudの玄関を開ける必要があります。
ログイン後、一度だけ以下の設定を行うと Ctrl+Space で日本語入力できるようになります。
Applications → Settings → Input Method Configuration
「OK」→「Yes」→ 「fcitx」 を選択して「OK」。
画面右上のキーボードアイコンを右クリック → Configure。
左下の「+」ボタン → 「mozc」を検索して追加。
おめでとうございます!ついに開通ですね。 ここまでの試行錯誤を削ぎ落とし、**「次回、最短手順で同じ環境(Proxmox VM + Arch + Xfce + RDP + 自動化ツール)」**を再現するための決定版マニュアルをまとめました。
コピペ用に最適化しています。
特に特別な設定はありませんが、識別しやすい名前を付けてください。
VM ID / 名前: 任意
詳細設定: チェックを入れる(重要:詳細な設定項目を表示するため)
Linuxの標準的な設定を選択します。
ここが最も重要です。現代的な構成(UEFI + Q35)にすることで、PCIeパススルーの互換性や起動速度が向上します。
マシン (Machine): q35 (i440fxより新しい規格で、PCIeの扱いが優れています)
BIOS: OVMF (UEFI)
SCSIコントローラ: VirtIO SCSI single
QEMUエージェント: 有効化 (チェックを入れる)
理由: ProxmoxのWeb UIから「シャットダウン」を行ったり、IPアドレスを確認したりするために必須です(インストール後にOS側で設定が必要です)。
SSDを使用している場合、寿命と速度のために以下の設定を推奨します。
バス/デバイス: SCSI (番号は0など)
ストレージ: 任意のストレージ
ディスクサイズ: 任意 (32GB以上推奨)
Cache: Default (安全重視) または Write back (速度重視だが電源断に弱い)
Discard: チェックを入れる (TRIMコマンドを有効にし、SSDの容量節約と寿命を延ばします)
IO Thread: チェックを入れる (VirtIO SCSI singleと組み合わせることで処理が高速化します)
ProxmoxホストのCPU機能をフル活用する設定にします。
ソケット/コア: 必要な分だけ割り当て
種別 (Type): host
理由: ホストPCのCPU命令セット(AES-NIなど)をそのままパススルーするため、最も高速です。異なるCPUを持つ別のProxmoxサーバーへライブマイグレーションする予定がなければ、これがベストです。
Arch Linux自体は軽量ですが、用途に合わせて設定します。
ブリッジ: vmbr0 (通常の設定)
モデル: VirtIO (準仮想化)
理由: Intel E1000などのエミュレーションよりも圧倒的に高速でCPU負荷が低いです。
上記の設定で「QEMUエージェント」を有効にしましたが、これだけでは機能しません。Arch Linuxインストール完了後、必ず以下のコマンドでゲスト側パッケージを導入・有効化してください。
# パッケージのインストール
sudo pacman -S qemu-guest-agent
# サービスの有効化と起動
sudo systemctl enable --now qemu-guest-agent
archinstall)ProxmoxでISOを起動し、archinstall コマンドを実行した際の重要設定です。ここでツールを先入れするのが最短のコツです。
Disk configuration(ディスク設定)
Use a best-effort default partition layout を選択
次の画面でディスク(例: vda や sda)を選択
ファイルシステムは btrfs か ext4(迷ったら ext4)を選択
Root password
管理者(root)用のパスワードを設定してください。
User account(超重要)
Add a user を選び、普段使うユーザー名とパスワードを作成してください。
重要: 作成後、そのユーザーに sudo 権限を与えるか聞かれたら Yes を選んでください(これがないと後で何もインストールできません)。
Profile(ここが一番重要です)
Desktop を選択
次にデスクトップ環境を選びます。初心者でも扱いやすく、かつ軽量な Xfce4 を強くおすすめします。
※前回 Openbox を挙げましたが、設定画面などがなく真っ黒な画面になりがちで難易度が高いため、今回はメニューバーなどが最初からある Xfce4 推奨に変更します。自動化のしやすさは変わりません。
Graphics driver
VMware / VirtualBox または Open-source (default) を選択してください。Proxmoxの場合、これで汎用ドライバが入ります。
Audio
Pipewire(デフォルト)のままでOKです。
Network configuration
Use NetworkManager を選択してください。これを忘れるとインストール後にネットに繋がりません。
Timezone
/ を押して検索モードにし、Tokyo と打って Asia/Tokyo を選択。
メニューの下の方にある Additional packages(追加パッケージ)を選択し、以下の単語をスペース区切りで入力しておくと、インストール直後からやりたいことができるようになります。
入力例:
再起動してユーザーログインした後、ターミナル(Proxmoxコンソール または SSH)で順に実行してください。
SSH接続するまえにターミナルで以下を打つ
sudo pacman -S openssh
sudo systemctl enable --now sshd
ip a
MACやWindowsのターミナルから
# 例: ssh ユーザー名@192.168.1.15
ssh Arch Linuxのユーザー名@IPアドレス
xdotool: 座標クリック用ツール
scrot: スクリーンショット用ツール
qemu-guest-agent: Proxmoxと連携してIPアドレス表示やシャットダウンをスムーズにするツール
# パッケージのインストール
sudo pacman -S qemu-guest-agent# サービスの有効化と起動
sudo systemctl enable --now qemu-guest-agent
↓上記をインストールするコマンド
sudo pacman -Sy chromium xdotool scrot qemu-guest-agent noto-fonts-cjk ttf-liberation && sudo systemctl enable --now qemu-guest-agent
xrdp を入れるために必須です。
git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
makepkg -si
# 途中の確認はすべて「y」またはEnter
cd ..
rm -rf yay-bin
黒画面回避のため xorg-xinit を忘れずに入れます。
yay -S xrdp xorgxrdp xorg-xinit
# 途中の確認はすべてEnter
エラーが出ないよう調整済みのコマンドです。まとめてコピペして実行してください。
# RDP接続時にXfceを起動させる設定(権限付与込み)
echo '#!/bin/sh' > ~/.xinitrc
echo "export XDG_SESSION_TYPE=x11" >> ~/.xinitrc
echo "exec startxfce4" >> ~/.xinitrc
ln -sf ~/.xinitrc ~/.xsession
chmod +x ~/.xinitrc ~/.xsession
# Xサーバーの起動権限を許可(これがないと即切断される)
sudo bash -c 'echo "allowed_users=anybody" > /etc/X11/Xwrapper.config'
これでRDP待ち受け状態になります。
# サービスの有効化
sudo systemctl enable --now xrdp
sudo systemctl enable --now qemu-guest-agent
# IPアドレスの確認
ip a
WindowsからRDP接続する前に、必ずProxmoxのコンソール画面(NoVNC)からログアウトしてください。
sudo pkill -u proxtwitch1
Proxmoxの画面にデスクトップが映っている状態だと、RDPは競合して接続できません。
ログイン画面(ユーザー名入力画面)に戻っていればOKです。
サーバーマネージャオフ
リモートデスクトップ有効化
Ctrl Alt Del 不要に
タスクバー
secpol.mscを入力しエンター
ローカルポリシー
セキュリティ
対話型ログオン Ctrl Alt Delを無効にする を有効にする
パスワード変更オフにする

シャットダウン追跡の無効化
gpedit.msc

サービスの優先度
システム
ファイラーの日付ごとにまとめるやつオフ
広告追跡オフ
壁紙黒に
自動モニターオフをオフに
braveインストール
共有フォルダ設定 ネットワークドライブに追加
クイックアクセス削除
ハピタス経由ならポイントがもらえるので絶対に忘れないこと。
↓
2022年3月
自己破産 免責
(アイフル、楽天カード、オリコで合計200万円ほど)
2022年4月
ペイディプラス 可決 S5 Apple枠15万
→2024年1月Apple枠 53万に増額
2022年6月
PayPay後払い 否決
Nudge 否決
三井住友トラストVISAゴールドカードS 否決
2022年7月
BLUE ROSE カード(青山キャピタル発行) 否決
Nexusカード 可決
三井住友NLゴールド 否決
2022年8月
ライフカード無料マスター(S) 可決 S2
→2024年1月 S10に自動増枠
→2025年8月 S20に自動増枠
メルペイ定額払い 否決
三井住友NLノーマル 否決
セゾンパールアメックスデジタル 否決
(auPAYプリペイドカード 可決)
2022年11月 メルペイ定額 可決
→メルカード可決 S25
→2023年12月 S30に自動増枠
→2024年6月 S40に自動増枠
→2024年10月 S45に自動増枠
→2025年2月 S50に自動増枠
2023年1月 LINEクレカ(P+) 否決
2023年3月 三井住友OLIVE(オリーブ)申込→否決
2023年3月 ファミマTカード申し込み→否決
2023年4月 三井住友OLIVE口座に切り替えてからクレカ申込→否決
2023年5月 アコムマスターカード申し込み→否決
2023年5月 アメックス緑申込→可決
2023年7月 Amazonマスターカード申し込み→否決
2023年11月 三井住友カードNL申し込み
→可決 S10
→S20希望の増枠申請してS20
→2025年7月S60増枠申請してS60
2023年12月 マネックスカード申し込み→否決
2024年2月 Visa LINE Payクレジットカード(P+)申し込み
→可決 S20
→S50希望の増枠申請してS50
2024年3月 Visa LINE Payクレジットカード(P+)海外キャッシング10万申し込み→否決
2024年3月 TカードPrime申し込み→否決
2024年4月 20万円くらいのショッピングローン、三井住友とJACCS両方否決
2024年10月 Amazon マスターカード 可決 S50
2024年11月 三井住友10万円ショッピングローン否決
2024年12月 エポスカード 否決
2025年2月 PayPayカード 否決
2025年3月 メルカードゴールド申し込み可決 S100
2025年9月 三井住友NLゴールド申し込み可決 S60
→2026年1月 S300の増枠申請否決
→2026年5月 S100の増枠申請可決
──────────────────────────────────
以下詳細を書いていく。
・BLUE ROSE カード(青山キャピタル発行)
ネットから申込書を郵送で送ってもらい、手書きの申込書を送り返すシステム
否決
・ライフカード無料マスター
ライフカードの親会社はアイフル
アイフル飛ばしたのに可決された
ハピタス経由ならポイントがもらえるので絶対に忘れないこと。
↓
ポイントサイトなら高還元率のハピタス|通販やサービス利用でWでポイントが貯まる
2022年8月10日
メールでLIFE-Web DeskのログインIDが送られてきた。
S2だった。
ライフ・マスターカード(S)と、(S)が付いていた。
(N)が付いてるとETCを申し込めたり、増枠の可能性がある。
(S)だとETC不可で増枠も無理らしい。
2022年8月12日
書留郵便でカードが届いた。
受け取り時の本人確認はなし。
エンボスレスだった。
タッチ決済(MasterCardコンタクトレス)はなし。
リボ3千円。
有効期限は2027年9月。
2024年1月
増額のない(S)なのに増額された。
S2からS10へ。
リボ枠も5千円から10万円へ。
・auPAYプリペイドカード
auPAYプリペイドカードを作るには「au系回線を持っている」または「じぶん銀行の口座を持っている」必要がある。
au系の回線は持ってないのでまずはじぶん銀行を作ることにした。
2022年8月13日
じぶん銀行申込み
2022年8月16日
じぶん銀行口座開設完了
auPAYアプリからじぶん銀行とauPAYアプリを連携申請完了(これをしないとauPAYプリペイドカードが作れない。)(公式HPにもプリカの作り方が書いてなくて調べるのが大変だった。)
2022年8月18日
じぶん銀行キャッシュカード発送のお知らせ
auPAYアプリとじぶん銀行の連携完了?(auPAYアプリの「連携する」を押しても申請中ですとなって進めなかったが、今日は進めた。しかしキャッシュカードに記載されているお客様番号が必要で、キャッシュカードはまだ届いてないのでauPAYプリペイドカードの申請はまだできない。)
2022年8月19日
書留でじぶん銀行キャッシュカードが届いた。
auPAYアプリからじぶん銀行とauPAYアプリを連携した。
これでしばらく待てばauPAYプリペイドカードが送られてくるはず。
2022年8月31日
ネコポスでポスト投函でauPAYプリペイドカードが届いた。
auPAYアプリのトップページに「有効化してください」みたいな表示が出てタップしたら有効化できた。
──────────────────────────────────
メルカリ定額
2022年11月20日 2022年8月に続いて2回目の申込み
2022年11月21日 可決
2022年11月25日 アプリにメルカード入会のページが出たので申込み 同時にスマート払いの限度額が20万円から25万円に増額
2022年11月30日 カードが普通郵便で届いた
LINEクレカ(P+)
2023年1月5日 申込み
2023年1月9日 否決
アメックス緑
2023年5月22日 申し込んで金融機関登録したら即可決された。
2023年5月27日 書留郵便で届いた。会員サイトから利用可能額を調べたら8万円だった。ETCカードを申し込んだ。
2023年5月28日 6万2千円のGoProを買おうと決済したら通らなかった。海外サイトだからなのか金額が大きすぎたのかはわからない。
2023年6月5日 ETCカードが届いた。
2023年7月のAmazonセールで20万円分をアメックス緑で支払い。アプリの利用可能額は35万円だった。
──────────────────────────────────
Amazonマスターカード
プライムデーで8000ポイントがもらえるとのことで申し込んだ。
日曜日の午前2時に申し込んだので、銀行のサイトがメンテナンス中で銀行口座の登録ができなかった。
銀行口座が登録できると本人確認のレベルがあがるので審査に有利らしいから。
日曜日の午前2時に申し込んで午後6時に否決のメールが来た。
──────────────────────────────────
2023年11月 三井住友カードNL申し込み
通常審査のほうで申し込んだ。まいぺいすリボ3万円の設定。
可決!!
S10だった
有効期限は2年後だった
警戒されすぎ
2024年2月 Visa LINE Payクレジットカード(P+)申し込み
即時発行のほうで申し込んだ。まいぺいすリボ3万円の設定。
1分もかからず可決!!
S20だった。
Visa LINE Payクレジットカード(P+)は三井住友の発行なのにS枠がNLと共通じゃなかった。
有効期限は5年後だった
4K 30FPS
USBで接続できるカプラーを使用
3時間10分録画できた