VNCからXDMCP接続画面につなぐ

By ribbon @ 2016-01-11 17:12

昔は、リモートからXを使う場合、手元のマシンにXサーバを入れてつないでいました。LinuxをはじめとするUnix系OSであれば、標準でXが入っているため問題はなかったのですが、Windows OSの場合は、Xサーバソフトを入れないと使えません。Windows用Xサーバソフトは現在も何社から販売されていますが、そこそこな値段がするため(数万以上)おいそれと使うわけにはいきません。そこで、自由に(=無償で)使える、VNCを使って同等の事が出来るようにしてみました。

作業手順については、
https://www.ibm.com/developerworks/jp/opensource/library/os-multiuserloginsvnc/ にほとんどまとまっています。ここに書いてある通りにすれば、間違いなく動きます。

ただ、1つ注意すべき事があります。いくつかあるディスプレイマネージャのうち、LXDEはXDMCPプロトコルに対応していません。ですので、VNCから使おうとしても繋がりません。GDMかKDMに切り換える必要があります。

最近の OSC のセミナーで紹介していた Snapper で作成した Btrfs ファイルシステムのスナップショットを Samba で公開し、「以前のバージョン」のファイルにアクセスできるファイルサーバーが、CentOS でも 7.2 になって構築できるようになりました。

Snapper は openSUSE 傘下のプロジェクトで、設定しておいたルールに応じて、自動的にファイルシステムのスナップショットを撮ってくれます。Samba 4.2 以降で、Samba と Snapper が vfs_snapper で連携できるようになりました。細かい話は OSC 京都のスライドをチェックして下さい。

では早速インストールしてみましょう。ポイントは SELinux への対応です。(まさか、無効にしていないですよね?) ここは openSUSE ユーザ会の Blog ということで、細かい CentOS の解説は行わないことにします。

とりあえず、samba と snapper をインストールします:

共有するディレクトリ /srv/share を作成します。以前のバージョンに対応した共有ディレクトリは Btrfs の(サブ)ボリュームである必要がありま。アクセス権は実際に使用する環境に合わせて変更して下さい:

SELinux で Samba サーバーが /srv/share にアクセスできるようにします:

Samba サーバーの設定をします。今回は /etc/samba/smb.conf に次のような設定を追加します。
最後の vfs objects の設定がミソです:

Snapper の設定をします。スナップショットの残し方の設定は openSUSE と共通なので、スライドを参照して下さい:

ユーザアカウント geeko がスナップショットにアクセスできるようにします。設定ファイルの直接編集も可能です:

Samba サーバーを立ち上げましょう。まずはファイアウォールを開けて:

サービスの自動起動設定をし、smb サービスを開始します:

ユーザー geeko を Samba サーバーのユーザーに追加し、パスワードを設定してログインできるようにします。

あとは Windows からアクセスして、右クリックして、「以前のバージョン」タブを開くだけ…なのですが、なんと Samba サーバーが Snapper に接続する際に、SELinux が拒否してしまいます。次のようなログが /var/log/audit/audit.log にしっかり記録されています:

Samba から Snapper にアクセスを許可するポリシーを作成してみます。次のような samba-snapper.te を作成し

ルールをビルドします:

作成した samba-snapper.pp をシステムにインストールすると、以前のバージョンにアクセスできるようになります。

CentOS で以前のバージョンに対応したファイルサーバーを構築する方法を紹介しました。ぜひ、スライドで紹介している openSUSE で YaST を使った設定と比べてみて下さい。

8月7日から8日にかけて京都リサーチパークで開催されたオープンソースカンファレンスに出展しました。全体での来場者数は1日目は400名、750名とのことです。

セミナー
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編

OSC のブースで YaST の説明をしていると、「これは便利そうですね」という声を頂くことが多いため、YaST を中心に解説するセミナーを行いました。聴講者は15名程でした。

スナップショットツール Snapper + Btrfs + Samba で、ファイルサーバーを構築するストーリーで YaST の使い方を紹介しました。一応補足しておきますが、Snapper や Btrfs 自体は Debian 8 や CentOS 7 でも使えます。

いつでもファイルを昔の状態に戻せる、Windows の「以前のバージョン」機能に対応したファイルサーバーを YaST でかんたんに構築する事例を紹介します。

