Category Archive etch

sambaの導入(Debian etch)

sambaのインストール

sambaをインストールする。

# apt-get install samba samba-common

途中、ワークグループ名を入力する。

WINS,DHCPの質問にはNoを選択

swatのインストール

swatをインストールする

# apt-get install swat

/etc/servicesに以下1行があるか確認する。
無ければ追加する。

swat            901/tcp                         # swat

/etc/inetd.confに以下1行があるか確認する。
無ければ追加する。

swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/swat

再起動

ここでリブートする。

# reboot

sambaの設定

swatの設定画面は、ブラウザからURLを以下のように入力して開く。

http://ホスト名:901/

Subversionの導入(Debian etch)

subversionのインストール
apt-get update
apt-get install subversion

DAVを使用する場合、必要なモジュールをインストール

apt-get install libapache2-svn

文字化け対策用のモジュールをインストール

apt-get install libapache2-mod-encoding

svnのユーザ作成

# useradd svn
# passwd svn

/etc/inetd.confに1行追加する

svn stream tcp nowait svn /usr/sbin/tcpd /usr/bin/svnserve -i

svnディレクトリの作成

# mkdir /var/svn
# svnadmin create /var/svn

svnフォルダのパーミッションを変更

   # chown -R www-data:www-data /var/svn
   # chmod -R og+w /var/svn

WEB-DAV接続時のパスワードを設定する

htpasswd -c /var/svn/.svnpasswd mydavuser

/etc/apache2/mods-enabled/dav_svn.confの編集

<Location /svn>
DAV svn
SVNParentPath /home/groups/test/svn

Options Indexes
Order allow,deny
allow from all
AuthType Basic
AuthName "Subversion repository"
AuthUserFile "/home/groups/test/.svnpasswd"
Require valid-user
</Location>

/etc/apache2/apache2.confを編集

日本語文字化けを回避

LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw
↓
LanguagePriority ja en da nl et fr de el it ko no pl pt pt-br ltz ca es sv tw

※この設定を忘れると日本語名のファイルを扱ったときに文字化けする。

Apacheを再起動

/etc/init.d/apache2 restart

これで、下記のようにブラウザに設定したURLを指定してアクセスできればOK。 上記のインストール例だと、 http://(マシン名 or IPアドレス)/svn/myproject

/var/svn/conf/svnserve.confの編集

[general]
anon-access = none
auth-access = write
password-db = passwd

/var/svn/conf/passwdの編集

[users]
svn = 設定したパスワードを入力

initdの再起動

/etc/init.d/openbsd-inetd restart

Apache2+PHP5+MySQLの導入(etch)

Apache2のインストール

# apt-get install apache2

PHP5のインストール

# apt-get install php5

php.iniの編集

デフォルトでは、

magic_quotes_gpc = On

になっているので、無効にする場合は
/etc/php5/apache2/php.ini を編集する。

; Magic quotes
;

; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = Off

MySQL5.0のインストール

# apt-get install mysql-server-5.0 php5-mysql

管理者ユーザの設定

mysql> GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'パスワード' WITH GRANT OPTION;

※リモートアクセスを許可する場合は、「localhost」を「”%”」(または”ホスト名”)にする。

一般ユーザの設定

mysql> GRANT SELECT,UPDATE,INSERT,DELETE,ALTER,CREATE PRIVILEGES ON データベース名.* TO user1@localhost IDENTIFIED BY 'パスワード' WITH GRANT OPTION;

文字コードの設定

デフォルトでは「latin1」なってしまうので、my.cnfを編集してutf8に変更する。

# nano /etc/mysql/my.cnf

[mysqld]に以下2行を追加する

default-character-set=utf8
skip-character-set-client-handshake

[mysql]に以下1行を追加する

default-character-set=utf8

mysqlを再起動する。

# /etc/init.d/mysql restart

mysqlクライアントを起動し

mysql> status

で文字コードがutf8に設定されたことを確認できる。

文字コードはテーブル毎に設定することもできる。

下記のようにデータベースを作成すると、文字コードが指定できる。

mysql> create databaase データベース名 default character set utf8;

データベース指定で文字コードの確認は

mysql> show create database データベース名;

で可能。

phpadminのインストール

ダウンロードしたphpmyadminの圧縮ファイル(tar.gz)をwebの任意のディレクトリに配置する。
ファイルを解凍する。

# tar -zxvf phpMyAdmin-x.x.x-all-languages.tar.gz

解凍してできたディレクトリの名前を扱いやすい名前に変更する。

# mv phpMyAdmin-x.x.x phpmyadmin

ブラウザからアクセスする。

http://ホスト名/phpmyadmin/

mcryptの警告メッセージ

ログイン画面に「mcrypt 拡張をロードできません。PHP の設定を確認してください」というメッセージが表示された場合は、

# apt-get install php5-mcrypt

でphp5-mcryptをインストールする。
インストール後、apacheを再起動する。

# /etc/init.d/apache2 restart

再度ログイン画面を開くと、警告メッセージが消える。

