Dell Optiplex GXa SolarisTM 9  x86  12/02

OSインストール完了後の各種設定

戻る
1. 再起動時にハングアップする場合の対処 2. ユーザーの追加 3. 環境変数の設定(bash) 4. su時の環境変数の設定 5. リゾルバの設定 6. nsswitch.confの設定 7. デフォルトゲートウェイの設定 8. 各種ディレクトリの準備 9. デスクトップ (GUI) の無効化 10. NFSなどの停止(起動RunLevelの変更) 11. suコマンドの制限 12. 不要なサービスとポートの停止 13.ls使用時ファイルの種類別にカラー表示させる

再起動時にハングアップする場合の対処
再起動 ( "reboot" または "shutdown -y -g0 -i6" ) の起動中に以下のようなメッセージが出てマシンがフリーズする 場合がある。(マシンの電源を切って入れなおすか、リセットボタンを押すと正常に起動する)
WARNING: /pci@0,0/pci-ide@1f,1/ide@0 (ata0):          
timeout: abort request, target=0 lun=0
WARNING: /pci@0,0/pci-ide@1f,1/ide@0 (ata0):
timeout: abort device, target=0 lun=0
WARNING: /pci@0,0/pci-ide@1f,1/ide@0 (ata0):
timeout: reset target, target=0 lun=0
WARNING: /pci@0,0/pci-ide@1f,1/ide@0 (ata0):
timeout: reset bus, target=0 lun=0
これは使用しているマシンがATAのUltra DMA モードに対応していないか、BIOSで無効になっている場合に起こる。 Solaris9は、ATAのUltra DMA モードがデフォルトで使用するようになっているので、これを使用しないように することで回避できるようになる。 起動時の以下のタイミング(5秒以内)で ESC キーを押して起動を中止させる。
SunOS Secondary Boot version 3.00

Solaris Booting System



Running Configuration Assistant...
Autobooting from bootpath: /pci@0,0/pci-ide@7,1/ide@0/cmdk@0,0:a


if tye sytem hardware has changed, or to boot from a different
device, interrupt the autoboot process by pressing ESC.

Press ESCape to interrupt autoboot in 5 seconds.
下図のようにデバイス・コンフィギュレーション・アシスタントが起動する。 <F2>を押す。
Solaris Device Configuration Assistant
The Solaris(TM) (Intel Platform Edition) Divice Configuration Assinstant
scans to identify system hardware, lists identified devices, and can
boot the Solaris software from a specified device. This program must be
change the hardware on the system.

> To perform a full scan to identfy all system hardware, choose Continue.

> To diagnose possible full scan failures, choose Specific Scan.

> To add new or updated device drivers, choose Add Driver.

About navigation...
- The mouse cannot be used.
- If the keyboard does not have function keys or they do not respond,
  press ESC. The legend at the bottom of the screen will change to show
  the ESC keys to use for navigation.
- The F2 key performs the default action.


_


F2_Continue    F3_Specific Scan    F4_Add Driver    F6_Help
検出されたデバイスが一覧表示される。 <F2>を押す。
Identified Devices
The following devices have been identified on this system. To identify
devices not on this list or to modify device characteristics, such as
keyboard configuration, choose Device Tasks. Platfrom types may be
included in this list.

ISA: Floppy disk controller
ISA: Motherboard
ISA: PS/2 mouse
ISA: PnP bios: 16550-compatible serial controller
ISA: PnP bios: 16550-compatible serial controller
ISA: PnP bios: ESP 1.X compliant parallel port
ISA: system keyboard (US-English)
PCI: 3Com 3C905-TX Fast Etherlink XL 10/100
PCI: Bus Mastering IDE controller
PCI: Universal Serial Bus
PCI: VGA compatible display adapter
PnP ISA: CSC003
PnP ISA: CSC00F
PnP ISA: CSC0010
PnP ISA: Sound Blaster



F2_Continue    F3_Back    F4_Device Tasks    F6_Help
ここでOSを起動させずに、<F4>を押す。
Boot Solaris
Select one of the identified devices to boot the Solaris kernel and
choose Continue.

