アイコンドキュメント
アール Solaris9 bash インストール手順 アール

[更新履歴]
2007年01月03日:公開日
2007年02月13日:標準シェルとしてbashを使用すると、FTPのログインに失敗するようになることを追加

Sunfreeware.comからパッケージを入手

http://www.sunfreeware.com/ へアクセスします。
右のフレームから適合したプラットフォーム名と、OSのバージョンの組み合わせを選択する。

※Sun Blade 100への搭載を想定しているため、SPARC/Solaris9を選択している。

sunfreeware

右フレームにパッケージの一覧が表示されるので、その中から「bash-x.x」を選択する。
真ん中のフレームのbash項へ移動するので、「bash-x.x-sol9-sparc-local.gz」を選択して、ダウンロードする。
(bashを使うには、bash、libiconv、libgcc/gccの3つのパッケージが必要)

※ここでは、「bash-3.2-sol9-sparc-local.gz」をダウンロードしている。

sunfreeware

右フレームにパッケージの一覧が表示されるので、その中から「libiconv-x.xx」を選択する。
真ん中のフレームのlibiconv項へ移動するので、「libiconv-x.xx-sol9-sparc-local.gz」を選択して、ダウンロードする。

※ここでは、「libiconv-1.11-sol9-sparc-local.gz」をダウンロードしている。

sunfreeware

同様に右フレームから、その中から「libgcc-x.x.x」を選択する。
真ん中のフレームのlibgcc項へ移動するので、「libgcc-x.x.x-sol9-sparc-local.gz」を選択して、ダウンロードする。

※ここでは、「libgcc-3.4.6-sol9-sparc-local.gz」をダウンロードしている。

sunfreeware

当サイトを参考にSSHをインストールしている場合、libgccがインストール済みとなっている可能性がある。
追加パッケージのインストール状態を見るには、pkginfoコマンドを使用する。


# pkginfo | grep application
application SMCgzip              gzip
application SMClgcc346           libgcc
application SMCosl98d            openssl
application SMCossh44p1          openssh
application SMCperl              perl
application SMCtop               top
application SMCzlib              zlib

パッケージの配置

ダウンロードした各パッケージをFTPやSCPにてSolarisサーバへ配置する。

※rootユーザでは直接FTPログイン出来ないことに注意する。(FTP禁止ユーザリスト /etc/ftpd/ftpusers)

パッケージの解凍

パッケージはgzip形式に圧縮されているので、解凍してゆく。

※libgccはインストール済み環境の為、オペレーションを省略している。


アップロードしたパッケージを確認する

# ls -o | egrep 'bash|libiconv'
-rw-r--r-- 1 operator 2058025 Dec 29 07:27 bash-3.2-sol9-sparc-local.gz
-rw-r--r-- 1 operator 1638961 Dec 29 07:32 libiconv-1.11-sol9-sparc-local.gz

bashパッケージを解凍する

# gunzip bash-3.2-sol9-sparc-local.gz
# ls -o | egrep 'bash|libiconv'
-rw-r--r-- 1 operator 6315520 Dec 29 07:27 bash-3.2-sol9-sparc-local
-rw-r--r-- 1 operator 1638961 Dec 29 07:32 libiconv-1.11-sol9-sparc-local.gz

libiconvパッケージを解凍する

# gunzip libiconv-1.11-sol9-sparc-local.gz
# ls -o | egrep 'bash|libiconv'
-rw-r--r-- 1 operator 6315520 Dec 29 07:27 bash-3.2-sol9-sparc-local
-rw-r--r-- 1 operator 2777600 Dec 29 07:32 libiconv-1.11-sol9-sparc-local

パッケージのインストール

各パッケージ(bash、libiconv)をインストールする。


pkgaddコマンドを使用してbashをインストールする

# pkgadd -d bash-3.2-sol9-sparc-local

The following packages are available:
1 SMCbash bash
(sparc) 3.2

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]: ←<Enter>キーを押す

Processing package instance <SMCbash> from 
</export/operator/sunfreeware/bash-3.2-sol9-sparc-local>

bash
(sparc) 3.2
FSF
Using </usr/local> as the package base directory.
## Processing package information.
## Processing system information.
4 package pathnames are already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.