MySQL ODBC接続設定

Debian(etch)は、デフォルトではデータベースにリモートで接続が出来ない。

有効にするには/etc/mysql/my.cnfを編集する。

bind-address = 127.0.0.1

# bind-address = 127.0.0.1

のように、コメントアウトする。

/etc/init.d/mysql restart

で再起動すると、TCP接続でポート3306にリモートアクセス可能になる。

Subversionの導入(Debian etch)

Debian 4.0 etchでSubversion

WebDAVでSubversionを利用することにしました。

OSのインストールが済み、ひと通りの設定が済んだら、
Apacheをインストールします。

#Apacheのインストール

apt-get install apache2~

次に、Subversionをインストールします。

# Subversionのインストール

apt-get install subversion~

Subversionをインストールしたら、リポジトリの作成を行います。

# リポジトリ用フォルダを作成

mkdir /home/groups/test/svn~

# リポジトリの作成 (形式はfsfsで作成)

svnadmin create --fs-type fsfs /home/groups/test/svn~

# 所有者と所有グループを www-dataに変更する。

# ※apache2をapt-getでインストールしたときにApacheのUserとGroupがwww-dataになるため

chown -R www-data:www-data /home/groups/test/svn~

次に、Webdavでsubversionにアクセスするための設定を行います。

# Webdavでsubversionにアクセスするために必要なモジュールをインストールをインストール

apt-get install libapache2-svn~

# 文字化け対策用のモジュールをインストール

apt-get install libapache2-mod-encoding~

# パスワードファイルの作成・設定

# ※コマンドを打つと、パスワード入力、確認入力の計2回パスワード入力を促されます

htpasswd -c /home/groups/test/.svnpasswd hogehoge~

# /etc/apache2/mods-enabled/dav_svn.confの編集

vi /etc/apache2/mods-enabled/dav_svn.conf~

DAV svn~
SVNPath /home/groups/test/svn~

Options Indexes~
Order allow,deny~
allow from all~
AuthType Basic~
AuthName "Subversion repository"~
AuthUserFile "/home/groups/test/.svnpasswd"~
Require valid-user~

↑ファイルの最後に追記する
------------------------------------------------

# /etc/apache2/apache2.confを編集~
# 日本語文字化けを回避~
LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw~
↓~
LanguagePriority ja en da nl et fr de el it ko no pl pt pt-br ltz ca es sv tw~

#※この設定を忘れると日本語名のファイルを扱ったりすると文字化けをおこすので注意して下さい。

# Apacheを再起動~
/etc/init.d/apache2 restart

これで、下記のようにブラウザに設定したURLを指定してアクセスできればOKです。
上記のインストール例だと、
http://(マシン名 or IPアドレス)/svn/test

ちなみに、リポジトリを新たに作成する場合は、
上記のリポジトリの作成手順から先の作業を毎回行う必要があります。
さすがにそれは面倒なので、リポジトリの追加処理を自動化するシェルを作成しました。 よかったら参考にしてみて下さい。

 

svn.sh

#!/bin/sh~

##############################~
# 使用方法~
# sh svn.sh [リポジトリ名]~
##############################~

# リポジトリ用のフォルダを作成~
mkdir /home/groups/$1~
mkdir /home/groups/$1/svn~

# リポジトリの作成~
svnadmin create --fs-type fsfs /home/groups/$1/svn~

# パスワードファイルの作成・設定~
htpasswd -bc /home/groups/$1/.svnpasswd admin admin~

# /etc/apache2/mods-enabled/dav_svn.confの編集~
cd /etc/apache2/mods-enabled~
echo ""  >> dav_svn.conf~
echo ""  >> dav_svn.conf~
echo "########################"  >> dav_svn.conf~
echo "# $1"  >> dav_svn.conf~
echo "########################"  >> dav_svn.conf~
echo "<Location /svn/$1>"  >> dav_svn.conf~
echo "  DAV svn"  >> dav_svn.conf~
echo "  SVNPath /home/groups/$1/svn"  >> dav_svn.conf~
echo ""  >> dav_svn.conf~
echo "  Options Indexes"  >> dav_svn.conf~
echo "  Order allow,deny"  >> dav_svn.conf~
echo "  allow from all "  >> dav_svn.conf~
echo "  AuthType Basic"  >> dav_svn.conf~
echo "  AuthName \"Subversion repository\""  >> dav_svn.conf~
echo "  AuthUserFile \"/home/groups/$1/.svnpasswd\""  >> dav_svn.conf~
echo "  Require valid-user"  >> dav_svn.conf~
echo "</Location>"  >> dav_svn.conf~
echo ""  >> dav_svn.conf~

# Apacheを再起動~
/etc/init.d/apache2 restart~

apt sources.listの設定 (etch)

etchのupdateサポートは既に終了しているため、以下のように変更した。

deb http://archive.debian.org/debian/ Debian-4.0 main contrib non-free
deb-src http://archive.debian.org/debian/ Debian-4.0 main contrib non-free