To perform optional features, such as modifying the autoboot and property
settings, choose Boot Tasks.
An asterrisk (*) indicates the current default boot device.

> To make a selection use the arrow keys, and press Enter to mark it [X]

[X] Disk: Target 0:IC35L120 AVV207-0
    on Bus Mastering IDE controller on Borad PCI bus 0, at Dev 7, Fu
[ ] Disk: Target 1:IC35L120 AVV207-0
    on Bus Mastering IDE controller on Borad PCI bus 0, at Dev 7, Fu
[ ] CD  : Target 0:NEC    CD-ROM DRIVE:28B 3.05
    on Bus Mastering IDE controller on Borad PCI bus 0, at Dev 7, Fu
[ ] NET : 3Com 3C905-TX Fast Etherlink XL 10/100
    on Board PCI bus 0, at Dev 17



F2_Continue    F3_Back    F4_Boot Tasks    F6_Help
"View/Edit Property Settings"にXマークをつけて、<F2>を押す。
Boot Tasks
Select a boot task choose Continue.

> To make a selection use the arrow keys, and press Enter to mark it [X].

[ ] View/Edit Autoboot Settings
[X] View/Edit Property Settngs
[ ] Set Network Configuration Stategy



F2_Continue    F3_Back    F6_Help
矢印キーを使って移動(ずっと下)し、"ata-dma-enabled" にXマークをつけて、 <F3>を押す。
View/Edit Property Settings
CAUTION: Invalid settings can make your system unusable. Make a backup
copy of the Configuration Assistant Boot Diskette before cahnging any
property settings. The backup copy can be used for recovery puroses.

To change or delete a property, select it from the list and choose
Change or Delete. To create a property, choose Create.

^ [ ]  target-driver-for pci1000,30
¦     ´sd'
¦ [ ]  pciide
¦     ´true'
¦ [ ]  prealloc-chunk-size
¦     ´0x2000'
¦ [X]  ata-dma-enabled
¦      1
¦ [ ]  kbd-type
¦     ´Japanese(106)'
¦ [ ]  kbd-wkeys
¦     ´true'
¦ [ ]  probed-arch-name
¦      i86pc
v [ ]  probed-compatible
F2_Back    F3_Change    F4_Create    F5_Delete    F6_Help
"Specify Value:" の値に "0" を入力して、<F2>を押す。
Specify Property Value
Valid property values can be up to 200 characters. Properties with null
values are legal.

Property : ata-dma-enabled

Specify Value: 0






F2_Continue    F3_Cancel    F6_Help
"View/Edit Property Settings"画面に戻るので、 <F2>を押して戻る。
View/Edit Property Settings
CAUTION: Invalid settings can make your system unusable. Make a backup
copy of the Configuration Assistant Boot Diskette before cahnging any
property settings. The backup copy can be used for recovery puroses.

To change or delete a property, select it from the list and choose
Change or Delete. To create a property, choose Create.

- [ ]  auto-boot?
¦     ´true'
¦ [ ]  auto-boot-cfg-num
¦     ´-1'
¦ [ ]  auto-boot-timeout
¦     ´5'
¦ [ ]  boottimeout
¦     ´0'
¦ [ ]  bashfirst
¦     ´false'
¦ [ ]  output-device
¦     ´screen'
¦ [ ]  input-device
¦     ´keyboard'
v [ ]  boot-file
F2_Back    F3_Change    F4_Create    F5_Delete    F6_Help
"Boot Tasks"画面に戻るので、<F3>を押して戻る。
Boot Tasks
Select a boot task choose Continue.

> To make a selection use the arrow keys, and press Enter to mark it [X].

[ ] View/Edit Autoboot Settings
[X] View/Edit Property Settngs
[ ] Set Network Configuration Stategy



F2_Continue    F3_Back    F6_Help
Boot媒体選択画面に戻るので、起動HDDを指定して<F2>を押して通常起動させる。
Boot Solaris
Select one of the identified devices to boot the Solaris kernel and
choose Continue.

To perform optional features, such as modifying the autoboot and property
settings, choose Boot Tasks.
An asterrisk (*) indicates the current default boot device.

> To make a selection use the arrow keys, and press Enter to mark it [X]

