Moodle2 管理超入門白井 達也(しらい たつや)[email protected] ([email protected])
鈴鹿工業高等専門学校 機械工学科 白井 達也
Moodle2 管理超入門白井 達也(しらい たつや)[email protected] ([email protected])
日本ムードル協会( Moodle Association of Japan:MAJ ) 日本語広報担当理事 Twitter: @tatsuva, @maj_bot
Moodle2 管理超入門白井 達也(しらい たつや)[email protected] ([email protected])
moodle.org (Japanese Moodle コース ) facilitator
略歴 専門: ロボット工学1968 年 千葉県に生まれる1989 年 木更津工業高等専門学校 電子制御工学科卒業 ( N88-BASIC, Turbo Pascal, FORTRAN77, Z80 )1991 年 九州工業大学・情報工学部 知能情報工学科卒業 ( MS-DOS, Turbo C, Prolog, AWK, パソコン通信)1993 年 九州工業大学大学院・情報工学研究科 情報システム専攻修了(修士課程) (TeX, UNIX, MS-Windows3.1, Emacs)同年 ソニー株式会社 FA ・精機事業本部 FA システム事業部 制御技術課 (PC-9821/MS-DOS, シーケンサ )1997 年 寿退社同年 広島大学大学院・工学研究科 情報工学専攻入学 (Win95/98, Borland C++ Builder, MATLAB)2001 年 修了 博士(工学)同年 鈴鹿工業高等専門学校・機械工学科着任 ( Win2k/XP, HTML, Apache)
Moodle には 2007 年 2 月に出会う (PHP, JavaScript)Linux(UNIX) や Web の専門家ではない.教育工学者でもない.
グループウェアが欲しかった
本校で2007年2月に三重大学の奥村教授が Moodle に関する講演を行なう.
研究室で使うグループウェアを探し続けていたところなので,早速,部屋に戻ってから情報収集,そのまま一気にインストール(できてしまった)
余剰のPC( Compaq DeskProEN, Pentium 866MHz, Ⅲ 30GB HDD, 386MB RAM, Windows2000)
非常に遅いが,一応,動作した.
世界中で利用されている
2003/6 2008/10
Martin Dougiamas 氏(オーストラリア)
が1999に開発開始
NIME の調査結果(2007年度)
LMS の利用状況 高専(大学) : 63.3%(34.7)
Moodle の利用率 高専(大学) : 31.5%(31.6%)
多言語化対応済み: 内部データは全て Unicode (UTF-8) に統一
開発リーダーのマーチン初来日 (2011/2 )
harahara.net/moodle.ppt
Martin Dougiamas 氏(オーストラリア)
日本ムードル協会( 2011/2 設立) 会長 原島教授(前橋工科大)
オープンソース+完全にフリーGPL に基づく(GNU General Public License)
(1) Moodle の 全ソースリストが公開されている
(2) 無料でダウンロードできる
(3) 改造(改良)が可能! 再配布も可能
http://moodle.org
タダより高いものは ...誰が責任とってくれるの!
公式に認定された企業と契約すればOK
高級すぎない(1) Web サーバ
(Apache, IIS など )
(2) PHP(サーバサイドスクリプト言語)
(3) Database (MySQL, PostgreSQL など )Java , Tomcat, JSF, Velocity, Spring, Hibernate, Ruby, Web2.0, AJAX... ?????
PHP は, C++ 言語を習得していれば,大まかに理解可能
サーバはPC1台からOK
例) mechMoodleOptiPlex210L (Dell) Pentium4 (2.8GHz) 2GB RAM, 300GB(SATA)50名弱の学生が同時にアクセス可能
OSはLinux , Mac OS, Windows が利用可能!
余っているPCはありませんか?
自分だけのサーバを持つ意味は?
1.学校が動くのを待っていられない
2.何ができるのか“徹底的に” (=壊れるまで)試してみたい
3.人に管理されるのは嫌いだ
4.コンテンツの作成・チェックを手元で行いたい (完成したらセンターにアップロード)
5.単なる新しいもの好き/負けず嫌い
Moodle による学校ポータルサイト構築
全世界 221 の国と地域
• オープンソース [GPL] のeラーニングシステム → (安価)+(手軽)+(高性能)• 仮想学習環境( Virtual Lerning Environment : VLE ) 学校向けグループウェア/SNS≒
学習用途だけでは勿体ない!
CAI,コースウェア,ビデオ・オン・デマンドの遠隔学習教材
特に,教材 だという誤解を払拭したい
本日の話の流れは
http://f.hatena.ne.jp/pacsolution/moodle%E3%81%9F%E3%82%93/http://www.moodle-collegium.org/?p=1
moodle たん
• データベースと コースファイル
• 言語パックと独自の翻訳• とても重要な config.php• プラグインの追加で機能向上• ソースの改造は怖くない?• Moodle の更新方法• 困った時には誰に聞く?• 重要な設定項目について
データベース と コースファイル
•ソースファイル(ファイルシステム)•コースファイル(ファイルシステム)•データベース( MySQL など)
(1)ソースファイルMoodle サイトのWeb サーバ( Apache など)からアクセス可能な領域に
• config.php :重要な設定ファイル(後述)• moodle 本体 : PHP, HTML, JavaScript, CSS
基本的には静的なファイル群(クラッキングに注意!)
(2) moodledataMoodleのサーバ上のファイルシステム( Moodle1 と Moodle2 では管理方法が大きく異なる)
• 言語パック( lang )• コースファイル• その他のデータやワーク用
基本的には動的なファイル群(読み書き)
(2) moodledata【Moodle1】 特に工夫は無し(ユーザデータのみ特殊な管理)
【Moodle2】 フルパス名をハッシュ値に変換+データベースの利用
Moodle1 では OS の仕様により不具合発生• ファイル名の文字化け• ファイル名の最大長• フォルダ内の最大ファイル数 など?
(2) moodledata
(2) moodledata
moodledata/5/moddata/forum/1/4716/Sample.jpg (例) コース ID 5のコース内の フォーラム ID1 のフォーラムに投稿された ディスカッション 4716 の添付ファイル Sample.jpg
0000aaa40d6a0639103b757d1dc8a993366e0a1afmoodledata/filedir/00/00 に保存される + ファイルの情報はデータベースに保存される (元のファイル名,タイムスタンプなど)
(2) moodledata【Moodle2 の新しいファイル管理法の長所/短所】 日本語 Windows ( Server )をサーバに用いても OK
一方,コース ID から目的のコースへ ftp などでファイルを一括アップロード(更新)することが不可能に! -
例) コース ID 5のコース内のコースファイル領域に, wave というフォルダを作成し, 100個の音声ファイルをアップしたい
解決手段) 100個の音声ファイルを ZIP書庫にまとめてアップし, Moodle上で解凍する (一度にアップロードできるファイルサイズの上限を考慮…)
(3)データベースさまざまなデータが記録されている.ただし,ファイルは全て moodledata に保存.
データのバックアップ
Moodle のバックアップ機能でバックアップされるのは,moodledata 内の各コース内の電子ファイルのみ
コースの教師にはメリットがあるが管理者にはほとんど意味が無い
サーバのバックアップを行う(皆さん,お詳しい?)
XAMPP の場合は, Apache/MySQL を停止して,フォルダごとバックアップするのが楽
言語パック と 独自の翻訳格納する場所( moodledata/lang ) は同じだがフォルダ名が異なる
・ Moodle1系では, ja_utf8・ Moodle2系では, ja
いつ更新? ・ 自分でダウンロードしてインストール ・ Moodled上で手動操作 ・ Moodle のアップグレード時
【日本語言語パックの更新】吉田光宏氏(有限会社ミツテックコンサルティング)が2002 年 11 月より一手に引き受けてくれています.感謝!
言語パックの在処は?
言語パックの在処は?
言語パックの在処は?
言語パックの在処は?
言語パックの更新方法
(注意) 更新する際に, いまある moodledata/ja を削除して, ダウンロードした ja.zip を展開する
言語パックの詳細
言語パックの詳細
翻訳のミスを発見したら, Japanese Moodle コースへ報告 → 吉田さんが修正
ローカルな翻訳の変更
ja_local というフォルダが作成される(更新の対象外)
例)操作 → アクション
ソースコードの中では?
get_string(‘見出し語’ , ‘ 言語ファイル名’ )同じ見出し語でも違う言語ファイル名ならば別の単語
その他の話(1) プラグインの言語ファイルは? 各プラグインのフォルダ内のlang
(2)英語の言語ファイルは? Moodle のソースファイルに同梱
その他の話(3) GD 2が用いるフォントファイルは? lib/default.ttf (ただし,これは小さ過ぎる?)
その他の話 (moodle/lang/en/font)Fonts-----
GD font operations need unicode capable font to do the server-siderendering of text. Default font lib/default.ttf (FreeSans Mediumrevision 1.76 from http://savannah.nongnu.org/projects/freefont/)is suitable for most languages.Unsupported languages may add special fontlang/xx/fonts/default.ttf, it will be used for that language only.
If you want to override the default font dirroot/lib/default.ttf,save another one as dataroot/lang/default.ttf - it willbe used for all site languages without it's font file.
The list of suitable TrueType fonts can be found at:* http://en.wikipedia.org/wiki/Unicode_fonts*http://www.alanwood.net/unicode/fonts.html#general
とても重要な config.phpMoodle の最も重要な設定ファイルです( moodle/config.php )
編集するときの注意事項(1)絶対に他人に見せてはいけない$CFG->dbpass$CFG->passwordsaltmainなどを知られてはいけない.特に dbpass は最重要.(2)“メモ帳“は絶対にダメ文字コードは UTF-8BOM ( Byte Order Mark )が記録されていると誤動作(秀丸エディタは問題なし)
(3)ファイルの頭とお尻に余計な文字等を入れない ・ <?php の前 ・ ?> の後
dbpass を守るためのテクニック外部ファイルからインクルードする
dbpass を守るためのテクニックmoodledata/config/dbconfig.php
もし, dbpass が未設定ならば,速やかに MySQL の root アカウントにパスワードを設定する!
(誰でも root アクセスできてしまう)
プラグインの追加で機能向上moodle.org に大量にアップロードされている
インストール方法( Moodle Adminer)
バージョンを合わせて検索
ダウンロードする
ZIP書庫の中身を moodle/localへ
「通知」を忘れがち
インストール予定→データベース更新
これでやっと利用可能
Moodle のデータベースを操作可能
Moodle のデータベースを操作可能
Moodle のデータベースを操作可能
プラグイン等を追加する前にお勧めのプラグイン: Lightbox galleryhttp://moodle.greenhead.ac.uk/external/lightbox_gallery/
プラグイン等を追加する前にお勧めのプラグイン: Lightbox galleryhttp://moodle.greenhead.ac.uk/external/lightbox_gallery/
Moodle2版の公開が遅れた → Moodle2 にアップグレードできなかった
他にも,NanoGong など,メジャーなプラグインも対応が遅れた.
【そのプラグインのサポートはきちんと行われていますか?】
ソースの改造は怖くない?moodle/lib/moodlelib.php あたりを良く読む
$COURSE, $USER, $CFG など代表的な変数を理解する
C 言語 /C++ 言語が読めるのならば理解できる
サーバサイドスクリプト言語であることを理解する
エラー表示(サイト管理ブロック/開発/デバッグ)を有効にする
Apache のエラーログを読む
config.php を include() すれば最低限の関数は利用できる
サイト管理ブロックにメニューを追加するのは難しくない
詳しい情報は…http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
(1) ID表示(リンク付き)
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
(ID: 10335) を選択,コピーして…
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
それを投稿本文にペーストすると…
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
先ほどの“別の投稿”へのリンクが完成!
このリンクをクリックすれば…
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
先ほどの“別の投稿”へ ジャンプする.
(ポイント)・フォーラム投稿間の相互参照が 活発に行われるようになる.
・特別な知識は不要.
少ない投資で, 大きな効果,間違いなし!
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
(1) ID表示(リンク付き)
mod/forum/lib.php
Moodle の更新方法本格的に運用している場合は慎重に
1.moodledata, MySQL のバックアップ2.moodle.org から最新の Moodle のソースファイルをダウンロード
3.(念のために) moodle/config.php をバックアップ
4.moodle フォルダをそのまま差し替える5.config.php を書き戻す6.管理者でログインする
(アップグレードが始まる場合がある)7.サイト管理ブロックの「通知」をクリック
ソースファイルを修正している場合
(a)修正箇所が少ない場合:手作業で
(b)修正箇所が多い場合:・現在の moodle に,最新版との差分をマージ
A) WinMerge.exe など B) Subversion など
“衝突“している箇所のみ手作業で慎重に.
困った時は誰に聞く?moodle.org の Japanese Moodle コースへ
フォーラム
フォーラム(すべてのフォーラム一覧)
Japanese Moodle コース
投稿するにはユーザ登録
「ログイン」から“新しいアカウントを作成する”
投稿する前に一読
投稿マナーについて
気軽に質問して下さい
適切なフォーラムに投稿すると,良い回答が得られやすい.
Twitter (@jamoodle) に通知
投稿(新規,返信)があると,Twitter にツイートが流れる( RSS も可)
Moodle Moot Japan に参加しよう
第1回 函館第2回 函館第3回 高知第4回 三重第5回 東京(次回)第6回 ?
日本ムードル協会(2011年2月設立)Moodle HQ に正式に認められた非営利の任意団体(Moodle Association of Japan : MAJ)
MAJ の主催する年に1回の研究集会基調講演事例発表教育研究,工学研究システム管理企業展示ワークショップ交流会etc...
Moodle Moot Japan に参加しよう
http://moodlejapan.org
他にもTwitter: ・ jamoodle (先ほどの) ・ maj_bot ( MAJ 公認 ? )Facebook : ・グループ(要アカウント) ・公開ページ(誰でも OK ) http://www.facebook.com/moodlejapan
Moodle Tokyo Cafe, Nagoya Cafeお茶を飲みながら楽しく情報交換各地で定期的に開催しませんか?
名古屋(第1回) 12月8日(土)
東京(第4回) 11月下旬
重要な設定項目について
fs_moodle の情報を得るならば
Moodle の情報を得るならば
白井達也の情報を得るならば
白井達也に連絡を取るならば
http://moodle.org/
http://www.suzuka-ct.ac.jp/mech/moodle/course/view.php?id=30
http://www.suzuka-ct.ac.jp/mech/ai_mech/~shirai/index.html
[email protected] : tatsuva (not tatsuya)