Solaris Patch Manager
- Patch Manager Downloads
https://sunsolve.sun.com/patchpro/patchpro.html
- CERT Advisory CA-2001-34 Buffer Overflow in System V Derived Login
http://www.cert.org/advisories/CA-2001-34.html
- ISS X-Force Database: telnet-tab-bo (7284): /bin/login buffer overflow
http://xforce.iss.net/static/7284.php
- 今更ながらパッチが当たっていない機械を見つけたので.
106160-02 SunOS 5.5.1: /usr/bin/login patch
106161-02 SunOS 5.5.1_x86: /usr/bin/login patch
105665-04 SunOS 5.6: /usr/bin/login patch
105666-04 SunOS 5.6_x86: /usr/bin/login patch
112300-01 SunOS 5.7: usr/bin/login Patch
112301-01 SunOS 5.7_x86: usr/bin/login Patch
111085-02 SunOS 5.8: /usr/bin/login patch
111086-02 SunOS 5.8_x86: /usr/bin/login patch
- Solaris 'health' driver
http://www.bolthole.com/solaris/drivers/health.html
ただし,特定の MB でしか使えない模様
/usr/ucb/ps は BSD 系 (Solaris 1.x/SunOS 4.x)
/usr/bin/ps は SystemV 系 (Solaris 2.x/SunOS 5.x)
全プロセスを見るとき
/usr/ucb/ps -aux は右端が切れない
/usr/bin/ps -ef は右端が切れる
- Solaris 9 での feature が,Solaris 8 に backport された模様
SunSolve のアカウント必須
Patch-ID# 113415-01 SunOS 5.8: gmsgfmt, msgfmt, gettext patch
Patch-ID# 113416-01 SunOS 5.8_x86: gmsgfmt, msgfmt, gettext patch
Patch-ID# 112438-01 SunOS 5.8: /kernel/drv/random patch
Patch-ID# 112439-01 SunOS 5.8_x86: /kernel/drv/random patch
*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
*** create self contained shared libraries on Solaris systems, without
*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
*** -no-undefined support, which will at least allow you to build shared
*** libraries. However, you may find that when you link such libraries
*** into an application without using GCC, you have to manually add
*** `gcc --print-libgcc-file-name` to the link command. We urge you to
*** upgrade to a newer version of GCC. Another option is to rebuild your
*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
o このままでは,gcc 以外のコンパイラで libdb.so をリンクした場合,
`gcc --print-libgcc-file-name` で表示されるライブラリを手動でリン
クする必要がある.
o これを回避するための最もよい方法は,gcc を gcc-3.0 以降にバージョ
ンアップすることである.
o 他の方法としては,binutils-2.9.1 以降の GNU ld を使うように gcc
をコンパイルしなおすという手はある.
- 事例:
/disk2 に未使用のマウントポイントがある.
/opt/local のディスク容量が 100%
/opt/local を /disk2 に割り当てたい
- /etc/vfstab を確認する
/dev/dsk/c0d0s7 /dev/rdsk/c0d0s7 /disk2 ufs 2 yes logging
- /opt/local のファイルを /disk2 にコピー/移動する.
# (cp -Rp|mv) /opt/local/* /disk2
- /disk2 をマウントポイントから外し,/opt/local をリネーム/削除する
# umount /disk2 (*1)
# mv /opt/local /opt/local2
(*1) umount: /home2 使用中です.
umount: /home2 busy
と表示されたら,一度ログアウトする.
ただし,/opt/local/bin 等にログインシェルがある場合,ログインできなくなるので,
一時的に,ログインシェルを /bin/sh 等に変更しておく
- /etc/vfstab を変更する
/dev/dsk/c0d0s7 /dev/rdsk/c0d0s7 /opt/local ufs 2 yes logging
- マウントする
# mount /opt/local