YaST は世界的に使用されている Linux ディストリビューション openSUSE の設定ツールです。設定ファイルを vi で開いて編集しなくても、各種設定が行えます。OS のセットアップはさくっと終わらせて、他のことに時間を使いませんか?

現在開発中の LTS 版やローリングリリースの Tumbleweed など、openSUSE の最近の動向も紹介します。

トピック: Samba サーバー、ユーザーの管理、ネットワークの設定、ディスクの増設

セミナーの最後でじゃんけん大会を行い、Lサイズの openSUSE T シャツを1名の方にプレゼントしました。(Tシャツの写真は後半に)

YaST はディスプレイが繋がっていなくても(SSHでコマンドラインを使っている場合でも)Curses による TUI で、同じ画面構成で操作できることが伝わっていない感じがしますので、今後、もうちょっと工夫してアピールしていきたいなと思います。

VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編 from Fuminobu Takeyama

ブース

今回はドイツのニュルンベルグから openSUSE グッズを送ってもらい、電球型ボールからコマンドのチートシートになっている小冊子、ステッカーを配布しました。いつものようにたくさんのちびギーコたちが配布していました。

また、日本openSUSEユーザ会の独自キャラクター「ぎーこ」の被り物を制作し、会場にいたスタッフや斜め向かいのおーぷんここんの島田さんが交代で着ていました。実は、衣装はワンピースを含む全身を用意してあり、今後 OSC 東京などで(涼しくなったら)披露する予定です。

P1070275P1070278P1070281P1070288P1070319P1070324P1070331

この方法で、どのような条件でも確実にインストールできるか怪しいですが、本家 wiki にも書いていないので紹介します。依存パッケージが入らないケースがあれば教えてください

  1. openSUSE 用の RPM を Skype のウェブサイトからダウンロード
  2. ダウンロードしたファイルのあるディレクトリへターミナルで移動し、次のコマンドを実行(ファイル名はダウンロードした実際のファイル名に合わせてください)

openSUSE 13.1 で mikutter を使う

By ftake @ 2013-11-29 13:39

2014/06/03 必要なパッケージを追加

mikutterは ruby で記述されたオープンソースの Twitter クライアントです。

残念ながら、今のところ openSUSE 向けの保守されているパッケージはありませんので、開発元から提供されているアーカイブからインストールする事になります。注意する点は GTK の ruby バインディングをインストールする必要があることです。

まず、ビルドに必要なコンパイラなどの開発ツール一式、依存するライブラリのヘッダファイル類、mikutter が使う notify-send コマンドをインストールします。

次に、ruby-gtk2 をインストールします。ruby-gtk2 は rubygem でインストールします。

ここでは、ホームディレクトリの下に apps/mikutter というディレクトリを作り、そこにインストールします。

mikutter のアーカイブは「ダウンロード」フォルダに保存してあるものとします。ファイル名は実際にダウンロードしたファイルに合わせて下さい。

次のようにして起動できます

2回目以降の起動は、~/apps/mikutter/mikutter.rb へのショートカットを作成するのが良いでしょう。

TeXLive 2012 で pTeX を使う

By ftake @ 2013-05-31 02:29

openSUSE 12.3 では、TeX Live 2012 になり、導入の方法が少し変わりました。 卒論シーズンを迎える前に、日本語を扱える TeX 処理系の1つ、pTeX (platex など) のインストール方法を紹介します。

TeXLive 一式と、pTeX を入れるには、zypper であれば、次のコマンドでインストールできます。なお DVD には含まれていないパッケージのため、インストール時にはネットワークへの接続が必要です。 (YaST であれば、ソフトウェアの管理から texlive-ptex を入れて下さい)

これで platex などのコマンドは使えるようになりますが、dvipdfmx で PDF に変換する時にフォントが埋め込まれません。PDF に IPAex フォントを埋め込むのに必要な ptex-ipaex.map ファイルは、TeXLive 2012 に含まれていますので、以前のように自分でファイルを書く必要はありません。 TeXLive を構成するファイルがどのパッケージに属しているかを検索するには zypper wp ‘tex(ファイル名)’ が使えます。ptex-ipaex.map では次のようにして、texlive-jfontmaps に含まれていることが分かります:

‘tex(ファイル名)’ はインストールするときにもそのまま使えます:

