タグアーカイブ Debian

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~

Bind の導入(Debian woody)

# apt-get install bind
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  netbase
The following NEW packages will be installed:
  bind netbase
0 packages upgraded, 2 newly installed, 0 to remove and 0  not upgraded.
Need to get 841kB of archives. After unpacking 1978kB will be used.
Do you want to continue? [Y/n] Y
Get:1 ftp://ftp.jp.debian.org stable/main netbase 4.07 [47.5kB]
Get:2 http://security.debian.org stable/updates/main bind 1:8.3.3-2.0woody2 [794kB]
Fetched 841kB in 14s (57.0kB/s)
Preconfiguring packages ...
Selecting previously deselected package netbase.
(Reading database ... 47621 files and directories currently installed.)
Unpacking netbase (from .../archives/netbase_4.07_all.deb) ...
Selecting previously deselected package bind.
Unpacking bind (from .../bind_1%3a8.3.3-2.0woody2_i386.deb) ...
Setting up netbase (4.07) ...

Setting up bind (8.3.3-2.0woody2) ...
Starting domain name service: named.

#

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

apt sources.listの設定 (Debian sarge)

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

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

日本語入力設定(Debian sarge)

1.Canna のインストール

# apt-get install canna

2.locale 設定

# dpkg-reconfigure locales

ja.JP.eucJP」を選択する。
/etc/locale.gen に ja.JP.EUC-JP EUC-JP の行が追加されていることを確認する。

3. Xの日本語入力環境の設定  Xで漢字変換にCannaを使用し、emacsは使用しない場合は以下のように設定する。

# user-ja-conf  または  set-language-env
Setting up users' native language environment
by modifying their dot-files.
Type "set-language-env -h" for help.

パッケージ一覧を取得しています...
Canna サーバが動いています。
Wnn サーバが動いていません。
ネットワークのどこか別のコンピュータで Wnn サーバーが動いていますか [y/N] N<Enter>
SKK サーバーが動いていません。
ネットワークのどこか別のコンピュータで SKK サーバーが動いていますか [y/N] N<Enter>
Anthy が動いていません。
PRIME が動いていません。
日本語には関係ない様々な設定を行いますか [Y/n] n<Enter>

------- /home/ユーザ名/.Xresources -------
X Window System で動くプログラムの設定です。

設定を行いますか [Y/n] Y<Enter>
設定します...

------- /home/ユーザ名/.bash_profile -------
bash 使用時に、ログイン時に実行されます。
単に、.bashrc を実行するだけの内容です。

設定を行いますか [Y/n] Y<Enter>
設定します...

------- /home/ユーザ名/.bashrc -------
bash が起動するときに実行されます。
さまざまな設定をしているので、目を通しておいてください。

設定を行いますか  [Y/n] Y<Enter>
設定します...

------- /home/ユーザ名/.canna -------
Canna の設定です。

設定を行いますか  [Y/n] Y<Enter>
設定します...

------- /home/ユーザ名/.cshrc -------
csh が起動するときに実行されます。
さまざまな設定をしているので、目を通しておいてください。

設定を行いますか  [Y/n] n<Enter>
設定しません。

------- /home/ユーザ名/.emacs -------
emacs の設定です。
emacs20, emacs21 に対応しています。
xemacs21 は、.xemacs/init.el で設定します。

設定を行いますか  [Y/n] n<Enter>
設定しません。

------- /home/ユーザ名/.inputrc -------
bash など、readline ライブラリを用いたプログラムの設定です。

設定を行いますか  [Y/n] Y<Enter>
設定します。

------- /home/ユーザ名/.xsession -------
xdm を使って X Window System にログインしたときに実行されます。
また、startx や xinit を使って X を起動したときにも実行されます。

設定を行いますか  [Y/n] Y<Enter>
設定します。

------- /home/ユーザ名/.xemacs/init.el -------
xemacs21 の設定です。

設定を行いますか  [Y/n] n<Enter>
設定しません。
------------------
    設定が終了しました。設定を有効にするには、一度ログアウト
してから再びログインしてください。
    それぞれのドットファイルを読んで、どのように変更されたか
確認してください。気に入らない設定は、直接変更するか、
'language-env end' 以降の行に再設定を書き加えて下さい。
    詳しくは /usr/share/doc/language-env/README.ja.eucJP.gz を
参照して下さい。

[Enter] キーを押してください。終了します。

4. ログオフ
一度ログオフすると設定が読み込まれ、日本語入力が可能になる。
日本語入力は、<Shift>+<Space> で切り替える。

gccのインストール(sarge)

# apt-get install gcc
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  binutils cpp cpp-3.3 gcc-3.3
Suggested packages:
  binutils-doc cpp-doc manpages-dev autoconf automake libtool flex bison gdb gcc-doc
  gcc-3.3-doc
Recommended packages:
  libc-dev libc6-dev
