By ribbon @
2020-12-04 00:02
結論から先に書きます。Proxmox VEのLXC コンテナでX をぅこかすことは出来ませんでした。
コンソールとしてSPICEクライアントやxterm.js も指定できるので、出来るかなと思ったのですが、そうは問屋が卸しませんでした。
Xはインストール出来ます。しかし、xinit で起動してみると、 /dev/tty0 がないと言ってきて起動しません。確かに、/dev/ 配下を見ると、
ls -l
total 0
crw–w—- 1 root tty 136, 0 Nov 20 10:10 console
lrwxrwxrwx 1 root root 11 Nov 20 10:03 core -> /proc/kcore
lrwxrwxrwx 1 root root 13 Nov 20 10:03 fd -> /proc/self/fd
crw-rw-rw- 1 nobody nobody 1, 7 Nov 11 08:28 full
lrwxrwxrwx 1 root root 25 Nov 20 10:03 initctl -> /run/systemd/initctl/fifo
lrwxrwxrwx 1 root root 28 Nov 20 10:03 log -> /run/systemd/journal/dev-log
drwxrwxrwt 2 nobody nobody 40 Nov 20 10:03 mqueue
crw-rw-rw- 1 nobody nobody 1, 3 Nov 11 08:28 null
crw-rw-rw- 1 root root 5, 2 Nov 20 2020 ptmx
drwxr-xr-x 2 root root 0 Nov 20 10:03 pts
crw-rw-rw- 1 nobody nobody 1, 8 Nov 11 08:28 random
drwxrwxrwt 2 root root 40 Nov 20 10:03 shm
lrwxrwxrwx 1 root root 15 Nov 20 10:03 stderr -> /proc/self/fd/2
lrwxrwxrwx 1 root root 15 Nov 20 10:03 stdin -> /proc/self/fd/0
lrwxrwxrwx 1 root root 15 Nov 20 10:03 stdout -> /proc/self/fd/1
crw-rw-rw- 1 nobody nobody 5, 0 Nov 15 23:26 tty
crw–w—- 1 root tty 136, 0 Nov 20 10:03 tty1
crw–w—- 1 root tty 136, 1 Nov 20 10:03 tty2
crw-rw-rw- 1 nobody nobody 1, 9 Nov 11 08:28 urandom
crw-rw-rw- 1 nobody nobody 1, 5 Nov 11 08:28 zero
となっていて、/dev/tty0 がありません。そこで以下を試してみました。
/dev/console を /dev/tty0 に ln しようとしたのですが、 Invalid cross-device link エラーで駄目 ln -s でやってみたのですが、xinit を動かしたときに parse_vt_settings: Cannot find a free VT: Inappropriate ioctl for device エラーで駄目 mknod tty0 c 136 0 でデバイスファイルを作ろうとしたのですが、 operation not permitted エラーで駄目
でした。これで行き止まり。
ちなみに、他のディストリビューションも見てみましたが、結果は同じ。そもそも tty0 がないところから同じでした。
というわけで、残念ながらコンテナ内でXを動かすのには失敗しました。
Category
openSUSE ,
Tips ,
サーバ ,
デスクトップ ,
仮想化 |
受け付けていません
By ribbon @
2020-12-03 00:02
手軽な仮想化環境 Proxmox-VE は、LXC を使ったコンテナ環境も用意されています。コンテナ環境では、kernel は 仮想化環境のベースOSのものを使いますが、ユーザランドはopenSUSE のものが使われます。この記事を書いている時点で openSUSE 15.2 相当のコンテナ環境があったので使ってみることにしました。
openSUSE 15.2 のコンテナ環境は、Proxmox VE 標準で用意されていますので、それをWebインタフェースから選択するだけでダウンロード、インストールができます。
インストール完了後は、パッケージの総数は181個でした。見てみましたが、最低限の動作をするために必要なものだけしかない状態です。ssh,sshもないですし、yastも入っていませんでした。ほとんど何も出来ないと行っていいでしょう。/ ディレクトリも 213M しか使っていませんでした。必要最低限のユーザランドを一気に入れてしまうFreeBSD よりまさらにコンパクトです。さすがにzypper は入っていましたので、パッケージの追加は出来ます。
そこで、まずは zypper update を行ったのち、openssh を入れ、さらに yast (パッケージとしてはyast2) を入れてみました。
yast を入れた直後の画面は図1のようになります。
図1 yast を入れた直後の yast の画面
何もないですね。この時点では、yast2-ycp-ui-bindings, yast2-perl-bindings,yast2,yast2-core,yast2-xml,yast2-logs,yast2-ruby-bindings,yast2-hardware-detection,yast2-pkg-binding というものしか入っていません。 yast のサブメニューに対応するパッケージを何も入れていないため、何もないわけです。
そこで、他のサーバを参考にしつつ、yast パッケージを入れてみることにしました。取りあえずはSamba サーバにしたいため、yast2-samba-server を入れることにしました。すると、yast2-samba-client を含め、関連するパッケージが42個も入りました。
続いてSamba本体のパッケージ Samba を入れます。ここでも40パッケージが追加されました。
さて、Sambaをyast で設定するためには少し準備が必要です。useradd でユーザの追加、共有ディレクトリの準備とアクセス権の設定をします。また、pdbedit でSamba用ユーザの登録をします。その後に yast で Sambaの設定をします。しかし、起動すると、図2のように cups を無効にするかどうかを聞いてきます。
図2 capsは不要
今はSamba経由で印刷することはほぼ皆無なので、最初から無効にしておいてもいいんじゃないかと思うのですけどね。
さて、一通り設定が終わり、Sambaを起動しようとしたのですが、smbdがなぜか起動しません。ログを見ると、
ERROR: failed to setup guest info.
と言うエラーが出ていました。これはSambaが使うゲストユーザの定義がないということでした。調べて見ると、普通OSをインストールしたときには、nobody というユーザが作られているのですが、このLXC環境では入っていなかったのでした。そこで、uid 65534,gid 65533 の nobody を作りました。これでsmbの起動はOKとなりました。
Category
openSUSE ,
Tips ,
サーバ ,
仮想化 |
受け付けていません
By ribbon @
2020-08-30 15:58
今年のOSCは感染症の影響ですべてオンラインになりました。京都開催のOSCもZoom+Youtube配信。openSUSEのセッションは、2020/08/28 に 「あつまれ!openSUSEユーザーの森」というタイトルで、LTに近い感じで数人がどのようにopenSUSEを使っているかを紹介するという内容でした。 おもしろかったのは、タスクバーをどこに置くか、と言う事が人それぞれだったということです。システムで決まっている位置はあるのですが、使い勝手とかを考慮して、上だったり右だったり左だったり。
自分はリモート接続で繋いだとき、実画面よりも仮想画面の縦方向が長いと、タスクバーが下にあると操作ができなくなってしまうため、常時上にしています。いわゆるMac風ですね。ただ、Windowsだと、メッセージの一部(通知)が右端にしか表示されないため、右に寄せている、という話も出ました。それはそれでしょうが無いと納得でした。
Category
openSUSE ,
イベント ,
レポート |
受け付けていません
By ribbon @
2019-12-18 00:11
セキュリティ的な観点からサーバの情報を調べるツールとしてnmapがあります。nmapを使うと、そのサーバがどのような種類かを外部から調べることができます。そこで、 nmapからopenSUSEサーバはどのように見えるかを簡単に調べてみました。
nmapはOSやディストリビューションごとにバージョンが異なります。できるだけ最新の方がよいので、openSUSE 15.1/15.0に含まれているものを使用しました。バージョンはどちらも7.70 です。 openSUSE 15.0から15.1に対してテストした結果は以下の通りです。
# nmap -O 172.31.255.189 Starting Nmap 7.70 ( https://nmap.org ) at 2019-12-14 16:42 JST Nmap scan report for 172.31.255.189 Host is up (0.00051s latency). (略) Device type: general purpose Running: Linux 3.X|4.X OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4 OS details: Linux 3.2 – 4.9
意外とおおざっぱな結果しか出ませんね。15.1から15.0へも同じ結果でした。
では、ほかのディストリビューションではどうでしょうか。手元ですぐに試せるものを試してみたところ、
CentOS 7.4
OS details: Linux 3.10 – 4.11, Linux 3.2 – 4.9
Windows 10
Running (JUST GUESSING): Microsoft Windows XP|7|2008 (87%)
Windows 8.1
Running: Microsoft Windows 2008|8.1|7|Phone|Vista
Windows Server 2012R2
という感じになりました。やはり以外とおおざっぱです。
ということで、 nmapで調べると、どの系統のOSか、という所くらいまでは分かる、という事がわかりました。
Category
openSUSE ,
Tips |
受け付けていません
By ribbon @
2018-12-15 06:32
この記事は、「openSUSE AdventCalendar 2018 」15日目の記事です。
今、諸事情でぜーんぜんアップグレードしていない、openSUSE13.2(32bit)のマシンがあります。さすがに何とかしたいのですが、最近のopenSUSE は 64ビット。アーキテクチャが違います。果たしてそのままアップグレードできるのでしょうか?
ということで、実際にどうなのか、実験してみることにしました。
まずは、openSUSE 13.2 (32ビット版)をテスト用の仮想環境にインストール。ただ、13.2は、すでにopenSUSEのサイト(ミラー含む)には存在していません。探しまくったあげく、ここ にあることを発見。ダウンロードしました。一応 zypper update も動いたので、可能な限り最新版にしておきます。
次に、Leap 15.0 のDVDイメージを仮想環境にマウントし、DVDイメージからブート。アップグレードを選びます。一応通常通り起動し、アップグレードが始まります。しかし途中でアーキテクチャが違うという警告メッセージが出てしまいました。
警告なので、ここは取りあえず「続行」を選び、先に進むことにします。その後は特に警告が出ることもなく、無事アップグレードが終わり、Leap 15.0(64ビット版)にアップグレードができたようでした。
ただ、アップグレードすると、各ソフトウェアのバージョンもかなり上がります。とえば Samba は4.2.4から4.7.10になります。当然機能差があるので、個別に変更点を吸収していく必要があります。
Category
openSUSE ,
Tips ,
その他 |
受け付けていません
By ribbon @
2018-12-07 06:42
openSUSE Leap 15.0 では、デスクトップ環境として、lqxtが使えます。lxqt 環境ではブラウザとしてfalkon が入っているのですが、これが少々よろしくありません。rclone を使って Google Drive に繋ぐ場合、ブラウザを使って認証を行うのですが、認証の画面が表示されません。真っ黒なままになります。
lxqt-config を使ってデフォルトのブラウザを変更しても、コンソールから起動する rclone には反映されず、デフォルトとの falkon が起動してしまいます。
この問題を設定ツール等で変更する方法がないか調べたのですが見つかりませんでした。ただ、回避策は見つかりました。rclone を実行しつつ strace で状況を見ていると、 /usr/share/applications/mimeinfo.cache を見に行っていることが分かりました。この中を見ると、
[MIME Cache]
application/gzip=org.kde.ark.desktop;
application/pcx=lximage-qt.desktop;
application/pkcs10=gcr-viewer.desktop;
application/pkcs10+pem=gcr-viewer.desktop;
application/pkcs12=gcr-viewer.desktop;
application/pkcs12+pem=gcr-viewer.desktop;
のように、アプリケーション指定時に動かすものを指定しています。試行錯誤の上、
x-scheme-handler/http=org.kde.falkon.desktop;firefox.desktop;
を
x-scheme-handler/http=firefox.desktop;org.kde.falkon.desktop;
に変更することで、firefoxを動かすことができました。これで、lxqt環境下でも rclone によるブラウザ認証が正しく行えるようになります。
Category
openSUSE ,
Tips ,
デスクトップ |
受け付けていません
By ribbon @
2018-05-13 08:38
GeekoをLEGOで作ってみました。
もう少し薄い色の方がいいのですが(ライム)、パーツがないので、普通の緑で作ってみました。
LEGOのGeeko