[X] Disk: Target 0:IC35L120 AVV207-0
    on Bus Mastering IDE controller on Borad PCI bus 0, at Dev 7, Fu
[ ] Disk: Target 1:IC35L120 AVV207-0
    on Bus Mastering IDE controller on Borad PCI bus 0, at Dev 7, Fu
[ ] CD  : Target 0:NEC    CD-ROM DRIVE:28B 3.05
    on Bus Mastering IDE controller on Borad PCI bus 0, at Dev 7, Fu
[ ] NET : 3Com 3C905-TX Fast Etherlink XL 10/100
    on Board PCI bus 0, at Dev 17



F2_Continue    F3_Back    F4_Boot Tasks    F6_Help

ユーザー(自分)の追加
自分(me)をユーザーとして追加する。
# /usr/sbin/useradd -m -d /export/home/me -s /bin/bash me
meのバスワードを設定する。
# /bin/passwd me New Password:******** Re-enter new Password:******** passwd: password successfully changed for me

環境変数の設定:
パスなどのユーザーの環境変数はbashの場合、ユーザーのディレクトリ直下の " .bash_profile " で設定する。 ユーザー me でログインして、新規ファイル .bash_profile をviで作成する。
$ vi .bash_prifile
PATHなど、以下の内容を記述して保存する。
PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
PATH=$PATH:/usr/ucb:/usr/ccs/bin:/usr/local/mysql/bin
PATH=$PATH:/usr/local/pgsql/bin:/usr/local/fml.domain.com
PATH=$PATH:/usr/openwin/bin:/etc:.

MANPATH=/usr/man:/usr/share/man:/usr/openwin/share/man:/usr/sfw/man
MANPATH=$MANPATH:/usr/local/man:/usr/local/share/man
MANPATH=$MANPATH:/usr/local/apache2/man:/usr/local/ssl/man
MANPATH=$MANPATH:/usr/local/samba/man:/usr/local/squid/man
MANPATH=$MANPATH:/usr/local/pgsql/man:/usr/local/mysql/man
MANPATH=$MANPATH:/usr/local/fml-domain.com/doc/man

JLESSCHARSET=japanese

EDITOR=vi

CC=gcc
LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/lib:/etc/lib

LDFLAGS=-L/usr/local/lib:-L/usr/lib 

POSTGRES_HOME=/usr/local/pgsql
PGLIB=$POSTGRES_HOME/lib
PGDATA=$POSTGRES_HOME/data

export PATH MANPATH JLESSCHARSET EDITOR CC LD_LIBRARY_PATH LDFLAGS POSTGRES_HOME PGLIB PGDATA

su時の環境変数の設定:
suコマンドでSuperUserになった場合の環境変数は、Linuxなどと違いユーザーの変数は 引き継がれない。Solarisの場合は /etc/default/su で定義する。 デフォルトのsuファイルをバックアップしておく。
# cd /etc/default # cp su su_default
suファイルをviで開く。
$ vi su
PATHなど、以下の赤字の内容を記述して保存する。(読取専用になっているので、強制的に保存する)
#ident  "@(#)su.dfl     1.6     93/08/14 SMI"   /* SVr4.0 1.2   */

# SULOG determines the location of the file used to log all su attempts
#
SULOG=/var/adm/sulog

# CONSOLE determines whether attempts to su to root should be logged
# to the named device
#
#CONSOLE=/dev/console

# PATH sets the initial shell PATH variable
#
#PATH=/usr/bin:

# SUPATH sets the initial shell PATH variable for root
#
# ↓↓ SUPATHは実際は1行で記述 ↓↓
SUPATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/usr/ucb
:/usr/ccs/bin:/usr/local/mysql/bin:/usr/local/pgsql/bin:/usr/local/fml
:/usr/openwin/bin:/etc:/usr/local/ssl/bin:.

# SYSLOG determines whether the syslog(3) LOG_AUTH facility should be used
# to log all su attempts.  LOG_NOTICE messages are generated for su's to
# root, LOG_INFO messages are generated for su's to other users, and LOG_CRIT
# messages are generated for failed su attempts.
#
SYSLOG=YES