The following NEW packages will be installed:
  binutils cpp cpp-3.3 gcc gcc-3.3
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 5516kB of archives.
After unpacking 15.3MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://archive.debian.org sarge/main binutils 2.15-6 [2333kB]
Get:2 http://archive.debian.org sarge/main cpp-3.3 1:3.3.5-13 [1541kB]
Get:3 http://archive.debian.org sarge/main cpp 4:3.3.5-3 [29.6kB]
Get:4 http://archive.debian.org sarge/main gcc-3.3 1:3.3.5-13 [1608kB]
Get:5 http://archive.debian.org sarge/main gcc 4:3.3.5-3 [4914B]
Fetched 5516kB in 3m20s (27.6kB/s)
Selecting previously deselected package binutils.
(Reading database ... 9114 files and directories currently installed.)
Unpacking binutils (from .../binutils_2.15-6_powerpc.deb) ...
Selecting previously deselected package cpp-3.3.
Unpacking cpp-3.3 (from .../cpp-3.3_1%3a3.3.5-13_powerpc.deb) ...
Selecting previously deselected package cpp.
Unpacking cpp (from .../cpp_4%3a3.3.5-3_powerpc.deb) ...
Selecting previously deselected package gcc-3.3.
Unpacking gcc-3.3 (from .../gcc-3.3_1%3a3.3.5-13_powerpc.deb) ...
Selecting previously deselected package gcc.
Unpacking gcc (from .../gcc_4%3a3.3.5-3_powerpc.deb) ...
Setting up binutils (2.15-6) ...

Setting up cpp-3.3 (3.3.5-13) ...
Setting up cpp (3.3.5-3) ...
Setting up gcc-3.3 (3.3.5-13) ...
Setting up gcc (3.3.5-3) ...

#
# apt-get install libc6-dev
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  linux-kernel-headers
Suggested packages:
  glibc-doc manpages-dev
The following NEW packages will be installed:
  libc6-dev linux-kernel-headers
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 4464kB of archives.
After unpacking 16.9MB of additional disk space will be used.
Do you want to continue? [Y/n]

Get:1 http://archive.debian.org sarge/main linux-kernel-headers 2.5.999-test7-bk-17 [1399kB]
Get:2 http://archive.debian.org sarge/main libc6-dev 2.3.2.ds1-22sarge6 [3065kB]
Fetched 4464kB in 2m41s (27.6kB/s)
Selecting previously deselected package linux-kernel-headers.
(Reading database ... 9349 files and directories currently installed.)
Unpacking linux-kernel-headers (from .../linux-kernel-headers_2.5.999-test7-bk-17_powerpc.deb) ...
Selecting previously deselected package libc6-dev.
Unpacking libc6-dev (from .../libc6-dev_2.3.2.ds1-22sarge6_powerpc.deb) ...
Setting up linux-kernel-headers (2.5.999-test7-bk-17) ...
Setting up libc6-dev (2.3.2.ds1-22sarge6) ...
#

gccのインストール(Debian sarge)

apt-getでインストールしようとすると..

# apt-get install gcc
Reading Package Lists... Done
Building Dependency Tree... Done
gcc is already the newest version.
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
  gcc-3.3: Depends: binutils (>= 2.15-5) but it is not installable
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

となったので、「apt-get -f install」を実行してみる。

# apt-get -f install
Reading Package Lists... Done
Building Dependency Tree... Done
Correcting dependencies... Done
The following packages will be REMOVED:
  gcc gcc-3.3
0 upgraded, 0 newly installed, 2 to remove and 2 not upgraded.
4 not fully installed or removed.
Need to get 0B of archives.
After unpacking 4264kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 9773 files and directories currently installed.)
Removing gcc ...
Removing gcc-3.3 ...
Setting up cpp-3.3 (3.3.5-13) ...
Setting up cpp (3.3.5-3) ...
# apt-get install gcc
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  binutils cpp cpp-4.3 gcc-4.3 gcc-4.3-base libc6 libgcc1 libgmp3c2 libgomp1
  libmpfr1ldbl locales
Suggested packages:
  binutils-doc cpp-doc gcc-4.3-locales gcc-multilib make manpages-dev autoconf
  automake1.9 libtool flex bison gdb gcc-doc gcc-4.3-multilib  libmudflap0-4.3-dev
  gcc-4.3-doc libgcc1-dbg libgomp1-dbg libmudflap0-dbg glibc-doc libc6-i686
Recommended packages:
  libc6-dev libc-dev
The following packages will be REMOVED:
  base-config
The following NEW packages will be installed:
  binutils cpp-4.3 gcc gcc-4.3 gcc-4.3-base libgmp3c2 libgomp1 libmpfr1ldbl
The following packages will be upgraded:
  cpp libc6 libgcc1 locales
4 upgraded, 8 newly installed, 1 to remove and 115 not upgraded.
Need to get 18.2MB of archives.
After unpacking 16.1MB of additional disk space will be used.
Do you want to continue? [Y/n] y

ネットワークの設定(Debian sarge)

ネットワークの設定は、/etc/network/interfacesを編集します。

固定IPを設定する場合は、下記のように設定します。

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.1.2
network 192.168.1.0
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.1

DHCPを利用する場合は、下記のようにします。

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

ネットワークを再起動すると、設定が反映されます。

# /etc/init.d/networking restart

DNSの設定は/etc/resolv.confで行います。

nameserver 192.168.1.251
nameserver 192.168.1.252

ホストの設定は/etc/hostsで行います。

127.0.0.1 localhost.localdomain localdomain