月曜日、停電が原因でip address がうまく配布できなくなったというのは昨日書いた。
火曜日の夜中、不調だったらしい。ユーザが少ないからip address配布が不調だとは思われない。
また本日、昼頃、ネットへの接続が不調だというユーザからのクレームがあり、固定ip addressで運用しているところでも接続が不安定だという報告があった。したがってDHCPサーバからip address が取得できず接続できないというわけではなさそうだ。
考えられる原因;
1)だれかが大量のパケットを飛ばしている。
2)停電でどっかのハブ、スイッチが故障して無駄なパケットを飛ばしている
3)ルータとその下のスイッチが不調
いずれにしろ、管理者は遠隔地にいてコントロールできる環境にない。N君がルータとスイッチを交換してみるといっている。可能性のあるものをひとつづつぶしていくしかない。
追記
ルータとスイッチを入れ替えたらとりあえず収まったとのことだ。本当にルータあるいはスイッチがおかしいのか、それとも配線のコネクションが悪かったのかはわからない。
負荷が少ないとトラブルは再現できないんだよね。前にもあったけど。だからといって負荷が大きいところで実験できないしね。
ブログ(WordPress)の閲覧制限
ブログをあっちの大学の学生のために建てたのだ。複数の教員が国家試験問題や同等レベルの問題を作成し携帯にメールで送りつけ、その正解と解説をwebページに公開するのだ。しかしFTPができる教員だけではないのでブログのようなブラウザから入力できるページでないとだめなのだ。
誰にでも見せるわけにはいかない。他の医療系大学/専門学校学生に利用してもらうためのページではないからな。
ブログを見るためには共通のID、パスワードが必要で、投稿は個々の教員のID、パスワードがなければならない。質問やコメントする学生は名前とメールアドレスを記入する必要がある。閲覧のために共通のID、パスワードにするのは、対象学生が180名もいるからだ。個々の学生にID、パスワードを設定するわけにはいかない。管理しきれないからだ。
閲覧制限には悪銭苦闘した。
ブログのユーザだけが閲覧できるようにするのは難しくない。プラグインがいくつかある。WordPress Plugins/JSeriesだ。「Wordpress」「認証」とかで検索するといくつも出てくる。まとめてあるページもある。これを使って学生は共通のID、パスワードでというわけにはいかない。これらのプラグインでログインすると、ブログ登録者の一人としてログインすることになるので、個々の学生ユーザを区別できない。
ブログのdirectoryに.htaccess を設置するのがまず思いついたことだ。できるようなことを書いてあるページがあるので信用したのだが、実用にならない。ちゃんと認証するのだが、ページが開くのに時間がかかりすぎる。Wordpressが.htaccessを独自に使うことがあるのでまずいようだ。何故か管理者でログインすると、問題はあまりないのだが、他のユーザ名でログインすると遅くて使い物にならない。これに気が付くまでに時間がかかった。ブログを納めてある上のdirectoryを.htaccessで制限してもだめだ。
あちこちさがしてようやくプラグインを見つけた。Basic Authentication Setting だ。
プラグインフォルダに入れ、activate すると「一般設定」の下にBASIC認証のパスワードの欄が出現し、ここにID:password とコロンで区切って入力すればいいだけだ。このIDやパスワードが知られてもあまり問題ないだろう。あっちの大学の関係者だけのつもりだが、どっかに学生から漏れても、掲載内容に多分問題がないからだ。著作権に引っかかる図が掲載される場合がありうる。これだけが問題だ。作成した問題の著作権はこちらにあるし、国家試験問題をコピーし転載することの著作権行使は、ユーザ限定、教育目的、引用も明らかにするということで多分ないだろう。
ネットが落ちた
昨日(11日日曜日午後9時過ぎ)に雷が落ちた。当然、管理者は自宅にいたわけでアルコールもそこそこ入っていたわけで、上の階でなんかやっているんかな、うるさいな と思ってねてしまったわけだ。翌朝、こっちの大学に出勤して気がついたのだが、大学では雷のため停電(1分以内)があったらしい。
このサーバはUPSのおかげでなんともなかった。医学ネットの基幹であるルータとスイッチが何故かわからないが動作がおかしくなったようで、電源が回復してももとに戻らなかったようだ。
管理者のパソコンはmikeと同じネットワーク上にあるので、そして、mikeのネットも大学の基幹ネットは問題なかったし、サーバは学情にあってこれも問題ないし、出勤してきても、医学のネットワークが落ちているのに気がつかなかった。9時すぎて基盤室の職員がつながらないといってきた。
症状がip addressが取得できないということなので、ルータとスイッチを再起動した。それでもだめだ。一部いいらしいがほとんどがだめである。というわけで、外部管理業者に連絡して対応してもらうことにした。それが昨年のサーバ移行の大きなメリットだからな。で、原因をさぐると、 ip address の要求が多すぎてルータがオバーフローしてしまうようだ。昨晩の停電回復時にリセットすれば、要求が少なかった、朝になってユーザがパソコンをたちあげても、時間がばらばらなので要求が多すぎることはない。しかし、今回は、時間がたって、多くのユーザがip address を取得できないので、どんどん要求を繰り返すことになり、過負荷になってしまったのだろう。
各セグメントを遮断し、セグメントを1つずつ順番に時間を置いて接続していけば、なんとかなる。今回はそうしないで、いままでDHCPサーバをルータにしていたのだが、スイッチに切り替えて対応した。スイッチはアドレスを合計で2048 ヶしか配布できない。35セグメンもあるから1セグメントに50ヶしか配当できないのだ。しかし、各研究室にルータが普及してきたので、なんとかなるだろ。
明朝、出勤する前に、元に戻すことにした。要求が重ならないと思うからだ。
今後もあり得る事態なので、ユーザには固定ip addressを使うように指導することにする。ノートとかを使うユーザのためにDHCPサーバを運用していけばいいのではないかということにした。
ネットのトラブルは月曜日に生じる(判明)するのだ。雷が日曜日を選んで落ちたのが、けしからんのだ。月曜日でなかったら、今の勤務状況では管理者が動き回れないから回らなくてすむのに。
MacOS X Lion の再インストール
ネットでApple ID を使ってLionのアプデータを購入し、10.6 からアップデート/インストールするとApp Store での表示はインストール済みとなってしまって再度インストールできない。
購入済みのページで OS X Lion が「インストール済み」となっていたら、ライオンのアイコンをオプションキーを押しながらクリックすると、インストールできる画面に移動する。 インストールを実施する。時間がかかるからしばらく待つ。トイレや寝てはだめだ。インストーラが立ち上がったら、コマンド+Q でインストーラを終了させる。そのままだと再インストールが実施されてしまうからだ。我慢、我慢。
アプリケーションフォルダに「Mac OS X Lion インストール.app」があるので、右クリックして「パッケージの中身を表示」させ、「Contents」→「SharedSupport」と進む。このフォルダの中にある「InstallESD.dmg」というファイルがライオンのイメージファイルとなる。これをデスクトップにコピーペーストする。生DVDーRを挿入し、ディスクに名前を付け、ディスクユーティリティで「ディスクを作成」で、InstallESD.dmgを指定するとDVD-Rに書き込むことができる。再インストール用のメディアが完成する。
Dreamweaverのアップデート
MacをLionにアップデートしたらAdobe CS3 のIllustratorが起動しなくなってしまった。ま、古いアプリだからな、しょうがない。CS5.5を新規インストールすることにした。とりあえずCS3のappはアプリケーションフォルダからはずしておいて、新規にCS5.5をインストールしたわけだ。
あ!!、Dreamweaver のサーバの設定はどうする??いちいちサーバの設定をしないといけないのか?あとのアプリの設定はあまり変化させていないし、なにをデフォルトから変えたかも記録も記憶もないので、デフォルトのままでいい。しかし、Dreamweaverのリモートサイトの設定は面倒だ。いくつもあるんだよね。サーバが2台あって、ユーザ名が異なるサイトをいくつか管理しているんだよね。
探したら、方法が書いてあるサイトがあった。これを参考にした。
MacOSX 10.7 Lion になったらマウスのホイールが
Mac を Lion にアップデートした。
マウスのホイールの向きが逆になってしまった。Apple無線マウスはトラックパッドと同じなので、指を向こうから手前に動かすと、画面は上から下にスクロールする。つまり指を手前に動かすと画面は上から下にスクロールする。マウスホイールも同じに指で向こうから手前に回転させると画面が上から下にスクロールするのだ。上のほうで表示されていない部分が下にさがってきて見えるようになる。
いままでとは逆だ。いままでは、windowsと同じくホイールを指で向こう側から手前に回転させると、下に隠れていいる画面が上にあがってきて表示される。
Mac と Win を同じキーボードとマウスで切り替えて使っているから、混乱する。
機能設定で「スクロールまたは移動するときに、コンテンツを指を動かした方向に移動させる」のチェックを外せばいいだけだが、AppleはiPadとか、Apple無線マウスがデフォルトの設定にしてしまったようだ。
MacOSX Lion で自分のLibrary が見えない
くそなんでAppleはこんなこと変更するんだ。
通常 /Users/[]/Library/ の中にあるファイルはアクセスすることはない。各種プログラムの初期設定とか変更を加えたことが書いてあるファイルが置かれているところだからだ。しかし、アクセスする必要がある。Lionの新しいマシンを購入し、Thuderbird をインストールし、古いマシンの設定とかメールを新しいマシンに適用したいとき、Thuderbirdの設定ファイルは~/Library/にあるからだ。
しかしLionではデフォルトでLibraryが見えない。探したがない。ターミナルで見ればあるのがわかるのだが、隠しててある。これを見えるようにするためには、ターミナルで
chflags nohidden ~/Library/
と書き換える必要がある。もとに戻すためには
chflags hidden ~/Library/
だ。もちろん、今ログインしているユーザのLibraryだけに適用される。
Finderで移動のプルダウンメニューが表示されているときOptionキーを押すと表示されるから、ターミナルを使いたくなかったらこっちにすればいい。
WordPresssコメント投稿のエラー
コメントを入力するとき、名前とメールアドレス、コメントがないと、デフォルトではエラーページに飛ぶ。
そうではなくて、コメント入力ページでエラーを示すことができるプラグインがあった。
Comment Validation だ。エラーメッセージが英語で出てくるので日本語に変えた。空欄が赤くなるから別に英語のままでもいいんだけど。別のブログを建てたのだが、そこの利用者は英語ができないからね。英語ができるようになってほしい利用者なんだけどね。
プラグインの編集で comment-validation.js の中の文字列を日本語にしただけだ。2行目の
var errorContainer = $(”
Please fill out the required fields“).appendTo(“#commentform”).hide();
を
var errorContainer = $(”
欄の中に正しく入力してください“).appendTo(“#commentform”).hide();
としただけだ。
メールアドレス部分が空欄だと» Please enter a valid email address.というメッセージも合わせて出てくるのだが、日本語に変えたら出てこなくなった。なんでだ?Please enterという文字列がみつからないんだよね。ま、このままでいいのでさらに追求しないことにした。
このプラグインを含め権限は755でよかったような気がするが777にしないと編集できなかった。
このブログでなくて、別のブログに導入したのね。
WordPress カテゴリーの順番
WordPress のほとんどのテーマでは投稿をカテゴリー別に分類できるようになっている。右か左のコラム(sidebar)にある。たいていの場合、デフォルトはアルファベット順だ。これを任意に変更するのためのプラグインがある。
My Category Order だ。plugin にアップロードして有効化(activation)すればいいだけだ。「投稿」の部分にMy Category Order が表示されここで設定できる。サブカテゴリーの順番も設定できる。
しかし、カテゴリーがwidgetから挿入されたのではなく、theme にすでにある場合は、sidebar.php 等を変更しないと使えない。例えば dark-laptop というtheme の場合、sidebar.phpの記述で、
<h2><?php _e(‘カテゴリー’); ?></h2><ul><?php wp_list_categories(‘sort_column=name&title_li=’); ?></ul>
これを
<h2><?php _e(‘カテゴリー’); ?></h2><ul><?php wp_list_categories(‘orderby=order&title_li=’); ?></ul>
とする必要がある。
blog 作成手順ー何回やっても憶えていない
1)http://example.com/phpmyadmin/にアクセス
MySQL のID、とパスワードを入力
2)新規データベースを作成する の欄にデータベース名を入力
たとえばpotblogとする。作成ボタンをクリックすると作成したとのページが出てくる。右上の特権のタブをクリックして開く。
新しいユーザを追加する場合
3)root の欄の右端の編集アイコンをっクリックする。右上の特権のタブをクリックして開く。
4)ユーザ一覧がでてくるから一番下にある「ユーザを追加する」をクリックする。
5)ユーザ名:「テキストフィールドを使用」を選択し、xxxxx と入力する。ホスト:localhostを選択する、パスワード:「テキストフィールドを使用」を選択し、xxxxxxと入力する。グローバル特権はすべてチェック 実行する ボタンをクリック。これでデータベースが一応できた。
すでにあるユーザに新規のブログの権限を与える場合
3)ユーザの欄の右端の編集アイコンをっクリックする。右上の特権のタブをクリックして開く。
4)ユーザ一特権を修正するページが出てくるから、データベースへ特権を追加するから、新規のデータベース、この場合pot/_blog を選択する(_の前に が自動的に挿入されているが無視していい)
5)データベース特権はすべてチェックし 実行する ボタンをクリック。これでデータベースが一応できた。
6)サーバにblogを掲載するdirectoryを用意する。例えば、新規ユーザ(abc)を作成し、公開用directoryを作成する。mike の場合/Users/abc/Sites/blog である。FTPあるいはDreamweaverのようなページ作成ソフトでアクセス可能なことを確認する。シンボリックリンクを張っておく。つまりmike.md.tsukua.ac.jp/abc/ がUsers/abc/Sites/blog になるようにしておく。
7)wordpress をダウンロードし、wp-config-sample.php をコピーしwp-config.phpと名前を変えてペーストしてこのファイルの22行目以降をmi 等のエディタで変更する。