0

bash シェル スクリプトを使用して Debian 6.0 サーバーのソースから postgreSQL をビルドしようとしていますが、問題が発生しています。これは私がこれまでに作成したコードです:

# Initial
    apt-get update
    apt-get -y install aptitude bzip2 libbz2-dev git-core
    aptitude -y install sudo python-all-dev python-setuptools libxml2-dev libgeoip-dev libxslt1-dev uuid-dev gcc automake autoconf libpcre3-dev libssl-dev unzip zip python-psycopg2 libpq-dev wget make libreadline-dev
    aptitude -y full-upgrade 

# POSTGRESQL
###############################

# Postgresql Download & Install
    wget http://ftp.postgresql.org/pub/source/v8.4.6/postgresql-8.4.6.tar.gz -P /tmp
    mkdir /tmp/postgresql
    tar xzf /tmp/postgresql-8.4.6.tar.gz -C "/tmp/postgresql"
    cd /tmp/postgresql/
    mkdir /usr/local/pgsql
    ./configure --prefix=/usr/local/pgsql
    cd /usr/local/pgsql
    make
    make install

# Add User
    useradd -s /bin/false "postgresql_user"
    chown "postgresql_user" usr/local/pgsql

# Clean Up
    rm  /tmp/postgresql-8.4.6.tar.gz
    rm  /tmp/postgresql

# Create Database
    echo "CREATE ROLE PSQL LOGIN ENCRYPTED PASSWORD 'PASS';" | sudo -u postgresql_user usr/local/pgsql
    sudo -u postgresql_user /opt/bin/createdb --owner PSQL DATADB

私が得るエラーは次のとおりです。

/root/StackScript: line 22: ./configure: No such file or directory                                    
make: *** No targets specified and no makefile found.  Stop.                                          
make: *** No rule to make target `install'.  Stop.                                                    
chown: cannot access `usr/local/pgsql': No such file or directory                                                                                  
sudo: usr/local/pgsql: command not found                                                              
sudo: /opt/bin/createdb: command not found   

どこが間違っているのか教えてもらえますか?私が間違ったことをしたことが他に明らかなことがあれば、私はいつでもそれについて聞くことができます!

4

1 に答える 1

3

あなたが間違っている最初のことは、古いメジャーバージョンの古いポイントリリースをコンパイルすることです。8.4.15があり、かなりの数の重要なバグ修正が行われているのに、一体なぜ8.4.6を使用するのでしょうか。バージョン管理ポリシーを参照してください。とにかく、新しい展開には8.4を使用しないでください。新しい展開には、最新バージョンを使用してください。

さらに良いことに、自分でコンパイルするのではなく、pgapt.debian.orgでdebianパッケージを使用してください。

エラーの直接の原因は、ソースtarballを解凍すると、のようなディレクトリが生成されるpostgresql-8.4.6ことです/tmp/postgresql/postgresql-8.4.6。notでconfigureスクリプトを実行しようとしています。を実行する前に、作成したディレクトリに移動します。/tmp/postgresql/tmp/postgresql/postgresql-8.4.6cdconfigure

于 2012-12-10T13:52:49.550 に答える