インストールしたら、dvipdfmx が自動的にフォントを埋め込むように設定します

また、日本語でドキュメントを書くときに、旧来の jarticle.cls ではなく、jsarticle.cls を使う人も多いでしょう。これも同様にインストールできます。

残念ながら TeXLive には含まれていない TeX パッケージもあります。(日本語を含むソースコードのフォーマットに便利な jslisting など)そのような TeX パッケージは ~/texmf/tex の下に配置すると良いでしょう。

16日に日本 Microsoft で行われたオープンソースカンファレンス.Cloud に参加してきました。当日は衆議院選挙の日でしたが、OSC 会場ではクラウドインフラ用(ゲスト)OS 総選挙を行いました。

この総選挙ではクラウドインフラ(EC2, Azure, VPS, …)のゲストに導入している OS と、その OS の理想とするサポート年数(パッチ提供期間)を投票してもらいました。使用用途での分類もしました。

投票結果

「お仕事・本格的」カテゴリでは、事前の予想通り CentOS がトップとなり、RedHat Enterprise を使っている方もいるようです。興味深いのはサポート期間で、

  • クラウドでも長ければ長い方が良い
  • 仮想化するとハードウェアが壊れても使い続けられるので長くなりそう
  • Web フレームワークのサポート期間が3年くらいなので、OSもそれくらいで十分
  • ハードウェアの減価償却で5年+α 欲しい

などの意見があり、3年以内と、5年、それ以上に分かれるようです。5年以上となると、やはり Enterprise 版の出番かと思いますが、3年であれば、コミュニティサポートのディストリビューションでも考えても良いのでは無いかと思います。(openSUSE には Evergreen と呼ばれる LTS サポートチームもあります)

個人的な用途や研究開発ではサポート期間は特に関係ないという意見が占めました。openSUSE 表が7票入っていますが、そのうち4票はユーザ会関係者以外により投じられています。また Ubuntu の割合も多くなっています。

最新号の Geeko Magazine では SUSE Studio を使ってカスタマイズ済の openSUSE のディスクイメージを作り、VPS と Azure 上に簡単に仮想マシンを構築する方法を紹介しました。後日公開予定です。

Tips: Zypper が遅い…そんなときは?

zypper コマンドで search や install をするのに、実行後出力が出るまで待たされることは無いでしょうか?

Zypper が裏で何をしているか、何に時間がかかっているかを知るには、-v オプションを使います。

$ zypper -v search ibus
冗長性: 1
オプション以外のプログラム引数: ‘ibus’
ターゲットを初期化しています
取得しています: repomd.xml ………………………………..[完了 (548 B/s)]
取得しています: content ……………………………………………[完了]
取得しています: media ……………………………………………..[完了]
取得しています: content ……………………………………………[完了]
取得しています: media ……………………………………………..[完了]
取得しています: repomd.xml …………………………………………[完了]
取得しています: repomd.xml …………………………………………[完了]
リポジトリのデータを読み込んでいます…
インストール済みのパッケージを読み込んでいます…
強制的な解決: いいえ (N)

S | 名前 | 概要 | 種類
–+————————————–+———————+—————–
i | ibus | Linux OS 向けイン-> | パッケージ

遅くなる大きな原因はリポジトリの自動更新です。リポジトリの自動更新を有効にすると、上記の例の場合は、検索をする前に、リポジトリの内容が変更されているかをサーバーに問い合わせ、変更されていればリポジトリの情報を取得し直します。 software.opensuse.org の 1-click インストールで、たくさんのリポジトリを登録している場合、これらのリポジトリを1つ1つ調べに行くので、時間がかかります。

手っ取り早い解決策は自動更新を無効にすることです。zypper コマンドからであれば

$ zypper mr –no-refresh リポジトリ番号or名前

で指定したリポジトリの自動更新を無効にできます。リポジトリ番号は

$ zypper repos

で確認できます。もちろん YaST からも変更できます。

自動更新を無効にすると、適当なタイミングでリポジトリの情報を取得しなければいけません。サーバーなどであれば

$ zypper refresh

を、検索やインストールする前に1回だけ実行して下さい。デスクトップであれば Packagekit が定期的にリポジトリの更新を行っていますので、上記のコマンドはあまり必要ありません。

参考: 覚えておきたい! zypper コマンドの使い方