忍者ブログ
プログラムに関連する技術などを紹介します。自製品の宣伝もかねていますので、お気に召したらリンク踏んでやってください。
Admin | Write
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

僕がサーバとして設定・使用するデフォルトディレクトリ・ファイルの一覧を記載します。
自前で作成するものは基本的にありません。インストーラ等が自動で配置します。
なお先頭に"/"(スラッシュ)がついているものはディレクトリ、それ以外はファイルです。

<<Ubuntu9.10>>--------

/etc  
  /init.d  
  apache2 apache2用プロセス制御スクリプト
  postgresql-8.4 postgresql-8.4 用プロセス制御スクリプト
  /apache2  
   httpd.conf 未使用(旧バージョンではここが中心になることがある)
   /conf.d  
   phppgadmin  phppgadminのアクセス権限
   /sites-available  
  default apache2のディレクトリの設定(ホームディレクトリの変更など)
  /postgresql/8.4/main  
   postgresql.conf データディレクトリ(DB本体の置き場所)の変更など
   pg_hba.conf postgresにアクセス可能なアドレスの変更
         
/var/www/ htmlドキュメントホーム
ブラウザから http://127.0.0.1/ でアクセスすると、
ここが参照される
         
/usr/lib/cgi-bin/ cgiドキュメントホーム
ブラウザから http://127.0.0.1/cgi-bin/ でアクセス
すると、ここが参照される
         
/var/lib/postgresql/
8.4/main/
postgresqlのデータベース本体


<<Ubuntu9.04>>--------

/etc  
  /init.d  
  apache2 apache2用プロセス制御スクリプト
  postgresql-8.3 postgresql-8.3 用プロセス制御スクリプト
  /apache2  
   httpd.conf 未使用(旧バージョンではここが中心になることがある)
   /conf.d  
   phppgadmin  phppgadminのアクセス権限
   /sites-available  
  default apache2のディレクトリの設定(ホームディレクトリの変更など)
  /postgresql/8.3/main  
   postgresql.conf データディレクトリ(DB本体の置き場所)の変更など
   pg_hba.conf postgresにアクセス可能なアドレスの変更
         
/var/www/ htmlドキュメントホーム
ブラウザから http://127.0.0.1/ でアクセスすると、
ここが参照される
         
/usr/lib/cgi-bin/ cgiドキュメントホーム
ブラウザから http://127.0.0.1/cgi-bin/ でアクセス
すると、ここが参照される
         
/var/lib/postgresql/
8.3/main/
postgresqlのデータベース本体



・・・見づらい。無理がある。ご容赦。

拍手[0回]

PR
非仮想環境で、最初からUbuntuをインストールしてみました。
つまり、物理マシンにインストールしてみました。
毎度のいやな予感が直っているか見てみたかっただけなので、あくまでお遊びで導入のみ。

0004_09.JPG 参考画面。
VMにおけるインストーラの起動画面です。

物理マシンでCD起動し、上記画面で「Ubuntuをインストール」を選択すると、今回の環境では
うまくいきません。何故今回の環境を強調したかというと、毎度のことだからです。

LinuxはWindowsと異なり、インストーラのブート時に読みこぼしが発生するとエラーとして
扱います。光学ドライブは高速で回転し、ホコリや振動に弱いです。なのでインストーラのエ
ラーが非常に多いのです。(Windowsインストーラはある程度のエラーであれば自動で再
試行します。)
どうしてもエラーを回避したければ、僕の経験だとちゃんと入る組み合わせを揃える(つまり
光学ドライブを交換する)ことが必要だと思います。
大昔は光学ドライブを買っては変え買っては変えで、膨大な資金を必要としました。


まぁ、最近のはそんな無駄な作業は必要ないようです。


上記画面で「コンピュータに変更を加えないでUbuntuを使ってみる」を選択し、起動します。
起動が完了したら、デスクトップのアイコンからインストールできます。

この方法であれば、特に問題なくインストールできました。

拍手[0回]

この記事は下記手順などにてDBを生成したことを前提としています。
Ubuntu9.10 / 10.04のサーバ環境構築
デフォルトでは--no-locale設定が入っていません。なので2バイトコードの扱いに
難があるはずです。

--------

デフォルトと同じエンコードであれば、普通にDBを生成できます。
しかし違うエンコードを指定すると・・・

ubuntu0101_0005.jpg こんなことになってしまいます。

本日現在で、ubuntuのphppgadminからデフォルトデータベースを
GUIで指定する方法がありません。

この場合、phppgadmin上から以下のようなSQLを実施します。

