From card_captor @ users.sourceforge.net Fri Feb 24 01:23:47 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Fri, 24 Feb 2006 01:23:47 +0900 Subject: [dl-x86solaris-devel 1] =?iso-2022-jp?b?ZGwteDg2c29sYXJpcy1kZXZl?= =?iso-2022-jp?b?bCBNTBskQiRyOm5ALiQ3JF4kNyQ/GyhC?= Message-ID: <20060224012347.00007d1c@nanoha> dl-x86solaris-devel MLを作成しました。 Solaris 10 3/05でnewbootに変更されて以来、 ずっとnewbootに対応できていなかったのですが、 644さんからパッチを送って頂いたことで活動再開となりました。 # Solaris11までnewbootを採用しないとタカをくくっていました orz... Solaris 10 GAへの対応はひととおりの完成をみているわけですので、 今後こちらのサポート、更新はないと思います。 このため、新しくCVSレポジトリ"dlkit2"を作成しました。 SSH公開鍵をsf.jpに登録し、 setenv CVS_RSH=ssh cvs -z3 -d:ext:developername @ cvs.sourceforge.jp:/cvsroot/dl-x86solaris co dlkit2 でワークスペースにチェックアウトできると思いますので、試してみてください。 それでは、今後ともよろしくお願いいたします。 --- ksw / SAWADA Keiji From teelime @ mail.goo.ne.jp Sat Feb 25 00:41:38 2006 From: teelime @ mail.goo.ne.jp (teelime @ mail.goo.ne.jp) Date: 25 Feb 2006 00:41:38 +0900 Subject: [dl-x86solaris-devel 2] =?iso-2022-jp?b?GyRCJEgkaiQiJCgkOhsoQkNW?= =?iso-2022-jp?b?UxskQiRLJSIlQyVXJDckXiQ3JD8hIxsoQg==?= Message-ID: <20060224154138.64654.qmail@mail.goo.ne.jp> こんばんわ 644(teelime)です。 とりあえず先日までに修正した内容をCVSにアップしました。 タグは何も打ってません。 (CVSについて) お手数ですが、コメントルールとかローカルな禁則があれば お知らせ願います。 今のソースは Solaris10 1/06 をnewbootでdisklessインストールした場合しか 確認していません。 明日は3/05を2ndary bootでdisklessインストールしてみます。 多分、修正しないと駄目です。 以上 From card_captor @ users.sourceforge.net Sat Feb 25 02:49:20 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sat, 25 Feb 2006 02:49:20 +0900 Subject: [dl-x86solaris-devel 3] =?iso-2022-jp?b?UmU6IBskQiRIJGokIiQoGyhC?= =?iso-2022-jp?b?GyRCJDobKEJDVlMbJEIkSyUiJUMlVyQ3JF4kNyQ/ISMbKEI=?= In-Reply-To: <20060224154138.64654.qmail@mail.goo.ne.jp> References: <20060224154138.64654.qmail@mail.goo.ne.jp> Message-ID: <20060225024920.000069b7@nanoha> こんばんは、kswです。 > とりあえず先日までに修正した内容をCVSにアップしました。 > タグは何も打ってません。 従来のdiskless-kitレポジトリはSolaris10 GAのために残しておきたいので、 dlkit2レポジトリに対して変更を加えていただけませんか? oldbootのサポートはもう打ち切っていいと思いますので、 newbootだけをサポートしたdlkit2、という位置づけでいきたいと思います。 > (CVSについて) > お手数ですが、コメントルールとかローカルな禁則があれば > お知らせ願います。 特に考えてなかったんですが、dlkit2はまだまだ初期の段階ですので - 多少動かなくてもコミット可 - ChangeLogは簡潔でも良い(けど、書かなくて良いわけではない) - コミットログは大きな変更を行なった時のみで良い - 文字コードは日本語EUC - 転んでも泣かない で構わないかと思います。 あと、CVSに変更を加えたらコミット内容がdevel MLに流れるようにしました。 何か気になるところがあれば、これにリプライしてください。 では、よろしくおねがいします。 --- From card_captor @ users.sourceforge.jp Sat Feb 25 03:30:17 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 03:30:17 +0900 Subject: [dl-x86solaris-devel 4] CVS update: dlkit2 Message-ID: <20060224183017.E504B2AC053@users.sourceforge.jp> Index: dlkit2/cl.diskless-installer diff -u dlkit2/cl.diskless-installer:1.1.1.1 dlkit2/cl.diskless-installer:1.2 --- dlkit2/cl.diskless-installer:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/cl.diskless-installer Sat Feb 25 03:30:17 2006 @@ -225,7 +225,8 @@ echo "" echo "First stage of installation is done." echo "Following operations needed to complete installation:" - echo " * (On server side) Change menu.lst(GRUB's configuration file) under the tftp directory." + echo " * (On server side) Change menu.lst(GRUB's configuration file) + echo " * under the tftp directory." echo " * (On client side) Reboot this machine" echo "" echo "Good luck!" Index: dlkit2/cl.install-setup-disklessify diff -u dlkit2/cl.install-setup-disklessify:1.1.1.1 dlkit2/cl.install-setup-disklessify:1.2 --- dlkit2/cl.install-setup-disklessify:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/cl.install-setup-disklessify Sat Feb 25 03:30:17 2006 @@ -1,6 +1,6 @@ #!/bin/sh -if [ ! -x /cl.trandir/cl.disklessify ]; then - echo "Error: /cl.trandir/cl.disklessify: not found or not executable" +if [ ! -x /fake/cl.disklessify ]; then + echo "Error: /fake/cl.disklessify: not found or not executable" fi exec /bin/sh Index: dlkit2/config.dist diff -u dlkit2/config.dist:1.1.1.1 dlkit2/config.dist:1.2 --- dlkit2/config.dist:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/config.dist Sat Feb 25 03:30:17 2006 @@ -8,47 +8,49 @@ #Type of installation #INSTALL_TYPE=disklessify #INSTALL_TYPE=netinstall -INSTALL_TYPE=diskless +#INSTALL_TYPE=diskless #INSTALL_TYPE=offline #type of boot loader #BOOT_TYPE=bootbin -BOOT_TYPE=newboot +#BOOT_TYPE=grub #BOOT_TYPE=opensolaris #---------------------------------------------------------------------- # Part 1: Subnet -#BROADCAST=192.168.0.255 -#SUBNET_ADDR=192.168.0.0 -#SUBNET_MASK=255.255.255.0 -#ROUTER=192.168.0.1 -#LEASE_RANGE='192.168.0.100 192.168.0.200' +BROADCAST=192.168.1.255 +SUBNET_ADDR=192.168.1.0 +SUBNET_MASK=255.255.255.0 +ROUTER=192.168.1.1 +LEASE_RANGE='192.168.1.100 192.168.1.200' #---------------------------------------------------------------------- # Part 2: Client info -#CL_IPADDR=192.168.0.4 -#CL_NAME=saturn -#CL_MAC=00:E0:00:10:8E:5D +CL_IPADDR=192.168.1.15 +CL_NAME=clentname +CL_MAC=xx:xx:xx:xx:xx:xx CL_SWAPFILE=/var/swapfile -CL_MOUNT_OPTION="vers=3,llock" +CL_MOUNT_OPTION="vers=2" #CL_MOUNT_OPTION="vers=2,wsize=8192,rsize=8192" #CL_MOUNT_OPTION="vers=3,wsize=32768,rsize=32768" -CL_NFS_CLIENT_VERSION=3 +CL_NFS_CLIENT_VERSION=2 #CL_NFS_CLIENT_VERSION= #---------------------------------------------------------------------- # Part 3: Server info -SV_IPADDR=192.168.0.5 -SV_NAME=mercury -SV_DVDDIR=/home2/sol10install +SV_IPADDR=192.168.1.17 +SV_NAME=servername +SV_DVDDIR=/export/install/sol10 SV_PKGDIR=$SV_DVDDIR/Solaris_10/Product -SV_INSTROOT=$SV_DVDDIR/mininfsroot -SV_FIN_ROOT=/home4/nfsroot/sol10s -SV_SWAPFILE=/home4/nfsroot/sol10sswap -SV_SWAPSIZE=256 +SV_INSTBOOT=$SV_DVDDIR/Solaris_10/Tools/Boot +SV_FIN_ROOT=/export/roots/root +SV_SWAPFILE=/export/swaps/swapfile +SV_SWAPSIZE=128 +SV_TFTPROOT=/tftpboot +SV_PXEBOOTDIR=$SV_TFTPROOT/boot #---------------------------------------------------------------------- # Part 4: Daemon info @@ -69,19 +71,19 @@ PKG_LOCALE=ja # Japanese #PKG_CLUSTER=SUNWCXall # Entire Distribution plus OEM support -PKG_CLUSTER=SUNWCall # Entire Distribution +#PKG_CLUSTER=SUNWCall # Entire Distribution #PKG_CLUSTER=SUNWCprog # Developer System Support #PKG_CLUSTER=SUNWCuser # End User System Support #PKG_CLUSTER=SUNWCrnet # Reduced Networking Core System Support #PKG_CLUSTER=SUNWCreq # Core System Support -#PKG_CLUSTER=SUNWCmreq # Minimal Core System Support +PKG_CLUSTER=SUNWCmreq # Minimal Core System Support -#PKG_EXTRA="$PKG_EXTRA SUNWmdr" # needed for SUNWCmreq and SUNWCreq -#PKG_EXTRA="$PKG_EXTRA SUNWtcsh" # tcsh -#PKG_EXTRA="$PKG_EXTRA SUNWless" # less +PKG_EXTRA="$PKG_EXTRA SUNWmdr" # needed for SUNWCmreq and SUNWCreq +PKG_EXTRA="$PKG_EXTRA SUNWtcsh" # tcsh +PKG_EXTRA="$PKG_EXTRA SUNWless" # less # needed for diskless client -#PKG_CLUSTER="$PKG_CLUSTER SUNWCnfsc" +PKG_CLUSTER="$PKG_CLUSTER SUNWCnfsc" # bare X11 window system #PKG_CLUSTER="$PKG_CLUSTER SUNWCxwrte SUNWCown SUNWCxorgserver SUNWCxorglibs" @@ -95,7 +97,7 @@ #PKG_EXTRA="$PKG_EXTRA SUNWgss" # sysidconfig -#PKG_EXTRA="$PKG_EXTRA SUNWadmap SUNWadmlib-sysid" +PKG_EXTRA="$PKG_EXTRA SUNWadmap SUNWadmlib-sysid" # autofs #PKG_EXTRA="$PKG_EXTRA SUNWatfsr SUNWatfsu" @@ -107,10 +109,10 @@ #CL_ETC_INET_HOSTS=site_cfg/hosts CL_ETC_INET_NTP_CONF="" #CL_ETC_INET_NTP_CONF=site_cfg/ntp.conf -CL_ETC_NSSWITCH_CONF="*dns*" +CL_ETC_NSSWITCH_CONF="*files*" #CL_ETC_NSSWITCH_CONF=site_cfg/nsswitch.conf CL_ETC_DEFAULTDOMAIN="" -CL_ETC_RESOLV_CONF=site_cfg/resolv.conf +#CL_ETC_RESOLV_CONF=site_cfg/resolv.conf #CL_ETC_AUTO_MASTER=site_cfg/auto_master #CL_ETC_AUTO_HOME=site_cfg/auto_home CL_OWCONFIG="" @@ -119,8 +121,8 @@ #CL_XORGCONF=site_cfg/xorg.conf #CL_TIMEZONE="" CL_TIMEZONE=Japan -#CL_LANG=C -CL_LANG=ja +CL_LANG=C +#CL_LANG=ja #CL_KEYBOARD="" #CL_KEYBOARD="US-English" CL_KEYBOARD="Japanese(106)" @@ -142,15 +144,11 @@ CL_HOSTID=/dev/random CL_INST_BOOTRC="" CL_FIN_BOOTRC="" -#CL_FIN_BOOTFLAG="-v" -CL_FIN_BOOTFLAG="" +CL_FIN_BOOTFLAG="-v" CL_EXPORT_HOME_MODE="551" -######################################## -DVD_ISO=/home4/4_ISO/sol10x86/sol-10-u1-ga-x86-dvd-iso.iso -SV_TFTPROOT=/tftpboot -SV_PXEBOOTDIR=$SV_TFTPROOT/boot +SV_DVDPATH=/Download/sol-10-u1-ga-x86-dvd-iso.iso ALT_ROOT=$SV_INSTROOT -#SUN_SCRIPT=${SV_DVDDIR}/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +#SUN_SCRIPT=${SV_INSTDIR}/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk SUN_SCRIPT=$SV_INSTROOT/boot/solaris/bin/create_ramdisk -BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive BOOT_ARCHIVE_FILE=boot_archive +BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive Index: dlkit2/diskless-kit.texi diff -u dlkit2/diskless-kit.texi:1.1.1.1 dlkit2/diskless-kit.texi:1.2 --- dlkit2/diskless-kit.texi:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/diskless-kit.texi Sat Feb 25 03:30:17 2006 @@ -10,7 +10,7 @@ @include diskless-kit-v.texi -Last Update: $Date: 2006/02/23 16:15:29 $ +Last Update: $Date: 2006/02/24 18:30:17 $ @end copying @c Type C-u C-c C-u C-a @@ -334,8 +334,8 @@ @var{BOOT_TYPE}が@code{opensolaris}の時は無視されます。 通常は@code{$SV_DVDDIR/Solaris_x/Product}という値を指定しておけばよいです。 - @ subsection @var{SV_INSTROOT} -インストール時、クライアントの一時的なルートとして使われるディレクトリを指定します。 + @ subsection @var{SV_INSTBOOT} +インストール時、クライアントのブートに使われるディレクトリを指定します。 通常は@code{$SV_DVDDIR/Solaris_x/Tools/Boot}という値を指定しておけばよいです。 @subsection @var{SV_FIN_ROOT} @@ -361,16 +361,26 @@ @subsection @var{SV_SWAPSIZE} スワップファイルの容量をMB単位で指定します。 + @ subsection @var{SV_TFTPROOT} +TFTPのルートディレクトリです。殆どの環境で@file{/tftpboot}だと思います。 + + @ subsection @var{SV_PXEBOOTDIR} +PXEブート時にgrubがアクセスするディレクトリ、Solaris 10 1/06の場合、grubのバグの +為、@file{$SV_TFTPROOT/boot}以外は設定不可(変更不可)です。 +SV_PXEBOOTDIR=$SV_TFTPROOT/boot + @subsection サーバ情報の設定例 @smallexample SV_IPADDR=192.168.1.17 SV_NAME=nanoha SV_DVDDIR=/export/install/sol10 SV_PKGDIR=$SV_DVDDIR/Solaris_10/Product -SV_INSTROOT=$SV_DVDDIR/Solaris_10/Tools/Boot +SV_INSTBOOT=$SV_DVDDIR/Solaris_10/Tools/Boot SV_FIN_ROOT=/export/roots/root SV_SWAPFILE=/export/swaps/swapfile SV_SWAPSIZE=128 +SV_TFTPROOT=/tftpboot +SV_PXEBOOTDIR=$SV_TFTPROOT/boot @end smallexample @@ -805,6 +815,30 @@ なお、モードは指定可能ですが、 作成される@file{/export/home}のオーナおよびグループはrootに固定されています。 + @ subsection @var{SV_DVDPATH} + @ var{SV_DVDDIR}の内容のコピー元となるDVDイメージファイル(isoファイル)の場所を +指定します。@file{sv.mk-sv-dvddir}を使用しない場合は設定の必要はありません。 + + @ subsection @var{ALT_ROOT} +Sun謹製@file{create_ramdisk}スクリプト内部で使用します。変更しないで下さい。 +ALT_ROOT=$SV_INSTROOT + + @ subsection @var{SUN_SCRIPT} +Sun謹製@file{create_ramdisk}スクリプトの場所です。変更しないで下さい。 +どちらの値を使用しても動作に違いはありません。 +#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +SUN_SCRIPT=@code{$SV_INSTROOT/boot/solaris/bin/create_ramdisk} + + @ subsection @var{BOOT_ARCHIVE_FILE} +ブート時に必要なアーカイブファイル名です。変更する必要はありません。 +BOOT_ARCHIVE_FILE=boot_archive + + @ subsection @var{BOOT_ARCHIVE_SRC} +標準の@file{boot_archive}ファイルが存在するパスです。 +Sun謹製@file{create_ramdisk}スクリプト内部でも同じ値を保持していますので、変更 +しないで下さい。 +BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive + @subsection その他の設定の設定例 @smallexample NON_STD_DRIVER="" @@ -813,6 +847,12 @@ CL_FIN_BOOTRC="" CL_FIN_BOOTFLAG="-v" CL_EXPORT_HOME_MODE="551" +SV_DVDPATH=/Download/sol-10-u1-ga-x86-dvd-iso.iso +ALT_ROOT=$SV_INSTROOT +#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +SUN_SCRIPT=$SV_INSTROOT/boot/solaris/bin/create_ramdisk +BOOT_ARCHIVE_FILE=boot_archive +BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive @end smallexample @bye Index: dlkit2/sv.non-std-driver-setup diff -u dlkit2/sv.non-std-driver-setup:1.1.1.1 dlkit2/sv.non-std-driver-setup:1.2 --- dlkit2/sv.non-std-driver-setup:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/sv.non-std-driver-setup Sat Feb 25 03:30:17 2006 @@ -73,11 +73,11 @@ . ./config.in exit 111 if [ "x$BOOT_TYPE" = xnewboot ]; then - targetdir=$SV_INSTROOT.grub/fake - root=$SV_INSTROOT.grub + targetdir=$SV_INSTBOOT.grub/fake + root=$SV_INSTBOOT.grub else - targetdir=$SV_INSTROOT/fake - root=$SV_INSTROOT + targetdir=$SV_INSTBOOT/fake + root=$SV_INSTBOOT fi ;; offline) From card_captor @ users.sourceforge.jp Sat Feb 25 03:39:05 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 03:39:05 +0900 Subject: [dl-x86solaris-devel 5] CVS update: dlkit2 Message-ID: <20060224183905.AF5652AC053@users.sourceforge.jp> Index: dlkit2/texi2pukiwiki.sh diff -u dlkit2/texi2pukiwiki.sh:1.1.1.1 dlkit2/texi2pukiwiki.sh:1.2 --- dlkit2/texi2pukiwiki.sh:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/texi2pukiwiki.sh Sat Feb 25 03:39:05 2006 @@ -14,4 +14,5 @@ -e 's/@uref{\([^}]*\)}/[[\1]]/g' \ -e "s/@file{\([^}]*\)}/''\1''/g" \ -e "s/@code{\([^}]*\)}/''\1''/g" \ - -e "s/@var{\([^}]*\)}/'''\1'''/g" + -e "s/@var{\([^}]*\)}/'''\1'''/g" \ + -e "/@bye/d" From card_captor @ users.sourceforge.jp Sat Feb 25 03:58:02 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 03:58:02 +0900 Subject: [dl-x86solaris-devel 6] CVS update: dlkit2 Message-ID: <20060224185802.60C452AC02B@users.sourceforge.jp> Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.1.1.1 dlkit2/sv.setup:1.2 --- dlkit2/sv.setup:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/sv.setup Sat Feb 25 03:58:02 2006 @@ -1,6 +1,6 @@ #!/bin/sh # sv.setup - setup script starter for server-side -# Copyright (c) 2005 SAWADA Keiji +# Copyright (c) 2005-2006 SAWADA Keiji # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License AND Common @@ -102,12 +102,8 @@ # use_instroot=false # rootdir on RAM disk (install-time) use_instroot=true # rootdir on NFS (install-time) ;; - opensolaris) - use_dvddir=false # use BFU archive instead - use_instroot=false # rootdir on RAM disk XXX - ;; *) - perror "BOOT_TYPE should be one of bootbin, newboot, opensolaris" + perror "BOOT_TYPE should be one of bootbin, newboot" ;; esac } @@ -356,36 +352,10 @@ echo " done" } -prepare_tftpboot_opensolaris() { - echon "Preparing TFTP..." - - echon " directory" - mkdir -p /tftpboot - mkdir -p /tftpboot/boot/grub - mkdir -p /tftpboot/platform/i86pc - - echon " boot_archive" - #$SV_FIN_ROOT/boot/solaris/bin/create_ramdisk -R $SV_FIN_ROOT 2>&1 > /dev/null - cp $SV_FIN_ROOT/platform/i86pc/boot_archive /tftpboot/platform/i86pc/ - - echon " multiboot" - cp $SV_FIN_ROOT/platform/i86pc/multiboot /tftpboot/platform/i86pc/ - - echon " pxegrub" - cp $SV_FIN_ROOT/boot/grub/pxegrub /tftpboot/boot/grub/ - cp $SV_FIN_ROOT/boot/grub/splash.xpm.gz /tftpboot/boot/grub/ - - echon " menu.lst" - apply_m4 so.grub-menu.m4 > /tftpboot/boot/grub/menu.lst - - echo " done" -} - prepare_tftpboot() { case "$BOOT_TYPE" in bootbin) prepare_tftpboot_bootbin ;; newboot) prepare_tftpboot_newboot ;; - opensolaris) prepare_tftpboot_opensolaris ;; esac } @@ -442,37 +412,10 @@ fi } -check_tftpboot_opensolaris() { - echon "Checking TFTP accessibility... " - tftp=`typep tftp` - #tftp=/bin/true # debug - if [ -x "$tftp" ]; then - echo "get /boot/grub/pxegrub .v.pxegrub" | $tftp $SV_NAME > /dev/null 2>&1 - echo "get /boot/grub/menu.lst .v.menulst" | $tftp $SV_NAME > /dev/null 2>&1 - - warn_tftp=false - diff .v.pxegrub /tftpboot/boot/grub/pxegrub > /dev/null 2>&1 || warn_tftp=true - diff .v.menulst /tftpboot/boot/grub/menu.lst > /dev/null 2>&1 || warn_tftp=true - - if $warn_tftp; then - echo "failed" - echo $asserta - echo "Failed to retrieve file(s) from TFTP server." - echo "Probably TFTP server is not running." - echo $assertz - else - echo "done" - fi - else - echo "skipped, 'tftp' command missing" - fi -} - check_tftpboot() { case "$BOOT_TYPE" in bootbin) check_tftpboot_bootbin ;; # newboot) check_tftpboot_newboot ;; - opensolaris) check_tftpboot_opensolaris ;; esac } @@ -491,17 +434,10 @@ echo "done" } -generate_dhcpd_conf_opensolaris() { - echon "Generating DHCP configuration file... " - apply_m4 so.dhcpd.conf.m4 > so.dhcpd.conf - echo "done" -} - start_dhcpd() { case "$BOOT_TYPE" in bootbin) generate_dhcpd_conf_bootbin ;; newboot) generate_dhcpd_conf_newboot ;; - opensolaris) generate_dhcpd_conf_opensolaris ;; esac set +e @@ -796,7 +732,7 @@ mkdir $SV_DVDDIR/pnt mkdir $SV_INSTROOT rm -rf $SV_DVDDIR/miniroot.extd - echo -n "Extracting original miniroot-image to $SV_INSTROOT ..." + echon "Extracting original miniroot-image to $SV_INSTROOT ..." gzip -dc $SV_DVDDIR/boot/x86.miniroot > $SV_DVDDIR/miniroot.extd case "$OSTYPE" in SunOS) @@ -824,7 +760,7 @@ rsync -au $SV_INSTROOT/.tmp_proto/root/etc $SV_INSTROOT/tmp/root -echo -n "Creating default rtc_config for boot_archive..." +echon "Creating default rtc_config for boot_archive..." rm -f $SV_INSTROOT/etc/rtc_config cat <$SV_INSTROOT/etc/rtc_config zone_info=Japan From card_captor @ users.sourceforge.jp Sat Feb 25 04:02:42 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 04:02:42 +0900 Subject: [dl-x86solaris-devel 7] CVS update: dlkit2 Message-ID: <20060224190242.300382AC053@users.sourceforge.jp> Index: dlkit2/so.dhcpd.conf.m4 diff -u dlkit2/so.dhcpd.conf.m4:1.1.1.1 dlkit2/so.dhcpd.conf.m4:removed --- dlkit2/so.dhcpd.conf.m4:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/so.dhcpd.conf.m4 Sat Feb 25 04:02:42 2006 @@ -1,20 +0,0 @@ -ddns-update-style interim; -default-lease-time 3600; -max-lease-time 86400; - -option space grub; -option grub.configfile code 150 = text; - -subnet SUBNET_ADDR netmask SUBNET_MASK { - range LEASE_RANGE; - option subnet-mask SUBNET_MASK; - option broadcast-address BROADCAST; - option routers ROUTER; - option host-name "CL_NAME"; - - host CL_NAME { - hardware ethernet CL_MAC; - fixed-address CL_IPADDR; - filename "boot/grub/pxegrub"; - } -} Index: dlkit2/so.expand-bfu diff -u dlkit2/so.expand-bfu:1.1.1.1 dlkit2/so.expand-bfu:removed --- dlkit2/so.expand-bfu:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/so.expand-bfu Sat Feb 25 04:02:42 2006 @@ -1,34 +0,0 @@ -#!/bin/sh -# expand BFU archive -# Usage: so.expand-bfu - -srcdir=${1:?} -dstdir=${2:?} - -echon() { - printf "%s" "$@" -} - -echon "Checking source directory... " -if [ -d "$srcdir" ]; then - echo $srcdir -else - echo "not found"; exit 1 -fi - -echon "Checking destination directory... " -if [ -d "$dstdir" ]; then - echo $dstdir -else - echo "not found"; exit 1 -fi - - -for src in $srcdir/i386/generic.*; do - echo "Expanding $src" - (cd $dstdir; cpio -id) < $src -done -for src in $srcdir/i386/i86pc.*; do - echo "Expanding $src" - (cd $dstdir; cpio -id) < $src -done Index: dlkit2/so.grub-menu.m4 diff -u dlkit2/so.grub-menu.m4:1.1.1.1 dlkit2/so.grub-menu.m4:removed --- dlkit2/so.grub-menu.m4:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/so.grub-menu.m4 Sat Feb 25 04:02:42 2006 @@ -1,66 +0,0 @@ -default=0 -timeout=30 -splashimage=/boot/grub/splash.xpm.gz - -#---------------------------------------------------------------------- - -title OpenSolaris (PXE) - kernel platform/i86pc/multiboot -kv \ - -B fstype=nfs,server-ip=SV_IPADDR,server-name=SV_NAME,server-path=SV_FIN_ROOT - module platform/i86pc/boot_archive - -title OpenSolaris (PXE; reconfiguration mode) - kernel platform/i86pc/multiboot -kvr \ - -B fstype=nfs,server-ip=SV_IPADDR,server-name=SV_NAME,server-path=SV_FIN_ROOT - module platform/i86pc/boot_archive - -title OpenSolaris (PXE; safe mode) - kernel platform/i86pc/multiboot -ksvr \ - -B fstype=nfs,server-ip=SV_IPADDR,server-name=SV_NAME,server-path=SV_FIN_ROOT - module platform/i86pc/boot_archive - -#---------------------------------------------------------------------- - -title Solaris (local drive; GRUB; disk 0, partition 1) - root (hd0, 0, x) - kernel platform/i86pc/multiboot -kv - module platform/i86pc/boot_archive - -title Solaris (local drive; GRUB; disk 0, partition 2) - root (hd0, 1, x) - kernel platform/i86pc/multiboot -kv - module platform/i86pc/boot_archive - -title Solaris (local drive; GRUB; disk 0, partition 3) - root (hd0, 2, x) - kernel platform/i86pc/multiboot -kv - module platform/i86pc/boot_archive - -title Solaris (local drive; GRUB; disk 0, partition 4) - root (hd0, 3, x) - kernel platform/i86pc/multiboot -kv - module platform/i86pc/boot_archive - -#---------------------------------------------------------------------- - -title Solaris (local drive; boot.bin; disk 0, partition 1) - root (hd0, 0) - chainloader +1 - makeactive - -title Solaris (local drive; boot.bin; disk 0, partition 2) - root (hd0, 1) - chainloader +1 - makeactive - -title Solaris (local drive; boot.bin; disk 0, partition 3) - root (hd0, 2) - chainloader +1 - makeactive - -title Solaris (local drive; boot.bin; disk 0, partition 4) - root (hd0, 3) - chainloader +1 - makeactive - -#---------------------------------------------------------------------- Index: dlkit2/so.makedev diff -u dlkit2/so.makedev:1.1.1.1 dlkit2/so.makedev:removed --- dlkit2/so.makedev:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/so.makedev Sat Feb 25 04:02:42 2006 @@ -1,150 +0,0 @@ -#!/bin/sh -# setups device special node for diskless client or bare bfu -# filesystem. targets *only* x86 platform client. this script itself -# will run on most UNIX-like system -# -# usage: so.makedev - -ROOT=${1:?} -set -e - -getuid() { - case "$1" in - root) echo 0 ;; - *) echo 60001 ;; # nobody user - esac -} - -getgid() { - case "$1" in - root) echo 0 ;; - sys) echo 3 ;; - other) echo 1 ;; - tty) echo 7 ;; - *) echo 60001 ;; # nobody group - esac -} - -# note: these lists of special files are based on -# freshly-installed Solaris10 GA release. - -while read type owner group dir; do - xdir="$ROOT/$dir" - if [ ! -d "$xdir" ]; then mkdir "$xdir"; fi - xowner=`getuid "$owner"`; chown $xowner "$xdir" - xgroup=`getgid "$group"`; chgrp $xgroup "$xdir" -done < Index: dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh diff -u /dev/null dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh:1.1 --- /dev/null Sat Feb 25 04:03:15 2006 +++ dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh Sat Feb 25 04:03:15 2006 @@ -0,0 +1,8 @@ +#!/bin/sh + +[ "`id -u`" != 0 ] && usage "This must be run as root" + +. ./config.in + + +cp -pf $SV_FIN_ROOT/platform/i86pc/boot_archive $SV_PXEBOOTDIR Index: dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh diff -u /dev/null dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.1 --- /dev/null Sat Feb 25 04:03:15 2006 +++ dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh Sat Feb 25 04:03:15 2006 @@ -0,0 +1,15 @@ +#!/bin/sh + +apply_m4() { + # apply_m4 -Dmacro=value input.m4 > output + CONFIG=./config.in + (echo ". $CONFIG" + echo "m4 \\" + sed -n 's/^\([^#=]*\)=.*$/\1/p' < $CONFIG | sort -u | sed 's/\(.*\)/-D\1="$\1" \\/' + echo "$@" + ) | sh +} + + +echo " menu.lst" +apply_m4 -DPOSTUPDATE1 sv.grub-menu.m4 > /tftpboot/boot/grub/menu.lst From card_captor @ users.sourceforge.jp Sat Feb 25 10:19:25 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 10:19:25 +0900 Subject: [dl-x86solaris-devel 9] CVS update: dlkit2/post-install-update1 Message-ID: <20060225011925.0C1252AC01F@users.sourceforge.jp> Index: dlkit2/post-install-update1/copy-latest-boot_archive-to-tftpboot.sh diff -u dlkit2/post-install-update1/copy-latest-boot_archive-to-tftpboot.sh:1.1.1.1 dlkit2/post-install-update1/copy-latest-boot_archive-to-tftpboot.sh:removed --- dlkit2/post-install-update1/copy-latest-boot_archive-to-tftpboot.sh:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/post-install-update1/copy-latest-boot_archive-to-tftpboot.sh Sat Feb 25 10:19:24 2006 @@ -1,8 +0,0 @@ -#!/bin/sh - -[ "`id -u`" != 0 ] && usage "This must be run as root" - -. ./config.in - - -cp -pf $SV_FIN_ROOT/platform/i86pc/boot_archive $SV_PXEBOOTDIR Index: dlkit2/post-install-update1/mk-grubmenu-newbootpostupdate1.sh diff -u dlkit2/post-install-update1/mk-grubmenu-newbootpostupdate1.sh:1.1.1.1 dlkit2/post-install-update1/mk-grubmenu-newbootpostupdate1.sh:removed --- dlkit2/post-install-update1/mk-grubmenu-newbootpostupdate1.sh:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/post-install-update1/mk-grubmenu-newbootpostupdate1.sh Sat Feb 25 10:19:24 2006 @@ -1,15 +0,0 @@ -#!/bin/sh - -apply_m4() { - # apply_m4 -Dmacro=value input.m4 > output - CONFIG=./config.in - (echo ". $CONFIG" - echo "m4 \\" - sed -n 's/^\([^#=]*\)=.*$/\1/p' < $CONFIG | sort -u | sed 's/\(.*\)/-D\1="$\1" \\/' - echo "$@" - ) | sh -} - - -echo " menu.lst" -apply_m4 -DPOSTUPDATE1 sv.grub-menu.m4 > /tftpboot/boot/grub/menu.lst From card_captor @ users.sourceforge.net Sat Feb 25 10:26:26 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sat, 25 Feb 2006 10:26:26 +0900 Subject: [dl-x86solaris-devel 10] =?iso-2022-jp?b?UmU6IBskQiRIJGokIiQoGyhC?= =?iso-2022-jp?b?GyRCJDobKEJDVlMbJEIkSyUiJUMlVyQ3JF4kNyQ/ISMbKEI=?= In-Reply-To: <20060225024920.000069b7@nanoha> References: <20060224154138.64654.qmail@mail.goo.ne.jp> <20060225024920.000069b7@nanoha> Message-ID: <20060225102626.00000556@nanoha> 大事なこと書き忘れました。 ご自身の著作権表示を各ファイルに書き加えておいてください。 (少なくとも作成したファイルには) 今のところGPLとCDDLのデュアルライセンス制(選択)なので、 GPL的に著作権表示が必須です。 --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.jp Sat Feb 25 10:51:40 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 10:51:40 +0900 Subject: [dl-x86solaris-devel 11] CVS update: dlkit2 Message-ID: <20060225015140.2DA6F2AC01F@users.sourceforge.jp> Index: dlkit2/config.dist diff -u dlkit2/config.dist:1.2 dlkit2/config.dist:1.3 --- dlkit2/config.dist:1.2 Sat Feb 25 03:30:17 2006 +++ dlkit2/config.dist Sat Feb 25 10:51:39 2006 @@ -13,8 +13,7 @@ #type of boot loader #BOOT_TYPE=bootbin -#BOOT_TYPE=grub -#BOOT_TYPE=opensolaris +#BOOT_TYPE=newboot #---------------------------------------------------------------------- # Part 1: Subnet @@ -45,7 +44,7 @@ SV_NAME=servername SV_DVDDIR=/export/install/sol10 SV_PKGDIR=$SV_DVDDIR/Solaris_10/Product -SV_INSTBOOT=$SV_DVDDIR/Solaris_10/Tools/Boot +SV_INSTROOT=$SV_DVDDIR/Solaris_10/Tools/Boot SV_FIN_ROOT=/export/roots/root SV_SWAPFILE=/export/swaps/swapfile SV_SWAPSIZE=128 Index: dlkit2/diskless-kit.texi diff -u dlkit2/diskless-kit.texi:1.2 dlkit2/diskless-kit.texi:1.3 --- dlkit2/diskless-kit.texi:1.2 Sat Feb 25 03:30:17 2006 +++ dlkit2/diskless-kit.texi Sat Feb 25 10:51:40 2006 @@ -10,7 +10,7 @@ @include diskless-kit-v.texi -Last Update: $Date: 2006/02/24 18:30:17 $ +Last Update: $Date: 2006/02/25 01:51:40 $ @end copying @c Type C-u C-c C-u C-a @@ -182,25 +182,29 @@ @subsection @var{BOOT_TYPE} -インストールの種別を、 - @ code{bootbin}, @code{newboot}, @code{opensolaris} -のいずれかから選択します。 - - @ code{bootbin}は、 -二次起動プログラムboot.binを使用してブートする場合に使用します。 -Solaris10以前の場合はこれを選択します。 - - @ code{newboot}は、 -Multibootを利用してブートする場合に使用します。 -SolarisExpress(コードネームNevada; Solaris11の候補ビルド)の場合は -これを選択します。 - -MultibootはGRUBが実現するブート方式ですが、 -GRUBからチェインロードを使ってboot.binを使う場合は - @ code{newboot}ではなく@code{bootbin}を指定してください。 +今のところnewbootしか指定できません。 +newbootはGRUBを用いてブートする方式で、 +Solaris10 3/05以降で使用されています。 + + @ c インストールの種別を、 + @ c @code{bootbin}, @code{newboot} + @ c のいずれかから選択します。 + + @ c @code{bootbin}は、 + @ c 二次起動プログラムboot.binを使用してブートする場合に使用します。 + @ c Solaris10以前の場合はこれを選択します。 + + @ c @code{newboot}は、 + @ c Multibootを利用してブートする場合に使用します。 + @ c SolarisExpress(コードネームNevada; Solaris11の候補ビルド)の場合は + @ c これを選択します。 + + @ c MultibootはGRUBが実現するブート方式ですが、 + @ c GRUBからチェインロードを使ってboot.binを使う場合は + @ c @code{newboot}ではなく@code{bootbin}を指定してください。 - @ code{opensolaris}は、 -MultibootでOpenSolarisを利用する場合に使用します。 + @ c @code{opensolaris}は、 + @ c MultibootでOpenSolarisを利用する場合に使用します。 @c ---------------------------------------------------------------------- @@ -334,8 +338,8 @@ @var{BOOT_TYPE}が@code{opensolaris}の時は無視されます。 通常は@code{$SV_DVDDIR/Solaris_x/Product}という値を指定しておけばよいです。 - @ subsection @var{SV_INSTBOOT} -インストール時、クライアントのブートに使われるディレクトリを指定します。 + @ subsection @var{SV_INSTROOT} +インストール時のブートにおいて、クライアントのルートとなるディレクトリを指定します。 通常は@code{$SV_DVDDIR/Solaris_x/Tools/Boot}という値を指定しておけばよいです。 @subsection @var{SV_FIN_ROOT} @@ -375,7 +379,7 @@ SV_NAME=nanoha SV_DVDDIR=/export/install/sol10 SV_PKGDIR=$SV_DVDDIR/Solaris_10/Product -SV_INSTBOOT=$SV_DVDDIR/Solaris_10/Tools/Boot +SV_INSTROOT=$SV_DVDDIR/Solaris_10/Tools/Boot SV_FIN_ROOT=/export/roots/root SV_SWAPFILE=/export/swaps/swapfile SV_SWAPSIZE=128 Index: dlkit2/sv.non-std-driver-setup diff -u dlkit2/sv.non-std-driver-setup:1.2 dlkit2/sv.non-std-driver-setup:1.3 --- dlkit2/sv.non-std-driver-setup:1.2 Sat Feb 25 03:30:17 2006 +++ dlkit2/sv.non-std-driver-setup Sat Feb 25 10:51:40 2006 @@ -73,11 +73,11 @@ . ./config.in exit 111 if [ "x$BOOT_TYPE" = xnewboot ]; then - targetdir=$SV_INSTBOOT.grub/fake - root=$SV_INSTBOOT.grub + targetdir=$SV_INSTROOT.grub/fake + root=$SV_INSTROOT.grub else - targetdir=$SV_INSTBOOT/fake - root=$SV_INSTBOOT + targetdir=$SV_INSTROOT/fake + root=$SV_INSTROOT fi ;; offline) Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.2 dlkit2/sv.setup:1.3 --- dlkit2/sv.setup:1.2 Sat Feb 25 03:58:02 2006 +++ dlkit2/sv.setup Sat Feb 25 10:51:40 2006 @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/sh -x # sv.setup - setup script starter for server-side # Copyright (c) 2005-2006 SAWADA Keiji # @@ -93,17 +93,11 @@ esac case "$BOOT_TYPE" in - bootbin) - use_instroot=true # rootdir on NFS (install-time) -# SV_INSTROOT="$SV_INSTBOOT" - ;; newboot) -# SV_INSTROOT="$SV_INSTBOOT" -# use_instroot=false # rootdir on RAM disk (install-time) use_instroot=true # rootdir on NFS (install-time) ;; *) - perror "BOOT_TYPE should be one of bootbin, newboot" + perror "BOOT_TYPE should be newboot" ;; esac } @@ -316,21 +310,6 @@ } #---------------------------------------------------------------------- -prepare_tftpboot_bootbin() { - echon "Preparing TFTP..." - - echon " directory" - mkdir -p /tftpboot - - echon " nbp" - cp $SV_INSTROOT/boot/solaris/nbp /tftpboot/nbp.SUNW.i86pc - - echon " inetboot" - cp $SV_INSTROOT/boot/solaris/boot.bin /tftpboot/SUNW.i86pc - - echo " done" -} - prepare_tftpboot_newboot() { echon "Preparing TFTP..." @@ -342,9 +321,6 @@ echon " multiboot" cp $SV_DVDDIR/boot/multiboot /tftpboot/boot -# echon " miniroot" -# cp $SV_DVDDIR/boot/x86.miniroot /tftpboot/boot - echon " menu.lst" # apply_m4 -DINSTALL sv.grub-menu.m4 > /tftpboot/boot/grub/menu.lst apply_m4 -DINSTUPDATE1 sv.grub-menu.m4 > /tftpboot/boot/grub/menu.lst From card_captor @ users.sourceforge.jp Sat Feb 25 13:03:27 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 13:03:27 +0900 Subject: [dl-x86solaris-devel 12] CVS update: dlkit2 Message-ID: <20060225040327.729102AC01F@users.sourceforge.jp> Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.3 dlkit2/sv.setup:1.4 --- dlkit2/sv.setup:1.3 Sat Feb 25 10:51:40 2006 +++ dlkit2/sv.setup Sat Feb 25 13:03:27 2006 @@ -703,7 +703,7 @@ create_mininfsroot() { OSTYPE=`uname -s` -if [ ! -e $SV_INSTROOT ]; then +if [ ! -d $SV_INSTROOT ]; then rm -rf $SV_DVDDIR/pnt mkdir $SV_DVDDIR/pnt mkdir $SV_INSTROOT @@ -730,11 +730,10 @@ fi if [ ! -d $SV_INSTROOT/a ]; then - echo "error: $SV_INSTROOT/a must be exist" + perror "$SV_INSTROOT/a must be there" fi - rsync -au $SV_INSTROOT/.tmp_proto/root/etc $SV_INSTROOT/tmp/root echon "Creating default rtc_config for boot_archive..." rm -f $SV_INSTROOT/etc/rtc_config From card_captor @ users.sourceforge.net Sat Feb 25 13:53:25 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sat, 25 Feb 2006 13:53:25 +0900 Subject: [dl-x86solaris-devel 13] =?iso-2022-jp?b?UmU6IBskQiRIJGokIiQoGyhC?= =?iso-2022-jp?b?GyRCJDobKEJDVlMbJEIkSyUiJUMlVyQ3JF4kNyQ/ISMbKEI=?= In-Reply-To: <20060225041413.57604.qmail@mail.goo.ne.jp> References: <20060225041413.57604.qmail@mail.goo.ne.jp> Message-ID: <20060225135325.00003154@nanoha> こんにちは、kswです。 > diskless-kitの方は昨年7月時点までに戻さなくてはいけないと > 思います。大変お手数をおかけすることになると思います。 > 宜しくお願いします。 うーん、ちゃんとタグも振ってありますし、 節目でリリースもしてありますから、 あえて戻さなくてもいいかなーと思ってます。えへv ところで、wikiに書く(=不特定多数の人に見てもらう)前には 今作っているdiskless-kitの作業方法を記しておく手段がないですよね。 今こちらのほうで、texinfoをdocs/以下に移した上で 設定編・運用編に分けようとしていますので、 何かユーザの手順に変更があった際はこちらの更新もお願いいたします。 まだメモ程度の走り書きレベルで構わないです。 それではよろしくおねがいします。 --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.jp Sat Feb 25 14:55:05 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 14:55:05 +0900 Subject: [dl-x86solaris-devel 14] CVS update: dlkit2/docs Message-ID: <20060225055505.5502F2AC015@users.sourceforge.jp> From card_captor @ users.sourceforge.jp Sat Feb 25 14:55:34 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 14:55:34 +0900 Subject: [dl-x86solaris-devel 15] CVS update: dlkit2 Message-ID: <20060225055534.D243B2AC015@users.sourceforge.jp> Index: dlkit2/TODO diff -u dlkit2/TODO:1.1.1.1 dlkit2/TODO:1.2 --- dlkit2/TODO:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/TODO Sat Feb 25 14:55:34 2006 @@ -7,7 +7,7 @@ * ドキュメント整備 ** Wikiの説明をもうちょっと丁寧に -** イメージ図を追加する +** texinfoにユーザの作業手順を記述する * 複数クライアントのサポート Index: dlkit2/diskless-kit.texi diff -u dlkit2/diskless-kit.texi:1.3 dlkit2/diskless-kit.texi:removed --- dlkit2/diskless-kit.texi:1.3 Sat Feb 25 10:51:40 2006 +++ dlkit2/diskless-kit.texi Sat Feb 25 14:55:34 2006 @@ -1,862 +0,0 @@ -\input texinfo - @ setfilename diskless-kit-config - @ settitle diskless-kit設定マニュアル - @ syncodeindex pg cp - - @ copying -diskless-kit設定マニュアル - -Copyright @copyright{} 2005 SAWADA Keiji @email{card_captor at users.sourceforge.jp} - - @ include diskless-kit-v.texi - -Last Update: $Date: 2006/02/25 01:51:40 $ - @ end copying - - @ c Type C-u C-c C-u C-a - - @ c ---------------------------------------------------------------------- - @ c タイトルページ。印刷のみに現れる - - @ titlepage - @ title diskless-kit設定マニュアル - @ author SAWADA Keiji @email{card_captor at users.sourceforge.jp} - @ page - @ vskip 0pt plus 1filll - @ insertcopying - @ contents - @ end titlepage - - @ c ---------------------------------------------------------------------- - @ ifnottex - @ node Top, Abstract, (dir), (dir) - @ top diskless-kit設定マニュアル - @ end ifnottex - - @ insertcopying - - @ majorheading - - @ heading トップメニュー - @ menu -* Abstract:: -* Configuration:: - - @ detailmenu - --- The Detailed Node Listing --- - -diskless-kitの設定について - -* Overview of diskless-kit configuration:: -* Configuration categories:: - -設定項目の説明 - -* General config:: -* Subnet:: -* Client info:: -* Server info:: -* Daemon info:: -* Package info:: -* Client /etc file:: -* sysidcfg support:: -* Other configuration:: - - @ end detailmenu - @ end menu - - @ c __body__ - @ c ---------------------------------------------------------------------- - @ node Abstract, Configuration, Top, Top - @ chapter diskless-kitの設定について - -本マニュアルでは、Solaris/x86のディスクレス環境構築ツールである -diskless-kitの設定方法を記述します。 - - @ menu -* Overview of diskless-kit configuration:: -* Configuration categories:: - @ end menu - - @ c ---------------------------------------------------------------------- - @ node Overview of diskless-kit configuration, Configuration categories, Abstract, Abstract - @ section diskless-kitの設定概要 - -diskless-kitの設定情報は、@file{config.in}というファイルに記録します。 -このファイルには「キーワード=設定値」という形式で設定情報を書き込みます。 - @ file{config.in}はシェルスクリプトとして読み込まれるので、 -キーワードおよび設定値の記述にはいくらか制限があります。 - - @ itemize - @ item キーワードは、アルファベット・数字・アンダースコアだけで -構成されていなければなりません。 - @ item キーワードやイコール記号の前後に空白文字・記号文字を入れてはなりません。 - @ item 基本的に設定値はダブルクオートまたはシングルクオートで囲む必要があります。 - @ item 設定値をクオートで囲まない場合、 -空白文字・記号文字はシェルによって解釈されてしまいます。 - @ item 「$キーワード」という文字列は、 -それ以前にそのキーワードに設定された値に置換されます。 -ただし、シングルクオートで囲った場合は置換されません。 - @ end itemize - -空行は無視されます。 -また、シャープ文字から行末まではコメントであり、これも無視されます。 - - @ c ---------------------------------------------------------------------- - @ node Configuration categories, , Overview of diskless-kit configuration, Abstract - @ section 設定項目の分類 - -設定内容は、大きく分けて次のように分類されます。 - @ itemize - @ item 全般 - @ item サブネット - @ item クライアントの情報 - @ item サーバの情報 - @ item 各種デーモンの種類指定 - @ item インストールするパッケージの情報 - @ item 設定ファイル - @ item sysidcfgサポート - @ item その他の設定 - @ end itemize - - - @ c ---------------------------------------------------------------------- - @ node Configuration, , Abstract, Top - @ chapter 設定項目の説明 - - @ c ---------------------------------------------------------------------- - @ menu -* General config:: -* Subnet:: -* Client info:: -* Server info:: -* Daemon info:: -* Package info:: -* Client /etc file:: -* sysidcfg support:: -* Other configuration:: - @ end menu - - @ node General config, Subnet, Configuration, Configuration - @ section 全般 - -このセクションでは、diskless-kitの全般的な設定について記述します。 - - @ subsection @var{INSTALL_TYPE} - -インストールの種別を、 - @ code{disklessify}, @code{netinstall}, @code{diskless}, @code{offline} -のいずれかから選択します。 - - @ code{disklessify}は、 -すでに動作しているSolaris環境をディスクレス化する場合に指定します。 -すなわち、すでにハードディスクにインストールしてあるSolaris/x86を、 -PXEブート+NFS-ROOTディスクレス環境に移行する場合に選択します。 - - @ code{netinstall}は、 -Solarisインストールサーバを構築し、 -ネットワーク経由でSolaris/x86を -ローカルハードディスクにインストールする際に指定します。 -インストール終了後、クライアントはローカルハードディスクから起動します。 -CD-ROM/DVD-ROMドライブが付いていないPCに -Solaris/x86をインストールするのに便利です。 - - @ code{diskless}は、 -Solarisインストールサーバを構築し、 -ネットワーク経由でSolaris/x86を -NFS領域にインストールする場合に選択します。 -インストール終了後、クライアントはPXEブートで起動し、 -ディスクレス環境にて動作します。 -ハードディスクがない、 -もしくはハードディスクをまったく触りたくない場合に使えます。 - - @ code{offline}は、 -Solaris/x86を母艦とし、 -母艦内だけでクライアント(別のPC)用のNFS-ROOTディスクレス環境を -構築する場合に選択します。 -クライアント側でインストール作業は行なう必要がありません。 -コンセプト的には@code{diskless}と同じで、 -すでに稼働しているSolaris/x86マシンが必要ですが、 -ずっと高速にセットアップが終了します。 - - - @ subsection @var{BOOT_TYPE} - -今のところnewbootしか指定できません。 -newbootはGRUBを用いてブートする方式で、 -Solaris10 3/05以降で使用されています。 - - @ c インストールの種別を、 - @ c @code{bootbin}, @code{newboot} - @ c のいずれかから選択します。 - - @ c @code{bootbin}は、 - @ c 二次起動プログラムboot.binを使用してブートする場合に使用します。 - @ c Solaris10以前の場合はこれを選択します。 - - @ c @code{newboot}は、 - @ c Multibootを利用してブートする場合に使用します。 - @ c SolarisExpress(コードネームNevada; Solaris11の候補ビルド)の場合は - @ c これを選択します。 - - @ c MultibootはGRUBが実現するブート方式ですが、 - @ c GRUBからチェインロードを使ってboot.binを使う場合は - @ c @code{newboot}ではなく@code{bootbin}を指定してください。 - - @ c @code{opensolaris}は、 - @ c MultibootでOpenSolarisを利用する場合に使用します。 - - - @ c ---------------------------------------------------------------------- - @ node Subnet, Client info, General config, Configuration - @ section サブネット - -このセクションでは、サブネットの設定について記述します。 - - @ subsection @var{BROADCAST} -ブロードキャストアドレスをドット付き表現で指定します。 -ドット付き表現とはIPアドレスを10進数で表してドットでつなげた表現で、 -例えば"192.168.1.1"のようなものです。 - - @ subsection @var{SUBNET_MASK} -サブネットマスクをドット付き表現で指定します。 - - @ subsection @var{ROUTER} -ルータのIPアドレスをドット付き表現で指定します。 - - @ subsection @var{LEASE_RANGE} -DHCPでリースするIPアドレスの範囲をドット付き表現で指定します。 -不明な場合は、後述する@var{CL_IPADDR}をそのまま記述しておけばよいです。 - - @ subsection サブネットの設定例 - @ smallexample -SUBNET_ADDR=192.168.1.0 -SUBNET_MASK=255.255.255.0 -ROUTER=192.168.1.1 -LEASE_RANGE='192.168.1.100 192.168.1.200' - @ end smallexample - - @ c ---------------------------------------------------------------------- - @ node Client info, Server info, Subnet, Configuration - @ section クライアントの情報 - -このセクションでは、クライアント情報の設定について記述します。 - - @ subsection @var{CL_IPADDR} -クライアントのIPアドレスをドット付き表現で指定します。 - - @ subsection @var{CL_NAME} -クライアントの名前を指定します。 - - @ subsection @var{CL_MAC} -クライアントのMACアドレスを指定します。 - - @ subsection @var{CL_SWAPFILE} -クライアントでのスワップファイルを指定します。 - - @ subsection @var{CL_MOUNT_OPTION} -クライアント側のマウントオプションを指定します。 -主にNFSのパフォーマンス改善や、NFSの相性問題を解消するために設定します。 - -この設定値は、DHCP経由でクライアントに渡され、 -ブート時にルートディレクトリをマウントする際に使用されるほか、 -インストール後にルートディレクトリをマウントする際にも反映されます。 -指定できるマウントオプションについては -Solarisのmount(1m)やmount_nfs(1m)を参照してください。 - -NFSのパフォーマンスを改善する場合は、 -wsizeオプションおよびrsizeオプションを使ってNFSパケットサイズを指定します。 -調整方法は下記を参照してください。 - -Linux: @uref{http://www.linux.or.jp/JF/JFdocs/NFS-HOWTO/} - -Solaris: @uref{http://docs.sun.com/app/docs/doc/819-0381?a=expand} - -NFSの相性問題を解消するには、 -versオプションを使ってNFSのプロトコルバージョンを指定したり、 -protoオプションを使ってトランスポートプロトコルを指定します。 - -以下の設定は、NFSバージョン2のデフォルト設定です: - @ smallexample -CL_MOUNT_OPTION="vers=2,proto=udp,wsize=8192,rsize=8192" - @ end smallexample - -以下の設定は、NFSバージョン3のデフォルト設定です: - @ smallexample -CL_MOUNT_OPTION="vers=3,proto=tcp,wsize=32768,rsize=32768" - @ end smallexample - -NFSサーバのOSやNICによっては、 -どんなマウントオプションを指定しても -クライアントとの通信が安定しない場合がありえます -(@uref{https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=114904}) -ので、すっぱりとバニラカーネルを使ったディストロに切り替えることも -必要かもしれません。 - - @ subsection @var{CL_NFS_CLIENT_VERSION} -クライアントが使用するNFSプロトコルのバージョンを指定します。 -ここで指定したバージョン以下のNFSプロトコルを -使うようにNFSサーバとネゴシエートするので、 -NFSの接続性が改善されることがあります。 - -インストール時およびインストール後の、 -ブート後のすべてのNFSマウントに影響を与えます。 - -値として、2または3または無指定を指定することができます。 -4を指定することもできますが、 -ディスクレスクライアントのほうがサポートしないかもしれません。 - - @ subsection クライアント情報の設定例 - @ smallexample -CL_IPADDR=192.168.1.15 -CL_NAME=etta -CL_MAC=00:01:23:45:67:89 -CL_SWAPFILE=/var/swapfile -CL_MOUNT_OPTION="vers=2" -CL_NFS_CLIENT_VERSION=2 - @ end smallexample - - - @ c ---------------------------------------------------------------------- - @ node Server info, Daemon info, Client info, Configuration - @ section サーバの情報 - -このセクションでは、サーバ情報の設定について記述します。 - - @ subsection @var{SV_IPADDR} -サーバのIPアドレスをドット付き表現で指定します。 - - @ subsection @var{SV_NAME} -サーバの名前を指定します。 - - @ subsection @var{SV_DVDDIR} -インストールDVD(インストールCD)の内容が入っているディレクトリを指定します。 - - @ subsection @var{SV_PKGDIR} -インストール用のパッケージが入っているディレクトリを指定します。 - @ var{SV_DVDDIR}の下位ディレクトリになければなりません。 - @ var{BOOT_TYPE}が@code{opensolaris}の時は無視されます。 -通常は@code{$SV_DVDDIR/Solaris_x/Product}という値を指定しておけばよいです。 - - @ subsection @var{SV_INSTROOT} -インストール時のブートにおいて、クライアントのルートとなるディレクトリを指定します。 -通常は@code{$SV_DVDDIR/Solaris_x/Tools/Boot}という値を指定しておけばよいです。 - - @ subsection @var{SV_FIN_ROOT} -インストール後、クライアントのルートディレクトリになるディレクトリを指定します。 - @ var{INSTALL_TYPE}が@code{netinstall}の時は無視されます。 -それ以外の場合、このディレクトリはクライアントに対して -NFSエクスポートされている必要があります。 - -セキュリティ上の理由により、 -すでにエクスポートされているNFS共有より下位のディレクトリを指定するのは -避けたほうがよいです。 -例えばすでに@file{/export/home}がエクスポートされている場合、 -それより下位にある@file{/export/home/root}を@var{SV_FIN_ROOT}に指定するのは -避けたほうがよいです。 - -ディスクレスクライアントが複数ある場合、 -設定値を@code{/export/roots/$CL_NAME}のように -クライアントごとに指定するすることができます。 - - @ subsection @var{SV_SWAPFILE} -クライアント用のスワップファイルを指定します。 - - @ subsection @var{SV_SWAPSIZE} -スワップファイルの容量をMB単位で指定します。 - - @ subsection @var{SV_TFTPROOT} -TFTPのルートディレクトリです。殆どの環境で@file{/tftpboot}だと思います。 - - @ subsection @var{SV_PXEBOOTDIR} -PXEブート時にgrubがアクセスするディレクトリ、Solaris 10 1/06の場合、grubのバグの -為、@file{$SV_TFTPROOT/boot}以外は設定不可(変更不可)です。 -SV_PXEBOOTDIR=$SV_TFTPROOT/boot - - @ subsection サーバ情報の設定例 - @ smallexample -SV_IPADDR=192.168.1.17 -SV_NAME=nanoha -SV_DVDDIR=/export/install/sol10 -SV_PKGDIR=$SV_DVDDIR/Solaris_10/Product -SV_INSTROOT=$SV_DVDDIR/Solaris_10/Tools/Boot -SV_FIN_ROOT=/export/roots/root -SV_SWAPFILE=/export/swaps/swapfile -SV_SWAPSIZE=128 -SV_TFTPROOT=/tftpboot -SV_PXEBOOTDIR=$SV_TFTPROOT/boot - @ end smallexample - - - @ c ---------------------------------------------------------------------- - @ node Daemon info, Package info, Server info, Configuration - @ section 各種デーモンの指定 - -このセクションでは、各種デーモンの指定について記述します。 - -警告: このセクションの説明で「自動設定」と書いてあるものは、 -設定ファイルの上書きやデーモンの再起動が自動的に行なわれることを意味します。 -一応設定ファイルはバックアップが取られますが、十分注意してください。 - - @ subsection @var{SV_DHCPD_PREF} -ISC DHCPDの種類を指定します。以下の値が指定可能です。 - - @ itemize - @ item @code{isc_csw}: -CSW版の@code{dhcpd}パッケージ用に自動設定します。 - @ item @code{debian}: -Debian GNU/Linuxの@code{dhcpd3}パッケージ用に自動設定します。 - @ item @code{isc_std}: -標準的なオプションでコンパイルされたdhcpd用に自動設定します。 -設定ファイルは@file{/etc/dhcpd.conf}で、 -起動用スクリプトは@file{/etc/init.d/dhcp}と仮定します。 - @ item @code{none}: -自動設定せず、手動設定します。 - @ end itemize - - @ subsection @var{SV_NFSD_PREF} -NFSサーバの種類を指定します。以下の値が指定可能です。 - - @ itemize - @ item @code{solaris}: -Solarisで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{generic_linux}: -Linuxで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{debian}: -Debian GNU/Linuxで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{suse}: -RHEL4, CentOS4.1, SUSE9.3で稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{aix}: -AIXで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{generic_bsd}: -BSD(FreeBSD, OpenBSD, NetBSD)で稼働しているNFSサーバ用に自動設定します。 -Darwin, Mac OS Xは含まない。未テスト。 - @ item @code{tru64}: -Tru64 UNIXで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{hpux}: -HP-UXで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{irix}: -IRIXで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{sunos4}: -SunOS4.xで稼働しているNFSサーバ用に自動設定します。未テスト。 - @ item @code{none}: -自動設定せず、手動設定します。 - @ end itemize - - - @ subsection @var{SV_TFTPD_PREF} -TFTPDサーバの種類を指定します。 -現時点では手動設定を表す@code{none}以外指定できません。 - - @ itemize - @ item @code{none}: -自動設定せず、手動設定します。 - @ end itemize - - @ subsection デーモン指定の設定例 - @ smallexample -SV_DHCPD_PREF=none # 手動設定 -SV_NFSD_PREF=none # 手動設定 -SV_TFTPD_PREF=none # 手動設定 - @ end smallexample - - - @ c ---------------------------------------------------------------------- - @ node Package info, Client /etc file, Daemon info, Configuration - @ section インストールするパッケージの指定 - -このセクションでは、インストールするパッケージの指定について記述します。 - -注意: このセクションの設定内容が参照されるのは、 - @ var{INSTALL_TYPE}が@code{diskless}または@code{offline}の時だけです。 -Sunの純正インストーラを使用する場合(@var{INSTALL_TYPE}=@code{netinstall})、 -ここでの設定内容は無視されます。 - - @ subsection @var{TOC_LOCALE} -パッケージの内容を示したテーブルを指定します。 -StarSuiteを選択する場合は@code{ja}, -StarOfficeを選択する場合は@code{C}を指定します。 -パッケージのリストをどこから探してくるかを指定するものであって、 -どのパッケージをインストールするかを指定するものではありません。 -ですので、多分jaから変える必要はありません。 - - @ subsection @var{PKG_CATEGORY} -インストールするカテゴリのリストを指定します。 -OSの言語サポートを有効にしたい場合に指定する必要があります。 - -日本語カテゴリのサポートが必要な場合は@code{l10nja}を含めてください。 -特定の言語のサポートが不要な場合は、""を指定します。 - - @ subsection @var{PKG_LOCALE} -パッケージロケールのリストを指定します。 -GNOME等アプリのロケールサポートを有効にしたい場合に指定する必要があります。 - -日本語カテゴリのサポートが必要な場合は@code{ja}を含めてください。 -特定の言語のサポートが不要な場合は、""を指定します。 - - @ subsection @var{PKG_CLUSTER} -インストールするクラスタのリストを指定します。 -クラスタとはパッケージの集合です。 -多くの場合、以下のメタクラスタのうちどれかを指定しておく必要があります。 - - @ itemize - @ item @code{SUNWCXall}: Entire Distribution plus OEM support - @ item @code{SUNWCall}: Entire Distribution - @ item @code{SUNWCprog}: Developer System Support - @ item @code{SUNWCuser}: End User System Support - @ item @code{SUNWCrnet}: Reduced Networking Core System Support - @ item @code{SUNWCreq}: Core System Support - @ item @code{SUNWCmreq}: Minimal Core System Support - @ end itemize - - @ subsection @var{PKG_EXTRA} -追加でインストールするパッケージのリストを指定します。 - - @ subsection @var{設定例1} -インストールするクラスタとして、 -Minimal Core System SupportとNFS client clusterを指定します -(ディスクレス化のためにNFS client機能が必要です)。 - @ smallexample -PKG_CLUSTER=SUNWCmreq # Minimal Core System Support -PKG_CLUSTER="$PKG_CLUSTER SUNWCnfsc" # + NFS client cluster - @ end smallexample - - @ subsection @var{設定例2} -Companion CDに入っているtcshやlessのパッケージをインストールする場合、 -以下を追加します。 - - @ smallexample -PKG_EXTRA="$PKG_EXTRA SUNWtcsh" # +tcsh -PKG_EXTRA="$PKG_EXTRA SUNWless" # +less - @ end smallexample - - @ subsection @var{設定例3} -素のX11 Window Systemをインストールしたい場合、 -以下のクラスタとパッケージを追加します。 - - @ smallexample -# 追加クラスタ: X Window System Runtime Environment + OpenWindows -# + Xorg X server + Xorg X libraries -# 追加パッケージ: X Window System platform required fonts -# + X Window System common (not required) fonts -# + Xinside Xserver pseudo driver -PKG_CLUSTER="$PKG_CLUSTER SUNWCxwrte SUNWCown SUNWCxorgserver SUNWCxorglibs" -PKG_EXTRA="$PKG_EXTRA SUNWxwfnt SUNWxwcft SUNWxsvc" - @ end smallexample - - @ subsection @var{設定例4} -ホストIDを強制設定したい場合はSUNWmdbパッケージが必要なので、以下を追加します。 -(@var{CL_HOSTID}の説明参照) - @ smallexample -PKG_EXTRA="$PKG_EXTRA SUNWmdb" - @ end smallexample - - @ subsection @var{設定例5} -ssh(SUNWsshパッケージ)をインストールしたい場合、以下を追加します。 -sshサーバを動かしたい場合は、 -別途sysidconfig関係のパッケージも追加選択する必要があります。 - @ smallexample -PKG_CLUSTER="$PKG_CLUSTER SUNWCssh" -PKG_EXTRA="$PKG_EXTRA SUNWgss" - @ end smallexample - - @ subsection @var{設定例6} -sysidconfigプログラムを使いたい場合、以下を追加します。 -sysidconfigを入れると、最初のログイン前にsshやXサーバの設定が -できるようになります。 - @ smallexample -PKG_EXTRA="$PKG_EXTRA SUNWadmap SUNWadmlib-sysid" - @ end smallexample - - @ subsection @var{設定例7} -autofs(automountのことである)を使いたい場合、以下を追加します。 - @ smallexample -PKG_EXTRA="$PKG_EXTRA SUNWatfsr SUNWatfsu" - @ end smallexample - - @ subsection インストールするパッケージの設定例 - @ smallexample -TOC_LOCALE=ja -PKG_CATEGORY=l10nja -PKG_LOCALE=ja -PKG_CLUSTER=SUNWCmreq # Minimal Core System Support -PKG_EXTRA="$PKG_EXTRA SUNWmdr" # (Minimal) Core System Supportの時必要 -PKG_EXTRA="$PKG_EXTRA SUNWtcsh" # tcsh -PKG_EXTRA="$PKG_EXTRA SUNWless" # less -PKG_CLUSTER="$PKG_CLUSTER SUNWCnfsc" # NFSクライアント -PKG_CLUSTER="$PKG_CLUSTER SUNWCssh" # ssh -PKG_EXTRA="$PKG_EXTRA SUNWgss" # ssh -PKG_EXTRA="$PKG_EXTRA SUNWatfsr SUNWatfsu" # autofs - @ end smallexample - - @ c ---------------------------------------------------------------------- - @ node Client /etc file, sysidcfg support, Package info, Configuration - @ section クライアント設定ファイル - -このセクションでは、クライアントの設定ファイルについて記述します。 - -クライアントの/etc/*の雛形ファイルを指定します。 -雛形ファイルは任意の場所にあってもよく、config.inからの相対パスも許されます。 - -注意: このセクションで指定されるファイルは -非純正のインストーラからのみ設定することができます。 -したがって@var{INSTALL_TYPE}が@code{diskless}または@code{offline}の時だけ -しか意味がありません。 - - @ subsection @var{CL_ETC_INET_HOSTS} -ホスト名データベースファイル@file{/etc/inet/hosts}の雛形を指定します。 -ファイルを指定する代わりに@code{*minimum*}を指定すると、 -必要最小限のエントリのみを記述したhostsファイルを自動生成し、 -それをインストールするようになります。 - - @ subsection @var{CL_ETC_INET_NTP_CONF} -NTP設定ファイル@file{/etc/inet/ntp.conf}の雛形を指定します。 -設定したくなければ""を指定します。 - - @ subsection @var{CL_ETC_NSSWITCH_CONF} -名前解決サービスの設定ファイル、 - @ file{/etc/nsswitch.conf}の雛形を指定します。 - -雛形ファイルを指定する代わりに - @ code{*files*}, @code{*nis*}, @code{*nisplus*}, @ code{*dns*}, @code{*ldap*}の -いずれかを指定すると、各名前解決スキームのデフォルト設定を選択することになります。 -小規模なサイトでは@code{*files*}を指定しておけば、おおまかカバーできるはずです。 - -ただしデフォルト設定では、名前解決の混在ができない -(例えばpasswdはNISでhostsはDNSで解決したい場合など)などの制約があるので、 -その場合は自前で雛形ファイルを用意する必要があります。 - -さらに、名前解決スキームによって以下の制約があります: - @ itemize - @ item NIS: @var{CL_ETC_DEFAULTDOMAIN}にNISドメイン名を記載したファイルを -指定しなければなりません - @ item NIS+: クライアントのブート後、@code{nisclient}コマンド等で -NIS+の構成を行なわなければなりません - @ item DNS: @var{CL_ETC_RESOLV_CONF}にDNSサーバを記載したファイルを -指定しなければなりません - @ item LDAP: クライアントのブート後、@code{ldapclient}コマンド等で -LDAPクライアントを構成しなければなりません - @ end itemize - -名前解決の方法はサイトごとに異なるので、共通の設定というものは存在しません。 -まずは@code{*files*}を指定してクライアントのインストールを終らせ、 - @ uref{http://docs.sun.com/app/docs?p=coll%2F140.17} -を読んだ後で設定しなおすのもひとつの方法です。 - - @ subsection @var{CL_ETC_DEFAULTDOMAIN} -NISのデフォルトドメイン名を指定するためのファイル、 - @ file{/etc/defaultdomain}の雛形を指定します。 -設定したくなければ""を指定します。 -NISまたはNIS+を使用する場合は必須です。 - - @ subsection @var{CL_ETC_RESOLV_CONF} -DNSの設定ファイル@file{/etc/resolv.conf}の雛形を指定します。 -設定したくなければ""を指定します。 -DNSを使用する場合は必須です。 - - @ subsection @var{CL_ETC_AUTO_MASTER} -autofsのマスター設定ファイル@file{/etc/auto_master}の雛形を指定します。 -設定したくなければ""を指定します。 - - @ subsection @var{CL_ETC_AUTO_HOME} -autofsの/home用設定ファイル@file{/etc/auto_home}の雛形を指定します。 -設定したくなければ""を指定します。 - - @ subsection @var{CL_OWCONFIG} -Xsunサーバの設定ファイルを指定します。 -設定したくなければ""を指定します。 - - @ subsection @var{CL_XORGCONF} -Xorgサーバの設定ファイルを指定します。 -設定したくなければ""を指定します。 -注意: Sun純正のインストーラは必ずXsunを使い、Xorgサーバは使用しません。 - - @ subsection @var{CL_TIMEZONE} -クライアントのタイムゾーンを指定します。 -日本国内にあるマシンであれば、@code{Japan}を指定します。 -設定したくなければ""を指定します。 - - @ subsection @var{CL_LANG} -クライアントのデフォルトロケールを指定します。 -設定したくなければCを指定します。 - - @ subsection @var{CL_KEYBOARD} -キーボードの種類を指定します。 -日本語106キーボードに対しては@code{Japanese(106)}、 -US英語キーボードに対しては@code{US-English}を指定します。 -設定したくなければ""を指定します。 - - @ subsection クライアント設定ファイルの設定例 - @ smallexample -CL_ETC_INET_HOSTS="*minimum*" -CL_ETC_INET_NTP_CONF="" -CL_ETC_NSSWITCH_CONF="*files*" -CL_ETC_DEFAULTDOMAIN="" -#CL_ETC_RESOLV_CONF=site_cfg/resolv.conf -#CL_ETC_AUTO_MASTER=site_cfg/auto_master -#CL_ETC_AUTO_HOME=site_cfg/auto_home -#CL_OWCONFIG=site_cfg/OWconfig -#CL_XORGCONF=site_cfg/xorg.conf -CL_TIMEZONE=Japan -CL_LANG=C -CL_KEYBOARD="Japanese(106)" - @ end smallexample - - @ c ---------------------------------------------------------------------- - @ node sysidcfg support, Other configuration, Client /etc file, Configuration - @ section sysidcfgサポート -このセクションでは、sysidcfgの設定について記述します。 - -sysidcfgというのは、Sun純正インストーラを使用する場合に -非対話的にシステムの設定を指定するしくみです。 -名前は似ていますが、sysidconfigとは無関係です。 - - @ subsection @var{CL_SYSIDCFG} -sysidcfgファイルを使用するなら@code{yes}を指定します。 -使用しない場合は""を指定する(@code{no}を指定してはなりません)。 - -制約事項: インストール中は名前解決スキームのオプションを設定できません - -制約事項: Kerberos認証を有効にできません - - @ subsection @var{CL_SYSIDCFG_IPv6} -IPv6サポートを無効にする場合は@code{no}、 -有効にする場合は@code{yes}を指定します。 - @ var{CL_SYSIDCFG}=@code{yes}が設定されている場合だけ有効です。 - - @ subsection @var{CL_SYSIDCFG_TIMESERVER} -タイムサーバ(たぶんtimeサーバであってNTPサーバではない)のIPアドレスを指定します。 - @ var{CL_SYSIDCFG}=@code{yes}が設定されている場合だけ有効です。 -127.0.0.1を指定すると、クライアント自身の時刻を使用します。 - - @ subsection @var{CL_SYSIDCFG_X} -インストールするマシンですでにSolarisとXsunサーバが動いている場合、 - @ code{kdmconfig -d file}を実行するとXsunサーバの構成情報が - @ file{file}に保存されます。 -このファイルを@file{CL_SYSIDCFG_X}に指定すると、 -純正インストーラにXsunサーバの設定を渡すことができます。 -同じ構成のマシンが何台もある場合や、 -同一マシンに再インストールする際に便利です。 - @ var{CL_SYSIDCFG}=@code{yes}が設定されている場合だけ有効です。 - - @ subsection sysidcfgの設定例 - @ smallexample -CL_SYSIDCFG=yes -CL_SYSIDCFG_IPv6=no -CL_SYSIDCFG_TIMESERVER=127.0.0.1 -CL_SYSIDCFG_X=site_cfg/kdmconfig.out - @ end smallexample - - @ c ---------------------------------------------------------------------- - @ node Other configuration, , sysidcfg support, Configuration - @ section その他の設定 - -このセクションでは、その他の設定について記述します。 - - @ subsection @var{NON_STD_DRIVER} -インストールする非標準ドライバを指定します。 -必要なければ""を指定します。 -想定しているのは@uref{http://homepage2.nifty.com/mrym3/taiyodo/eng/}の -alta, bcf, gani, ife, nfe, ni, rf, rh, sfe, tne, tu, velドライバです。 - -ドライバ本体はあらかじめ@file{config.in}と同じディレクトリに -置いておかなければなりません。 -例えばrhドライバの場合、i386用ドライバを@file{rh}、 -amd64用ドライバを@file{rh.amd64}、 -ドライバ設定ファイルを@file{rh.conf}という名前で用意しておいてください。 - - @ subsection @var{CL_HOSTID} - @ var{INSTALL_TYPE}が@code{diskless}か@code{offline}の場合、 -非純正のインストーラによってSolarisのインストールを行ないます。 -この非純正インストーラはホストIDを設定できないため、 -そのホストのホストIDは0になってしまいます。 - -この状態でもOSの機能には影響がありませんが、 -一方でWnn6のように誤動作してしまうソフトもあります。 -このため、起動後にホストIDを強制設定するスクリプトをインストールするかを -選択できるようになってます。 - -もし、このホストID強制設定スクリプトをインストールする場合、 -ホストIDが格納されているファイルを@var{CL_HOSTID}に指定してください。 -データはサーバ側のエンディアンに従ったバイナリ値で格納しなければなりません。 -設定したくなければ""を指定します。 - @ file{/dev/random}を指定すれば、ランダムな番号がホストIDとして設定されます。 - -ホストIDを強制インストールする場合は、 -SUNWmdbパッケージをインストールするようにしてください。 - - @ subsection @var{CL_INST_BOOTRC} -インストール時のブートスクリプトファイル(@file{/etc/bootrc})を指定します。 -起動時のカーネル選択画面をカスタマイズしたい場合などに設定する必要があります。 -設定したくなければ""を指定します。 - - @ subsection @var{CL_FIN_BOOT_RC} -インストール後のboot.rcファイル(@file{/boot/solaris/boot.rc})を指定します。 -ブートシーケンスを変えたり、 -ブートフラグを恒久的に指定する場合にサイト固有の設定を行なうことができます。 - @ var{BOOT_TYPE}が@code{bootbin}の時だけ有効です。 -boot.rcファイルを指定する代わりに@code{*always_reconfigure*}を指定すると、 -デフォルトのブートシーケンスを用い、 -かつ常に再構成ブートを行なうようなboot.rcを設定したことになります。 -設定したくなければ""を指定します。 - - @ subsection @var{CL_FIN_BOOTFLAG} -インストール後の最初のブート時のブートフラグを指定します。 -設定したくなければ""を指定します。 - @ code{-v}を指定するとカーネルが冗長モードになるので、 -デバイスの認識具合を見るのに便利です。 - - @ subsection @var{CL_EXPORT_HOME_MODE} -インストール後に@file{/export/home}ディレクトリの作成と -モード(パーミッション)の設定を行ないたい場合、モードを指定します。 -設定したくなければ""を指定します。 - -NFSサーバによっては、 - @ file{/export/home}のotherユーザに実行権限を与えないまま -クライアント側でautomountを使ってユーザのホームディレクトリを管理すると、 -アクセスする時異常に時間がかかる場合があるようです。 - -なお、モードは指定可能ですが、 -作成される@file{/export/home}のオーナおよびグループはrootに固定されています。 - - @ subsection @var{SV_DVDPATH} - @ var{SV_DVDDIR}の内容のコピー元となるDVDイメージファイル(isoファイル)の場所を -指定します。@file{sv.mk-sv-dvddir}を使用しない場合は設定の必要はありません。 - - @ subsection @var{ALT_ROOT} -Sun謹製@file{create_ramdisk}スクリプト内部で使用します。変更しないで下さい。 -ALT_ROOT=$SV_INSTROOT - - @ subsection @var{SUN_SCRIPT} -Sun謹製@file{create_ramdisk}スクリプトの場所です。変更しないで下さい。 -どちらの値を使用しても動作に違いはありません。 -#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk -SUN_SCRIPT=@code{$SV_INSTROOT/boot/solaris/bin/create_ramdisk} - - @ subsection @var{BOOT_ARCHIVE_FILE} -ブート時に必要なアーカイブファイル名です。変更する必要はありません。 -BOOT_ARCHIVE_FILE=boot_archive - - @ subsection @var{BOOT_ARCHIVE_SRC} -標準の@file{boot_archive}ファイルが存在するパスです。 -Sun謹製@file{create_ramdisk}スクリプト内部でも同じ値を保持していますので、変更 -しないで下さい。 -BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive - - @ subsection その他の設定の設定例 - @ smallexample -NON_STD_DRIVER="" -CL_HOSTID=/dev/random -CL_INST_BOOTRC="" -CL_FIN_BOOTRC="" -CL_FIN_BOOTFLAG="-v" -CL_EXPORT_HOME_MODE="551" -SV_DVDPATH=/Download/sol-10-u1-ga-x86-dvd-iso.iso -ALT_ROOT=$SV_INSTROOT -#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk -SUN_SCRIPT=$SV_INSTROOT/boot/solaris/bin/create_ramdisk -BOOT_ARCHIVE_FILE=boot_archive -BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive - @ end smallexample - - @ bye Index: dlkit2/texi2pukiwiki.sh diff -u dlkit2/texi2pukiwiki.sh:1.2 dlkit2/texi2pukiwiki.sh:removed --- dlkit2/texi2pukiwiki.sh:1.2 Sat Feb 25 03:39:05 2006 +++ dlkit2/texi2pukiwiki.sh Sat Feb 25 14:55:34 2006 @@ -1,18 +0,0 @@ -#!/bin/sh - -sed -e '1,/@c __body__/d' \ - -e 's/@chapter /* /' \ - -e 's/@section /** /' \ - -e 's/@subsection /*** /' \ - -e '/^@menu/,/^@end menu/d' \ - -e '/^@smallexample/,/^@end smallexample/s/^/ /' \ - -e '/^ @smallexample/d' -e '/^ @end smallexample/d' \ - -e '/@itemize/d' -e '/@end itemize/d' \ - -e '/^@node /d' -e '/^@c /d' -e '/^@comment /d' \ - -e 's/@item /- /' \ - -e 's/@uref{\([^,\n]*\), \([^}]+\)}/[[\\2>\\1]]/g' \ - -e 's/@uref{\([^}]*\)}/[[\1]]/g' \ - -e "s/@file{\([^}]*\)}/''\1''/g" \ - -e "s/@code{\([^}]*\)}/''\1''/g" \ - -e "s/@var{\([^}]*\)}/'''\1'''/g" \ - -e "/@bye/d" From card_captor @ users.sourceforge.jp Sat Feb 25 14:58:51 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 14:58:51 +0900 Subject: [dl-x86solaris-devel 16] CVS update: dlkit2/docs Message-ID: <20060225055851.DCC352AC015@users.sourceforge.jp> Index: dlkit2/docs/Makefile diff -u /dev/null dlkit2/docs/Makefile:1.1 --- /dev/null Sat Feb 25 14:58:51 2006 +++ dlkit2/docs/Makefile Sat Feb 25 14:58:51 2006 @@ -0,0 +1,38 @@ +#---------------------------------------------------------------------- +# document generation + +doc_SOURCES = diskless-kit-running.texi diskless-kit-config.texi +doc_HTML = $(doc_SOURCES:%.texi=%.html) +doc_HTMLDIR = $(doc_SOURCES:%.texi=%) +doc_WIKI = $(doc_SOURCES:%.texi=%.wiki) + +# will be given from upper-level Makefile +VERSION = Unversioned + +HTMLMAKEINFO = makeinfo --html --css-include=style.css + +all: singlehtml + +htmldir: diskless-kit-version.texi $(doc_SOURCES) + $(HTMLMAKEINFO) diskless-kit-running.texi + $(HTMLMAKEINFO) diskless-kit-config.texi + +singlehtml: diskless-kit-version.texi $(doc_HTML) +%.html: %.texi + $(HTMLMAKEINFO) --no-split --no-headers -o $@ $< + +wiki: $(doc_WIKI) +%.wiki: %.texi + sh texi2pukiwiki.sh < $< > $@ + +diskless-kit-version.texi: + echo "Version $(VERSION)" > diskless-kit-version.texi + +clean: + rm -rf $(doc_HTMLDIR) + rm -f diskless-kit-version.texi + rm -f $(doc_HTML) $(doc_WIKI) + rm -f *.~*.~ + +#---------------------------------------------------------------------- +# maintainer's private targets Index: dlkit2/docs/diskless-kit-config.texi diff -u /dev/null dlkit2/docs/diskless-kit-config.texi:1.1 --- /dev/null Sat Feb 25 14:58:51 2006 +++ dlkit2/docs/diskless-kit-config.texi Sat Feb 25 14:58:51 2006 @@ -0,0 +1,863 @@ +\input texinfo + @ setfilename diskless-kit-config + @ settitle diskless-kit設定マニュアル + @ syncodeindex pg cp + + @ copying +diskless-kit設定マニュアル + +Copyright @copyright{} 2005-2006 SAWADA Keiji @email{card_captor at users.sourceforge.jp} + + @ include diskless-kit-version.texi + +Last Update: $Date: 2006/02/25 05:58:51 $ + @ end copying + + @ c Type C-u C-c C-u C-a + + @ c ---------------------------------------------------------------------- + @ c タイトルページ。印刷のみに現れる + + @ titlepage + @ title diskless-kit設定マニュアル + @ author SAWADA Keiji @email{card_captor at users.sourceforge.jp} + @ page + @ vskip 0pt plus 1filll + @ insertcopying + @ contents + @ end titlepage + + @ c ---------------------------------------------------------------------- + @ ifnottex + @ node Top, Abstract, (dir), (dir) + @ top diskless-kit設定マニュアル + @ end ifnottex + + @ insertcopying + + @ majorheading + + @ heading トップメニュー + @ menu +* Abstract:: +* Configuration:: + + @ detailmenu + --- The Detailed Node Listing --- + +diskless-kitの設定について + +* Overview of diskless-kit configuration:: +* Configuration categories:: + +設定項目の説明 + +* General config:: +* Subnet:: +* Client info:: +* Server info:: +* Daemon info:: +* Package info:: +* Client /etc file:: +* sysidcfg support:: +* Other configuration:: + + @ end detailmenu + @ end menu + + @ c __body__ + @ c ---------------------------------------------------------------------- + @ node Abstract, Configuration, Top, Top + @ chapter diskless-kitの設定について + +本マニュアルでは、Solaris/x86のディスクレス環境構築ツールである +diskless-kitの設定方法を記述します。 +運用方法については別途「diskless-kit運用マニュアル」を参照してください。 + + @ menu +* Overview of diskless-kit configuration:: +* Configuration categories:: + @ end menu + + @ c ---------------------------------------------------------------------- + @ node Overview of diskless-kit configuration, Configuration categories, Abstract, Abstract + @ section diskless-kitの設定概要 + +diskless-kitの設定情報は、@file{config.in}というファイルに記録します。 +このファイルには「キーワード=設定値」という形式で設定情報を書き込みます。 + @ file{config.in}はシェルスクリプトとして読み込まれるので、 +キーワードおよび設定値の記述にはいくらか制限があります。 + + @ itemize + @ item キーワードは、アルファベット・数字・アンダースコアだけで +構成されていなければなりません。 + @ item キーワードやイコール記号の前後に空白文字・記号文字を入れてはなりません。 + @ item 基本的に設定値はダブルクオートまたはシングルクオートで囲む必要があります。 + @ item 設定値をクオートで囲まない場合、 +空白文字・記号文字はシェルによって解釈されてしまいます。 + @ item 「$キーワード」という文字列は、 +それ以前にそのキーワードに設定された値に置換されます。 +ただし、シングルクオートで囲った場合は置換されません。 + @ end itemize + +空行は無視されます。 +また、シャープ文字から行末まではコメントであり、これも無視されます。 + + @ c ---------------------------------------------------------------------- + @ node Configuration categories, , Overview of diskless-kit configuration, Abstract + @ section 設定項目の分類 + +設定内容は、大きく分けて次のように分類されます。 + @ itemize + @ item 全般 + @ item サブネット + @ item クライアントの情報 + @ item サーバの情報 + @ item 各種デーモンの種類指定 + @ item インストールするパッケージの情報 + @ item 設定ファイル + @ item sysidcfgサポート + @ item その他の設定 + @ end itemize + + + @ c ---------------------------------------------------------------------- + @ node Configuration, , Abstract, Top + @ chapter 設定項目の説明 + + @ c ---------------------------------------------------------------------- + @ menu +* General config:: +* Subnet:: +* Client info:: +* Server info:: +* Daemon info:: +* Package info:: +* Client /etc file:: +* sysidcfg support:: +* Other configuration:: + @ end menu + + @ node General config, Subnet, Configuration, Configuration + @ section 全般 + +このセクションでは、diskless-kitの全般的な設定について記述します。 + + @ subsection @var{INSTALL_TYPE} + +インストールの種別を、 + @ code{disklessify}, @code{netinstall}, @code{diskless}, @code{offline} +のいずれかから選択します。 + + @ code{disklessify}は、 +すでに動作しているSolaris環境をディスクレス化する場合に指定します。 +すなわち、すでにハードディスクにインストールしてあるSolaris/x86を、 +PXEブート+NFS-ROOTディスクレス環境に移行する場合に選択します。 + + @ code{netinstall}は、 +Solarisインストールサーバを構築し、 +ネットワーク経由でSolaris/x86を +ローカルハードディスクにインストールする際に指定します。 +インストール終了後、クライアントはローカルハードディスクから起動します。 +CD-ROM/DVD-ROMドライブが付いていないPCに +Solaris/x86をインストールするのに便利です。 + + @ code{diskless}は、 +Solarisインストールサーバを構築し、 +ネットワーク経由でSolaris/x86を +NFS領域にインストールする場合に選択します。 +インストール終了後、クライアントはPXEブートで起動し、 +ディスクレス環境にて動作します。 +ハードディスクがない、 +もしくはハードディスクをまったく触りたくない場合に使えます。 + + @ code{offline}は、 +Solaris/x86を母艦とし、 +母艦内だけでクライアント(別のPC)用のNFS-ROOTディスクレス環境を +構築する場合に選択します。 +クライアント側でインストール作業は行なう必要がありません。 +コンセプト的には@code{diskless}と同じで、 +すでに稼働しているSolaris/x86マシンが必要ですが、 +ずっと高速にセットアップが終了します。 + + + @ subsection @var{BOOT_TYPE} + +今のところnewbootしか指定できません。 +newbootはGRUBを用いてブートする方式で、 +Solaris10 3/05以降で使用されています。 + + @ c インストールの種別を、 + @ c @code{bootbin}, @code{newboot} + @ c のいずれかから選択します。 + + @ c @code{bootbin}は、 + @ c 二次起動プログラムboot.binを使用してブートする場合に使用します。 + @ c Solaris10以前の場合はこれを選択します。 + + @ c @code{newboot}は、 + @ c Multibootを利用してブートする場合に使用します。 + @ c SolarisExpress(コードネームNevada; Solaris11の候補ビルド)の場合は + @ c これを選択します。 + + @ c MultibootはGRUBが実現するブート方式ですが、 + @ c GRUBからチェインロードを使ってboot.binを使う場合は + @ c @code{newboot}ではなく@code{bootbin}を指定してください。 + + @ c @code{opensolaris}は、 + @ c MultibootでOpenSolarisを利用する場合に使用します。 + + + @ c ---------------------------------------------------------------------- + @ node Subnet, Client info, General config, Configuration + @ section サブネット + +このセクションでは、サブネットの設定について記述します。 + + @ subsection @var{BROADCAST} +ブロードキャストアドレスをドット付き表現で指定します。 +ドット付き表現とはIPアドレスを10進数で表してドットでつなげた表現で、 +例えば"192.168.1.1"のようなものです。 + + @ subsection @var{SUBNET_MASK} +サブネットマスクをドット付き表現で指定します。 + + @ subsection @var{ROUTER} +ルータのIPアドレスをドット付き表現で指定します。 + + @ subsection @var{LEASE_RANGE} +DHCPでリースするIPアドレスの範囲をドット付き表現で指定します。 +不明な場合は、後述する@var{CL_IPADDR}をそのまま記述しておけばよいです。 + + @ subsection サブネットの設定例 + @ smallexample +SUBNET_ADDR=192.168.1.0 +SUBNET_MASK=255.255.255.0 +ROUTER=192.168.1.1 +LEASE_RANGE='192.168.1.100 192.168.1.200' + @ end smallexample + + @ c ---------------------------------------------------------------------- + @ node Client info, Server info, Subnet, Configuration + @ section クライアントの情報 + +このセクションでは、クライアント情報の設定について記述します。 + + @ subsection @var{CL_IPADDR} +クライアントのIPアドレスをドット付き表現で指定します。 + + @ subsection @var{CL_NAME} +クライアントの名前を指定します。 + + @ subsection @var{CL_MAC} +クライアントのMACアドレスを指定します。 + + @ subsection @var{CL_SWAPFILE} +クライアントでのスワップファイルを指定します。 + + @ subsection @var{CL_MOUNT_OPTION} +クライアント側のマウントオプションを指定します。 +主にNFSのパフォーマンス改善や、NFSの相性問題を解消するために設定します。 + +この設定値は、DHCP経由でクライアントに渡され、 +ブート時にルートディレクトリをマウントする際に使用されるほか、 +インストール後にルートディレクトリをマウントする際にも反映されます。 +指定できるマウントオプションについては +Solarisのmount(1m)やmount_nfs(1m)を参照してください。 + +NFSのパフォーマンスを改善する場合は、 +wsizeオプションおよびrsizeオプションを使ってNFSパケットサイズを指定します。 +調整方法は下記を参照してください。 + +Linux: @uref{http://www.linux.or.jp/JF/JFdocs/NFS-HOWTO/} + +Solaris: @uref{http://docs.sun.com/app/docs/doc/819-0381?a=expand} + +NFSの相性問題を解消するには、 +versオプションを使ってNFSのプロトコルバージョンを指定したり、 +protoオプションを使ってトランスポートプロトコルを指定します。 + +以下の設定は、NFSバージョン2のデフォルト設定です: + @ smallexample +CL_MOUNT_OPTION="vers=2,proto=udp,wsize=8192,rsize=8192" + @ end smallexample + +以下の設定は、NFSバージョン3のデフォルト設定です: + @ smallexample +CL_MOUNT_OPTION="vers=3,proto=tcp,wsize=32768,rsize=32768" + @ end smallexample + +NFSサーバのOSやNICによっては、 +どんなマウントオプションを指定しても +クライアントとの通信が安定しない場合がありえます +(@uref{https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=114904}) +ので、すっぱりとバニラカーネルを使ったディストロに切り替えることも +必要かもしれません。 + + @ subsection @var{CL_NFS_CLIENT_VERSION} +クライアントが使用するNFSプロトコルのバージョンを指定します。 +ここで指定したバージョン以下のNFSプロトコルを +使うようにNFSサーバとネゴシエートするので、 +NFSの接続性が改善されることがあります。 + +インストール時およびインストール後の、 +ブート後のすべてのNFSマウントに影響を与えます。 + +値として、2または3または無指定を指定することができます。 +4を指定することもできますが、 +ディスクレスクライアントのほうがサポートしないかもしれません。 + + @ subsection クライアント情報の設定例 + @ smallexample +CL_IPADDR=192.168.1.15 +CL_NAME=etta +CL_MAC=00:01:23:45:67:89 +CL_SWAPFILE=/var/swapfile +CL_MOUNT_OPTION="vers=2" +CL_NFS_CLIENT_VERSION=2 + @ end smallexample + + + @ c ---------------------------------------------------------------------- + @ node Server info, Daemon info, Client info, Configuration + @ section サーバの情報 + +このセクションでは、サーバ情報の設定について記述します。 + + @ subsection @var{SV_IPADDR} +サーバのIPアドレスをドット付き表現で指定します。 + + @ subsection @var{SV_NAME} +サーバの名前を指定します。 + + @ subsection @var{SV_DVDDIR} +インストールDVD(インストールCD)の内容が入っているディレクトリを指定します。 + + @ subsection @var{SV_PKGDIR} +インストール用のパッケージが入っているディレクトリを指定します。 + @ var{SV_DVDDIR}の下位ディレクトリになければなりません。 + @ var{BOOT_TYPE}が@code{opensolaris}の時は無視されます。 +通常は@code{$SV_DVDDIR/Solaris_x/Product}という値を指定しておけばよいです。 + + @ subsection @var{SV_INSTROOT} +インストール時のブートにおいて、クライアントのルートとなるディレクトリを指定します。 +通常は@code{$SV_DVDDIR/Solaris_x/Tools/Boot}という値を指定しておけばよいです。 + + @ subsection @var{SV_FIN_ROOT} +インストール後、クライアントのルートディレクトリになるディレクトリを指定します。 + @ var{INSTALL_TYPE}が@code{netinstall}の時は無視されます。 +それ以外の場合、このディレクトリはクライアントに対して +NFSエクスポートされている必要があります。 + +セキュリティ上の理由により、 +すでにエクスポートされているNFS共有より下位のディレクトリを指定するのは +避けたほうがよいです。 +例えばすでに@file{/export/home}がエクスポートされている場合、 +それより下位にある@file{/export/home/root}を@var{SV_FIN_ROOT}に指定するのは +避けたほうがよいです。 + +ディスクレスクライアントが複数ある場合、 +設定値を@code{/export/roots/$CL_NAME}のように +クライアントごとに指定するすることができます。 + + @ subsection @var{SV_SWAPFILE} +クライアント用のスワップファイルを指定します。 + + @ subsection @var{SV_SWAPSIZE} +スワップファイルの容量をMB単位で指定します。 + + @ subsection @var{SV_TFTPROOT} +TFTPのルートディレクトリです。殆どの環境で@file{/tftpboot}だと思います。 + + @ subsection @var{SV_PXEBOOTDIR} +PXEブート時にgrubがアクセスするディレクトリ、Solaris 10 1/06の場合、grubのバグの +為、@file{$SV_TFTPROOT/boot}以外は設定不可(変更不可)です。 +SV_PXEBOOTDIR=$SV_TFTPROOT/boot + + @ subsection サーバ情報の設定例 + @ smallexample +SV_IPADDR=192.168.1.17 +SV_NAME=nanoha +SV_DVDDIR=/export/install/sol10 +SV_PKGDIR=$SV_DVDDIR/Solaris_10/Product +SV_INSTROOT=$SV_DVDDIR/Solaris_10/Tools/Boot +SV_FIN_ROOT=/export/roots/root +SV_SWAPFILE=/export/swaps/swapfile +SV_SWAPSIZE=128 +SV_TFTPROOT=/tftpboot +SV_PXEBOOTDIR=$SV_TFTPROOT/boot + @ end smallexample + + + @ c ---------------------------------------------------------------------- + @ node Daemon info, Package info, Server info, Configuration + @ section 各種デーモンの指定 + +このセクションでは、各種デーモンの指定について記述します。 + +警告: このセクションの説明で「自動設定」と書いてあるものは、 +設定ファイルの上書きやデーモンの再起動が自動的に行なわれることを意味します。 +一応設定ファイルはバックアップが取られますが、十分注意してください。 + + @ subsection @var{SV_DHCPD_PREF} +ISC DHCPDの種類を指定します。以下の値が指定可能です。 + + @ itemize + @ item @code{isc_csw}: +CSW版の@code{dhcpd}パッケージ用に自動設定します。 + @ item @code{debian}: +Debian GNU/Linuxの@code{dhcpd3}パッケージ用に自動設定します。 + @ item @code{isc_std}: +標準的なオプションでコンパイルされたdhcpd用に自動設定します。 +設定ファイルは@file{/etc/dhcpd.conf}で、 +起動用スクリプトは@file{/etc/init.d/dhcp}と仮定します。 + @ item @code{none}: +自動設定せず、手動設定します。 + @ end itemize + + @ subsection @var{SV_NFSD_PREF} +NFSサーバの種類を指定します。以下の値が指定可能です。 + + @ itemize + @ item @code{solaris}: +Solarisで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{generic_linux}: +Linuxで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{debian}: +Debian GNU/Linuxで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{suse}: +RHEL4, CentOS4.1, SUSE9.3で稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{aix}: +AIXで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{generic_bsd}: +BSD(FreeBSD, OpenBSD, NetBSD)で稼働しているNFSサーバ用に自動設定します。 +Darwin, Mac OS Xは含まない。未テスト。 + @ item @code{tru64}: +Tru64 UNIXで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{hpux}: +HP-UXで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{irix}: +IRIXで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{sunos4}: +SunOS4.xで稼働しているNFSサーバ用に自動設定します。未テスト。 + @ item @code{none}: +自動設定せず、手動設定します。 + @ end itemize + + + @ subsection @var{SV_TFTPD_PREF} +TFTPDサーバの種類を指定します。 +現時点では手動設定を表す@code{none}以外指定できません。 + + @ itemize + @ item @code{none}: +自動設定せず、手動設定します。 + @ end itemize + + @ subsection デーモン指定の設定例 + @ smallexample +SV_DHCPD_PREF=none # 手動設定 +SV_NFSD_PREF=none # 手動設定 +SV_TFTPD_PREF=none # 手動設定 + @ end smallexample + + + @ c ---------------------------------------------------------------------- + @ node Package info, Client /etc file, Daemon info, Configuration + @ section インストールするパッケージの指定 + +このセクションでは、インストールするパッケージの指定について記述します。 + +注意: このセクションの設定内容が参照されるのは、 + @ var{INSTALL_TYPE}が@code{diskless}または@code{offline}の時だけです。 +Sunの純正インストーラを使用する場合(@var{INSTALL_TYPE}=@code{netinstall})、 +ここでの設定内容は無視されます。 + + @ subsection @var{TOC_LOCALE} +パッケージの内容を示したテーブルを指定します。 +StarSuiteを選択する場合は@code{ja}, +StarOfficeを選択する場合は@code{C}を指定します。 +パッケージのリストをどこから探してくるかを指定するものであって、 +どのパッケージをインストールするかを指定するものではありません。 +ですので、多分jaから変える必要はありません。 + + @ subsection @var{PKG_CATEGORY} +インストールするカテゴリのリストを指定します。 +OSの言語サポートを有効にしたい場合に指定する必要があります。 + +日本語カテゴリのサポートが必要な場合は@code{l10nja}を含めてください。 +特定の言語のサポートが不要な場合は、""を指定します。 + + @ subsection @var{PKG_LOCALE} +パッケージロケールのリストを指定します。 +GNOME等アプリのロケールサポートを有効にしたい場合に指定する必要があります。 + +日本語カテゴリのサポートが必要な場合は@code{ja}を含めてください。 +特定の言語のサポートが不要な場合は、""を指定します。 + + @ subsection @var{PKG_CLUSTER} +インストールするクラスタのリストを指定します。 +クラスタとはパッケージの集合です。 +多くの場合、以下のメタクラスタのうちどれかを指定しておく必要があります。 + + @ itemize + @ item @code{SUNWCXall}: Entire Distribution plus OEM support + @ item @code{SUNWCall}: Entire Distribution + @ item @code{SUNWCprog}: Developer System Support + @ item @code{SUNWCuser}: End User System Support + @ item @code{SUNWCrnet}: Reduced Networking Core System Support + @ item @code{SUNWCreq}: Core System Support + @ item @code{SUNWCmreq}: Minimal Core System Support + @ end itemize + + @ subsection @var{PKG_EXTRA} +追加でインストールするパッケージのリストを指定します。 + + @ subsection @var{設定例1} +インストールするクラスタとして、 +Minimal Core System SupportとNFS client clusterを指定します +(ディスクレス化のためにNFS client機能が必要です)。 + @ smallexample +PKG_CLUSTER=SUNWCmreq # Minimal Core System Support +PKG_CLUSTER="$PKG_CLUSTER SUNWCnfsc" # + NFS client cluster + @ end smallexample + + @ subsection @var{設定例2} +Companion CDに入っているtcshやlessのパッケージをインストールする場合、 +以下を追加します。 + + @ smallexample +PKG_EXTRA="$PKG_EXTRA SUNWtcsh" # +tcsh +PKG_EXTRA="$PKG_EXTRA SUNWless" # +less + @ end smallexample + + @ subsection @var{設定例3} +素のX11 Window Systemをインストールしたい場合、 +以下のクラスタとパッケージを追加します。 + + @ smallexample +# 追加クラスタ: X Window System Runtime Environment + OpenWindows +# + Xorg X server + Xorg X libraries +# 追加パッケージ: X Window System platform required fonts +# + X Window System common (not required) fonts +# + Xinside Xserver pseudo driver +PKG_CLUSTER="$PKG_CLUSTER SUNWCxwrte SUNWCown SUNWCxorgserver SUNWCxorglibs" +PKG_EXTRA="$PKG_EXTRA SUNWxwfnt SUNWxwcft SUNWxsvc" + @ end smallexample + + @ subsection @var{設定例4} +ホストIDを強制設定したい場合はSUNWmdbパッケージが必要なので、以下を追加します。 +(@var{CL_HOSTID}の説明参照) + @ smallexample +PKG_EXTRA="$PKG_EXTRA SUNWmdb" + @ end smallexample + + @ subsection @var{設定例5} +ssh(SUNWsshパッケージ)をインストールしたい場合、以下を追加します。 +sshサーバを動かしたい場合は、 +別途sysidconfig関係のパッケージも追加選択する必要があります。 + @ smallexample +PKG_CLUSTER="$PKG_CLUSTER SUNWCssh" +PKG_EXTRA="$PKG_EXTRA SUNWgss" + @ end smallexample + + @ subsection @var{設定例6} +sysidconfigプログラムを使いたい場合、以下を追加します。 +sysidconfigを入れると、最初のログイン前にsshやXサーバの設定が +できるようになります。 + @ smallexample +PKG_EXTRA="$PKG_EXTRA SUNWadmap SUNWadmlib-sysid" + @ end smallexample + + @ subsection @var{設定例7} +autofs(automountのことである)を使いたい場合、以下を追加します。 + @ smallexample +PKG_EXTRA="$PKG_EXTRA SUNWatfsr SUNWatfsu" + @ end smallexample + + @ subsection インストールするパッケージの設定例 + @ smallexample +TOC_LOCALE=ja +PKG_CATEGORY=l10nja +PKG_LOCALE=ja +PKG_CLUSTER=SUNWCmreq # Minimal Core System Support +PKG_EXTRA="$PKG_EXTRA SUNWmdr" # (Minimal) Core System Supportの時必要 +PKG_EXTRA="$PKG_EXTRA SUNWtcsh" # tcsh +PKG_EXTRA="$PKG_EXTRA SUNWless" # less +PKG_CLUSTER="$PKG_CLUSTER SUNWCnfsc" # NFSクライアント +PKG_CLUSTER="$PKG_CLUSTER SUNWCssh" # ssh +PKG_EXTRA="$PKG_EXTRA SUNWgss" # ssh +PKG_EXTRA="$PKG_EXTRA SUNWatfsr SUNWatfsu" # autofs + @ end smallexample + + @ c ---------------------------------------------------------------------- + @ node Client /etc file, sysidcfg support, Package info, Configuration + @ section クライアント設定ファイル + +このセクションでは、クライアントの設定ファイルについて記述します。 + +クライアントの/etc/*の雛形ファイルを指定します。 +雛形ファイルは任意の場所にあってもよく、config.inからの相対パスも許されます。 + +注意: このセクションで指定されるファイルは +非純正のインストーラからのみ設定することができます。 +したがって@var{INSTALL_TYPE}が@code{diskless}または@code{offline}の時だけ +しか意味がありません。 + + @ subsection @var{CL_ETC_INET_HOSTS} +ホスト名データベースファイル@file{/etc/inet/hosts}の雛形を指定します。 +ファイルを指定する代わりに@code{*minimum*}を指定すると、 +必要最小限のエントリのみを記述したhostsファイルを自動生成し、 +それをインストールするようになります。 + + @ subsection @var{CL_ETC_INET_NTP_CONF} +NTP設定ファイル@file{/etc/inet/ntp.conf}の雛形を指定します。 +設定したくなければ""を指定します。 + + @ subsection @var{CL_ETC_NSSWITCH_CONF} +名前解決サービスの設定ファイル、 + @ file{/etc/nsswitch.conf}の雛形を指定します。 + +雛形ファイルを指定する代わりに + @ code{*files*}, @code{*nis*}, @code{*nisplus*}, @ code{*dns*}, @code{*ldap*}の +いずれかを指定すると、各名前解決スキームのデフォルト設定を選択することになります。 +小規模なサイトでは@code{*files*}を指定しておけば、おおまかカバーできるはずです。 + +ただしデフォルト設定では、名前解決の混在ができない +(例えばpasswdはNISでhostsはDNSで解決したい場合など)などの制約があるので、 +その場合は自前で雛形ファイルを用意する必要があります。 + +さらに、名前解決スキームによって以下の制約があります: + @ itemize + @ item NIS: @var{CL_ETC_DEFAULTDOMAIN}にNISドメイン名を記載したファイルを +指定しなければなりません + @ item NIS+: クライアントのブート後、@code{nisclient}コマンド等で +NIS+の構成を行なわなければなりません + @ item DNS: @var{CL_ETC_RESOLV_CONF}にDNSサーバを記載したファイルを +指定しなければなりません + @ item LDAP: クライアントのブート後、@code{ldapclient}コマンド等で +LDAPクライアントを構成しなければなりません + @ end itemize + +名前解決の方法はサイトごとに異なるので、共通の設定というものは存在しません。 +まずは@code{*files*}を指定してクライアントのインストールを終らせ、 + @ uref{http://docs.sun.com/app/docs?p=coll%2F140.17} +を読んだ後で設定しなおすのもひとつの方法です。 + + @ subsection @var{CL_ETC_DEFAULTDOMAIN} +NISのデフォルトドメイン名を指定するためのファイル、 + @ file{/etc/defaultdomain}の雛形を指定します。 +設定したくなければ""を指定します。 +NISまたはNIS+を使用する場合は必須です。 + + @ subsection @var{CL_ETC_RESOLV_CONF} +DNSの設定ファイル@file{/etc/resolv.conf}の雛形を指定します。 +設定したくなければ""を指定します。 +DNSを使用する場合は必須です。 + + @ subsection @var{CL_ETC_AUTO_MASTER} +autofsのマスター設定ファイル@file{/etc/auto_master}の雛形を指定します。 +設定したくなければ""を指定します。 + + @ subsection @var{CL_ETC_AUTO_HOME} +autofsの/home用設定ファイル@file{/etc/auto_home}の雛形を指定します。 +設定したくなければ""を指定します。 + + @ subsection @var{CL_OWCONFIG} +Xsunサーバの設定ファイルを指定します。 +設定したくなければ""を指定します。 + + @ subsection @var{CL_XORGCONF} +Xorgサーバの設定ファイルを指定します。 +設定したくなければ""を指定します。 +注意: Sun純正のインストーラは必ずXsunを使い、Xorgサーバは使用しません。 + + @ subsection @var{CL_TIMEZONE} +クライアントのタイムゾーンを指定します。 +日本国内にあるマシンであれば、@code{Japan}を指定します。 +設定したくなければ""を指定します。 + + @ subsection @var{CL_LANG} +クライアントのデフォルトロケールを指定します。 +設定したくなければCを指定します。 + + @ subsection @var{CL_KEYBOARD} +キーボードの種類を指定します。 +日本語106キーボードに対しては@code{Japanese(106)}、 +US英語キーボードに対しては@code{US-English}を指定します。 +設定したくなければ""を指定します。 + + @ subsection クライアント設定ファイルの設定例 + @ smallexample +CL_ETC_INET_HOSTS="*minimum*" +CL_ETC_INET_NTP_CONF="" +CL_ETC_NSSWITCH_CONF="*files*" +CL_ETC_DEFAULTDOMAIN="" +#CL_ETC_RESOLV_CONF=site_cfg/resolv.conf +#CL_ETC_AUTO_MASTER=site_cfg/auto_master +#CL_ETC_AUTO_HOME=site_cfg/auto_home +#CL_OWCONFIG=site_cfg/OWconfig +#CL_XORGCONF=site_cfg/xorg.conf +CL_TIMEZONE=Japan +CL_LANG=C +CL_KEYBOARD="Japanese(106)" + @ end smallexample + + @ c ---------------------------------------------------------------------- + @ node sysidcfg support, Other configuration, Client /etc file, Configuration + @ section sysidcfgサポート +このセクションでは、sysidcfgの設定について記述します。 + +sysidcfgというのは、Sun純正インストーラを使用する場合に +非対話的にシステムの設定を指定するしくみです。 +名前は似ていますが、sysidconfigとは無関係です。 + + @ subsection @var{CL_SYSIDCFG} +sysidcfgファイルを使用するなら@code{yes}を指定します。 +使用しない場合は""を指定する(@code{no}を指定してはなりません)。 + +制約事項: インストール中は名前解決スキームのオプションを設定できません + +制約事項: Kerberos認証を有効にできません + + @ subsection @var{CL_SYSIDCFG_IPv6} +IPv6サポートを無効にする場合は@code{no}、 +有効にする場合は@code{yes}を指定します。 + @ var{CL_SYSIDCFG}=@code{yes}が設定されている場合だけ有効です。 + + @ subsection @var{CL_SYSIDCFG_TIMESERVER} +タイムサーバ(たぶんtimeサーバであってNTPサーバではない)のIPアドレスを指定します。 + @ var{CL_SYSIDCFG}=@code{yes}が設定されている場合だけ有効です。 +127.0.0.1を指定すると、クライアント自身の時刻を使用します。 + + @ subsection @var{CL_SYSIDCFG_X} +インストールするマシンですでにSolarisとXsunサーバが動いている場合、 + @ code{kdmconfig -d file}を実行するとXsunサーバの構成情報が + @ file{file}に保存されます。 +このファイルを@file{CL_SYSIDCFG_X}に指定すると、 +純正インストーラにXsunサーバの設定を渡すことができます。 +同じ構成のマシンが何台もある場合や、 +同一マシンに再インストールする際に便利です。 + @ var{CL_SYSIDCFG}=@code{yes}が設定されている場合だけ有効です。 + + @ subsection sysidcfgの設定例 + @ smallexample +CL_SYSIDCFG=yes +CL_SYSIDCFG_IPv6=no +CL_SYSIDCFG_TIMESERVER=127.0.0.1 +CL_SYSIDCFG_X=site_cfg/kdmconfig.out + @ end smallexample + + @ c ---------------------------------------------------------------------- + @ node Other configuration, , sysidcfg support, Configuration + @ section その他の設定 + +このセクションでは、その他の設定について記述します。 + + @ subsection @var{NON_STD_DRIVER} +インストールする非標準ドライバを指定します。 +必要なければ""を指定します。 +想定しているのは@uref{http://homepage2.nifty.com/mrym3/taiyodo/eng/}の +alta, bcf, gani, ife, nfe, ni, rf, rh, sfe, tne, tu, velドライバです。 + +ドライバ本体はあらかじめ@file{config.in}と同じディレクトリに +置いておかなければなりません。 +例えばrhドライバの場合、i386用ドライバを@file{rh}、 +amd64用ドライバを@file{rh.amd64}、 +ドライバ設定ファイルを@file{rh.conf}という名前で用意しておいてください。 + + @ subsection @var{CL_HOSTID} + @ var{INSTALL_TYPE}が@code{diskless}か@code{offline}の場合、 +非純正のインストーラによってSolarisのインストールを行ないます。 +この非純正インストーラはホストIDを設定できないため、 +そのホストのホストIDは0になってしまいます。 + +この状態でもOSの機能には影響がありませんが、 +一方でWnn6のように誤動作してしまうソフトもあります。 +このため、起動後にホストIDを強制設定するスクリプトをインストールするかを +選択できるようになってます。 + +もし、このホストID強制設定スクリプトをインストールする場合、 +ホストIDが格納されているファイルを@var{CL_HOSTID}に指定してください。 +データはサーバ側のエンディアンに従ったバイナリ値で格納しなければなりません。 +設定したくなければ""を指定します。 + @ file{/dev/random}を指定すれば、ランダムな番号がホストIDとして設定されます。 + +ホストIDを強制インストールする場合は、 +SUNWmdbパッケージをインストールするようにしてください。 + + @ subsection @var{CL_INST_BOOTRC} +インストール時のブートスクリプトファイル(@file{/etc/bootrc})を指定します。 +起動時のカーネル選択画面をカスタマイズしたい場合などに設定する必要があります。 +設定したくなければ""を指定します。 + + @ subsection @var{CL_FIN_BOOT_RC} +インストール後のboot.rcファイル(@file{/boot/solaris/boot.rc})を指定します。 +ブートシーケンスを変えたり、 +ブートフラグを恒久的に指定する場合にサイト固有の設定を行なうことができます。 + @ var{BOOT_TYPE}が@code{bootbin}の時だけ有効です。 +boot.rcファイルを指定する代わりに@code{*always_reconfigure*}を指定すると、 +デフォルトのブートシーケンスを用い、 +かつ常に再構成ブートを行なうようなboot.rcを設定したことになります。 +設定したくなければ""を指定します。 + + @ subsection @var{CL_FIN_BOOTFLAG} +インストール後の最初のブート時のブートフラグを指定します。 +設定したくなければ""を指定します。 + @ code{-v}を指定するとカーネルが冗長モードになるので、 +デバイスの認識具合を見るのに便利です。 + + @ subsection @var{CL_EXPORT_HOME_MODE} +インストール後に@file{/export/home}ディレクトリの作成と +モード(パーミッション)の設定を行ないたい場合、モードを指定します。 +設定したくなければ""を指定します。 + +NFSサーバによっては、 + @ file{/export/home}のotherユーザに実行権限を与えないまま +クライアント側でautomountを使ってユーザのホームディレクトリを管理すると、 +アクセスする時異常に時間がかかる場合があるようです。 + +なお、モードは指定可能ですが、 +作成される@file{/export/home}のオーナおよびグループはrootに固定されています。 + + @ subsection @var{SV_DVDPATH} + @ var{SV_DVDDIR}の内容のコピー元となるDVDイメージファイル(isoファイル)の場所を +指定します。@file{sv.mk-sv-dvddir}を使用しない場合は設定の必要はありません。 + + @ subsection @var{ALT_ROOT} +Sun謹製@file{create_ramdisk}スクリプト内部で使用します。変更しないで下さい。 +ALT_ROOT=$SV_INSTROOT + + @ subsection @var{SUN_SCRIPT} +Sun謹製@file{create_ramdisk}スクリプトの場所です。変更しないで下さい。 +どちらの値を使用しても動作に違いはありません。 +#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +SUN_SCRIPT=@code{$SV_INSTROOT/boot/solaris/bin/create_ramdisk} + + @ subsection @var{BOOT_ARCHIVE_FILE} +ブート時に必要なアーカイブファイル名です。変更する必要はありません。 +BOOT_ARCHIVE_FILE=boot_archive + + @ subsection @var{BOOT_ARCHIVE_SRC} +標準の@file{boot_archive}ファイルが存在するパスです。 +Sun謹製@file{create_ramdisk}スクリプト内部でも同じ値を保持していますので、変更 +しないで下さい。 +BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive + + @ subsection その他の設定の設定例 + @ smallexample +NON_STD_DRIVER="" +CL_HOSTID=/dev/random +CL_INST_BOOTRC="" +CL_FIN_BOOTRC="" +CL_FIN_BOOTFLAG="-v" +CL_EXPORT_HOME_MODE="551" +SV_DVDPATH=/Download/sol-10-u1-ga-x86-dvd-iso.iso +ALT_ROOT=$SV_INSTROOT +#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +SUN_SCRIPT=$SV_INSTROOT/boot/solaris/bin/create_ramdisk +BOOT_ARCHIVE_FILE=boot_archive +BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive + @ end smallexample + + @ bye Index: dlkit2/docs/diskless-kit-running.texi diff -u /dev/null dlkit2/docs/diskless-kit-running.texi:1.1 --- /dev/null Sat Feb 25 14:58:51 2006 +++ dlkit2/docs/diskless-kit-running.texi Sat Feb 25 14:58:51 2006 @@ -0,0 +1,543 @@ +\input texinfo + @ setfilename diskless-kit-running + @ settitle diskless-kit運用マニュアル + @ syncodeindex pg cp + + @ copying +diskless-kit運用マニュアル + +Copyright @copyright{} 2005-2006 SAWADA Keiji @email{card_captor at users.sourceforge.jp} + + @ include diskless-kit-version.texi + +Last Update: $Date: 2006/02/25 05:58:51 $ + @ end copying + + @ c Type C-u C-c C-u C-a + @ c texinfoの参考サイト: http://www.bookshelf.jp/texi/texinfo/texinfo-ja.html + + @ c ---------------------------------------------------------------------- + @ c タイトルページ。印刷のみに現れる + + @ titlepage + @ title diskless-kit運用マニュアル + @ author SAWADA Keiji @email{card_captor at users.sourceforge.jp} + @ page + @ vskip 0pt plus 1filll + @ insertcopying + @ contents + @ end titlepage + + @ c ---------------------------------------------------------------------- + @ ifnottex + @ node Top, About this Document, (dir), (dir) + @ top diskless-kit運用マニュアル + @ end ifnottex + + @ insertcopying + + @ majorheading + + @ heading トップメニュー + @ menu +* About this Document:: +* Installtion Type 1 -- Disklessify:: +* Installtion Type 2 -- Network Install:: +* Installtion Type 3 -- Diskless Install:: +* Installtion Type 4 -- Offline Install:: + @ end menu + + @ c __body__ + @ c ---------------------------------------------------------------------- + @ node About this Document, Installtion Type 1 -- Disklessify, Top, Top + @ chapter この文書について + +本マニュアルでは、Solaris/x86のディスクレス環境構築ツールである +diskless-kitの運用方法を記述します。 +設定方法については別途「diskless-kit設定マニュアル」を参照してください。 + + @ menu +* Type of Installation:: + @ end menu + + @ c ---------------------------------------- + @ node Type of Installation, , About this Document, About this Document + @ section インストールタイプ + +実際のインストール手順は、 +目的とする動作環境ごとに何通りかのバリエーションがあります。 + + @ itemize + @ item タイプ1: disklessify +ハードディスクにインストール済みのSolarisを +PXEブート&NFS-ROOTディスクレス環境に移行する手順です。 +すでに動作しているSolaris環境をディスクレス化する場合に使えます。 + @ image{type1,,,,png} + + @ item タイプ2: netinstall +UNIX系OSでSolarisインストールサーバを構築し、 +PXEブートでSolaris/x86をローカルHDDにインストールする手順です。 +HDDはついているがCD-ROM/DVD-ROMドライブが付いていない場合に便利です。 + @ image{type2} + + @ item タイプ3: diskless +UNIX系OSでSolarisインストールサーバを構築し、 +PXEブートでSolaris/x86をNFS-ROOTディスクレス環境にインストールする手順です。 +HDDがない、もしくはHDDをまったく触りたくない場合に使えます。 + @ image{type3} + + @ item タイプ4: offline +Solaris/x86を母艦とし、 +クライアント側でインストール作業を行なうことなく +別のPC用のPXEブートでNFS-ROOTディスクレス環境をセットアップする手順です。 +コンセプト的にはタイプ3と同じで、 +すでに稼働しているSolaris/x86マシンが必要な点が異なりますが、 +かなり高速にインストールを行なうことができます。 + @ image{type4} + @ end itemize + + @ c ---------------------------------------------------------------------- + @ node Installtion Type 1 -- Disklessify, Installtion Type 2 -- Network Install, About this Document, Top + @ chapter タイプ1: ディスクレス化(disklessify) + +この章では、インストール済みのSolaris/x86を +UNIX-likeシステムを母艦とするディスクレス環境に移行する手順を示します。 + + @ menu +* Type 1 -- Requirement:: +* Type 1 -- Configuring Script:: +* Type 1 -- Preparation at Server-side:: +* Type 1 -- Booting Client:: +* Type 1 -- Finding Local Disk:: +* Type 1 -- Transfer Disk Content:: +* Type 1 -- Prepare Diskless Boot:: +* Type 1 -- Rebooting Client:: + @ end menu + + @ c ---------------------------------------- + @ node Type 1 -- Requirement, Type 1 -- Configuring Script, Installtion Type 1 -- Disklessify, Installtion Type 1 -- Disklessify + @ section 必要なもの + + @ itemize + @ item NFS・DHCP(ISC dhcpd)・TFTPの機能を持つサーバ + @ item すでに(ハードディスクで)稼働しているSolaris/x86クライアント + @ end itemize + +ディスクレス化の前に、/etc/vfstabを調べてローカルな +ファイルシステムがどのデバイスに入っているかをリストアップしておきます。 + +dumpadm -nを実行し、カーネルダンプを停止します。 + +/etc/hostsを引き継ぐので、サーバのエントリが含まれていることを確認します +(含まれていないと、swapを追加しようとしたところで固まります)。 + + + @ c ---------------------------------------- + @ node Type 1 -- Configuring Script, Type 1 -- Preparation at Server-side, Type 1 -- Requirement, Installtion Type 1 -- Disklessify + @ section スクリプトの設定 + +[[ダウンロード]]からスクリプトをダウンロードして、展開します。 +その中にconfig.inというファイルがあるので、各自の環境に合わせて編集します。 +設定しなければならないパラメータには[config]というマークがついています。 +INSTALL_TYPEをdisklessifyにするのをお忘れなく。 + + @ c ---------------------------------------- + @ node Type 1 -- Preparation at Server-side, Type 1 -- Booting Client, Type 1 -- Configuring Script, Installtion Type 1 -- Disklessify + @ section サーバ側でのインストールの準備 + +sv.setupスクリプトを実行します。 +NFSサーバやTFTPサーバの設定を変えろとかDHCPサーバを再起動しろとか +指示されますので、それに従って下さい。 +sv.setupは繰り返し実行しても大丈夫です。 + + @ c ---------------------------------------- + @ node Type 1 -- Booting Client, Type 1 -- Finding Local Disk, Type 1 -- Preparation at Server-side, Installtion Type 1 -- Disklessify + @ section クライアントの起動 + +クライアントPCをPXEブートするよう設定し、起動させます。 +BIOSによって表記が異なりますが、 +"LAN Boot"または"Network Boot"というメニュー項目をEnableに設定したり、 +ブートデバイスの選択を"LAN"にするとPXEブートするようになります。 + + @ c ---------------------------------------- + @ node Type 1 -- Finding Local Disk, Type 1 -- Transfer Disk Content, Type 1 -- Booting Client, Installtion Type 1 -- Disklessify + @ section ディスクの検索 + +すると、シングルユーザモードで起動してくるので、 + + @ example + cd /fake + sh cl.disklessify -probe + @ end example + +とローカルに接続されているディスクを検索させます。 +以下は1台のディスクに2つのスライスがある例です。 + + @ example + Searching for ufs slice(s) on local disk(s)... + /dev/dsk/c0d0s0: accessible, ufs, ufs-mountable + /dev/dsk/c0d0s1: accessible, not ufs (magic is 0xef7faebb) + /dev/dsk/c0d0s2: accessible, not ufs (magic is 0x000006c8) + /dev/dsk/c0d0s7: accessible, ufs, ufs-mountable + /dev/dsk/c0d0s8: accessible, not ufs (magic is 0x000006c8) + /dev/dsk/c0d0s9: accessible, not ufs (magic is 0xffffffff) + Checking if /dev/dsk/c0d0s0 is root slice... yes + Checking if /dev/dsk/c0d0s7 is root slice... no + Gathering /dev and vfstab info from root slice... + Enuemerating ufs directories on local disk(s)... + Current /dev/dsk/c0d0s0 was /dev/dsk/c0d0s0 at / + Current /dev/dsk/c0d0s7 was /dev/dsk/c0d0s7 at /export/home + @ end example + +最後の"Current ..."が重要で、例えば一番下の行の場合、 +現在のカーネルに/dev/dsk/c0d0s7として認識されているスライスは、 +ローカルディスク環境下では/dev/dsk/c0d0s7として認識され、 +/export/homeにマウントされていると推測していることを示します。 +これが事前に調べた内容と矛盾しないか確認してください。 + + @ c ---------------------------------------- + @ node Type 1 -- Transfer Disk Content, Type 1 -- Prepare Diskless Boot, Type 1 -- Finding Local Disk, Installtion Type 1 -- Disklessify + @ section ディスクの転送 + +デバイスの確認が終ったら、NFSサーバにローカルディスクの内容を転送します。 + + @ example + sh cl.disklessify -copy + @ end example + + @ c ---------------------------------------- + @ node Type 1 -- Prepare Diskless Boot, Type 1 -- Rebooting Client, Type 1 -- Transfer Disk Content, Installtion Type 1 -- Disklessify + @ section ディスクレスブートの準備 + +転送先にコピーされたvfstabはまだ転送元のディスクを参照しており、 +ディスクレス環境に移行すると不都合が生じます。これを修正するため、 + + @ example + sh cl.disklessify -bootenv + @ end example + +でvfstabを新しい環境用に書き換えます。 + +またサーバ側でも、今コピーしたばかりの領域をクライアントに提供できるよう +設定を変更します。 + + @ example + ./sv.2nd-stage + @ end example + + @ c ---------------------------------------- + @ node Type 1 -- Rebooting Client, , Type 1 -- Prepare Diskless Boot, Installtion Type 1 -- Disklessify + @ section クライアントの再起動 + +クライアントでrebootコマンドを実行し、クライアントを再起動します。 + + + @ c ---------------------------------------------------------------------- + @ node Installtion Type 2 -- Network Install, Installtion Type 3 -- Diskless Install, Installtion Type 1 -- Disklessify, Top + @ chapter Installtion Type 2 -- Network Install + +この章では、UNIX-likeシステムを母艦とし、 +PXEブートでSolaris/x86をローカルHDDにインストールする手順を示します。 + + @ menu +* Type 2 -- Configuring Script:: +* Type 2 -- Copying DVD Content:: +* Type 2 -- Preparation at Server-side:: +* Type 2 -- Installing Solaris:: +* Type 2 -- Rebooting Client:: + @ end menu + + @ c ---------------------------------------- + @ node Type 2 -- Configuring Script, Type 2 -- Copying DVD Content, Installtion Type 2 -- Network Install, Installtion Type 2 -- Network Install + @ section スクリプトの設定 + +[[ダウンロード]]からスクリプトをダウンロードして、展開します。 +その中にconfig.inというファイルがあるので、各自の環境に合わせて編集します。 +設定しなければならないパラメータには[config]というマークがついています。 +INSTALL_TYPEを"netinstall"にするのをお忘れなく。 + + @ c ---------------------------------------- + @ node Type 2 -- Copying DVD Content, Type 2 -- Preparation at Server-side, Type 2 -- Configuring Script, Installtion Type 2 -- Network Install + @ section DVDのコピー + +DVD-ROMからコピーする場合は例えば +-Solarisでのやり方 + @ example + rsync -a /cdrom/cdrom0 $SV_INSTDIR + @ end example +-Linuxでのやり方 + (既にマウントされている状態、且つ既に$SV_INSTDIRディレクトリが存在する場合、) + @ example + cp -a /media/cdrecorder/* $SV_INSTDIR + @ end example + +DVD-ROMイメージからコピーする場合は例えば +-Solarisでのやり方 + @ example + lofiadm .../sol-10-GA-x86-dvd-iso.iso + mount -F hsfs /mnt /dev/lofi/1 + rsync -a /mnt $SV_INSTDIR + @ end example +-Linuxでのやり方 + (既に$SV_INSTDIRディレクトリが存在する場合、) + @ example + mkdir pnt + mount -o loop,ro sol-10-GA-x86-dvd.iso.iso pnt + cp -a pnt/* $SV_INSTDIR + umount pnt;rmdir pnt + @ end example + +($SV_INSTDIRはconfig.inでの値に読み替えてください)。 +デバイスファイルもコピーする必要があるので、 +普通のcpコマンドではコピーできないかも。 +gcpやgtar、cpioなどを使っても良いです。(Linuxではgcp=cp。gcpでも-aか-dpRオプションをつけないといけない。) + + + @ c ---------------------------------------- + @ node Type 2 -- Preparation at Server-side, Type 2 -- Installing Solaris, Type 2 -- Copying DVD Content, Installtion Type 2 -- Network Install + @ section サーバ側でのインストールの準備 + +sv.setupスクリプトを実行します。 +NFSサーバやTFTPサーバの設定を変えろとかDHCPサーバを再起動しろとか +指示されますので、それに従って下さい。 +sv.setupは繰り返し実行しても大丈夫です。 + + @ c ---------------------------------------- + @ node Type 2 -- Installing Solaris, Type 2 -- Rebooting Client, Type 2 -- Preparation at Server-side, Installtion Type 2 -- Network Install + @ section クライアント側でのインストール + +クライアントPCをPXEブートするよう設定し、起動させます。 +BIOSによって表記が異なりますが、 +"LAN Boot"または"Network Boot"というメニュー項目をEnableに設定したり、 +ブートデバイスの選択を"LAN"にするとPXEブートするようになります。 + +無事カーネルが起動すれば、後は通常のSolarisのインストール作業とほぼ同じ +((インストール先として"CD-ROM/DVD-ROM"ではなく、"ネットワークファイルシステム"を選ぶところが異なる))です。 +インストーラもSun純正のインストーラが起動しますので、 +[[インストールガイド>http://docs.sun.com/app/docs/coll/1267.1]]等を +参考にしてインストールを行なってください。 + +非標準のドライバをインストールする場合、 +インストール途中で手動リブートを選択し、 +Solaris本体のインストール後にシェルから手動でインストールします。 +例えばconfig.inでrhドライバを選んでいたとすると、 + + @ example + cd /fake + sh cm.non-std-driver.rh client + @ end example + +のようにしてインストールできます。 + +また、パッケージを手動でインストールする場合は + + @ example + cd /fake + sh cl.pkgadd SUNWtcsh + sh cl.pkgadd SUNWless + @ end example + +のようにしてください。 + + @ c ---------------------------------------- + @ node Type 2 -- Rebooting Client, , Type 2 -- Installing Solaris, Installtion Type 2 -- Network Install + @ section クライアントの再起動 + +シェルからrebootコマンドを実行してください。 +BIOSの画面が表示されたら、ローカルディスクから起動するよう設定します。 + + @ c ---------------------------------------------------------------------- + @ node Installtion Type 3 -- Diskless Install, Installtion Type 4 -- Offline Install, Installtion Type 2 -- Network Install, Top + @ chapter Installtion Type 3 -- Diskless Install + +UNIX-likeシステムでSolarisインストールサーバを構築し、 +PXEブートでSolaris/x86をNFS-ROOTディスクレス環境にインストールする + + @ c ---------------------------------------- + @ menu +* Type 3 -- Requirement:: +* Type 3 -- Copying DVD Content:: +* Type 3 -- Configuring Scripts:: +* Type 3 -- Preparation at Server-side:: +* Type 3 -- Preparation at Client-Side:: +* Type 3 -- Preparation of Postinstall:: +* Type 3 -- Rebooting Client:: + @ end menu + + @ node Type 3 -- Requirement, Type 3 -- Copying DVD Content, Installtion Type 3 -- Diskless Install, Installtion Type 3 -- Diskless Install + @ section 必要なもの + +- NFS・DHCP(ISC dhcpd)・TFTPの機能を持つサーバ +- Solaris10のDVDイメージ(本物のDVD-ROMでも良いし、ダウンロードしたファイルでも良い) + + @ c ---------------------------------------- + @ node Type 3 -- Copying DVD Content, Type 3 -- Configuring Scripts, Type 3 -- Requirement, Installtion Type 3 -- Diskless Install + @ section DVD-ROMファイルのコピー + +DVD-ROMからコピーする場合は例えば +-Solarisでのやり方 + @ example + rsync -a /cdrom/cdrom0 $SV_INSTDIR + @ end example +-Linuxでのやり方 + (既にマウントされている状態、且つ既に$SV_INSTDIRディレクトリが存在する場合、) + @ example + cp -a /media/cdrecorder/* $SV_INSTDIR + @ end example + +DVD-ROMイメージからコピーする場合は例えば +-Solarisでのやり方 + @ example + lofiadm .../sol-10-GA-x86-dvd-iso.iso + mount -F hsfs /mnt /dev/lofi/1 + rsync -a /mnt $SV_INSTDIR + @ end example +-Linuxでのやり方 + (既に$SV_INSTDIRディレクトリが存在する場合、) + @ example + mkdir pnt + mount -o loop,ro sol-10-GA-x86-dvd.iso.iso pnt + cp -a pnt/* $SV_INSTDIR + umount pnt;rmdir pnt + @ end example + +普通のcpコマンドではだめ。gcpやgtar、cpioなどを使っても良いです。(Linuxではcp=gcp。gcpでも-aか-dpRオプションをつけないといけない。) + + @ c ---------------------------------------- + @ node Type 3 -- Configuring Scripts, Type 3 -- Preparation at Server-side, Type 3 -- Copying DVD Content, Installtion Type 3 -- Diskless Install + @ section スクリプトの設定 + +[[ダウンロード]]からスクリプトをダウンロードして、展開します。 +その中にconfig.inというファイルがあるので、各自の環境に合わせて編集します。 +設定しなければならないパラメータには[config]というマークがついています。 +INSTALL_TYPEを"diskless"にするのをお忘れなく。 + + @ c ---------------------------------------- + @ node Type 3 -- Preparation at Server-side, Type 3 -- Preparation at Client-Side, Type 3 -- Configuring Scripts, Installtion Type 3 -- Diskless Install + @ section サーバ側でのインストールの準備 + +sv.setupスクリプトを実行します。 +NFSサーバやTFTPサーバの設定を変えろとかDHCPサーバを再起動しろとか +指示されますので、それに従って下さい。 +sv.setupは繰り返し実行しても大丈夫です。 + + @ c ---------------------------------------- + @ node Type 3 -- Preparation at Client-Side, Type 3 -- Preparation of Postinstall, Type 3 -- Preparation at Server-side, Installtion Type 3 -- Diskless Install + @ section クライアント側でのインストールの準備 + +クライアントPCをPXEブートするよう設定し、起動させます。 +BIOSによって表記が異なりますが、 +"LAN Boot"または"Network Boot"というメニュー項目をEnableに設定したり、 +ブートデバイスの選択を"LAN"にするとPXEブートするようになります。 + +無事カーネルが起動すると、インストーラ(Sun純正のインストーラとは異なります)が +自動的に起動され、パッケージのインストールと各種設定が行なわれます。 + +もしインストール中に何か問題が発生すると +「Installation failed. Fix problem and exit shell.」と表示され、 +修正作業を行なうためのシェルが起動されます。 +問題を修正できたらexitすることで、インストールを再開することができます。 + +無事作業が終ると「Good luck!」と表示され、シェルのプロンプトが表示されます +(まだ再起動してはいけません!)。 + + @ c ---------------------------------------- + @ node Type 3 -- Preparation of Postinstall, Type 3 -- Rebooting Client, Type 3 -- Preparation at Client-Side, Installtion Type 3 -- Diskless Install + @ section 本番環境の準備 + +サーバ側でsv.2nd-stageスクリプトを実行し、 +本番環境を動かす準備を完了させます。 + + @ c ---------------------------------------- + @ node Type 3 -- Rebooting Client, , Type 3 -- Preparation of Postinstall, Installtion Type 3 -- Diskless Install + @ section クライアントのリブート + +クライアントのシェルでrebootコマンドを実行し、再起動します。 +最初のブートではSMFレポジトリの再構成が行なわれるので、 +ちょっと時間がかかります。 + +また、ウィンドウシステムをインストールした場合は、 +Xサーバの設定を行なうためのkdmconfigが起動します。 + + + @ c ---------------------------------------------------------------------- + @ node Installtion Type 4 -- Offline Install, , Installtion Type 3 -- Diskless Install, Top + @ chapter Installtion Type 4 -- Offline Install + +この章では、 +PXEブートしてNFS-ROOTディスクレス環境で動作するクライアントのインストールを、 +Solaris/x86の母艦内だけで行なう手順を示します。 + + @ c ---------------------------------------- + @ menu +* Type 4 -- Requirement:: +* Type 4 -- Copying DVD Content:: +* Type 4 -- Configuring Scripts:: +* Type 4 -- Preparation at Server-side:: +* Type 4 -- Rebooting Client:: + @ end menu + + @ node Type 4 -- Requirement, Type 4 -- Copying DVD Content, Installtion Type 4 -- Offline Install, Installtion Type 4 -- Offline Install + @ section 必要なもの + +- NFS・DHCP(ISC dhcpd)・TFTPの機能を持つSolaris/x86マシン +- Solaris10のDVDイメージ(本物のDVD-ROMでも良いし、ダウンロードしたファイルでも良い) + + @ c ---------------------------------------- + @ node Type 4 -- Copying DVD Content, Type 4 -- Configuring Scripts, Type 4 -- Requirement, Installtion Type 4 -- Offline Install + @ section DVD-ROMファイルのコピー + +DVD-ROMからコピーする場合は例えば + @ example + rsync -a /cdrom/cdrom0 $SV_INSTDIR + @ end example + +DVD-ROMイメージからコピーする場合は例えば + @ example + lofiadm .../sol-10-GA-x86-dvd-iso.iso + mount -F hsfs /mnt /dev/lofi/1 + rsync -a /mnt $SV_INSTDIR + @ end example + +普通のcpコマンドではだめ。gcpやgtar、cpioなどを使っても良いです。 + + @ c ---------------------------------------- + @ node Type 4 -- Configuring Scripts, Type 4 -- Preparation at Server-side, Type 4 -- Copying DVD Content, Installtion Type 4 -- Offline Install + @ section スクリプトの設定 + +[[ダウンロード]]からスクリプトをダウンロードして、展開します。 +その中にconfig.inというファイルがあるので、各自の環境に合わせて編集します。 +設定しなければならないパラメータには[config]というマークがついています。 +INSTALL_TYPEを"offline"にするのをお忘れなく。 + + @ c ---------------------------------------- + @ node Type 4 -- Preparation at Server-side, Type 4 -- Rebooting Client, Type 4 -- Configuring Scripts, Installtion Type 4 -- Offline Install + @ section サーバ側でのインストールの準備 + +sv.setupスクリプトを実行します。 +NFSサーバやTFTPサーバの設定を変えろとかDHCPサーバを再起動しろとか +指示されますので、それに従って下さい。 + +サーバの問題が見つからなければ、 +クライアント用の領域(クライアントにとってのルートファイルシステムになる、 +サーバ内の領域)にSolarisがインストールされます。 + +インストールも完了すると、最後に本番環境用のサーバ設定が行なわれます。 + + @ c ---------------------------------------- + @ node Type 4 -- Rebooting Client, , Type 4 -- Preparation at Server-side, Installtion Type 4 -- Offline Install + @ section クライアントのブート + +クライアントPCをPXEブートするよう設定し、起動させます。 +BIOSによって表記が異なりますが、 +"LAN Boot"または"Network Boot"というメニュー項目をEnableに設定したり、 +ブートデバイスの選択を"LAN"にするとPXEブートするようになります。 + +最初のブートではSMFレポジトリの再構成が行なわれるので、 +ちょっと時間がかかります。 + +また、ウィンドウシステムをインストールした場合は、 +Xサーバの設定を行なうためのkdmconfigが起動します。 + + + @ bye Index: dlkit2/docs/install-types.odg Index: dlkit2/docs/style.css diff -u /dev/null dlkit2/docs/style.css:1.1 --- /dev/null Sat Feb 25 14:58:51 2006 +++ dlkit2/docs/style.css Sat Feb 25 14:58:51 2006 @@ -0,0 +1,105 @@ +pre, dl, ol, p, blockquote +{ + line-height:130%; +} + +BODY { + color:#333; + background-color:white; + margin-left:10%; + margin-right:5%; + margin-top:5em; + margin-bottom:7em; + font-size:90%; + font-family:lucida sans, verdana, arial, helvetica, Sans-Serif; +} +DIV.node { /* node navigator */ + font-size: 80%; + text-align: right; +} +H1.settitle { + margin-left: -7%; + font-family:lucida sans,verdana, arial, helvetica, Sans-Serif; + font-size:30px; + font-weight:bold; + background-color:transparent; + padding:12px 0px 0px 0px; + border:0px; +} +H2.chapter, H2.unnumbered { + margin-left: -5%; + border-width:0px 0px 3px 0px; + padding:.3em; + + border-color:#ccc; + + border-style:solid; + font-weight:bold; + font-size:x-large; + font-family:lucida sans, verdana, arial, helvetica, Sans-Serif; +} +H3.section { + margin-left: -4%; + border-width:0px 0px 3px 0px; + padding:.3em; + + border-color:#ccc; + + border-style:solid; + font-weight:bold; + font-size:large; + font-family:lucida sans, verdana, arial, helvetica, Sans-Serif; +} +H4.subsection, H4.subheading { + margin-left: -3%; + border-width:0px 0px 1px 0px; + padding:.3em; + + border-color:#bbb; + + border-style:solid; + font-weight:bold; + font-size:normal; + font-family:lucida sans, verdana, arial, helvetica, Sans-Serif; +} +PRE { + border-top:#DDDDEE 1px solid; + border-bottom:#888899 1px solid; + border-left:#DDDDEE 1px solid; + border-right:#888899 1px solid; + padding:.5em; + margin-left:1em; + margin-right:2em; + white-space:pre; + color:white; + background-color:#00c; + overflow:auto; +} +HR { + margin-left: -8%; +} + +DT { + font-weight:bold; + margin-top:1em; + margin-left:1em; +} + +UL { + margin-top:.5em; + margin-bottom:.5em; + line-height:130%; +} + +EM { + font-style:italic; +} + +STRONG { + font-weight:bold; +} + +SAMP SPAN.command { + font-weight:bold; + font-family:monospace; +} Index: dlkit2/docs/texi2pukiwiki.sh diff -u /dev/null dlkit2/docs/texi2pukiwiki.sh:1.1 --- /dev/null Sat Feb 25 14:58:51 2006 +++ dlkit2/docs/texi2pukiwiki.sh Sat Feb 25 14:58:51 2006 @@ -0,0 +1,18 @@ +#!/bin/sh + +sed -e '1,/@c __body__/d' \ + -e 's/@chapter /* /' \ + -e 's/@section /** /' \ + -e 's/@subsection /*** /' \ + -e '/^@menu/,/^@end menu/d' \ + -e '/^@smallexample/,/^@end smallexample/s/^/ /' \ + -e '/^ @smallexample/d' -e '/^ @end smallexample/d' \ + -e '/@itemize/d' -e '/@end itemize/d' \ + -e '/^@node /d' -e '/^@c /d' -e '/^@comment /d' \ + -e 's/@item /- /' \ + -e 's/@uref{\([^,\n]*\), \([^}]+\)}/[[\\2>\\1]]/g' \ + -e 's/@uref{\([^}]*\)}/[[\1]]/g' \ + -e "s/@file{\([^}]*\)}/''\1''/g" \ + -e "s/@code{\([^}]*\)}/''\1''/g" \ + -e "s/@var{\([^}]*\)}/'''\1'''/g" \ + -e "/@bye/d" Index: dlkit2/docs/type1.png Index: dlkit2/docs/type2.png Index: dlkit2/docs/type3.png Index: dlkit2/docs/type4.png From card_captor @ users.sourceforge.jp Sat Feb 25 19:44:28 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sat, 25 Feb 2006 19:44:28 +0900 Subject: [dl-x86solaris-devel 17] CVS update: dlkit2 Message-ID: <20060225104428.114D52AC011@users.sourceforge.jp> Index: dlkit2/.cvsignore diff -u /dev/null dlkit2/.cvsignore:1.1 --- /dev/null Sat Feb 25 19:44:27 2006 +++ dlkit2/.cvsignore Sat Feb 25 19:44:27 2006 @@ -0,0 +1,2 @@ +config.in +site_* From teelime @ users.sourceforge.jp Sun Feb 26 00:35:21 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Sun, 26 Feb 2006 00:35:21 +0900 Subject: [dl-x86solaris-devel 18] CVS update: dlkit2 Message-ID: <20060225153521.8B1A52AC0A9@users.sourceforge.jp> Index: dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh diff -u dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh:1.1 dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh:1.2 --- dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh:1.1 Sat Feb 25 04:03:15 2006 +++ dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh Sun Feb 26 00:35:21 2006 @@ -1,8 +1,16 @@ #!/bin/sh +# sv.mk-copy-latest-boot_archive-to-tftpboot.sh - copy the latest boot_archive file +# to the tftpboot directory. + +# Copyright (c) 2006 teelime +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License AND Common +# Development and Distribution License. [ "`id -u`" != 0 ] && usage "This must be run as root" . ./config.in -cp -pf $SV_FIN_ROOT/platform/i86pc/boot_archive $SV_PXEBOOTDIR +cp -pf $SV_FIN_ROOT/$BOOT_ARCHIVE_SRC $SV_PXEBOOTDIR Index: dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh diff -u dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.1 dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.2 --- dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.1 Sat Feb 25 04:03:15 2006 +++ dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh Sun Feb 26 00:35:21 2006 @@ -1,4 +1,14 @@ #!/bin/sh +# sv.mk-grubmenu-newbootpostupdate1.sh - utility to generate GRUB's menu.lst file +# when after diskless-installing. + +# Copyright (c) 2006 teelime +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License AND Common +# Development and Distribution License. + +asserta='== << Assertion >> ==================================================' apply_m4() { # apply_m4 -Dmacro=value input.m4 > output @@ -12,4 +22,4 @@ echo " menu.lst" -apply_m4 -DPOSTUPDATE1 sv.grub-menu.m4 > /tftpboot/boot/grub/menu.lst +apply_m4 -DPOSTUPDATE1 sv.grub-menu.m4 > $SV_PXEBOOTDIR/grub/menu.lst From teelime @ users.sourceforge.jp Sun Feb 26 01:12:35 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Sun, 26 Feb 2006 01:12:35 +0900 Subject: [dl-x86solaris-devel 19] CVS update: dlkit2 Message-ID: <20060225161235.D470C2AC013@users.sourceforge.jp> Index: dlkit2/config.dist diff -u dlkit2/config.dist:1.3 dlkit2/config.dist:1.4 --- dlkit2/config.dist:1.3 Sat Feb 25 10:51:39 2006 +++ dlkit2/config.dist Sun Feb 26 01:12:35 2006 @@ -147,7 +147,7 @@ CL_EXPORT_HOME_MODE="551" SV_DVDPATH=/Download/sol-10-u1-ga-x86-dvd-iso.iso ALT_ROOT=$SV_INSTROOT -#SUN_SCRIPT=${SV_INSTDIR}/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +#SUN_SCRIPT=${SV_DVDDIR}/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk SUN_SCRIPT=$SV_INSTROOT/boot/solaris/bin/create_ramdisk BOOT_ARCHIVE_FILE=boot_archive BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive From teelime @ users.sourceforge.jp Sun Feb 26 01:13:12 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Sun, 26 Feb 2006 01:13:12 +0900 Subject: [dl-x86solaris-devel 20] CVS update: dlkit2/docs Message-ID: <20060225161312.205382AC013@users.sourceforge.jp> Index: dlkit2/docs/diskless-kit-config.texi diff -u dlkit2/docs/diskless-kit-config.texi:1.1 dlkit2/docs/diskless-kit-config.texi:1.2 --- dlkit2/docs/diskless-kit-config.texi:1.1 Sat Feb 25 14:58:51 2006 +++ dlkit2/docs/diskless-kit-config.texi Sun Feb 26 01:13:11 2006 @@ -10,7 +10,7 @@ @include diskless-kit-version.texi -Last Update: $Date: 2006/02/25 05:58:51 $ +Last Update: $Date: 2006/02/25 16:13:11 $ @end copying @c Type C-u C-c C-u C-a @@ -831,7 +831,7 @@ @subsection @var{SUN_SCRIPT} Sun謹製@file{create_ramdisk}スクリプトの場所です。変更しないで下さい。 どちらの値を使用しても動作に違いはありません。 -#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +#SUN_SCRIPT=$SV_DVDDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk SUN_SCRIPT=@code{$SV_INSTROOT/boot/solaris/bin/create_ramdisk} @subsection @var{BOOT_ARCHIVE_FILE} @@ -854,7 +854,7 @@ CL_EXPORT_HOME_MODE="551" SV_DVDPATH=/Download/sol-10-u1-ga-x86-dvd-iso.iso ALT_ROOT=$SV_INSTROOT -#SUN_SCRIPT=$SV_INSTDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk +#SUN_SCRIPT=$SV_DVDDIR/Solaris_10/Product/SUNWcakr.i/reloc/boot/solaris/bin/create_ramdisk SUN_SCRIPT=$SV_INSTROOT/boot/solaris/bin/create_ramdisk BOOT_ARCHIVE_FILE=boot_archive BOOT_ARCHIVE_SRC=platform/i86pc/boot_archive From teelime @ users.sourceforge.jp Sun Feb 26 01:57:58 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Sun, 26 Feb 2006 01:57:58 +0900 Subject: [dl-x86solaris-devel 21] CVS update: dlkit2 Message-ID: <20060225165758.71E4F2AC0AC@users.sourceforge.jp> Index: dlkit2/cl.diskless-installer diff -u dlkit2/cl.diskless-installer:1.2 dlkit2/cl.diskless-installer:1.3 --- dlkit2/cl.diskless-installer:1.2 Sat Feb 25 03:30:17 2006 +++ dlkit2/cl.diskless-installer Sun Feb 26 01:57:58 2006 @@ -225,7 +225,7 @@ echo "" echo "First stage of installation is done." echo "Following operations needed to complete installation:" - echo " * (On server side) Change menu.lst(GRUB's configuration file) + echo " * (On server side) Change menu.lst(GRUB's configuration file) " echo " * under the tftp directory." echo " * (On client side) Reboot this machine" echo "" From card_captor @ users.sourceforge.jp Sun Feb 26 02:16:04 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 02:16:04 +0900 Subject: [dl-x86solaris-devel 22] CVS update: dlkit2/docs Message-ID: <20060225171604.E10FF2AC0A5@users.sourceforge.jp> Index: dlkit2/docs/diskless-kit-running.texi diff -u dlkit2/docs/diskless-kit-running.texi:1.1 dlkit2/docs/diskless-kit-running.texi:1.2 --- dlkit2/docs/diskless-kit-running.texi:1.1 Sat Feb 25 14:58:51 2006 +++ dlkit2/docs/diskless-kit-running.texi Sun Feb 26 02:16:04 2006 @@ -10,7 +10,7 @@ @include diskless-kit-version.texi -Last Update: $Date: 2006/02/25 05:58:51 $ +Last Update: $Date: 2006/02/25 17:16:04 $ @end copying @c Type C-u C-c C-u C-a @@ -145,7 +145,7 @@ @node Type 1 -- Preparation at Server-side, Type 1 -- Booting Client, Type 1 -- Configuring Script, Installtion Type 1 -- Disklessify @section サーバ側でのインストールの準備 -sv.setupスクリプトを実行します。 +サーバでsv.setupスクリプトを実行します。 NFSサーバやTFTPサーバの設定を変えろとかDHCPサーバを再起動しろとか 指示されますので、それに従って下さい。 sv.setupは繰り返し実行しても大丈夫です。 @@ -166,8 +166,8 @@ すると、シングルユーザモードで起動してくるので、 @example - cd /fake - sh cl.disklessify -probe +client# cd /fake +client# sh cl.disklessify -probe @end example とローカルに接続されているディスクを検索させます。 @@ -202,7 +202,7 @@ デバイスの確認が終ったら、NFSサーバにローカルディスクの内容を転送します。 @example - sh cl.disklessify -copy +client# sh cl.disklessify -copy @end example @c ---------------------------------------- @@ -213,7 +213,7 @@ ディスクレス環境に移行すると不都合が生じます。これを修正するため、 @example - sh cl.disklessify -bootenv +client# sh cl.disklessify -bootenv @end example でvfstabを新しい環境用に書き換えます。 @@ -222,7 +222,7 @@ 設定を変更します。 @example - ./sv.2nd-stage +server# ./sv.2nd-stage @end example @c ---------------------------------------- @@ -263,28 +263,28 @@ DVD-ROMからコピーする場合は例えば -Solarisでのやり方 @example - rsync -a /cdrom/cdrom0 $SV_INSTDIR +server# rsync -a /cdrom/cdrom0 $SV_INSTDIR @end example -Linuxでのやり方 (既にマウントされている状態、且つ既に$SV_INSTDIRディレクトリが存在する場合、) @example - cp -a /media/cdrecorder/* $SV_INSTDIR +server# cp -a /media/cdrecorder/* $SV_INSTDIR @end example DVD-ROMイメージからコピーする場合は例えば -Solarisでのやり方 @example - lofiadm .../sol-10-GA-x86-dvd-iso.iso - mount -F hsfs /mnt /dev/lofi/1 - rsync -a /mnt $SV_INSTDIR +server# lofiadm .../sol-10-GA-x86-dvd-iso.iso +server# mount -F hsfs /mnt /dev/lofi/1 +server# rsync -a /mnt $SV_INSTDIR @end example -Linuxでのやり方 (既に$SV_INSTDIRディレクトリが存在する場合、) @example - mkdir pnt - mount -o loop,ro sol-10-GA-x86-dvd.iso.iso pnt - cp -a pnt/* $SV_INSTDIR - umount pnt;rmdir pnt +server# mkdir pnt +server# mount -o loop,ro sol-10-GA-x86-dvd.iso.iso pnt +server# cp -a pnt/* $SV_INSTDIR +server# umount pnt;rmdir pnt @end example ($SV_INSTDIRはconfig.inでの値に読み替えてください)。 @@ -297,7 +297,7 @@ @node Type 2 -- Preparation at Server-side, Type 2 -- Installing Solaris, Type 2 -- Copying DVD Content, Installtion Type 2 -- Network Install @section サーバ側でのインストールの準備 -sv.setupスクリプトを実行します。 +サーバ側でsv.setupスクリプトを実行します。 NFSサーバやTFTPサーバの設定を変えろとかDHCPサーバを再起動しろとか 指示されますので、それに従って下さい。 sv.setupは繰り返し実行しても大丈夫です。 @@ -323,8 +323,8 @@ 例えばconfig.inでrhドライバを選んでいたとすると、 @example - cd /fake - sh cm.non-std-driver.rh client +client# cd /fake +client# sh cm.non-std-driver.rh client @end example のようにしてインストールできます。 @@ -332,9 +332,9 @@ また、パッケージを手動でインストールする場合は @example - cd /fake - sh cl.pkgadd SUNWtcsh - sh cl.pkgadd SUNWless +client# cd /fake +client# sh cl.pkgadd SUNWtcsh +client# sh cl.pkgadd SUNWless @end example のようにしてください。 @@ -377,28 +377,28 @@ DVD-ROMからコピーする場合は例えば -Solarisでのやり方 @example - rsync -a /cdrom/cdrom0 $SV_INSTDIR +server# rsync -a /cdrom/cdrom0 $SV_INSTDIR @end example -Linuxでのやり方 (既にマウントされている状態、且つ既に$SV_INSTDIRディレクトリが存在する場合、) @example - cp -a /media/cdrecorder/* $SV_INSTDIR +server# cp -a /media/cdrecorder/* $SV_INSTDIR @end example DVD-ROMイメージからコピーする場合は例えば -Solarisでのやり方 @example - lofiadm .../sol-10-GA-x86-dvd-iso.iso - mount -F hsfs /mnt /dev/lofi/1 - rsync -a /mnt $SV_INSTDIR +server# lofiadm .../sol-10-GA-x86-dvd-iso.iso +server# mount -F hsfs /mnt /dev/lofi/1 +server# rsync -a /mnt $SV_INSTDIR @end example -Linuxでのやり方 (既に$SV_INSTDIRディレクトリが存在する場合、) @example - mkdir pnt - mount -o loop,ro sol-10-GA-x86-dvd.iso.iso pnt - cp -a pnt/* $SV_INSTDIR - umount pnt;rmdir pnt +server# mkdir pnt +server# mount -o loop,ro sol-10-GA-x86-dvd.iso.iso pnt +server# cp -a pnt/* $SV_INSTDIR +server# umount pnt;rmdir pnt @end example 普通のcpコマンドではだめ。gcpやgtar、cpioなどを使っても良いです。(Linuxではcp=gcp。gcpでも-aか-dpRオプションをつけないといけない。) @@ -416,7 +416,7 @@ @node Type 3 -- Preparation at Server-side, Type 3 -- Preparation at Client-Side, Type 3 -- Configuring Scripts, Installtion Type 3 -- Diskless Install @section サーバ側でのインストールの準備 -sv.setupスクリプトを実行します。 +サーバ側でsv.setupスクリプトを実行します。 NFSサーバやTFTPサーバの設定を変えろとかDHCPサーバを再起動しろとか 指示されますので、それに従って下さい。 sv.setupは繰り返し実行しても大丈夫です。 @@ -489,14 +489,14 @@ DVD-ROMからコピーする場合は例えば @example - rsync -a /cdrom/cdrom0 $SV_INSTDIR +server# rsync -a /cdrom/cdrom0 $SV_INSTDIR @end example DVD-ROMイメージからコピーする場合は例えば @example - lofiadm .../sol-10-GA-x86-dvd-iso.iso - mount -F hsfs /mnt /dev/lofi/1 - rsync -a /mnt $SV_INSTDIR +server# lofiadm .../sol-10-GA-x86-dvd-iso.iso +server# mount -F hsfs /mnt /dev/lofi/1 +server# rsync -a /mnt $SV_INSTDIR @end example 普通のcpコマンドではだめ。gcpやgtar、cpioなどを使っても良いです。 From teelime @ users.sourceforge.jp Sun Feb 26 03:01:57 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Sun, 26 Feb 2006 03:01:57 +0900 Subject: [dl-x86solaris-devel 23] CVS update: dlkit2 Message-ID: <20060225180157.8E7CD2AC0B0@users.sourceforge.jp> Index: dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh diff -u dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.2 dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.3 --- dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.2 Sun Feb 26 00:35:21 2006 +++ dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh Sun Feb 26 03:01:57 2006 @@ -20,6 +20,7 @@ ) | sh } +. ./config.in -echo " menu.lst" +echo "menu.lst" apply_m4 -DPOSTUPDATE1 sv.grub-menu.m4 > $SV_PXEBOOTDIR/grub/menu.lst From teelime @ users.sourceforge.jp Sun Feb 26 03:37:27 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Sun, 26 Feb 2006 03:37:27 +0900 Subject: [dl-x86solaris-devel 24] CVS update: dlkit2 Message-ID: <20060225183727.EE1CD2AC079@users.sourceforge.jp> Index: dlkit2/.cvsignore diff -u dlkit2/.cvsignore:1.1 dlkit2/.cvsignore:1.2 --- dlkit2/.cvsignore:1.1 Sat Feb 25 19:44:27 2006 +++ dlkit2/.cvsignore Sun Feb 26 03:37:27 2006 @@ -1,2 +1,4 @@ config.in site_* +.v.* +sv.*.conf From teelime @ users.sourceforge.jp Sun Feb 26 03:42:32 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Sun, 26 Feb 2006 03:42:32 +0900 Subject: [dl-x86solaris-devel 25] CVS update: dlkit2 Message-ID: <20060225184232.762222AC0AE@users.sourceforge.jp> Index: dlkit2/config.dist diff -u dlkit2/config.dist:1.4 dlkit2/config.dist:1.5 --- dlkit2/config.dist:1.4 Sun Feb 26 01:12:35 2006 +++ dlkit2/config.dist Sun Feb 26 03:42:32 2006 @@ -44,7 +44,7 @@ SV_NAME=servername SV_DVDDIR=/export/install/sol10 SV_PKGDIR=$SV_DVDDIR/Solaris_10/Product -SV_INSTROOT=$SV_DVDDIR/Solaris_10/Tools/Boot +SV_INSTROOT=$SV_DVDDIR/mininfsroot SV_FIN_ROOT=/export/roots/root SV_SWAPFILE=/export/swaps/swapfile SV_SWAPSIZE=128 From card_captor @ users.sourceforge.jp Sun Feb 26 04:12:44 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 04:12:44 +0900 Subject: [dl-x86solaris-devel 26] CVS update: dlkit2 Message-ID: <20060225191244.3DD1A2AC014@users.sourceforge.jp> Index: dlkit2/sv.dhcpd.conf.m4 diff -u dlkit2/sv.dhcpd.conf.m4:1.1.1.1 dlkit2/sv.dhcpd.conf.m4:1.2 --- dlkit2/sv.dhcpd.conf.m4:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/sv.dhcpd.conf.m4 Sun Feb 26 04:12:44 2006 @@ -1,60 +1,20 @@ -dnl dhcpd.confテンプレ -# 作: 「なんとなくSolaris/x86 part5」の630,644,659氏 -# (http://pc8.2ch.net/test/read.cgi/unix/1110563961/) -# -ifdef(`CONFIG_INSTALLATION', `# インストール環境用', `#') -ifdef(`CONFIG_FINAL_ENV', `# 本番環境用', `#') - ddns-update-style interim; default-lease-time 3600; max-lease-time 86400; -option space SUNW; -option SUNW.SrootOpt code 1 = text; -option SUNW.SrootIP4 code 2 = ip-address; -option SUNW.SrootNM code 3 = text; -option SUNW.SrootPTH code 4 = text; -option SUNW.SbootFIL code 7 = text; #unsed -option SUNW.SinstIP4 code 10 = ip-address; -option SUNW.SinstNM code 11 = text; -option SUNW.SinstPTH code 12 = text; -option SUNW.SsysidCF code 13 = text; -option SUNW.SjunsCF code 14 = text; #unsed -option SUNW.Sterm code 15 = text; #unsed +option space grub; +option grub.configfile code 150 = text; subnet SUBNET_ADDR netmask SUBNET_MASK { range LEASE_RANGE; - option host-name "CL_NAME"; option subnet-mask SUBNET_MASK; - option routers ROUTER; option broadcast-address BROADCAST; - - class "vendor-classes" { - match option vendor-class-identifier; - } - - subclass "vendor-classes" "SUNW.i86pc" { - vendor-option-space SUNW; - } + option routers ROUTER; + option host-name "CL_NAME"; host CL_NAME { hardware ethernet CL_MAC; fixed-address CL_IPADDR; - -ifdef(`CONFIG_INSTALLATION', ` filename "nbp.SUNW.i86pc"; -ifdef(`CL_MOUNT_OPTION',` option SUNW.SrootOpt "CL_MOUNT_OPTION";') - option SUNW.SrootIP4 SV_IPADDR; - option SUNW.SrootNM "SV_NAME"; - option SUNW.SrootPTH "SV_INSTROOT"; - option SUNW.SinstIP4 SV_IPADDR; - option SUNW.SinstNM "SV_NAME"; - option SUNW.SinstPTH "SV_DVDDIR"; -ifdef(`CL_SYSIDCFG', ` option SUNW.SsysidCF "SV_NAME:SV_DVDDIR/fake-jumpstart";')') - -ifdef(`CONFIG_FINAL_ENV', ` filename "nbp.SUNW.i86pc"; -ifdef(`CL_MOUNT_OPTION',` option SUNW.SrootOpt "CL_MOUNT_OPTION";') - option SUNW.SrootIP4 SV_IPADDR; - option SUNW.SrootNM "SV_NAME"; - option SUNW.SrootPTH "SV_FIN_ROOT";') + filename "boot/grub/pxegrub"; } } From card_captor @ users.sourceforge.jp Sun Feb 26 04:16:06 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 04:16:06 +0900 Subject: [dl-x86solaris-devel 27] CVS update: dlkit2 Message-ID: <20060225191606.73D4C2AC014@users.sourceforge.jp> Index: dlkit2/sv.grub-menu.m4 diff -u dlkit2/sv.grub-menu.m4:1.1.1.1 dlkit2/sv.grub-menu.m4:1.2 --- dlkit2/sv.grub-menu.m4:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/sv.grub-menu.m4 Sun Feb 26 04:16:06 2006 @@ -74,6 +74,9 @@ title Install Solaris (PXE) kernel LOADER KERNFILE - nowin -B PROPDEF module MODULE +title Install Solaris with kernel debugger (PXE) + kernel LOADER KERNFILE -kv - nowin -B PROPDEF + module MODULE ')dnl dnl dnl ###################################################################### @@ -87,5 +90,8 @@ title Solaris (PXE) kernel LOADER KERNFILE -B PROPDEF module MODULE +title Solaris with kernel debugger (PXE) + kernel LOADER KERNFILE -kv -B PROPDEF + module MODULE ')dnl dnl From card_captor @ users.sourceforge.jp Sun Feb 26 04:16:54 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 04:16:54 +0900 Subject: [dl-x86solaris-devel 28] CVS update: dlkit2 Message-ID: <20060225191654.CE8E32AC014@users.sourceforge.jp> Index: dlkit2/sv.non-std-driver-setup diff -u dlkit2/sv.non-std-driver-setup:1.3 dlkit2/sv.non-std-driver-setup:1.4 --- dlkit2/sv.non-std-driver-setup:1.3 Sat Feb 25 10:51:40 2006 +++ dlkit2/sv.non-std-driver-setup Sun Feb 26 04:16:54 2006 @@ -71,10 +71,9 @@ server) # assuming $CWD/config.in exists . ./config.in -exit 111 if [ "x$BOOT_TYPE" = xnewboot ]; then - targetdir=$SV_INSTROOT.grub/fake - root=$SV_INSTROOT.grub + targetdir=$SV_INSTROOT/kernel/drv + root=$SV_INSTROOT else targetdir=$SV_INSTROOT/fake root=$SV_INSTROOT @@ -90,12 +89,6 @@ targetdir=/a/kernel/drv root=/a ;; - opensolaris) - # assuming $CWD/soconfig.in exists - . ./config.in - targetdir=$SV_FIN_ROOT/kernel/drv - root=$SV_FIN_ROOT - ;; *) echo "Usage: $0 {server | offline | client}" ;; From card_captor @ users.sourceforge.jp Sun Feb 26 04:23:41 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 04:23:41 +0900 Subject: [dl-x86solaris-devel 29] CVS update: dlkit2 Message-ID: <20060225192341.BD7112AC079@users.sourceforge.jp> Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.4 dlkit2/sv.setup:1.5 --- dlkit2/sv.setup:1.4 Sat Feb 25 13:03:27 2006 +++ dlkit2/sv.setup Sun Feb 26 04:23:41 2006 @@ -1,4 +1,4 @@ -#!/bin/sh -x +#!/bin/sh # sv.setup - setup script starter for server-side # Copyright (c) 2005-2006 SAWADA Keiji # @@ -94,7 +94,7 @@ case "$BOOT_TYPE" in newboot) - use_instroot=true # rootdir on NFS (install-time) + use_instroot=true # rootdir on NFS at install-time ;; *) perror "BOOT_TYPE should be newboot" @@ -322,7 +322,6 @@ cp $SV_DVDDIR/boot/multiboot /tftpboot/boot echon " menu.lst" -# apply_m4 -DINSTALL sv.grub-menu.m4 > /tftpboot/boot/grub/menu.lst apply_m4 -DINSTUPDATE1 sv.grub-menu.m4 > /tftpboot/boot/grub/menu.lst echo " done" @@ -330,38 +329,11 @@ prepare_tftpboot() { case "$BOOT_TYPE" in - bootbin) prepare_tftpboot_bootbin ;; - newboot) prepare_tftpboot_newboot ;; + newboot) prepare_tftpboot_newboot ;; esac } #---------------------------------------------------------------------- -check_tftpboot_bootbin() { - echon "Checking TFTP accessibility... " - tftp=`typep tftp` - #tftp=/bin/true # debug - if [ -x "$tftp" ]; then - echo "get /nbp.SUNW.i86pc .v.nbp" | $tftp $SV_NAME > /dev/null 2>&1 - echo "get /SUNW.i86pc .v.inetboot" | $tftp $SV_NAME > /dev/null 2>&1 - - warn_tftp=false - diff .v.nbp /tftpboot/nbp.SUNW.i86pc > /dev/null 2>&1 || warn_tftp=true - diff .v.inetboot /tftpboot/SUNW.i86pc > /dev/null 2>&1 || warn_tftp=true - - if $warn_tftp; then - echo "failed" - echo $asserta - echo "Failed to retrieve file(s) from TFTP server." - echo "Probably TFTP server is not running." - echo $assertz - else - echo "done" - fi - else - echo "skipped, 'tftp' command missing" - fi -} - check_tftpboot_newboot() { echon "Checking TFTP accessibility... " tftp=`typep tftp` @@ -391,28 +363,19 @@ check_tftpboot() { case "$BOOT_TYPE" in bootbin) check_tftpboot_bootbin ;; -# newboot) check_tftpboot_newboot ;; esac } #---------------------------------------------------------------------- -generate_dhcpd_conf_bootbin() { +generate_dhcpd_conf_newboot() { echon "Generating DHCP configuration file... " apply_m4 -DCONFIG_INSTALLATION sv.dhcpd.conf.m4 > sv.dhcpd-inst.conf apply_m4 -DCONFIG_FINAL_ENV sv.dhcpd.conf.m4 > sv.dhcpd-fin.conf echo "done" } -generate_dhcpd_conf_newboot() { - echon "Generating DHCP configuration file... " - apply_m4 -DCONFIG_INSTALLATION so.dhcpd.conf.m4 > sv.dhcpd-inst.conf - apply_m4 -DCONFIG_FINAL_ENV so.dhcpd.conf.m4 > sv.dhcpd-fin.conf - echo "done" -} - start_dhcpd() { case "$BOOT_TYPE" in - bootbin) generate_dhcpd_conf_bootbin ;; newboot) generate_dhcpd_conf_newboot ;; esac @@ -461,7 +424,7 @@ echo "timeserver=$CL_SYSIDCFG_TIMESERVER" if [ -f "$CL_SYSIDCFG_X" ]; then cat "$CL_SYSIDCFG_X"; fi ) > $SV_DVDDIR/fake-jumpstart/sysidcfg - echo "終了" + echo "done" fi } @@ -672,14 +635,11 @@ mkdir $trandir/pkgs.done case "$BOOT_TYPE" in - bootbin|newboot) + newboot) # client can access directly + (cd $SV_INSTROOT && rm -rf $trandir) cp -r $trandir $SV_INSTROOT/$trandir ;; -# newboot) -# # client have to use TFTP to get it -# tar cf /tftpboot/trandir.tar $trandir -# ;; esac echo "done" @@ -714,6 +674,7 @@ SunOS) DEVICE=`lofiadm -a $SV_DVDDIR/miniroot.extd` mount -F ufs -r $DEVICE $SV_DVDDIR/pnt + # XXX TODO lofiadm -d ;; Linux) mount -o loop -t ufs $SV_DVDDIR/miniroot.extd $SV_DVDDIR/pnt From card_captor @ users.sourceforge.jp Sun Feb 26 04:27:37 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 04:27:37 +0900 Subject: [dl-x86solaris-devel 30] CVS update: dlkit2 Message-ID: <20060225192737.BE5D72AC079@users.sourceforge.jp> Index: dlkit2/TODO diff -u dlkit2/TODO:1.2 dlkit2/TODO:1.3 --- dlkit2/TODO:1.2 Sat Feb 25 14:55:34 2006 +++ dlkit2/TODO Sun Feb 26 04:27:37 2006 @@ -19,3 +19,12 @@ 結構いい加減に命名した変数ばかりなので、なんかしっくりこない * 母艦のOS依存性除去 +** sv.setupでminirootを抜き出しているところ +Solaris ufsが読み出せないといけないので、 +今のところSolaris, Linux以外の母艦に対応していない。 + +** create_ramdiskスクリプト +boot_archiveを作る際に使うcreate_ramdiskスクリプトは、 +本当にどのOSでも動作するのだろうか? +prtconfコマンドとlockfsコマンドのダミーを作れば +Linuxでは動作するようだ。 From card_captor @ users.sourceforge.net Sun Feb 26 04:51:50 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sun, 26 Feb 2006 04:51:50 +0900 Subject: [dl-x86solaris-devel 31] =?iso-2022-jp?b?GyRCSHM9Y0A1GyhCTklD?= =?iso-2022-jp?b?GyRCJCskaSROJVYhPCVIJEtALjh5JDckXiQ3JD8bKEI=?= Message-ID: <20060226045150.00001307@nanoha> kswです。 非純正NIC(VIA Rhine II)からのブートに成功しました。 rhドライバを使っています。 $SV_INSTROOT/etc/systemにforceload(ドライバの強制ロード)指定が 必要なようです。 おそらく$SV_FIN_ROOT/etc/systemにも同様の指定が必要でしょう。 今は手作業で変えていますが、あとでスクリプトに組み込んでおきます。 --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.net Sun Feb 26 04:56:22 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sun, 26 Feb 2006 04:56:22 +0900 Subject: [dl-x86solaris-devel 32] =?iso-2022-jp?b?c3Yuc2V0dXAbJEIkTiQqGyhC?= =?iso-2022-jp?b?GyRCJDckaiROGyhCZ3JlcA==?= Message-ID: <20060226045622.00003837@nanoha> kswです。 teelimeさん、ちょっと分からないところがあるので教えてください。 sv.setupのおしり付近に if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then ( echo "$SV_PKGDIR"|grep -v "/Tools/Boot">/dev/null ) && create_mininfsroot fi と if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then ( echo "$SV_PKGDIR"|grep -v "/Tools/Boot">/dev/null ) && create_boot_archive という処理があるんですが、 ここで$SV_PKGDIRをgrepで調べてるのはなぜなんでしょうか? --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.net Sun Feb 26 13:48:48 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sun, 26 Feb 2006 13:48:48 +0900 Subject: [dl-x86solaris-devel 33] =?iso-2022-jp?b?UmU6IHN2LnNldHVw?= =?iso-2022-jp?b?GyRCJE4kKiQ3JGokThsoQmdyZXA=?= In-Reply-To: <20060226012455.98958.qmail@mail.goo.ne.jp> References: <20060226012455.98958.qmail@mail.goo.ne.jp> Message-ID: <20060226134848.00004e6e@nanoha> kswです。 # DMで来ましたがMLへの返信でいいですよね NFS minirootを使わない場合を考慮したということですが、 その前に BOOT_TYPE=newboot であることをチェックしてますから、 さらにSV_INSTROOTをテストする必要はないのではないでしょうか? On 26 Feb 2006 10:24:55 +0900 wrote: > teelimeです。 > > これは、全くの当座しのぎのコードです。 > > 私の追加した関数が2ndarybootでインスコした場合に悪影響を > 及ばさないようにと意図したものです。 > > この部分について2点お知らせすることがあります。 > > 1.今気づいたのですが、SV_PKGDIRではなくSV_INSTROOTを指定 > したつもりでした。 > > 2. > ・mini-nfsrootを使わない場合にこの関数を呼びたくない。 > ・mini-nfsrootを使わない場合はSV_INSTROOTに"Tools/Boot"が > 含まれているだろうから、こう書いておけば、2ndarybootの > 場合への悪影響を”とりあえず”避けられる。 > > 恒久的には使えないコードです。 > > お手数をかけました。 > 以上 > ----- Original Message ----- > 送信者: SAWADA Keiji > 宛先: dl-x86solaris-devel @ lists.sourceforge.jp > 日付:Sunday, February, 26, 2006, 04:56 AM > 件名: [dl-x86solaris-devel 32] sv.setupのおしりのgrep > > > > > > > kswです。 > > > > teelimeさん、ちょっと分からないところがあるので教えてください。 > > > > sv.setupのおしり付近に > > > > if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then > > ( echo "$SV_PKGDIR"|grep -v "/Tools/Boot">/dev/null ) && create_mininfsroot > > fi > > > > と > > > > if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then > > ( echo "$SV_PKGDIR"|grep -v "/Tools/Boot">/dev/null ) && create_boot_archive > > > > という処理があるんですが、 > > ここで$SV_PKGDIRをgrepで調べてるのはなぜなんでしょうか? > > > > --- > > ksw / SAWADA Keiji > > > > _______________________________________________ > > dl-x86solaris-devel mailing list > > dl-x86solaris-devel @ lists.sourceforge.jp > > http://lists.sourceforge.jp/mailman/listinfo/dl-x86solaris-devel > > --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.net Sun Feb 26 13:50:40 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sun, 26 Feb 2006 13:50:40 +0900 Subject: [dl-x86solaris-devel 34] =?iso-2022-jp?b?Y2wuZGlza2xlc3MtaW5zdGFs?= =?iso-2022-jp?b?bGVyGyRCJTklLyVqJVclSCROGyhCbGxvY2sbJEIlKiVXJTclZyVzGyhC?= Message-ID: <20060226135040.00004829@nanoha> kswです。 cl.diskless-installerスクリプトのmount_fin_root関数で質問です。 クライアント側で/a(実体はSV_FIN_ROOT)をマウントする際、 llockオプションが(CL_MOUNT_OPTIONに含まれない限りは) 指定されないよう変更されているんですが、これはどういう理由なのでしょうか? llockはどこにも載ってないオプションなんでちょっと気持ち悪いですが、 純正インストーラ(suninstall)でもつけているようですので、 特に悪い副作用がなければ、常に指定されるようにしておいたほうが 面倒でないと思うのですがいかがでしょう? --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.jp Sun Feb 26 15:23:27 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 15:23:27 +0900 Subject: [dl-x86solaris-devel 35] CVS update: dlkit2 Message-ID: <20060226062327.E184F2AC08D@users.sourceforge.jp> Index: dlkit2/Makefile diff -u dlkit2/Makefile:1.2 dlkit2/Makefile:1.3 --- dlkit2/Makefile:1.2 Fri Feb 24 01:21:39 2006 +++ dlkit2/Makefile Sun Feb 26 15:23:27 2006 @@ -37,10 +37,6 @@ #---------------------------------------------------------------------- # maintainer's private targets -site-install: - cp config.site config.in - sh ./sv.setup - done: cp site_cfg/useradd.sh FIN_ROOT/ -/usr/local/sbin/wakeup-on-lan 192.168.1.255 00:40:63:d3:11:b5 @@ -48,7 +44,6 @@ cleanroot: (cd FIN_ROOT/..; rm -r root; mkdir root) rm -f DVDDIR FIN_ROOT INSTROOT - rm -f /export/swaps/swapfile chroot: env LANG= LC_MESSAGES= chroot FIN_ROOT /bin/tcsh From card_captor @ users.sourceforge.jp Sun Feb 26 15:27:35 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 15:27:35 +0900 Subject: [dl-x86solaris-devel 36] CVS update: dlkit2 Message-ID: <20060226062735.DFBDF2AC03A@users.sourceforge.jp> Index: dlkit2/Makefile diff -u dlkit2/Makefile:1.3 dlkit2/Makefile:1.4 --- dlkit2/Makefile:1.3 Sun Feb 26 15:23:27 2006 +++ dlkit2/Makefile Sun Feb 26 15:27:35 2006 @@ -16,7 +16,7 @@ rm -f sv.dhcpd-*.conf so.dhcpd.conf rm -f sv.grub-*.menu rm -f cm.non-std-driver.* diskless-kit-v.texi diskless-kit.wiki - rm -f cl.pkglist cl.boot.rc + rm -f cl.pkglist if [ -d cl.etc ]; then rm -r cl.etc; fi rm -f *.~*.~ rm -rf diskless-kit-config Index: dlkit2/cl.diskless-installer diff -u dlkit2/cl.diskless-installer:1.3 dlkit2/cl.diskless-installer:1.4 --- dlkit2/cl.diskless-installer:1.3 Sun Feb 26 01:57:58 2006 +++ dlkit2/cl.diskless-installer Sun Feb 26 15:27:35 2006 @@ -149,11 +149,6 @@ echo "set rb_args '$CL_FIN_BOOTFLAG'" \ > $CL_ROOT/boot/solaris/bootargs.rc fi - - if [ -f $trandir/boot/solaris/boot.rc ]; then - backup_distfile $CL_ROOT/boot/solaris/boot.rc - cp $trandir/boot/solaris/boot.rc $CL_ROOT/boot/solaris/boot.rc - fi } config_autofs() { Index: dlkit2/sv.offline-installer diff -u dlkit2/sv.offline-installer:1.1.1.1 dlkit2/sv.offline-installer:1.2 --- dlkit2/sv.offline-installer:1.1.1.1 Fri Feb 24 01:15:30 2006 +++ dlkit2/sv.offline-installer Sun Feb 26 15:27:35 2006 @@ -134,11 +134,6 @@ echo "set rb_args '$CL_FIN_BOOTFLAG'" \ > $CL_ROOT/boot/solaris/bootargs.rc fi - - if [ -f $trandir/boot/solaris/boot.rc ]; then - backup_distfile $CL_ROOT/boot/solaris/boot.rc - cp $trandir/boot/solaris/boot.rc $CL_ROOT/boot/solaris/boot.rc - fi } config_autofs() { Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.5 dlkit2/sv.setup:1.6 --- dlkit2/sv.setup:1.5 Sun Feb 26 04:23:41 2006 +++ dlkit2/sv.setup Sun Feb 26 15:27:35 2006 @@ -362,7 +362,7 @@ check_tftpboot() { case "$BOOT_TYPE" in - bootbin) check_tftpboot_bootbin ;; + newboot) check_tftpboot_newboot ;; esac } @@ -597,30 +597,6 @@ '*ldap*') echo 'ldap' > $trandir/nsswitch.templ ;; esac - # /boot/solaris/boot.rc - if [ "x$BOOT_TYPE" = xbootbin ]; then - if [ "x$CL_FIN_BOOT_RC" = "x*always_reconfigure*" ]; then - cp $SV_INSTROOT/boot/solaris/boot.rc .v.boot.rc - patch -p0 > /dev/null 2>&1 <<'EOF' ---- .v.boot.rc.ORG Sat Jul 9 09:20:02 2005 -+++ .v.boot.rc Sat Jul 9 09:20:12 2005 -@@ -25,6 +25,7 @@ - - if .streq ( ${beenhere}X , X ) - source /boot/solaris/bootenv.rc -+ set rb_args '-r' # always reconfigure - source /boot/solaris/bootargs.rc - set beenhere true - endif -EOF - mkdir -p $trandir/boot/solaris - mv .v.boot.rc $trandir/boot/solaris - elif [ ! -z "$CL_FIN_BOOT_RC" ]; then - mkdir -p $trandir/boot/solaris - cp "$CL_FIN_BOOT_RC" $trandir/boot/solaris - fi - fi - echo " done" } @@ -629,7 +605,7 @@ echon "Transferring install scripts for client... " required_files="config.in cl.diskless-installer cl.disklessify cl.pkgadd" - optional_files="cl.nsswitch.templ cl.boot.rc" + optional_files="cl.nsswitch.templ" cp $required_files $trandir mkdir $trandir/pkgs.done From card_captor @ users.sourceforge.jp Sun Feb 26 15:27:36 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 15:27:36 +0900 Subject: [dl-x86solaris-devel 37] CVS update: dlkit2/docs Message-ID: <20060226062736.102B62AC08D@users.sourceforge.jp> Index: dlkit2/docs/diskless-kit-config.texi diff -u dlkit2/docs/diskless-kit-config.texi:1.2 dlkit2/docs/diskless-kit-config.texi:1.3 --- dlkit2/docs/diskless-kit-config.texi:1.2 Sun Feb 26 01:13:11 2006 +++ dlkit2/docs/diskless-kit-config.texi Sun Feb 26 15:27:35 2006 @@ -10,7 +10,7 @@ @include diskless-kit-version.texi -Last Update: $Date: 2006/02/25 16:13:11 $ +Last Update: $Date: 2006/02/26 06:27:35 $ @end copying @c Type C-u C-c C-u C-a @@ -791,16 +791,6 @@ 起動時のカーネル選択画面をカスタマイズしたい場合などに設定する必要があります。 設定したくなければ""を指定します。 - @ subsection @var{CL_FIN_BOOT_RC} -インストール後のboot.rcファイル(@file{/boot/solaris/boot.rc})を指定します。 -ブートシーケンスを変えたり、 -ブートフラグを恒久的に指定する場合にサイト固有の設定を行なうことができます。 - @ var{BOOT_TYPE}が@code{bootbin}の時だけ有効です。 -boot.rcファイルを指定する代わりに@code{*always_reconfigure*}を指定すると、 -デフォルトのブートシーケンスを用い、 -かつ常に再構成ブートを行なうようなboot.rcを設定したことになります。 -設定したくなければ""を指定します。 - @subsection @var{CL_FIN_BOOTFLAG} インストール後の最初のブート時のブートフラグを指定します。 設定したくなければ""を指定します。 From card_captor @ users.sourceforge.jp Sun Feb 26 15:35:38 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 15:35:38 +0900 Subject: [dl-x86solaris-devel 38] CVS update: dlkit2 Message-ID: <20060226063538.42F3A2AC0B4@users.sourceforge.jp> Index: dlkit2/cl.diskless-bootrc diff -u dlkit2/cl.diskless-bootrc:1.1.1.1 dlkit2/cl.diskless-bootrc:removed --- dlkit2/cl.diskless-bootrc:1.1.1.1 Fri Feb 24 01:15:29 2006 +++ dlkit2/cl.diskless-bootrc Sun Feb 26 15:35:38 2006 @@ -1,36 +0,0 @@ - -echo ' - = = - = = = ====== = ==== ==== = = ====== ===== ==== - = = = = = = = = = == == = = = = - = = = ===== = = = = = == = ===== = = = - = = = = = = = = = = = = = = - = = = = = = = = = = = = = = = - == == ====== ====== ==== ==== = = ====== = ==== - - ##### - # # #### # ## ##### # #### - # # # # # # # # # # - ##### # # # # # # # # #### - # # # # ###### ##### # # - # # # # # # # # # # # # - ##### #### ###### # # # # # #### -' - -echo "<< Boot Parameters >>" - -getprop boot-path bootpath -echo "boot-path: ${bootpath}" - -getprop boot-args oldargs -echo "boot-args(old): ${oldargs}" - -echo "boot-args(new): ${bootargs}" -setprop boot-args "$bootargs" - -set bootfile "kernel/unix" -echo "boot-file: ${bootfile}" - -echo "" -echo "<< Starting Solaris Kernel >>" -run $bootfile Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.6 dlkit2/sv.setup:1.7 --- dlkit2/sv.setup:1.6 Sun Feb 26 15:27:35 2006 +++ dlkit2/sv.setup Sun Feb 26 15:35:38 2006 @@ -473,25 +473,19 @@ echon ", boot scripts" # boot script and install script for install session backup_distfile $SV_INSTROOT/sbin/install-setup - backup_distfile $SV_INSTROOT/etc/bootrc cp /dev/null $SV_INSTROOT/boot/solaris/bootargs.rc case "$INSTALL_TYPE" in disklessify) - (echo "set bootargs '-svr'" - cat cl.diskless-bootrc ) > $SV_INSTROOT/etc/bootrc cp -p cl.install-setup-disklessify $SV_INSTROOT/sbin/install-setup ;; netinstall) - cp $SV_INSTROOT/etc/bootrc.dist $SV_INSTROOT/etc/bootrc cp -p $SV_INSTROOT/sbin/install-setup.dist \ $SV_INSTROOT/sbin/install-setup ;; diskless) -# (echo "set bootargs '-v - nowin'" -# cat cl.diskless-bootrc) > $SV_INSTROOT/etc/bootrc cp -p cl.install-setup-diskless $SV_INSTROOT/sbin/install-setup ;; @@ -499,11 +493,6 @@ ;; esac - # use /etc/bootrc if user supplies it - if [ ! -z "$CL_INST_BOOTRC" ]; then - cp "$CL_INST_BOOTRC" $SV_INSTROOT/etc/bootrc - fi - echo '.' } From card_captor @ users.sourceforge.jp Sun Feb 26 15:35:38 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 15:35:38 +0900 Subject: [dl-x86solaris-devel 39] CVS update: dlkit2/docs Message-ID: <20060226063538.64F432AC0B5@users.sourceforge.jp> Index: dlkit2/docs/diskless-kit-config.texi diff -u dlkit2/docs/diskless-kit-config.texi:1.3 dlkit2/docs/diskless-kit-config.texi:1.4 --- dlkit2/docs/diskless-kit-config.texi:1.3 Sun Feb 26 15:27:35 2006 +++ dlkit2/docs/diskless-kit-config.texi Sun Feb 26 15:35:38 2006 @@ -10,7 +10,7 @@ @include diskless-kit-version.texi -Last Update: $Date: 2006/02/26 06:27:35 $ +Last Update: $Date: 2006/02/26 06:35:38 $ @end copying @c Type C-u C-c C-u C-a @@ -786,11 +786,6 @@ ホストIDを強制インストールする場合は、 SUNWmdbパッケージをインストールするようにしてください。 - @ subsection @var{CL_INST_BOOTRC} -インストール時のブートスクリプトファイル(@file{/etc/bootrc})を指定します。 -起動時のカーネル選択画面をカスタマイズしたい場合などに設定する必要があります。 -設定したくなければ""を指定します。 - @subsection @var{CL_FIN_BOOTFLAG} インストール後の最初のブート時のブートフラグを指定します。 設定したくなければ""を指定します。 From card_captor @ users.sourceforge.net Sun Feb 26 15:43:57 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Sun, 26 Feb 2006 15:43:57 +0900 Subject: [dl-x86solaris-devel 40] =?iso-2022-jp?b?UmU6IGNsLmRpc2tsZXNzLWlu?= =?iso-2022-jp?b?c3RhbGxlchskQiU5JS8laiVXJUgkThsoQmxsb2NrGyRCJSolVyU3GyhC?= =?iso-2022-jp?b?GyRCJWclcxsoQg==?= In-Reply-To: <20060226063243.40422.qmail@mail.goo.ne.jp> References: <20060226063243.40422.qmail@mail.goo.ne.jp> Message-ID: <20060226154357.00002e36@nanoha> kswです。 > おっしゃるとおり、 > 以前のように、llockはデフォルトでもいいと思っています。 > > 変更したのは、一応の提案に過ぎません。 > > 02/21 22:23に送信したメールの抜粋です。 > >・cl.diskless-installerのmount_fin_rootの変更はバグ修正ではありません。 > >単なる私からの提案です。llockがLinux鯖の場合のみ必要なのであれば、CL_MOUNT > >OPTIONに書くというルールでいいのではないかと... > > CL_MOUNT_OPTIONに書くルールだとvfstabにも記述されるので好都合 > というの理由もありました。 なるほど、了解しました。 vfstabへは、それを生成する*-installerスクリプトの中で 書き加えることにしましょう。 > 純正インストーラでもつけているんですか > それじゃ、ますますデフォルトの方がいいですね。 もともとllockオプションを見つけたのも、 純正インストーラ(suninstall)で見慣れないマウントオプションが ついていたのがきっかけでした。 -- ksw / SAWADA Keiji From card_captor @ users.sourceforge.jp Sun Feb 26 15:58:40 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 15:58:40 +0900 Subject: [dl-x86solaris-devel 41] CVS update: dlkit2 Message-ID: <20060226065840.A96562AC03A@users.sourceforge.jp> Index: dlkit2/.cvsignore diff -u dlkit2/.cvsignore:1.2 dlkit2/.cvsignore:1.3 --- dlkit2/.cvsignore:1.2 Sun Feb 26 03:37:27 2006 +++ dlkit2/.cvsignore Sun Feb 26 15:58:40 2006 @@ -2,3 +2,4 @@ site_* .v.* sv.*.conf +cl.trandir Index: dlkit2/cl.diskless-installer diff -u dlkit2/cl.diskless-installer:1.4 dlkit2/cl.diskless-installer:1.5 --- dlkit2/cl.diskless-installer:1.4 Sun Feb 26 15:27:35 2006 +++ dlkit2/cl.diskless-installer Sun Feb 26 15:58:40 2006 @@ -22,15 +22,18 @@ set -e if [ -z "$CL_MOUNT_OPTION" ]; then # llock = local lock only (undocumented) - mount -F nfs $SV_IPADDR:$SV_FIN_ROOT $CL_ROOT + mount -F nfs -o llock $SV_IPADDR:$SV_FIN_ROOT $CL_ROOT else - mount -F nfs -o $CL_MOUNT_OPTION $SV_IPADDR:$SV_FIN_ROOT $CL_ROOT + mount -F nfs -o llock,$CL_MOUNT_OPTION $SV_IPADDR:$SV_FIN_ROOT $CL_ROOT fi +} -mount -F nfs -o $CL_MOUNT_OPTION $SV_IPADDR:$SV_DVDDIR /cdrom - - - +mount_cdrom() { + echo "Mounting /cdrom on $SV_IPADDR:$SV_DVDDIR" + set +e + umount /cdrom > /dev/null 2>&1 + set -e + mount -F nfs -o $CL_MOUNT_OPTION $SV_IPADDR:$SV_DVDDIR /cdrom } install_pkgs() { @@ -116,14 +119,16 @@ mkdir -p $CL_ROOT/$CL_SWAPFILE if [ -z "$CL_MOUNT_OPTION" ]; then - option='-' + r_option="llock" + s_option="-" else - option=$CL_MOUNT_OPTION + r_option="llock,$CL_MOUNT_OPTION" + s_option="$CL_MOUNT_OPTION" fi (cat $CL_ROOT/etc/vfstab.dist - echo "$SV_NAME:$SV_FIN_ROOT - / nfs - no $option" - echo "$SV_NAME:$SV_SWAPFILE - $CL_SWAPFILE nfs - no $option" + echo "$SV_NAME:$SV_FIN_ROOT - / nfs - no $r_option" + echo "$SV_NAME:$SV_SWAPFILE - $CL_SWAPFILE nfs - no $s_option" echo "$CL_SWAPFILE - - swap - no -" ) > $CL_ROOT/etc/vfstab } @@ -234,6 +239,7 @@ case "$1" in -nopkg) mount_fin_root + mount_cdrom install_non_std_driver config_etc config_vfstab @@ -244,6 +250,7 @@ *) mount_fin_root + mount_cdrom install_pkgs install_non_std_driver config_etc Index: dlkit2/sv.offline-installer diff -u dlkit2/sv.offline-installer:1.2 dlkit2/sv.offline-installer:1.3 --- dlkit2/sv.offline-installer:1.2 Sun Feb 26 15:27:35 2006 +++ dlkit2/sv.offline-installer Sun Feb 26 15:58:40 2006 @@ -108,14 +108,16 @@ mkdir -p $CL_ROOT/$CL_SWAPFILE if [ -z "$CL_MOUNT_OPTION" ]; then - option='-' + r_option="llock" + s_option="-" else - option=$CL_MOUNT_OPTION + r_option="llock,$CL_MOUNT_OPTION" + s_option="$CL_MOUNT_OPTION" fi (cat $CL_ROOT/etc/vfstab.dist - echo "$SV_NAME:$SV_FIN_ROOT - / nfs - no $option" - echo "$SV_NAME:$SV_SWAPFILE - $CL_SWAPFILE nfs - no $option" + echo "$SV_NAME:$SV_FIN_ROOT - / nfs - no $r_option" + echo "$SV_NAME:$SV_SWAPFILE - $CL_SWAPFILE nfs - no $s_option" echo "$CL_SWAPFILE - - swap - no -" ) > $CL_ROOT/etc/vfstab } From card_captor @ users.sourceforge.jp Sun Feb 26 23:44:28 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 23:44:28 +0900 Subject: [dl-x86solaris-devel 42] CVS update: dlkit2 Message-ID: <20060226144428.85AAC2AC041@users.sourceforge.jp> Index: dlkit2/sv.non-std-driver-setup diff -u dlkit2/sv.non-std-driver-setup:1.4 dlkit2/sv.non-std-driver-setup:1.5 --- dlkit2/sv.non-std-driver-setup:1.4 Sun Feb 26 04:16:54 2006 +++ dlkit2/sv.non-std-driver-setup Sun Feb 26 23:44:28 2006 @@ -1,4 +1,7 @@ #!/bin/sh +# -*- shell-script -*- +# sv.non-std-driver-setup - create script to install third party driver. +# # Usage: sv.non-std-driver-setup NAME=${1:?} @@ -52,6 +55,16 @@ ) > $root/etc/name_to_major } +add_etc_system() { + echo "$NAME: Configuring etc/system" + backup_distfile $root/etc/system + (cat $root/etc/system.dist + echo "" + echo "* Added by dl-x86solaris kit" + echo "forceload: drv/$NAME" + ) > $root/etc/system +} + add_devicedb_master() { echo "$NAME: Configuring boot/solaris/devicedb/master" backup_distfile $root/boot/solaris/devicedb/master @@ -64,28 +77,32 @@ add_driver_aliases add_minor_perm add_name_to_major + add_etc_system add_devicedb_master } case "$1" in server) - # assuming $CWD/config.in exists + # assuming $CWD/config.in exists. ran at server-side. + # modifies install-time root filesystem. . ./config.in if [ "x$BOOT_TYPE" = xnewboot ]; then targetdir=$SV_INSTROOT/kernel/drv root=$SV_INSTROOT else - targetdir=$SV_INSTROOT/fake - root=$SV_INSTROOT + echo "ERROR: BOOT_TYPE should be 'newboot'" fi ;; offline) - # assuming $CWD/config.in exists + # assuming $CWD/config.in exists. ran at server-side. + # modifies postinstall-time root filesystem. . ./config.in targetdir=$SV_FIN_ROOT/kernel/drv root=$SV_FIN_ROOT ;; client) + # ran at client-side. + # modifies postinstall-time root filesystem. targetdir=/a/kernel/drv root=/a ;; @@ -94,12 +111,32 @@ ;; esac -for ext in '' '.amd64' '.conf'; do - if [ -f ${NAME}${ext} ]; then - cp_drv ${NAME}${ext} $targetdir/${NAME}${ext} +# installs driver executables +copied=n +for srcdir in . site_drv; do + if [ -f ${srcdir}/${NAME} ]; then + cp_drv ${srcdir}/${NAME} ${targetdir}/${NAME} + copied=y${copied} + fi + if [ -f ${srcdir}/${NAME}.i386 ]; then + cp_drv ${srcdir}/${NAME}.i386 ${targetdir}/${NAME} + copied=y${copied} + fi + if [ -f ${srcdir}/${NAME}.amd64 -a -d ${targetdir}/amd64 ]; then + cp_drv ${srcdir}/${NAME}.amd64 ${targetdir}/amd64/${NAME} + copied=y${copied} + fi + if [ -f ${srcdir}/${NAME}.conf ]; then + cp_drv ${srcdir}/${NAME}.conf ${targetdir}/${NAME}.conf fi done +if [ $copied = n ]; then + echo "ERROR: ${NAME} driver not copied" +fi + +# update driver registration configuration fake_add_drv + EOF } Index: dlkit2/sv.get-non-std-drivers diff -u /dev/null dlkit2/sv.get-non-std-drivers:1.1 --- /dev/null Sun Feb 26 23:44:28 2006 +++ dlkit2/sv.get-non-std-drivers Sun Feb 26 23:44:28 2006 @@ -0,0 +1,51 @@ +#!/bin/sh +# -*- shell-script -*- +# sv.get-non-std-drivers - get third party drivers + +WGET=wget +mkdir -p site_drv +cd site_drv + +#---------------------------------------------------------------------- + +xlink() { + # find a file specified by given glob, and make link to it + LINK=${1:?}; FILE=${2:?} + if [ -f "$FILE" ]; then + echo " Found $NAME driver at $FILE ($LINK)" + rm -f "$LINK" + ln "$FILE" "$LINK" + else + echo "ERROR: link=$LINK file=$FILE" + fi +} + +#---------------------------------------------------------------------- +MURAYAMA_URL=homepage2.nifty.com/mrym3/taiyodo + +murayama_extract() { + # usage: murayama_extract NAME MAJOR_VERSION + NAME=${1:?}; MAJ=${2:?} + TGZ="$MURAYAMA_URL/$NAME-$MAJ*.tar.gz" + echo "Extracting $NAME driver archive" + gzip -dc $TGZ | tar xf - + xlink $NAME.i386 $NAME-$MAJ*/i386/$NAME + xlink $NAME.amd64 $NAME-$MAJ*/amd64/$NAME +} + +echo "Fetching archives from http://$MURAYAMA_URL/eng/ ..." +$WGET -q -m -l 1 http://$MURAYAMA_URL/eng/ +murayama_extract alta 1 +murayama_extract bcf 0 +murayama_extract gani 0 +murayama_extract ife 0 +murayama_extract nfo 0 +murayama_extract ni 0 +murayama_extract rf 1 +murayama_extract rh 1 +#murayama_extract rh 2 +murayama_extract sfe 1 +murayama_extract tne 0 +murayama_extract tu 0 +murayama_extract vel 0 + From card_captor @ users.sourceforge.jp Sun Feb 26 23:44:28 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Sun, 26 Feb 2006 23:44:28 +0900 Subject: [dl-x86solaris-devel 43] CVS update: dlkit2/docs Message-ID: <20060226144428.B2AED2AC046@users.sourceforge.jp> Index: dlkit2/docs/diskless-kit-config.texi diff -u dlkit2/docs/diskless-kit-config.texi:1.4 dlkit2/docs/diskless-kit-config.texi:1.5 --- dlkit2/docs/diskless-kit-config.texi:1.4 Sun Feb 26 15:35:38 2006 +++ dlkit2/docs/diskless-kit-config.texi Sun Feb 26 23:44:28 2006 @@ -10,7 +10,7 @@ @include diskless-kit-version.texi -Last Update: $Date: 2006/02/26 06:35:38 $ +Last Update: $Date: 2006/02/26 14:44:28 $ @end copying @c Type C-u C-c C-u C-a @@ -758,13 +758,18 @@ インストールする非標準ドライバを指定します。 必要なければ""を指定します。 想定しているのは@uref{http://homepage2.nifty.com/mrym3/taiyodo/eng/}の -alta, bcf, gani, ife, nfe, ni, rf, rh, sfe, tne, tu, velドライバです。 +alta, bcf, gani, ife, nfo, ni, rf, rh, sfe, tne, tu, velドライバです。 -ドライバ本体はあらかじめ@file{config.in}と同じディレクトリに -置いておかなければなりません。 -例えばrhドライバの場合、i386用ドライバを@file{rh}、 -amd64用ドライバを@file{rh.amd64}、 -ドライバ設定ファイルを@file{rh.conf}という名前で用意しておいてください。 +ドライバ本体はあらかじめ@file{config.in}と同じディレクトリか、 +site_drvディレクトリに置いておかなければなりません。 +例えばrhドライバの場合、i386用ドライバ使う場合は@file{rh.i386}、 +amd64用ドライバを使う場合は@file{rh.amd64}、 +ドライバ設定ファイルを使う場合は@file{rh.conf}という名前で +それぞれ用意しておいてください。 + +sv.get-non-std-driversスクリプトを実行すると、 +上記サイトからのダウンロードと、 +ドライバファイルのsite_drvへの配置を行ないます。 @subsection @var{CL_HOSTID} @var{INSTALL_TYPE}が@code{diskless}か@code{offline}の場合、 From teelime @ users.sourceforge.jp Mon Feb 27 00:04:19 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 00:04:19 +0900 Subject: [dl-x86solaris-devel 44] CVS update: dlkit2/docs Message-ID: <20060226150419.1CEEC2AC018@users.sourceforge.jp> Index: dlkit2/docs/.cvsignore diff -u /dev/null dlkit2/docs/.cvsignore:1.1 --- /dev/null Mon Feb 27 00:04:19 2006 +++ dlkit2/docs/.cvsignore Mon Feb 27 00:04:18 2006 @@ -0,0 +1,3 @@ +diskless-kit-config.html +diskless-kit-running.html +diskless-kit-version.texi From teelime @ users.sourceforge.jp Mon Feb 27 00:07:56 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 00:07:56 +0900 Subject: [dl-x86solaris-devel 45] CVS update: dlkit2 Message-ID: <20060226150756.261B92AC018@users.sourceforge.jp> Index: dlkit2/Makefile diff -u dlkit2/Makefile:1.4 dlkit2/Makefile:1.5 --- dlkit2/Makefile:1.4 Sun Feb 26 15:27:35 2006 +++ dlkit2/Makefile Mon Feb 27 00:07:56 2006 @@ -6,10 +6,10 @@ #---------------------------------------------------------------------- # package management -doc: - echo "Version $(VERSION)" > diskless-kit-v.texi - makeinfo --html diskless-kit.texi - sh texi2pukiwiki.sh < diskless-kit.texi > diskless-kit.wiki +#doc: +# echo "Version $(VERSION)" > diskless-kit-v.texi +# makeinfo --html diskless-kit.texi +# sh texi2pukiwiki.sh < diskless-kit.texi > diskless-kit.wiki clean: rm -f .v.* From teelime @ users.sourceforge.jp Mon Feb 27 00:29:01 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 00:29:01 +0900 Subject: [dl-x86solaris-devel 46] CVS update: dlkit2 Message-ID: <20060226152901.C95CE2AC018@users.sourceforge.jp> Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.7 dlkit2/sv.setup:1.8 --- dlkit2/sv.setup:1.7 Sun Feb 26 15:35:38 2006 +++ dlkit2/sv.setup Mon Feb 27 00:29:01 2006 @@ -629,29 +629,29 @@ OSTYPE=`uname -s` if [ ! -d $SV_INSTROOT ]; then - rm -rf $SV_DVDDIR/pnt - mkdir $SV_DVDDIR/pnt + tempdir=/tmp/tmp.$$ + rm -rf $tempdir + mkdir $tempdir + mkdir $tempdir/pnt mkdir $SV_INSTROOT - rm -rf $SV_DVDDIR/miniroot.extd echon "Extracting original miniroot-image to $SV_INSTROOT ..." - gzip -dc $SV_DVDDIR/boot/x86.miniroot > $SV_DVDDIR/miniroot.extd + gzip -dc $SV_DVDDIR/boot/x86.miniroot > $tempdir/miniroot.extd case "$OSTYPE" in SunOS) - DEVICE=`lofiadm -a $SV_DVDDIR/miniroot.extd` - mount -F ufs -r $DEVICE $SV_DVDDIR/pnt + DEVICE=`lofiadm -a $tempdir/miniroot.extd` + mount -F ufs -r $DEVICE $tempdir/pnt # XXX TODO lofiadm -d ;; Linux) - mount -o loop -t ufs $SV_DVDDIR/miniroot.extd $SV_DVDDIR/pnt + mount -o loop -t ufs $tempdir/miniroot.extd $tempdir/pnt ;; *) echo "Not inplemented yet" ;; esac - (cd $SV_DVDDIR/pnt; tar cpf - .)|(cd $SV_INSTROOT; tar xpf -) - umount $SV_DVDDIR/pnt - rm -rf $SV_DVDDIR/pnt - rm -rf $SV_DVDDIR/miniroot.extd + (cd $tempdir/pnt; tar cpf - .)|(cd $SV_INSTROOT; tar xpf -) + umount $tempdir/pnt + rm -rf $tempdir echo "done" fi From teelime @ users.sourceforge.jp Mon Feb 27 00:39:10 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 00:39:10 +0900 Subject: [dl-x86solaris-devel 47] CVS update: dlkit2 Message-ID: <20060226153910.8C9982AC018@users.sourceforge.jp> Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.8 dlkit2/sv.setup:1.9 --- dlkit2/sv.setup:1.8 Mon Feb 27 00:29:01 2006 +++ dlkit2/sv.setup Mon Feb 27 00:39:10 2006 @@ -336,7 +336,9 @@ #---------------------------------------------------------------------- check_tftpboot_newboot() { echon "Checking TFTP accessibility... " + set +e tftp=`typep tftp` + set -e #tftp=/bin/true # debug if [ -x "$tftp" ]; then echo "get /boot/grub/pxegrub .v.pxegrub" | $tftp $SV_NAME > /dev/null 2>&1 From teelime @ mail.goo.ne.jp Mon Feb 27 01:05:31 2006 From: teelime @ mail.goo.ne.jp (teelime @ mail.goo.ne.jp) Date: 27 Feb 2006 01:05:31 +0900 Subject: [dl-x86solaris-devel 48] =?iso-2022-jp?b?VE9ETxskQiRyRkkkcyRHGyhC?= =?iso-2022-jp?b?GyRCISdCPhsoQk9TGyRCPmUkRxsoQmJvb3RfYXJjaGl2ZRskQjpuGyhC?= =?iso-2022-jp?b?GyRCQC4kTk1XJEs0WCQ3JEYbKEI=?= Message-ID: <20060226160531.60760.qmail@mail.goo.ne.jp> teelimeです。 確か、 create_ramdiskを走らせてboot_archiveを 再作成することは、dlkit2にとって”絶対的な”必要条件では なかったかと思います。 (先日の実験によると) x86.minirootをboot_archiveの代用としてインスコを行うことは 曲がりなりには可能だったと思います。 オリジナルのx86.minirootをboot_archiveの代用として 使うと、rtc_configが切れたリンクなので、インストーラ中の rtcコマンドを使うところでWarningが出ます。 早急にクライアント側で作成したboot_archiveで差し替える 必要があるでしょう。(逆に言うと、今インスコ前に作成して いるboot_archiveは、キーボードとかTIMEZONEを変えない限り、 そのまま使い続けてもいい) でも、どうせ、ufsが読めないといけないんだから やはり対応OSは限られるでしょうね。 以降、題意とは違う、余談、補足・連絡事項です。 (実験の最初の方で) x86.minirootをカストマイズしたものを作成して ラムディスク方式でインスコできないかと考えました。 で、 まず手始めに、x86.miniroot(ufs)をそのまま x86.miniroot(iso9660)に変換して普通インスコが 可能か試したんですが、 これが駄目だったんです。iso9660の中身は確かに 読まれているんですが、ルートとしてマウントすることが できなかったんです。 この結果、現状では、ラムディスクはufsじゃないと駄目なんだ と悟りました。 で、mini-nfsroot方式を試すことになりました。 From card_captor @ users.sourceforge.jp Mon Feb 27 02:21:21 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Mon, 27 Feb 2006 02:21:21 +0900 Subject: [dl-x86solaris-devel 49] CVS update: dlkit2 Message-ID: <20060226172121.2DE012AC041@users.sourceforge.jp> Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.9 dlkit2/sv.setup:1.10 --- dlkit2/sv.setup:1.9 Mon Feb 27 00:39:10 2006 +++ dlkit2/sv.setup Mon Feb 27 02:21:20 2006 @@ -1,5 +1,5 @@ #!/bin/sh -# sv.setup - setup script starter for server-side +# sv.setup - 1st-stage setup script for server-side # Copyright (c) 2005-2006 SAWADA Keiji # # This program is free software; you can redistribute it and/or modify @@ -64,9 +64,13 @@ ) | sh } +copy_hier() { + # copy_hier src dst + src=${1:?}; dst=${2:?} + (cd "$src" && tar cpf - .) | (cd "$dst" && tar xpf -) +} #---------------------------------------------------------------------- -# remove work files remove_work_files() { rm -f .v.* rm -rf $trandir @@ -336,9 +340,9 @@ #---------------------------------------------------------------------- check_tftpboot_newboot() { echon "Checking TFTP accessibility... " - set +e + set +e tftp=`typep tftp` - set -e + set -e #tftp=/bin/true # debug if [ -x "$tftp" ]; then echo "get /boot/grub/pxegrub .v.pxegrub" | $tftp $SV_NAME > /dev/null 2>&1 @@ -452,16 +456,30 @@ backup_distfile $SV_INSTROOT/etc/svc/repository.db rm -f $SV_INSTROOT/etc/svc/repository-boot* + echon ", rtc_config" + rm -f $SV_INSTROOT/etc/rtc_config + echo zone_info=Japan > $SV_INSTROOT/etc/rtc_config + echo zone_lag=-32400 >> $SV_INSTROOT/etc/rtc_config + + backup_distfile $SV_INSTROOT/.tmp_proto/root/boot/solaris/bootenv.rc + backup_distfile $SV_INSTROOT/boot/solaris/bootenv.rc + + echon ", bootenv.rc" + rm -f $SV_INSTROOT/boot/solaris/bootenv.rc + cp -p $SV_INSTROOT/.tmp_proto/root/boot/solaris/bootenv.rc \ + $SV_INSTROOT/boot/solaris/bootenv.rc + echon ", md.conf" + rm -f $SV_INSTROOT/kernel/drv/md.conf + cp -p $SV_INSTROOT/.tmp_proto/root/kernel/drv/md.conf \ + $SV_INSTROOT/kernel/drv/md.conf + echon ", sbpro.conf" + rm -f $SV_INSTROOT/kernel/drv/sbpro.conf + cp -p $SV_INSTROOT/platform/i86pc/kernel/drv/sbpro.conf \ + $SV_INSTROOT/kernel/drv/sbpro.conf + if [ ! -z "$CL_KEYBOARD" ]; then echon ", keyboard type[$CL_KEYBOARD]" - backup_distfile $SV_INSTROOT/.tmp_proto/root/boot/solaris/bootenv.rc - backup_distfile $SV_INSTROOT/boot/solaris/bootenv.rc - (cat $SV_INSTROOT/.tmp_proto/root/boot/solaris/bootenv.rc.dist - echo "setprop kbd-type '$CL_KEYBOARD'" - ) > $SV_INSTROOT/.tmp_proto/root/boot/solaris/bootenv.rc - (cat $SV_INSTROOT/boot/solaris/bootenv.rc.dist - echo "setprop kbd-type '$CL_KEYBOARD'" - ) > $SV_INSTROOT/boot/solaris/bootenv.rc + echo "setprop kbd-type '$CL_KEYBOARD'" >> $SV_INSTROOT/boot/solaris/bootenv.rc fi if [ ! -z "$CL_NFS_CLIENT_VERSION" ]; then @@ -628,84 +646,71 @@ #---------------------------------------------------------------------- create_mininfsroot() { -OSTYPE=`uname -s` + OSTYPE=`uname -s` -if [ ! -d $SV_INSTROOT ]; then + if [ ! -d $SV_INSTROOT ]; then tempdir=/tmp/tmp.$$ rm -rf $tempdir mkdir $tempdir mkdir $tempdir/pnt mkdir $SV_INSTROOT + echon "Extracting original miniroot-image to $SV_INSTROOT ..." gzip -dc $SV_DVDDIR/boot/x86.miniroot > $tempdir/miniroot.extd case "$OSTYPE" in - SunOS) + SunOS) DEVICE=`lofiadm -a $tempdir/miniroot.extd` mount -F ufs -r $DEVICE $tempdir/pnt - # XXX TODO lofiadm -d + copy_hier $tempdir/pnt $SV_INSTROOT + umount $tempdir/pnt + lofiadm -d $DEVICE ;; - Linux) + Linux) mount -o loop -t ufs $tempdir/miniroot.extd $tempdir/pnt + copy_hier $tempdir/pnt $SV_INSTROOT + umount $tempdir/pnt ;; - *) + *) echo "Not inplemented yet" ;; esac - (cd $tempdir/pnt; tar cpf - .)|(cd $SV_INSTROOT; tar xpf -) - umount $tempdir/pnt rm -rf $tempdir echo "done" -fi + fi -if [ ! -d $SV_INSTROOT/a ]; then + if [ ! -d $SV_INSTROOT/a ]; then perror "$SV_INSTROOT/a must be there" -fi - + fi -rsync -au $SV_INSTROOT/.tmp_proto/root/etc $SV_INSTROOT/tmp/root -echon "Creating default rtc_config for boot_archive..." -rm -f $SV_INSTROOT/etc/rtc_config -cat <$SV_INSTROOT/etc/rtc_config -zone_info=Japan -zone_lag=-32400 -EOF -echo "done" -rm -f $SV_INSTROOT/boot/solaris/bootenv.rc -cp -p $SV_INSTROOT/.tmp_proto/root/boot/solaris/bootenv.rc $SV_INSTROOT/boot/solaris/bootenv.rc -rm -f $SV_INSTROOT/kernel/drv/md.conf -cp -p $SV_INSTROOT/.tmp_proto/root/kernel/drv/md.conf $SV_INSTROOT/kernel/drv/md.conf -rm -f $SV_INSTROOT/kernel/drv/sbpro.conf -cp -p $SV_INSTROOT/platform/i86pc/kernel/drv/sbpro.conf $SV_INSTROOT/kernel/drv/sbpro.conf + copy_hier $SV_INSTROOT/.tmp_proto/root/etc $SV_INSTROOT/tmp/root/etc } #---------------------------------------------------------------------- create_boot_archive() { -OSTYPE=`uname -s` -tempdir=/tmp/tmp.$$ -case "$OSTYPE" in -SunOS) - ;; -Linux) - rm -rf $tempdir - mkdir $tempdir - pushd $tempdir - files="prtconf lockfs" - for file in $files; do - touch $file; chmod +x $file - done - popd - PATH=${PATH}:$tempdir - export PATH - ;; -*) - echo "Not inplemented yet" - ;; -esac -echo "[creating $SV_PXEBOOTDIR/$BOOT_ARCHIVE_FILE ...]" -${SUN_SCRIPT} ${ALT_ROOT} -rm -rf $tempdir -cp -pf ${ALT_ROOT}/${BOOT_ARCHIVE_SRC} $SV_PXEBOOTDIR/$BOOT_ARCHIVE_FILE -echo "done" + OSTYPE=`uname -s` + tempdir=/tmp/tmp.$$ + case "$OSTYPE" in + SunOS) + ;; + Linux) + rm -rf $tempdir + mkdir $tempdir + files="prtconf lockfs" + for file in $files; do + touch $tempdir/$file; chmod +x $tempdir/$file + done + PATH=${PATH}:$tempdir + export PATH + ;; + *) + echo "Not inplemented yet" + ;; + esac + + echo "Creating $SV_PXEBOOTDIR/$BOOT_ARCHIVE_FILE ..." + ${SUN_SCRIPT} ${ALT_ROOT} + rm -rf $tempdir + cp -pf ${ALT_ROOT}/${BOOT_ARCHIVE_SRC} $SV_PXEBOOTDIR/$BOOT_ARCHIVE_FILE } #---------------------------------------------------------------------- @@ -716,7 +721,8 @@ remove_work_files check_install_type if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then - ( echo "$SV_PKGDIR"|grep -v "/Tools/Boot">/dev/null ) && create_mininfsroot + # TODO: remove next line + (echo "$SV_INSTROOT" | grep -v "/Tools/Boot" > /dev/null) && create_mininfsroot fi prepare_base_dirs $use_dvddir && enumerate_packages @@ -731,7 +737,8 @@ [ $INSTALL_TYPE = diskless ] && prepare_postinstall_env [ $INSTALL_TYPE = offline ] && prepare_postinstall_env if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then - ( echo "$SV_PKGDIR"|grep -v "/Tools/Boot">/dev/null ) && create_boot_archive + # TODO: remove next line + (echo "$SV_INSTROOT" | grep -v "/Tools/Boot" > /dev/null) && create_boot_archive fi transfer_installation_script finalize_1st_stage From teelime @ users.sourceforge.jp Mon Feb 27 21:23:21 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 21:23:21 +0900 Subject: [dl-x86solaris-devel 50] CVS update: dlkit2 Message-ID: <20060227122321.1A4992AC047@users.sourceforge.jp> Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.10 dlkit2/sv.setup:1.11 --- dlkit2/sv.setup:1.10 Mon Feb 27 02:21:20 2006 +++ dlkit2/sv.setup Mon Feb 27 21:23:20 2006 @@ -646,8 +646,6 @@ #---------------------------------------------------------------------- create_mininfsroot() { - OSTYPE=`uname -s` - if [ ! -d $SV_INSTROOT ]; then tempdir=/tmp/tmp.$$ rm -rf $tempdir @@ -687,7 +685,6 @@ #---------------------------------------------------------------------- create_boot_archive() { - OSTYPE=`uname -s` tempdir=/tmp/tmp.$$ case "$OSTYPE" in SunOS) @@ -718,12 +715,10 @@ set -e . ./config.in +OSTYPE=`uname -s` remove_work_files check_install_type -if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then - # TODO: remove next line - (echo "$SV_INSTROOT" | grep -v "/Tools/Boot" > /dev/null) && create_mininfsroot -fi +[ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ] && create_mininfsroot prepare_base_dirs $use_dvddir && enumerate_packages $use_fin_root && make_swap_file @@ -736,10 +731,7 @@ $use_instroot && prepare_installation_env [ $INSTALL_TYPE = diskless ] && prepare_postinstall_env [ $INSTALL_TYPE = offline ] && prepare_postinstall_env -if [ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ]; then - # TODO: remove next line - (echo "$SV_INSTROOT" | grep -v "/Tools/Boot" > /dev/null) && create_boot_archive -fi +[ "$INSTALL_TYPE" = "diskless" -a "$BOOT_TYPE" = "newboot" ] && create_boot_archive transfer_installation_script finalize_1st_stage From teelime @ users.sourceforge.jp Mon Feb 27 22:21:45 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 22:21:45 +0900 Subject: [dl-x86solaris-devel 51] CVS update: dlkit2 Message-ID: <20060227132145.4D02D2AC02A@users.sourceforge.jp> Index: dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh diff -u dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh:1.2 dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh:1.3 --- dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh:1.2 Sun Feb 26 00:35:21 2006 +++ dlkit2/sv.copy-latest-boot_archive-to-tftpboot.sh Mon Feb 27 22:21:45 2006 @@ -8,9 +8,6 @@ # it under the terms of the GNU General Public License AND Common # Development and Distribution License. -[ "`id -u`" != 0 ] && usage "This must be run as root" - . ./config.in - cp -pf $SV_FIN_ROOT/$BOOT_ARCHIVE_SRC $SV_PXEBOOTDIR From teelime @ users.sourceforge.jp Mon Feb 27 23:13:30 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 23:13:30 +0900 Subject: [dl-x86solaris-devel 52] CVS update: dlkit2 Message-ID: <20060227141330.84A392AC02A@users.sourceforge.jp> Index: dlkit2/sv.mk-sv-dvddir.sh diff -u /dev/null dlkit2/sv.mk-sv-dvddir.sh:1.1 --- /dev/null Mon Feb 27 23:13:30 2006 +++ dlkit2/sv.mk-sv-dvddir.sh Mon Feb 27 23:13:30 2006 @@ -0,0 +1,53 @@ +#!/bin/sh +# sv.mk-sv-dvddir.sh - utility to copy whole the DVD contents +# to your hard disk. + +# Copyright (c) 2006 teelime +# Copyright (c) 2006 SAWADA Keiji +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License AND Common +# Development and Distribution License. + +#---------------------------------------------------------------------- +# subroutines +echon() { + printf "%s" "$@" +} + +copy_hier() { + # copy_hier src dst + src=${1:?}; dst=${2:?} + (cd "$src" && tar cpf - .) | (cd "$dst" && tar xpf -) +} + +. ./config.in + +TMPDIR=/tmp/tmp.$$ +OSTYPE=`uname -s` + +if [ ! -d $SV_DVDDIR ]; then + mkdir $TMPDIR + mkdir $SV_DVDDIR + case "$OSTYPE" in + SunOS) + DEVICE=`lofiadm -a $SV_DVDPATH` + mount -F hsfs -r $DEVICE $TMPDIR + echon "copying whole DVD contents to $SV_DVDDIR ..." + copy_hier $TMPDIR $SV_DVDDIR + umount $TMPDIR + lofiadm -d $DEVICE + ;; + Linux) + mount -o loop $SV_DVDPATH $TMPDIR + echon "copying whole DVD contents to $SV_DVDDIR ..." + copy_hier $TMPDIR $SV_DVDDIR + umount $TMPDIR + ;; + *) + echo "Not inplemented yet" + ;; + esac + rm -rf $TMPDIR + echo "done" +fi From teelime @ users.sourceforge.jp Mon Feb 27 23:14:31 2006 From: teelime @ users.sourceforge.jp (teelime) Date: Mon, 27 Feb 2006 23:14:31 +0900 Subject: [dl-x86solaris-devel 53] CVS update: dlkit2 Message-ID: <20060227141431.6CB212AC02A@users.sourceforge.jp> Index: dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh diff -u dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.3 dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.4 --- dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh:1.3 Sun Feb 26 03:01:57 2006 +++ dlkit2/sv.mk-grubmenu-newbootpostupdate1.sh Mon Feb 27 23:14:31 2006 @@ -3,6 +3,7 @@ # when after diskless-installing. # Copyright (c) 2006 teelime +# Copyright (c) 2006 SAWADA Keiji # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License AND Common Index: dlkit2/sv.setup diff -u dlkit2/sv.setup:1.11 dlkit2/sv.setup:1.12 --- dlkit2/sv.setup:1.11 Mon Feb 27 21:23:20 2006 +++ dlkit2/sv.setup Mon Feb 27 23:14:31 2006 @@ -1,6 +1,7 @@ #!/bin/sh # sv.setup - 1st-stage setup script for server-side # Copyright (c) 2005-2006 SAWADA Keiji +# Copyright (c) 2005-2006 teelime # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License AND Common From card_captor @ users.sourceforge.jp Tue Feb 28 00:41:08 2006 From: card_captor @ users.sourceforge.jp (SAWADA Keiji) Date: Tue, 28 Feb 2006 00:41:08 +0900 Subject: [dl-x86solaris-devel 54] CVS update: dlkit2/docs Message-ID: <20060227154108.BCBFE2AC06B@users.sourceforge.jp> Index: dlkit2/docs/install-types.odg Index: dlkit2/docs/type1.png Index: dlkit2/docs/type2.png Index: dlkit2/docs/type3.png Index: dlkit2/docs/type4.png From card_captor @ users.sourceforge.net Tue Feb 28 01:37:49 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Tue, 28 Feb 2006 01:37:49 +0900 Subject: [dl-x86solaris-devel 55] =?iso-2022-jp?b?UmU6IFRPRE8bJEIkckZJGyhC?= =?iso-2022-jp?b?GyRCJHMkRyEnQj4bKEJPUxskQj5lJEcbKEJib290X2FyY2hpdmU=?= =?iso-2022-jp?b?GyRCOm5ALiROTVckSzRYJDckRhsoQg==?= In-Reply-To: <20060226160531.60760.qmail@mail.goo.ne.jp> References: <20060226160531.60760.qmail@mail.goo.ne.jp> Message-ID: <20060228013749.00002917@nanoha> On 27 Feb 2006 01:05:31 +0900 teelime @ mail.goo.ne.jp wrote: > teelimeです。 > > 確か、 > create_ramdiskを走らせてboot_archiveを > 再作成することは、dlkit2にとって”絶対的な”必要条件では > なかったかと思います。 > (先日の実験によると) > > x86.minirootをboot_archiveの代用としてインスコを行うことは > 曲がりなりには可能だったと思います。 ずっと前、OpenSolarisのBFUアーカイブを展開したものから boot_archiveを作れないかと試したことがありました。 create_ramdiskは実行できるんですが、いざブートさせようとすると 足りないデバイスファイルがいくつかあってパニックしてました。 手動でmknodしてやったら、とりあえずカーネルが起動するところまでは いったんですが、それでもログインプロンプトを出せるところまでは いかなかったと記憶してます。 > でも、どうせ、ufsが読めないといけないんだから > やはり対応OSは限られるでしょうね。 これなんですが、ufsが読めるマシンでboot_archiveに使われる ファイル名のリストだけ作成しておき、 別のマシンではそのリストを元にして OpenSolarisのBFUアーカイブ(cpio+gzip)から適宜抜き出してやり、 boot_archiveを作ってやる…のはどうだろうと今考えています。 > この結果、現状では、ラムディスクはufsじゃないと駄目なんだ > と悟りました。 > > で、mini-nfsroot方式を試すことになりました。 なるほど… ルートファイルシステムはやはりいろいろ特殊みたいですね。 ZFSも今のところルートファイルシステムにはできないと どこかに書いてあったような気がします。 --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.net Tue Feb 28 01:53:05 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Tue, 28 Feb 2006 01:53:05 +0900 Subject: [dl-x86solaris-devel 56] Re: CVS update: dlkit2 In-Reply-To: <20060227141330.84A392AC02A@users.sourceforge.jp> References: <20060227141330.84A392AC02A@users.sourceforge.jp> Message-ID: <20060228015305.00006b91@nanoha> kswです。 まだまじめに調べてはないんですが、 今回の方法って、DVDのイメージをまるまるコピーする必要は ない予感がします。("予感"ってなんだってのはおいといてw) もちろん、minirootを展開し、NFS経由で見せてやる領域(約140MB)は どうしてもHDDに置く必要はあります。 しかし、DVDイメージあるいはDVDディスクそのものが クライアントで/cdromにマウントできるならば、 ハードディスクに約3.2GBもある巨大なパッケージ群をコピーしなくてよくなり、 さらにお手軽度アップかなあ… とちょっと期待しています。 --- ksw / SAWADA Keiji From card_captor @ users.sourceforge.net Tue Feb 28 02:12:47 2006 From: card_captor @ users.sourceforge.net (SAWADA Keiji) Date: Tue, 28 Feb 2006 02:12:47 +0900 Subject: [dl-x86solaris-devel 57] =?iso-2022-jp?b?V2luZG93cxskQk1RJE4bKEJO?= =?iso-2022-jp?b?RlMvVEZUUC9ESENQGyRCJTUhPCVQGyhC?= Message-ID: <20060228021247.00000a55@nanoha> kswです。 Windows用のNFS/TFTP/DHCPサーバがあるようです。 http://www.hanewin.de/ http://muranaka.info/pukiwiki/index.php?haneWIN%20DHCP%20Server%A4%C8NFS%20Server ネットブートに必要なサーバが一通りそろいますから、 ファイルそのものはCygwinで作成してやることでなんとかなるかもしれません。 シェアウェア(サイト見ても値段がわからない…)なのがネックですが、 試用期間(30日)を越えても使えなくなるわけではなさそうです。 # なおCygwinは少なくともNFSサーバは公式パッケージが存在します ちょっと気になりましたので、メモ代わりにMLに投げておきます。 --- ksw / SAWADA Keiji