の形で呼ぶ。
//
// anchor_idはフレームを使う場合最低限各フレームごとに設定。お互い他のフレームを書換えたときにへんな干渉をさけるため。
// その他ページの種別毎などで変えてもよいが、あまり小分けにするとcookieが増える。
// 同じanchor_idで保存されるcookieは1セットのみ。でも単独ページ表示のサイトなら概ねこれで充分。
anchor_id = "anc_main";
noanchor = false; // bodyにanchorをしかけたときなど場合によって一時無効にするためのフラグ。
// アンカーの記憶。
function anchor_save(object_id, page_id) {
if(noanchor) { anchor_erase(); return; }
get_scroll();
setcookie(anchor_id+"_pid", page_id, 0);
setcookie(anchor_id+"_st", scroll_top, 0);
setcookie(anchor_id+"_sl", scroll_left, 0);
if(object_id) {
object_top = scroll_top + get_object_top(object_id);
object_left = scroll_left + get_object_left(object_id);
setcookie(anchor_id+"_oid", object_id, 0);
setcookie(anchor_id+"_ot", object_top, 0);
setcookie(anchor_id+"_ol", object_left, 0);
} else {
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
}
// アンカーの適用。
function anchor_apply(page_id) {
if((saved_page_id = getcookie(anchor_id+"_pid")) && page_id != saved_page_id) { return; }
get_scroll();
if((anchor_st = getcookie(anchor_id+"_st")) != "" && (anchor_sl = getcookie(anchor_id+"_sl")) != "") {
anchor_st = parseInt(anchor_st);
anchor_sl = parseInt(anchor_sl);
} else {
anchor_st = scroll_top;
anchor_sl = scroll_left;
}
if((object_id = getcookie(anchor_id+"_oid"))
&& (anchor_ot = getcookie(anchor_id+"_ot")) != ""
&& (anchor_ol = getcookie(anchor_id+"_ol")) != "") {
offset_top = (scroll_top + get_object_top(object_id)) - parseInt(anchor_ot);
offset_left = (scroll_left + get_object_left(object_id)) - parseInt(anchor_ol);
} else {
offset_top = offset_left = 0;
}
window.scrollTo(anchor_sl + offset_left, anchor_st + offset_top);
}
// アンカー消去。あえてとっておく必要がなければanchor_apply()後すぐ消去が望ましい。
function anchor_erase() {
setcookie(anchor_id+"_pid", "", -1);
setcookie(anchor_id+"_st", "", -1);
setcookie(anchor_id+"_sl", "", -1);
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
//-->
倉金家ホームページ
趣味の部屋/サーバー構築メモ その4
新しいPC、モニタなどを調達し、マシンの事前設定なども終えてサーバーOSとしてCentOS7をインストールする準備ができました。 |
|
|
ハードウェアの調達
|
-- PC ... ふつうのデスクトップPC
まずはメインのPCですが、従来どおり NEC の Mate シリーズを使うことにしました。理由は 1. | 以前から使いなれているシリーズだから。 | 2. | ハードウェアのRaidモデルがある。今までの経験からまず最初に壊れるのがハードディスクでハードウェアRaidにしておけばだいぶ安心。SSD はまだ高いし。 | 3. | 一応 MADE IN JAPAN で、しかも業務用モデルなのでこわれにくいだろうと。 |
...ほんとはXeonプロセッサーでも搭載の高性能高信頼性のサーバー専用機を使いたかったけど、少々高いもので。 で、以下のようなのを購入。 型式 | : | NEC Mate PC-MJ33MEZEJ | CPU | : | Core i5 3.3GHz 4Core | メモリ | : | 8GB | HDD | : | 500GB x 2 (RAID1) |
...Windows8.1 Pro がプリインストールされている。スペック的にはシリーズ内では低めだが、さほどアクセスの多くないインターネットサーバー機としてはこれまでの経験からこれで充分。 さらに1000BASE-TのLANカードを買ってきて取り付け。以前CentOS6をインストールしてそのあと取り付けたら認識しなかったので最初からつけておくことにしました。 |
|
-- モニタ ... テレビで代用
実をいうとモニタもここのところ調子が悪い。電源スイッチがおかしいようでなかなか電源が入らない。 スイッチを押す場所や方向を変えたりして幾度かやってやっと電源が入る。まだ10年もたってないんだけど。いちおう日本の大手サプライヤーのものだが、ラベルをよく見ると MADE IN CHINA とある。やっぱり日本製がいいな。思い切ってモニタも新しくしよう。 ...ところが最近近くの家電量販店にはモニタは売っていない。聞くとすべて取り寄せだと。この場合概ね値引きは少なく高い。(日本製でなくてもいいなら安いのもあるけど。)
で、テレビをモニタ代わりに使えないか検討してみました。 解像度の要求からはフルハイビジョングレードのもの(1920x1080px)がほしい。かといって大きなのは困る。狭い机の上に乗らない。 だめもとで売り場をつらつら眺めていたら、な、なんと、あった! SHARP AQUOS LC-22K90 というテレビ。22インチと小型のくせになんとフルハイビジョン仕様、しかも最近新しい型が出たので2万円台半ばで投げ売りしている。さっそく買った。パソコンとの接続用にDVI-MDMI変換ケーブルも購入。コネクタが違うだけで信号は同じなのでつながるはずだ。
実際使ってみるとほとんど問題はない。テレビだから画像調整機能なども充実していて見やすい。 従来のスクエアタイプに比べワイドで、ログ確認やプログラムの編集などは格段にやりやすくなった。 そしてなにより女房に居間のテレビを占領されてしまったとき、強い味方になってくれる! 強いて欠点を言えば、画面モードの切り替えにちょっと時間がかかり、起動時に画面モードが切り変る際一時メッセージが見えなくなるがたいした問題ではない。
|
-- パソコン切替器も購入
従来パソコン切替器でモニタ、キーボード、マウスなどを切り替えて使用していたが、アナログモニタ用の古いもので、せっかくPCがデジタル画像信号になっているで買い換えました。
SANWA SUPPLY の SW-KVM2DX というタイプですが、使ってみてちょっと問題が。 無線式(レシーバ式)のマウスだとだめ。カーソルが全く動かない。3種類のマウスを試してみたがみんなだめ。ワイヤ式は問題ない。 Bluetoothマウスには非対応とは書いてはあるがマウスにはBluetoothとは書いてないのでよくわかりません。 できれば無線式のを使いたいけど、ま、いいか。
|
. . . といったところでこんな感じになった。 左下…現行サーバー機。去年CentOS6で構築したもの。乗っている右奥のがパソコン切替器。 右上…今回購入したモニタ代わりのテレビ。小さいがフルハイビジョン仕様(1920x1080px)。アンテナ線を繋いだのでテレビも見れる。 右中…壊れかけている現行バックアップ用サーバー機。長年のタバコのヤニでうす汚れている。 右下…今回購入した新しいサーバーマシン。
|
インストールメディアの準備
適当なミラーサイトを選び、インストール用isoファイルをダウンロードします。 今回は、ftp://ftp.riken.jp/Linux/centos/7.0.1406/isos/x86_64/ より ftp://ftp.riken.jp/Linux/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso ftp://ftp.riken.jp/Linux/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-GnomeLive.iso などをダウンロードしました。 ネットワークインストールでもいいのですが、インストールを幾度か試してみるつもりなので面倒の少ないDVDからのインストールにします。
現行サーバー(CentOS6)のディスク作成ツール"Brasero"を使ってDVD-RWにISOイメージの作成として書き込みました。
|
BIOSの確認とセッティング
今まではBIOSのセッティングなどほとんどいじらなくてもLINUXのインストールはできましたが、今回はそうはいきませんでした。特にWindows8になってからはBIOSの段階ですでにセキュリティーがきつくなっており、そのままでは他のOSのインストールはもとよりプレインストールされているWindows8以外を起動することはできません。 確認・変更したのは以下のようなもの。(PCによってすごくちがうのであくまで参考。) 項目 | 変更前 | 変更後 | 備考 |
---|
Boot Mode | UEFI | UEFI | 変更せず。CentOS7はUEFIに対応しているのでOK。 LegacyではWindows8は(インストールし直さないと)起動しない。 | 1st Boot | HDD Windows8 | CD/DVD | このマシンではとにかくHDDのWindows8が立ち上がる設定になっていた。 | Secure Boot | Enabled | Disabled | 有効だと他のOSの起動、インストールなどはできないようだ。 | BIOS Lock | Enabled | Disabled | 停電復帰時に自動立ち上げさせるためパスワードなどは使わない。 | Security Chip TPM Support | Enabled | Disabled | 同様にセキュリティーチップは使用しない。 | Restore on AC PowerLoss | Power OFF | Last State (暫定) | サーバーとして稼働開始したときは不在時停電復帰で自動的に立ち上がるようにPower Onにするが、それまではとりあえずLast Stateに。 |
|
ディスクスペースの作成
今回Windows8.1とのデュアルブートを試してみます。Windowsを使う気はありませんが、ハードウェアがらみでファームウェアのアップデートやメンテナンスなど、メーカーからWindowsを使う以外の方法がサポートされない場合があるからです。 そのため、WindowsのC:ドライブを縮小してLinuxをインストールする空き領域を作ります。 この操作はWindowsからやっておいた方が安全そうです。 コントロールパネル - システムとセキュリティー - ハードディスクパーティションの作成とフォーマット、 もしくは コントロールパネル - システムとセキュリティー - 管理ツール - コンピュータの管理 - ディスクの管理 などでディスク情報を表示させ、(C:)ドライブを右クリックして「ボリュームの縮小」、「このPCの空き容量を増やす」などをやります。 ディスク容量はトータル500GBですが、今回Windowsに約66GBを残し、約390GBの空き領域を作りました(数字上は400GBの縮小を指定)。 Boot ModeがUEFIの場合パーティションは全部で128個も作れるとのことなので、ここで作った空き領域にLinuxシステムのパーティションをつくり、インストールすることにします。
|
もしWindowsとデータ交換するならここで先にWindowsでvfat(fat32)フォーマットの小さなパーティションを作っておけばいいでしょう。vfatなら特にソフトを追加せずともLinuxでマウントできます。 ...CentOSのインストール時にもつくれますが、パーティションの位置がうまく制御できません。できればWindowsパーティションの隣にしておきたいところ。ただこの方法ではfstabでroot以外のユーザはアクセスできないようにされるのでfstabのumaskを書き換える必要があるかもしれません。
|
いちおう以上で準備は完了です。いよいよインストールを開始します。
|
|
|