カテゴリー: Linux

  • Moodle + BigBluebutton で遠隔会議

    研究室メンバーで遠隔会議をしたいとき、Skype IDとかを教え合えば済むのかもしれないがちょっと違うような気がする。そこで、Moodleと親和性の高いオープンソースのWeb会議システムBigBluebuttonを試してみた。BigBluebuttonはOSをUbuntuに限定している。BigBluebuttonは様々なソフトウェア(Red5、nginx、ffmpegなどなど)の集合で、全てのディストリに対応するのは難しいのだろう。

    BigBluebuttonそのもののインストールは三重大学の三島先生の記事を参考にさせていただいた。三島先生ありがとうございます。Requirementには「物理サーバ」とあるが、今回は仮想環境にインストールした。既存のMoodle側についてはプラグインを解凍し、認証キーの設定をするだけである。

    この後はMoodleの「アクティビティ」に現れるBigBluebuttonを選択し追加すれば遠隔会議へのリンクが作成され、拍子抜けするくらい簡単。つまり、会議に参加する際にMoodleにログインしていれば追加の認証はなく、Moodleのユーザ名が自動で引き継がれる。つまり、MoodleのアカウントがあればBigBluebuttonで遠隔会議が可能となる。

    早速、テストを兼ねて本日の研究室ゼミに東北大学からの遠隔参加を試してみたが、接続そのものとWebCamの映像の確認はできたものの、PCのデバイスの関係か、マイクが使えずNGとなってしまった。次回はMacで試してみよう。

    2015/10/09追記:KUINS側で必要なポートが学外に開放されていないことが分かったので開放を申請中。
    2015/10/23追記:開放が完了し、WebRTCも問題なく使えるようになった。チェックするにはbbbサーバ以下の check/ にアクセスすれば良い。
    2015/12/01追記:問題なく利用できており、遠隔ミーティング、ゼミの遠隔参加など時間の有効活用ができるようになった。

  • RHEL6にMySQL5.6をインストール

    案外簡単にできたのでメモ。
    [code]
    sudo wget http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
    sudo rpm -ivh mysql-community-release-el6-5.noarch.rpm
    sudo yum update
    [/code]
    参考:

  • QNAPで自動シャットダウン/自動起動

    年に一度のことではあるが、停電対応について考えておく必要がある。QNAP NASはUPSとの連携が可能で、きちんとシャットダウンしてくれる。問題は起動である。

    1. 電源オフモード: シャットダウンはしてくれるが復電後もそのまま。自発的にシャットダウンしたとみなされるため「電力復帰」の設定は意味がない
    2. 自動保護モード: 瞬電〜数十分の停電対応にはこれがピッタリだが大学の計画停電など、UPSのバッテリーが持たない停電への対応は無理

    結論としては、電源オフモードとタイマー起動を組み合わせることとした。「計画」停電だからこそできる設定である。

    停電後15分で自動シャットダウンするように設定。15分の根拠は推定保護時間から。
    停電後15分で自動シャットダウンするように設定。15分の根拠は推定保護時間から。
    週末の18:00に自動で起動するように設定
    週末の18:00に自動で起動するように設定

    これで、QNAPを自動シャットダウン/起動マシンとし、他のホストへのWOLトリガーとする設定が完了したことになる。

  • QNAPからマジックパケット送信

    私はデータをNASに一元化しているため、これまでRDPを使う必要がなかったのだが、遅まきながらXPERIA Tablet Z2でRDPが使えることに気付いた。つまり、出張の時にPCを持ち歩く必要がなくなる。問題となるのはRDP接続先のPCをどうやってブートするかである。もちろんソリューションはWOLであるが、常時起動しているNASからマジックパケットを送出できれば便利である(NASの停電対応については別の記事を書く予定)。具体的な手順は以下の通り。

    1. QNAP NASのコントロールパネルでipkgのインストール
    2. gccなど開発環境のインストール
    3. wolコマンドのビルド(SENGOKU’s Free Software)

    あとは、ブロードキャストアドレス、MACアドレスを含めコマンドをラップするシェルスクリプトを書けば完成。

  • Cactiで複数年のデータを比較

    CactiはRRDToolをバックエンドに持ち、MRTG(古い!)より柔軟な可視化ができる優れたツールである。これで学認連携Moodle講習サイトの負荷を可視化している。昨年は400日で良いかと思っていたが、やはり比較するには2年以上の記録を残しておく必要があることに気付き、以下のように変更した。

    RRDの大きさを、すべてのスコープに渡って800日有効に設定
    RRDの大きさを、すべてのスコープに渡って800日有効に設定

    なお、この設定についてはサバカン様の技術情報をそのまま使わせていただいています。本記事は備忘のリンク元として記述しました。

    追記 2015/09/11 上記記事はリンク切れになっているようです。同様の記述はこちらにもありました。

  • Mailman の “we hit a bug!” に焦る

    研究室のメーリングリストを新規作成できず少々手こずったので備忘のためメモ。

    We're sorry って…
    We’re sorry って…

    /etc/mailman 以下のデータベースのパーミッションをちゃんと設定しておくこと。以前 Mailman を使っていたときは SuSE でこんなハマりはなかったのでだいぶ焦りました。

    [code]-rw-rw—-    1    root    mailman    3485    Jan    8    12:01    aliases
    -rw-rw-r–    1    mailman    mailman    12288    Jan    8    12:01    aliases.db
    -rw-rw—-    1    apache    mailman    3255    Jan    8    12:01    virtual-mailman
    -rw-rw-r–    1    apache    mailman    12288    Jan    8    12:01    virtual-mailman.db[/code]

  • Mahoodle (Mahara Moodle Integration) の構築

    要領が分かっていれば正味1時間でした。ここまで無償で、色々な仕事や講義の間を縫って、こんなに早くできました。さて、あなたの選択は?

    概要: Moodle の認証は Shibboleth、Mahara の IdP を Moodle にすることでSSOとMoodleへのポートフォリオ機能を追加。

    • MaharaMoodle は同じ apache httpd で共存し、VirtualHost を切る
    • ただし HTTPS 化するのは Moodle だけ (IPアドレスを追加すると課金されるため)

    目的

    • Mahara で Secure Login を実現
    • ID管理が不要

    手法

    環境

    • RHEL 6.4
    • PHP 5.3
    • Apache httpd 2.2.15
    • MySQL 5.1.69

    結果

    • まずは Moodle にログイン
      mahoodle1
    • その後「ネットワークサーバ Home – Mahara」をクリックすると…
      mahoodle2
    • ちゃんとSSOできています。
  • Moodle の Shibboleth 化 (京都大学版その1)

    既存のドキュメントが分かりにくくハマったのでメモ。Moodle側の作業はほとんど無い。

    1. shibd などのインストール: ここの通り
    2. shibboleth2.xml の編集: ここの「1. entityIDを設定します。」だけ行う。IIMCのWeb には「ただしIdPに関する情報は統合認証センターからの指示にしたがってください。」と書いてあるが不要
    3. Moodle の https 化: $wwwroot を 「https〜」 に変更するなど
    4. メタデータの作成: ここの通り
    5. shib.conf の編集: README.txt の 1.の通り
    6. Moodle の認証設定: README.txt の通り
      1. auth/shibboleth/index.php を「代替ログインURL」に設定するのを忘れずに
    7. Moodle のマニュアルログインスクリプトの作成

      [code][uep@kvm420 login]$ diff manual.php index.php
      278c278
      < /* Disable alternative login URL

      >
      299c299
      < */

      >
      304c304
      < /*

      >
      308c308
      < */

      >[/code]

  • RHEL Server 5.9 で PHP 5.4.11 & MySQL 5.5.29 (remi リポジトリ) を使う

    必要があり研究室のWebサーバのPHPとMySQLを更新することに。
    基本は remi リポジトリを一時的に有効にして yum –enablerepo=remi,epel –disableexclude=php install php* mysql* で良いはずだがここと同じエラーでハマった。i386 のパッケージを削除して解決。

    ところが、このWebが表示されないという問題が発生した。試しに、コマンドでパースできるか試すとエラー。該当のプラグインを削除して解決した。
    [code][uep@hosts02b uep]$ php index.php
    PHP Fatal error: Call-time pass-by-reference has been removed in /var/www/uep/wp-content/plugins/photo-dropper/application/core/Utility.php on line 69
    [/code]