CREATE DATABASE sampledb ENCODING 'UTF8' TEMPLATE template0;

sampledb が、データベース名です。UTF8 がエンコードです。
適宜変更してください。

拍手[0回]

9.04と同じ手でいけるだろうとか考えていたら、ちょい甘でした。

しかし9.10と10.04はまったく同じでした。
なので9.10と10.04は同じ記事にまとめます。

なお10/05/01現在、日本語Remixは提供されていないため、同バー
ジョンにおける検証は行っていません。

10.04 日本語remixにおける検証も行っています。

Apache、PHP5、postgreSQL、perlの環境構築を目指します。
目指すとは、当方で動作確認した方法もあわせて記載することに
より、参照された方にも動作環境を確認していただき、完成をご
確認いただくといった意味合いです。
なお事前に固定IPにしてあることを前提としています。
またroot権限で作業をしていることを前提としています。

・Apache2
・PHP5
・PostgreSQL
・phppgadmin
・Perl

(1)パッケージのインストール
  ubuntu0101_0001.jpg synapticパッケージマネージャを起動し、
以下のものをインストールします。
    ・"apache2"および関連
    ・"php5"および関連
    ・"postgresql"および関連
    ・"php5-pgsql"
    ・"phppgadmin"

 
 注)表記してあるもののみを選択します。 関連とは依存パッケージのことで、
    たとえば”php5”などを選択すると、自動的に依存パッケージが表示されます。
    作業者が能動的に選択する必要はありません。


(2)Apacheの確認
  ubuntu0101_0002.jpg ブラウザを起動し、アドレスにIPアドレスを
入力してください。
左のような画面が表示されればOKです。

(3)Perlの確認
  ここまでPerlをインストールしていませんが、Ubuntu9.10の場合、初期状態
で導入されています。

Perlのスクリプトは、デフォルトで/usr/lib/cgi-bin/に配置できるようになって
います。以下の内容でtest.cgiを作成してください。
#!/usr/bin/perl

print "Content-type: text/plain\n\n";
print "Hello, CGI\n";
最後の行は改行を忘れないでください。

作成したら、chmodで実行権限 をつけます。
chmod 777 test.cgi
  ubuntu0101_0003.jpg ブラウザを起動し、アドレスを入力して
ください。IPアドレスが192.168.1.103の
場合は、

http://192.168.1.103/cgi-bin/test.cgi

になります。
左のような画面が表示されればOKです。

(4)PHPの確認
  PHPスクリプトは、デフォルトで/var/www/に配置できるようになって
います。以下の内容でtest.phpを作成してください。
<?php
        print "hello php";
?>
最後の行は改行を忘れないでください。

作成したら、chmodで実行権限 をつけます。
chmod 777 test.php
  ubuntu0101_0004.jpg ブラウザを起動し、アドレスを入力して
ください。IPアドレスが192.168.1.103の
場合は、

http://192.168.1.103/test.php

になります。
左のような画面が表示されればOKです。

(5)postgresqlの設定
  ここは他よりしんどい作業になります。注意して作業を行ってください。

postgresはデフォルトのデータベースが日本語に対応していません。
なのでデータベースそのものをどうにかしなければなりません。
今回はデータベースを再生成します。
なおここでご紹介する手法では、古いデータベースの内容を破棄します。
なので、postgresの導入直後に作業することをお勧めします。

以下、Ubuntu端末画面のコマンド入力です。なおコマンドが長くなっているため、
一部改行してしまっています。注意してください。
薄い青字は注釈です。オレンジはメッセージです。実際はこの色で表示されません。
バージョン(下記では8.4)が変わっている可能性がありますので注意してください。
  root@ubuntu:/home/yellow# /etc/init.d/postgresql-8.4 stop
 * Stopping PostgreSQL 8.4 database server                               [ OK ]
        →  postgresを停止
root@ubuntu:/home/yellow# cd /var/lib/postgresql/8.4/
        →  DB本体のファイルがあるディレクトリに移動
root@ubuntu:/var/lib/postgresql/8.4# mv main main.backup
        →  旧DBを念のためバックアップ(移動)
root@ubuntu:/var/lib/postgresql/8.4# mkdir main
        →  新しいDB用のディレクトリを生成
root@ubuntu:/var/lib/postgresql/8.4# chown postgres:postgres main
        →  ディレクトリオーナの変更
root@ubuntu:/var/lib/postgresql/8.4# su - postgres
        →  権限をpostgresに変更
postgres@ubuntu:~$ /usr/lib/postgresql/8.4/bin/initdb -D  /var/lib/postgresql/8.4/main -E EUC-JP --no-locale
データベースシステム内のファイルの所有者は"postgres"ユーザでした。
このユーザがサーバプロセスを所有しなければなりません。