The following files are already installed on the system and are being
used by another package:
/usr/local/man/man1 <attribute change only>
/usr/local/share <attribute change only>

Do you want to install these conflicting files [y,n,?,q] y
## Checking for setuid/setgid programs.

Installing bash as <SMCbash>

## Installing part 1 of 1.
/usr/local/bin/bash
/usr/local/bin/bashbug
/usr/local/doc/bash/ABOUT-NLS

〜 中略 〜

/usr/local/info/bash.info
/usr/local/man/man1/bash.1
/usr/local/man/man1/bashbug.1
/usr/local/share/locale/en@boldquot/LC_MESSAGES/bash.mo
/usr/local/share/locale/en@quot/LC_MESSAGES/bash.mo
[ verifying class <none> ]

Installation of <SMCbash> was successful.
#

pkgaddコマンドを使用してlibiconvをインストールする

# pkgadd -d libiconv-1.11-sol9-sparc-local
pkgadd: ERROR: no packages were found in </var/spool/pkg>
# pkgadd -d libiconv-1.11-sol9-sparc-local

The following packages are available:
1 SMCliconv libiconv
(sparc) 1.11

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]: ←<Enter>キーを押す

Processing package instance <SMCliconv> from 
</export/operator/sunfreeware/libiconv-1.11-sol9-sparc-local>

libiconv
(sparc) 1.11
Bruno Haible
Using </usr/local> as the package base directory.
## Processing package information.
## Processing system information.
8 package pathnames are already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

Installing libiconv as <SMCliconv>

## Installing part 1 of 1.
/usr/local/bin/iconv
/usr/local/doc/libiconv/ABOUT-NLS

〜 中略 〜

/usr/local/share/doc/iconvctl.3.html
[ verifying class <none> ]

Installation of <SMCliconv> was successful.
#

bashの起動を確認する

# bash
bash-3.2#
 

bash標準環境へ移行

ユーザのシェルをbashに変更し、.bash_profileを作成する。

※標準シェルをbashしたユーザは、Solaris標準のFTPサーバへのログイン認証で失敗するようになります。
 対応方法は現在調査中です。(詳しい情報をお持ちの方は、一報頂けると助かります)
 暫定対応としてFTP専用アカウントを作成するなどしてみて下さい。


usermodコマンドにて、対象ユーザのシェルをbashに変更する

# which bash
/usr/local/bin/bash

# cat /etc/passwd | grep operator
operator:x:100:10::/export/operator:/usr/bin/sh

# usermod -s /usr/local/bin/bash operator

# cat /etc/passwd | grep operator
operator:x:100:10::/export/operator:/usr/local/bin/bash

自分好みのプロファイルを作成する(RHEL風にしてみた)

# su - operator

$ id
uid=100(operator) gid=10(staff)

$ cat /dev/null > .bash_profile
$ echo "PS1='[\u@\h \W]\$ '" >> .bash_profile
$ echo "export PS1" >> .bash_profile
$ echo "PATH=/usr/sbin:/usr/bin:/usr/local/bin" >> .bash_profile
$ echo "export PATH" >> .bash_profile

$ cat .bash_profile
PS1='[\u@\h \W]\$ '
export PS1
PATH=/usr/sbin:/usr/bin:/usr/local/bin
export PATH

再度ログインしなおす事で、設定が反映される

$ exit

# su - operator

[operator@Solaris9 ~]$

[operator@Solaris9 ~]$ env
TERM=vt100
SHELL=/usr/local/bin/bash
SSH_CLIENT=192.168.XXX.254 3160 22
SSH_TTY=/dev/pts/1
USER=operator
MAIL=/var/mail//operator
PATH=/usr/sbin:/usr/bin:/usr/local/bin
PWD=/export/home/operator
TZ=Japan
PS1=[\u@\h \W]\$
SHLVL=1
HOME=/export/home/operator
LOGNAME=operator
SSH_CONNECTION=192.168.XXX.254 3160 192.168.XXX.XXX 22
_=/usr/bin/env

やっぱりbashが良いですよ。
オペレーション速度が全然違います。

>>戻る

アール

Copyright (C) zio-matrix group 2001-2007 All Rights Reserved.

アール