Crontabでエラー bad minute, bad hourがでる
- 分、時、日、月、曜日すべて正しい範囲内か(順に0-59,0-23,1-31,1-12,0-7)
- 自動改行がされていないか(処理系によるが一定の長さ以上になると自動改行される(折り返しではなく本当に改行が入っている))
デフォルトの解像度を変更する
デフォルトは800x600なので1440x900にする。
解像度がGNOMEのツールバーの「システム」⇒「設定」⇒「画面の解像度」から
選べるようになっていたのでそこで1440x900を選ぶとすぐ反映される。
しかしこの方法だと
- 各ユーザーで設定しなければならない
- ログイン画面が800x600のままで気持ち悪い
- 文字サイズが相対的にでかくなる
などなど面倒くさい事ばかりなのでデフォルト値を変更する。
手順
エラー"Your system had a kernel failure"
初っ端から何だか怖そうなエラーがでました。
VMwareのせいでしょうか。原因不明です。
Debian 5.0 ”Lenny”
Debianの新しい安定版が出たので移行してみました。
apache2の設定
- サイト定義ファイルを作成、設定する
# cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mysite
で定義ファイルをコピーし、
mysiteの"/var/www"部分をルートディレクトリにしたいディレクトリに変更
# a2ensite mysite
# a2dissite default
# /etc/init.d/apache2 reload または /etc/init.d/apache restart
で変更完了
- ユーザーディレクトリを使えるようにする
# a2enmod userdir
# /etc/init.d/apache2 restart
でOK。
apache2.confを書き換える(デフォルト設定のバックアップを取っておくこと)
AddHandler Script-cgi .cgi
(下から1/4ぐらいのところにある)のコメントをはずす。
特定のユーザーだけ使えるようにするには
/etc/apache2/mods-available/userdir.conf
を書き換える(デフォルト設定のバックアップを取っておくこと)
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
AllowOverride FileInfo AuthConfig Limit
Options ExecCGI MultiViews SymLinksIfOwnerMatch IncludesNoExec
AllowOverride FileInfo AuthConfig Limit
Options ExecCGI MultiViews SymLinksIfOwnerMatch IncludesNoExec
すべてのユーザーについてしたければ
# a2enmod php5
# /etc/init.d/apache2 restart
PHPの実行範囲の設定はよくわかってません。
- ディレクトリにアクセスしたときにリスト表示しないようにする
/etc/apache2/mods-available/userdir.conf
を書き換える(デフォルト設定のバックアップを取っておくこと)
- すべてのユーザーのリスト表示を許可しない
- ある特定のユーザーだけリスト表示を許可しない
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
AllowOverride FileInfo AuthConfig Limit
Options MultiViews SymLinksIfOwnerMatch IncludesNoExec
AllowOverride FileInfo AuthConfig Limit
Options MultiViews SymLinksIfOwnerMatch IncludesNoExec
というようにする(他のオプションは適宜変更)。
*注意*
禁止するユーザーを先に書いてはいけない。
理由:後に書いてあるほうが優先されるから。
最後にマッチしたものが適用される。
ルーティングと同じように上から検索してマッチしたらそれ以降は見ないという仕様にしたらいいのにと思いました。
/etc/apache2/mods-available/dir.conf
のDirectoryIndexの行に
index.cgiやindex.phpを追加またはその行から削除する
左にあるものの方が優先されるので優先させたいものを左に移動させる。
Apache2等の導入
前回、SambaとSSHを導入しました。
今回はApache2の導入です。
OSのインストールの際にWebサーバをインストールしていない場合は
# aptitude install apache2
でインストールしておきます。
とりあえずドキュメントルートを変更しようと
/etc/apache2/httpd.conf
を見てみると、空っぽの状態でした。
いろいろ調べてみると、
- Debianにおいてapache2ではhttpd.confは使用しない
- /etc/apache2/sites-available/にサイト定義ファイルを置くことができる
- /etc/apache2/sites-enable/に反映するサイト定義ファイルのシンボリックリンクを置く(直接ファイル操作はしない)
- /etc/apache2/mods-available/にモジュールファイルを置くことができる
- /etc/apache2/mods-enable/に反映するモジュールファイルのシンボリックリンクを置く(直接ファイル操作はしない)
- 設定の変更にはa2ensite,a2dissite,a2enmod,a2dismod
ということことがわかりました。
まず、/etc/apache2/site-available/にdefaultという定義ファイルがあるので
# cp /etc/apache2/site-available/default /etc/apache2/site-available/mysite
として定義ファイルをコピー。
次にそのコピーしたファイルの
/var/www
となっているところをドキュメントルートにしたいディレクトリに変更。
その後
# a2dissite default
# a2ensite mysite
としてサイト定義を変更します。
実際に変更を反映させるには
# /etc/init.d/apache restart
でサーバを再起動します。
また、モジュールを組み込みたい(or 無効にしたい)ときには
# a2enmod php5
# a2dismod php5
といったようにするだけで有効/無効が変更できます(当然再起動は必要です)。
変更が簡単にできる点が便利です。
サイト定義ファイルや"a2xxx"コマンド、および
/etc/apache2/apache2.conf
を変更することによって設定をいろいろ変える事ができます。
細かいことは別の機会に。