データベースクラスタはロケールCで初期化されます。
デフォルトのテキスト検索設定はenglishに設定されました。

ディレクトリ/var/lib/postgresql/8.4/mainの権限を設定しています ... ok
サブディレクトリを作成しています ... ok
デフォルトのmax_connectionsを選択しています ... 100
デフォルトの shared_buffers を選択しています ... 28MB
設定ファイルを作成しています ... ok
/var/lib/postgresql/8.4/main/base/1にtemplate1データベースを作成しています ... ok
pg_authidを初期化しています ... ok
依存関係を初期化しています ... ok
システムビューを作成しています ... ok
システムオブジェクトの定義をロードしています ... ok
変換を作成しています ... ok
ディレクトリを作成しています ... ok
組み込みオブジェクトに権限を設定しています ... ok
情報スキーマを作成しています ... ok
template1データベースをバキュームしています ... ok
template1からtemplate0へコピーしています ... ok
template1からpostgresへコピーしています ... ok

警告: ローカル接続向けに"trust"認証が有効です。
pg_hba.confを編集する、もしくは、次回initdbを実行する時に-Aオプショ
ンを使用することで変更することができます。

成功しました。以下を使用してデータベースサーバを起動することができます。

    /usr/lib/postgresql/8.4/bin/postgres -D /var/lib/postgresql/8.4/main
または
    /usr/lib/postgresql/8.4/bin/pg_ctl -D /var/lib/postgresql/8.4/main -l logfile start

       
→  データベースファイルを生成(※1)

postgres@ubuntu:~$ exit
logout
        →  postgres権限終了

root@ubuntu:/var/lib/postgresql/8.4# ln -s /etc/ssl/certs/ssl-cert-snakeoil.pem main/server.crt (※3)
root@ubuntu:/var/lib/postgresql/8.4# ln -s /etc/ssl/private/ssl-cert-snakeoil.key main/server.key
(※3)
        →  DBに必要なシンボリックリンクを作成(2つ)

root@ubuntu:/var/lib/postgresql/8.4# /etc/init.d/postgresql-8.4 start
 * Starting PostgreSQL 8.4 database server                               [ OK ]
        →  postgresを起動(※2)
root@ubuntu:/var/lib/postgresql/8.4#

  ※1: デフォルトだと「--no-locale」オプションがないため、2バイト文字が扱えません。
なおUbuntu9.10からPostgres8.4になり、エンコード指定方法が変わりました。
本書ではデフォルトをEUC-JPにしているので、その他のコードでDBを生成する
場合はいままでと手順が変わります。こちらをご参照ください。
  ※2: ここで起動失敗(OKではなくfail)が出るようであれば、手順が誤っています。
作成したmainディレクトリを削除し、作業をやりなおしてください。
どうしてもダメだった場合、main.backupをmainに書き戻してください。その際
日本語はDBデータとして使えません。
   ※3:  この手順はUbuntu9.10または10.04 / Postgresql8.4の手順です。


(6)postgresのユーザ追加
  postgresユーザ(DBアクセス専用)を追加します。
このユーザはPostgresDBに登録され、Linuxユーザには登録されません。
今回はサーバで複数のユーザを扱うことを想定していません。
PHP経由でスーパユーザアクセスのみ想定しています。

以下、Ubuntu端末画面のコマンド入力です。なお薄い青字は注釈です
  root@ubuntu:/var/lib/postgresql/8.4# su postgres
        →  権限をpostgresに変更
postgres@ubuntu:~/8.4$ createuser -P xxxxxx
        →  xxxxxxというユーザを作成(適宜変更してください)
新しいロールのパスワード:
もう一度入力してください:
        →  パスワードの入力&再入力
新しいロールをスーパーユーザとしますか? (y/n) y
        → スーパーユーザー権限の付与
postgres@ubuntu:/home/yellow$ exit
       
→postgres権限の終了

(7)phppgadminの確認
  デフォルト状態では、Ubuntuのローカルアクセスにしか対応していません。
とりあえずローカルから確認します。
  phpPgAdmin1.JPG ブラウザを起動し、アドレスを入力してください。
アドレスは、

http://127.0.0.1/phppgadmin/

です。

左のような画面が表示されればOKです。
  phpPgAdmin2.JPG 左袖の「PostgreSQL」をクリックすると、
ユーザ名とパスワードの入力を求められます。
(6)で登録したものを入力します。
  phpPgAdmin3.JPG 認証に成功すると、左のような画面が出ます。
