Post date: Aug 27, 2018 4:00:40 PM
ubuntu 18.04 LTS で今回もLTSPサーバーを構築してみます。
NICが2つあるサーバーであっという間に作れるedubuntu が休眠状態なので、今回はLTSPの公式ページを参考にして作ります。
http://wiki.ltsp.org/wiki/Installation/Ubuntu に詳しく情報がありますのでそちらを参考にしてください。
このページは単なる備忘録的なものです。
目標
従来のルーターのあるLAN内にLTSPサーバーを配置して、クライアントもそのLAN内に接続する。これだとNICも1枚でいいし、独自にネットワークを設置しなくてもいいし、なにより簡単!実験には最適です。
準備
サーバーにするPC1台 Xeon2.4x2のサーバー、Core2Duo E8500PC両方を試してみたけど、Core2Duoで十分遊べました。
ubuntu MATE 18.04.1 64bit版(ただしクライアントが32bitマシンならそれにあわす。)
https://ubuntu-mate.org/ よりisoファイルをダウンロードしDVDにでも焼いて起動ディスクを作成しておく。
インストール作業 (Wikiの記載をそのまま実行しますので詳しくはそちらを参考に。)
起動用DVDを使って、ubuntu MATE デスクトップ版(マテ~GNOME2デスクトップ)をインストール。
デスクトップ版を使うのは、クライアントがデスクトップ環境を使うので、初めから入っているものにすれば簡単なので。
その後の作業は端末から全てroot権限で行うこと
● インストール完了後に実施
sudo -i
apt purge --autoremove mate-hud snapd 不安定要素の排除
apt install synaptic 後のためにsynapticパッケージマネージャーを導入
● どうもport53に既に割り当てがあるらしい。なので停止する。
詳しくは下のページを参照にした。
https://askubuntu.com/questions/907246/how-to-disable-systemd-resolved-in-ubuntu/907249#907249sud
要約すると、リゾルバが53ポートを使っているのでdnsmasqが設定できないために停止する。
$ sudo systemctl disable systemd-resolved.service
$ sudo service systemd-resolved stop
networkmanager の設定ファイルの[main]セクションに以下の行を追加する。
$sudoedit /etc/NetworkManager/NetworkManager.conf で[main]に
dns=default を追加した後
rm /etc/resolv.conf (シンボリックリンクの削除)
sudo service network-manager restart (ネットワークマネージャーの再起動) これでdnsmasqが簡単に導入できる。
● Greek Schools PPAをリポジトリに追加・更新(cosmicでは1.0.1-1がuniverseに収録済)
add-apt-repository ppa:ts.sch.gr
apt update
● LTSPインストール(chrootless mode)
apt install --install-recommends ltsp-server-standalone ltsp-client epoptes サーバー、クライアント、epoptesサーバー(中央からの監視&指導ソフト~これ凄くいいです。)
gpasswd -a ${SUDO_USER:-$USER} epoptes epoptesユーザーグループにアクセスできるユーザーに自分を追加
ltsp-update-image --cleanup / 環境の初期作成(/に構築します。) (cosmicでは不足しているパッケージを表示しそれがスキップされる)
● DNSmasqの構築
ltsp-config dnsmasq --enable-dns DNS サービスを dnsmasq で起動できるようにする。(cosmicでは--enable-dnsが不正な引数となる)
ここまででとりあえず完成!
あと必要に応じて設定ファイルは弄ってねと言うことが書いてあります。
sudo ltsp-config lts.conf 設定ファイルの作成
sudo xdg-open /var/lib/tftpboot/ltsp/*/lts.conf 編集
● 端末の終了
exit ログアウト
端末の終了
ソフトのインストールと環境作成
● 必要なソフトをsynapticやaptを使って入れましょう。
例 sudo apt install gimp など
サーバーをLTSで運用するにしてもどうせなら最新のソフトを使いたいものです。
flatpakを使って細心のソフトウェアを導入しましょう。以下のページが大変参考になりました。
https://linuxfan.info/flatpak-ubuntu
● LTSP環境のアップデート
sudo ltsp-update-image -c /
使用してみる
サーバーをLANにつないで起動。
クライアントもLANにつないでPXE起動するとあっという間にLTSP環境が出来ました。
epoptesに導入したユーザーで利用すると、以下のように管理画面が利用できました。あっという間にできるのはすごいですね。
なお細かな設定はそうとう読むものがありそうですので詳しくは上記Wikiで正式に勉強しましょう。
● ログイン画面の背景を変更する
手っ取り早くクライアントのログイン画面の背景を変更するには、サーバー上のファイルを差し替える。
差し替えるファイルは /usr/share/ldm/themes/ltsp/bg.png (デフォルトの背景画像)これを好きなもので上書きコピーすればよい。
テーマの変更は、greeter-gtkrc あたりを弄るのかなぁ?文字の色とかはそれに追記して変更可能。
設定変更したら sudo ltsp-update-image -c / で変更を反映する。
ログイン表示の位置を変えようと、いろんなところを試してみたものの、ローカルではすんなり変更できるのにLTSPクライアントでの変更は成功していない。すべて中央に出てしまう。
ちなみにGreeterのLightDMそのものについては、以下のページを参考にした。
https://wiki.archlinux.jp/index.php/LightDM
● 未解決の重大な問題
クライアントからログイン・ログアウトを繰り返しても問題ないのに、スリープに入ってスクリーンセーバーにロックされるとロックが解除できない。
なぜか、パスワードが違うといってくる。勉強不足のためどこが問題か理解できでいる。
● パフォーマンスの問題
Corei5 2400 12GB 120GB SSDの構成でサーバーはかなり快適に動く。もちろんクライアント側のスペックに合わせて使えるソフトと使えないソフトを見極める必要がある。Office系などは概ねなんでも使える。LTSPサーバーの構築が恐ろしく簡単に実現できるようになったと驚いている。
参考にさせていただいた資料
http://cyclops.ddo.jp/recent/1201/18_ltsp.pdf
http://etherboot.org/wiki/wirelessboot