MANPATH=/usr/man:/usr/share/man:/usr/openwin/share/man:/usr/sfw/man
MANPATH=$MANPATH:/usr/local/man:/usr/local/share/man
MANPATH=$MANPATH:/usr/local/apache2/man:/usr/local/ssl/man
MANPATH=$MANPATH:/usr/local/samba/man:/usr/local/squid/man
MANPATH=$MANPATH:/usr/local/pgsql/man:/usr/local/mysql/man
MANPATH=$MANPATH:/usr/local/fml-domain.com/doc/man

JLESSCHARSET=japanese

EDITOR=vi

CC=gcc
LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/lib:/etc/lib

LDFLAGS=-L/usr/local/lib:-L/usr/lib

POSTGRES_HOME=/usr/local/pgsql
PGLIB=$POSTGRES_HOME/lib
PGDATA=$POSTGRES_HOME/data

export PATH MANPATH JLESSCHARSET EDITOR CC LD_LIBRARY_PATH
export LDFLAGS POSTGRES_HOME PGLIB PGDATA

リゾルバ(参照DNS)の設定:
OSインストール時に指定している場合は特に必要はない。 /etc/resolv.confをviで新規作成する。
# vi /etc/resolv.conf
以下の例(192.168.x.x)のように参照先DNSのIPアドレスを記述して保存終了する。
domain		domain.com
nameserver		192.168.x.x

nsswitch.confの設定:
OSインストール時にDNSを指定している場合は特に必要はない。 Solarisはデフォルトでは名前解決は、/etc/hosts ファイルの内容だけで行うようになっているので、 DNSも参照するように設定する。/etc/nsswitch.conf をviで開く。
# vi /etc/nsswitch.conf
hots:の部分を以下のように書き換えて保存する。
hosts:	files  dns

デフォルト・ゲートウェイの設定:
OSインストール時に指定している場合は特に必要はない(Solaris8以前は設定する必要があった)。 Default GWは /etc/defaultrouter にそのIPアドレスだけが記述されている。

各種ディレクトリの準備:
/usr/local は /opt/local のシンボリックリンクとする。
# cd /opt # mkdir local # ln -s /opt/local /usr/local
その他、ディレクトリを準備しておく。
# mkdir /opt/pkg # mkdir /opt/src # chmod 777 /opt/src

デスクトップの無効化
基本的にネットワーク上のWinodwsマシンのTeraTermなどのTelnetソフトからサーバーは リモート管理するので、一通りのOS周りのインストールが済んだら、CDEなどのGUI環境は 全く必要なくなる。(GUIはCPUもメモリもそれなりに消費してしまうので、サーバー用途の Solarisでは、無効化するのが常套だと思う)
# /usr/dt/bin/dtconfig -d
次回起動時からデスクトップは起動しなくなるが、マシン起動中に止めたい場合は以下のコマンドで行う。
# /etc/rc2.d/S99dtlogin stop

NFSなどの停止 (起動RunLevelの変更)
NFSなどを使用しない場合、メモリやCPUリソースの節約のため、起動時のRunLevelを変えてしまう。 RunLevelは /etc/inittab で定義されている。4行目を以下のように変更する。
is:3:initdefault:  #変更前
    ↓
is:2:initdefault:  #変更後

suコマンドの制限
suコマンドを使用できるユーザーを制限する。(BSDのようにログイン権限を持っていて、suを使えるユーザーと 使えないユーザーを分ける。) wheelグループを追加する。
# groupadd wheel
viでgroupファイルを開く。
# vi /etc/group
以下のようにsuの使用を許可するユーザー(以下の場合、meとyouとfriend)をwheelに追加して、保存する。
wheel::106:me,you,friend
suコマンドのグループを変更する。
# chgrp wheel /usr/bin/su /usr/local/bin/su
suコマンドの実行権限を変更する。
# chmod 4750 /usr/bin/su /usr/local/bin/su

ls使用時ファイルの種類別にカラー表示させる
 要sh-fileutils Linuxのように ls や ls -la を使用した時にファイルの種類によって色分けさせて ビジュアル的に判別しやすくする。 方法は単純にRedhatの設定内容をそのままコピーして使っただけ(何も考えてません)。 /etc/DIR_COLORS をviで作成する。