ここでDB作成や編集など、一通りの作業が出来ます。

(8)phppgadminの設定変更
  (7)でも書きましたが、phppgadminはデフォルト状態でローカルアクセス
(http://127.0.0.1/かhttp://localhost/)にしか対応していません。
必要に応じ変更することができます。必須ではありません。

まず、/etc/phppgadmin/apache.confを修正します。
Alias /phppgadmin /usr/share/phppgadmin/

<Directory /usr/share/phppgadmin/>

DirectoryIndex index.php

Options +FollowSymLinks
AllowOverride None

order deny,allow
deny from all
allow from 127.0.0.0/255.0.0.0 ::1/128
allow from 192.168.1.0/255.255.255.0 ::1/128
# allow from all

<IfModule mod_php5.c>
  php_flag magic_quotes_gpc Off
  php_flag track_vars On
  php_value include_path .
</IfModule>

</Directory>
この例では、オレンジの部分を追加しています。
http://192.168.1.*/からアクセスできるように変更しました。

変更を適用するには、apacheを再起動してください。
root@ubuntu:/etc/phppgadmin# /etc/init.d/apache2 restart

(9)/var/wwwでPerlを実施するための設定
  /etc/apache2/sites-available/default を編集します。
以下のエントリ(/var/www)のオレンジの部分を追加します。
  <Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews +ExecCGI
    AddHandler cgi-script .cgi .pl
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>
  変更を適用するには、apacheを再起動してください。
root@ubuntu:/etc/phppgadmin# /etc/init.d/apache2 restart


拍手[4回]

Ubuntuは変わってしまった

http://itpro.nikkeibp.co.jp/article/Watcher/20091204/341557/

要旨は9.04 / 9.10がリリースされ、

・頻繁にアップデートされすぎている
・ユーザフレンドリーを目指していたんじゃないのか
・3Dデスクトップが9系で削除された

ということらしいです。
なかなか斬新な切り口に思えます。



P1000415.JPG こちらの手元の最も古い資料は、左記の本です。
サーバライク用途は載っていません。
何故こんなものを買ったのか、詳細は覚えていません。
過去の私の挙動から推察するに、ダウンロードがうまく
いかなかったので、本屋でCDを買ってきたというところ
でしょう。

この本に付属している7.04から現在の最新である9.10までを見ると、バージョン番号の
理由が垣間見えます。

7.04:2007年04月頃リリース
7.10:2007年10月頃リリース
  (中略)
9.10:2009年10月頃リリース

まぁ、そのまんま年号とリンクしてるってわけです。但し日本語化に時間がかかるので、
日本語Remixのリリースはちょっと遅めです。
リリースペースに関する方針は、まったく揺らいでいません。

また定期リリースしないと話題性が乏しくなり、たとえばVine linuxのように忘れ去られて
いくと思います。なので定期アップデートは必要で、どのディストリを使うかはユーザの
選択だと思います。



ユーザフレンドリに関しては、かなりのレベルで達成できていると思います。
但しどの層をユーザとして捕らえているかは不明です。

僕自身、Redhat Linux(Fedoraの母体)からはじめています。アレと比べると別物です。
一般用途であればLinuxを意識しなくてもほぼできるまでの完成度になっています。

このブログで過去に紹介しているサーバ用途は、一般向けではありません。
家庭内で自分のコンピュータにホームページを持っても意味がありません。


リンクした記事には「3Dデスクトップの削除」「漢字変換の変更」などあります。

9.04はシンプルで使いやすく、非の打ち所がないとおもいます。
9.10は時間の都合でまだ移行できていませんが、ほぼ同じ感触でした。
(postgresのバージョンがあがってましたね。)
8系は固定IPに難が・・・。LTSだとしてもあまりお勧めできません。

僕が過去扱ったLinuxの中には、提供元が提供中止や有料化などで止むを得ずパッケ
ージ変更したという経緯もあります。(かんな=漢字変換とか、フォントとか。)
それ以外にユーザの不評で、新バージョンで削除したというものもありました。

そういった艱難辛苦を乗り越えて安定したディストリビューションの提供を望むのであれ
ば、有料パッケージに走るしかないんじゃないでしょうか。

拍手[0回]

カウンタ
ブログ内検索
忍者アド
カレンダー
04 2025/05 06
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
最新トラックバック
最新コメント
[11/30 アオフン]
[10/18 ティンバーランド レディース]
[08/05 鍛冶屋の紅]
[08/01 渡邉英徳]
プロフィール
HN:
鍛冶屋の紅
性別:
男性
バーコード
アクセス解析
忍者ブログ [PR]

Designed by