環境 
Debian: ゲストOSのインストール VirtualBox上に、次の設定でDebianをインストールします。Vagrantでbox化するため、ユーザ設定はVagrantの物にしておきます
rootのパスワード: vagrant 
初期ユーザ: vagrant 
初期ユーザのパスワード: vagrant 
インストールするパッケージ: SSHサーバ, 開発パッケージ のみチェックを入れる 
 
ここで「デスクトップ環境」からKDEを選択する事もできますが、何度かやり直してもエラー終了してしまうため、ここでは選択しませんでした。後ほど手動でKDEを入れます(おそらく、libxcb-cursor関係のエラー)
Debian: 日本語環境とタイムゾーンの設定 先にこのへん済ませておきます
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 // 必要なものインストール # apt update # apt install -y sudo vim git curl wget openssh-server locales chrony fonts-noto-cjk ibus-mozc // 日本語設定 # locale-gen ja_JP.UTF-8 # localedef -f UTF-8 -i ja_JP ja_JP # update-locale LANG=ja_JP.UTF-8 # update-locale LANGUAGE="ja_JP:ja" // タイムゾーン設定 # timedatectl set-timezone Asia/Tokyo // 時刻同期設定 # tee -a /etc/chrony/chrony.conf << EOF server ntp0.jst.mfeed.ad.jp server ntp1.jst.mfeed.ad.jp server ntp2.jst.mfeed.ad.jp EOF # systemctl enable chrony 
Debian: デスクトップ環境のインストール DebianにPlasmaをインストールします。ネットワーク環境によってはとても時間がかかります。
1 2 3 4 5 // 必要なライブラリ # apt install -y libxcb-cursor-dev // Plasmaインストール # apt install -y xorg task-kde-desktop firefox-esr 
Debian: 再起動 再起動して、Plasmaデスクトップ環境が起動するか確認します。
Debian: box化に必要な作業 Vagrantのbox化をするにあたり、必要な作業をします
1 2 3 4 5 6 // vagrantユーザをsudoersに登録 $ su - # vim /etc/sudoers // よき所に追記 vagrant ALL=(ALL) NOPASSWD:ALL 
ターミナルを閉じる等でsudoersを反映させたら、以下をvagrantユーザで実施します
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 // 公開鍵を入手&authorized_keysに登録 $ wget https://raw.githubusercontent.com/hashicorp/vagrant/master/keys/vagrant.pub $ cat vagrant.pub >> ~/.ssh/authorized_keys $ sudo chmod 600 ~/.ssh/authorized_keys $ rm vagrant.pub // テンポラリファイル削除 $ sudo rm -rf /var/log/* $ sudo rm -rf /tmp/* // aptキャッシュクリア # apt clean # apt autoclean // ゼロ埋め $ cd /var/tmp/ $ dd if=/dev/zero of=zero bs=4k $ rm zero // コマンド履歴の削除 $ su - # cat /dev/null > ~/.bash_history # exit $ cat /dev/null > ~/.bash_history 
Vagrant: box化 VMをシャットダウンして、ホストOS側でvagrant packageします
1 2 3 4 5 6 $ mkdir [任意のPATH] $ cd [任意のPATH] $ vagrant init // [任意のPATH]に、package.boxファイルが出力されます $ vagrant package --base [VM名] 
Vagrant: pluginインストール(vagrant-vbguest, vagrant-disksize) プラグインを2つインストールします
GuestAdditionsのインストールやアップデートを自動でやってくれるvagrant-vbguest 
ゲストOSのディスクサイズをVagrantfileで変更できるようになるvagrant-disksize 
 
1 2 $ vagrant plugin install vagrant-vbguest $ vagrant plugin install vagrant-disksize 
Vagrant: Vagrantfile作成 CPUなどのスペック部分は使用しているPCと相談しつつ、VMの設定をVagrantfileに書いていきます
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 # -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure(2) do |config|   config.vm.box = "package.box"   config.vm.define "[任意のVM名]"   config.disksize.size = '200GB'        # ディスク容量   config.vbguest.auto_update = true     # GuestAdditionを自動Update   config.vm.provider "virtualbox" do |vb|     vb.cpus = 4                         # コア数     vb.memory = 8192                    # MB     vb.gui = true     vb.customize [       "modifyvm", :id,       "--vram", "256",                  # VRAMは256MBを指定       "--clipboard", "bidirectional",       "--accelerate3d", 'off',          # 3DアクセラレーションはOFFにする       "--hwvirtex", "on",       "--nestedpaging", "on",       "--largepages", "on",       "--chipset", "ich9",       "--ioapic", "on",       "--pae", "off",                   # PAE/NXも不要       "--paravirtprovider", "kvm",     ]     # port forwarding     # config.vm.network :forwarded_port, guest: 15900, host: 15900     # config.vm.network :forwarded_port, guest: 15901, host: 15901   end end 
Vagrant: up vagrant upするとGUIが起ち上がり、vagrant-vbguestプラグインによるGuestAdditionsのインストールが始まるので、インストールが終わったらvagrant reloadします
1 2 3 4 5 6 $ vagrant up (GuestAdditionsのインストールが始まる) // 終わったらreload $ vagrant reload 
Plasma: レンダリングの設定を変える 前述 のOpenGLのバグでかなりもっさりしているので、Compositorのレンダリング設定をOpenGLからXRenderに変更します
[システム設定] → [ディスプレイとモニタ] → [Compositor] → 「レンダリングバックエンド」を XRender に変更