# vi /etc/DIR_COLORS
以下の内容をそのまま記述。
# Configuration file for the color ls utility
# This file goes in the /etc directory, and must be world readable.
# You can copy this file to .dir_colors in your $HOME directory to override
# the system defaults.

# COLOR needs one of these arguments: 'tty' colorizes output to ttys, but not
# pipes. 'all' adds color characters to all output. 'none' shuts colorization
# off.
COLOR tty

# Extra command line options for ls go here.
# Basically these ones are:
#  -F = show '/' for dirs, '*' for executables, etc.
#  -T 0 = don't trust tab spacing when formatting ls output.
OPTIONS -F -T 0

# Below, there should be one TERM entry for each termtype that is colorizable
TERM linux
TERM console
TERM con132x25
TERM con132x30
TERM con132x43
TERM con132x60
TERM con80x25
TERM con80x28
TERM con80x30
TERM con80x43
TERM con80x50
TERM con80x60
TERM cons25
TERM xterm
TERM rxvt
TERM xterm-color
TERM color-xterm
TERM vt100
TERM dtterm
TERM color_xterm
TERM ansi
TERM screen
TERM kon
TERM kterm

# EIGHTBIT, followed by '1' for on, '0' for off. (8-bit output)
EIGHTBIT 1

# Below are the color init strings for the basic file types. A color init
# string consists of one or more of the following numeric codes:
# Attribute codes: 
# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
# Text color codes:
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# Background color codes:
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
NORMAL 00	# global default, although everything should be something.
FILE 00 	# normal file
DIR 01;34 	# directory
LINK 01;36 	# symbolic link
FIFO 40;33	# pipe
SOCK 01;35	# socket
BLK 40;33;01	# block device driver
CHR 40;33;01 	# character device driver
ORPHAN 01;05;37;41  # orphaned syminks
MISSING 01;05;37;41 # ... and the files they point to

# This is for files with execute permission:
EXEC 01;32 

# List any file extensions like '.gz' or '.tar' that you would like ls
# to colorize below. Put the extension, a space, and the color init string.
# (and any comments you want to add after a '#')
.cmd 01;32 # executables (bright green)
.exe 01;32
.com 01;32
.btm 01;32
.bat 01;32
.sh  01;32
.csh 01;32
.tar 01;31 # archives or compressed (bright red)
.tgz 01;31
.arj 01;31
.taz 01;31
.lzh 01;31
.zip 01;31
.z   01;31
.Z   01;31
.gz  01;31
.bz2 01;31
.bz  01;31
.tz  01;31
.rpm 01;31
.cpio 01;31
.jpg 01;35 # image formats
.gif 01;35
.bmp 01;35
.xbm 01;35
.xpm 01;35
.png 01;35
.tif 01;35
自分が使っている環境変数定義ファイル(.bash_profile 又は .bashrc 又は .profile)に 以下の内容を追加して保存。
# color-ls initialization

COLORS=/etc/DIR_COLORS
[ -e "/etc/DIR_COLORS.$TERM" ] && COLORS="/etc/DIR_COLORS.$TERM"
[ -e "$HOME/.dircolors" ] && COLORS="$HOME/.dircolors"
[ -e "$HOME/.dircolors.$TERM" ] && COLORS="$HOME/.dircolors.$TERM"
[ -e "$HOME/.dir_colors" ] && COLORS="$HOME/.dir_colors"
[ -e "$HOME/.dir_colors.$TERM" ] && COLORS="$HOME/.dir_colors.$TERM"
[ -e "$COLORS" ] || return

eval `dircolors --sh "$COLORS"`
[ -z "$LS_COLORS" ] && return

if ! egrep -qi "^COLOR.*none" $COLORS >/dev/null 2>/dev/null ; then
	alias ll='ls -l --color=tty' 2>/dev/null
	alias l.='ls -d .* --color=tty' 2>/dev/null
	alias ls='ls --color=tty' 2>/dev/null
else
	alias ll='ls -l' 2>/dev/null
	alias l.='ls -d .*' 2>/dev/null
fi