以下のFAQは、「DNS & BIND 改訂版」の130ページの脚注9(監訳者注)に対応する
resolv+に関するJLEにresolv+を組み込むための情報を含んだ、fj.sys.sunに掲載されていたものです。
このデータは、あさだたくや氏のご厚意により、株式会社オライリー・ジャパンが許可を得て複製、掲載しているものです。
このFAQに関するご質問については、「DNS & BIND 改訂版」の記述範囲を超える場合や、
特定機種や環境でのインストール方法などのご質問には回答できないことがございます。
※本データの無断複製、頒布、使用を禁じます。
内容に関する訂正、ご意見、未確認の事柄に関する情報、その他ありましたら、 asada@icsd6.tj.chiba-u.ac.jp までお寄せ下さい。
二つの方法があります。一つは NIS を使うもので、もう一方は resolv+ を使う方法です。ここでは NIS について説明をします。
NIS を立ち上げ、hsots データベースを作っている makedbm に -b という オプションを付けると、NIS の hosts に無い検索について DNS へ問い合わせに 行くようになります。
SunOS 4.0.x だと、/var/yp/Makefile の 63 行目あたりに
| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byname; \という行があります。ここを
| $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byname; \としてやれば表引き(ホスト名から IP アドレスを検索)に DNS を参照する ようになります。66 行目あたりにある
| $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byaddr; \も
| $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byaddr; \としてやれば逆引き(IP アドレスから host 名を検索)にも DNS を参照する ようになりますが、DNS の持っているセキュリティの問題があるのでお勧めは しません。
SunOS 4.1.x だと、/var/yp/Makefile の最初の方、11-14行目付近に
# Set the following variable to "-b" to have NIS servers use the domain name # resolver for hosts not in the current domain. #B=-b B=という部分があります。ここで B=-b というオプションを有効にしてやれば 表引きにも逆引きにも DNS を参照するようになります。しかし 4.1.x 場合にも DNS のセキュリティ問題が無くなるわけではないので、この設定では避けた方が 良いかもしれません。その場合には Makefile 先頭で B=-b しておいて、75 行目 付近の
$(MAKEDBM) $(B) -l - $(YPDBDIR)/$(DOM)/hosts.byaddrを
$(MAKEDBM) -l - $(YPDBDIR)/$(DOM)/hosts.byaddrにして、逆引きは B=-b に影響されないようにするとよいでしょう。あるいは Makefile 先頭での B=-b の設定はせず、4.0.x の場合と同様に 71 行目付近の
$(MAKEDBM) $(B) -l - $(YPDBDIR)/$(DOM)/hosts.bynameを
$(MAKEDBM) -b -l - $(YPDBDIR)/$(DOM)/hosts.bynameに書き換えても同じです。
なお、SunOS 4.1.x の一部(具体的に把握していません。少なくとも SunOS 4.1.3 with JLE 1.1.3 はそうです。Rel. note によると 4.1.3_u1 では直って いるようです)には libc 中の逆引き機構に bug があって、実際には表引きと 逆引きが合っているのに
Jul 28 11:17:10 kikori sendmail[23680]: gethostbyaddr: fuge.hoge.uge.jp != 192.168.54.3のような log が残ることもあります。これは fuge.hoge.uge.jp が複数の IP address を持っていると起きます。複数の IP address があるなら両方と照合 しないといけないわけですが、この bug 片方とだけ照合してそこで「違う!」 と叫んでしまいます。
--黒木 玄さん
問題の解決のためには以下の方法があります:
(c)の方法を取る場合は以下のようなファイルをanonymous FTP などから 入手してください (94/11/11 現在):
ftp://ftp.kuis.kyoto-u.ac.jp/net/mail/sendmail/Kyoto-U/ sendmail.5.67+1.6W-patch.kuis-17
/etc/rc.local の
mount /tmpを
mount /tmp; chmod +t /tmpに変えてください。
これは yppasswdd のバグのため、make に余計な引数が渡されてしまう ためです。対策としては /var/yp/Makefile の最後に
rpc.yppasswdd: passwd.time netid.timeと書いておけば、パスワードが正常に更新されるようになります。
--東京都立大学の川上さん
まず、4.0.3 から 4.1.3 へとアップする場合には、License Full Upgrade (アップグレードのフルライセンス)が必要です。これに対し例えば 4.1.1 から 4.1.3 への場合には License Partial Upgrade で済みます。これに 加えて、日本語環境で使用したい場合には Japanese OS4.1.3 Media を、 英語環境で使用したい場合には English OS4.1.3 Media がそれぞれ必要と なります。また、Manual Set も別売りです。以下にそれぞれの単価を乗せ ておきます。
これはたしか SIGSEGV で uucicoが死んでしまうというものだったと思いますが、 これをなくすには「パスワード・ファイルにある空行をなくす」のが回答です。 ついでに pwck でチェックをせよとゆうことです。 SunOS の UUCP が HDB になる 前から引き継いでいる Uxxx の形式のアカウントは先頭に大文字を使っているとか で怒られます。とりあえずそのまま使っても実害はないようです。
100058-03 SunOS 4.1.1;4.1;4.0.3:Cron scheduling and queue errors; may run jobs twice
100343-05 SunOS 4.1.1: sd.o patch to access scsi drive capacity beyond 1GB.が出ています。このパッチの README によると、
Architectures for which this patch is available: sun4, sun4c, sun4eとなっています。sun3, sun3x の場合は SunOS 4.1.1 では正常に動作しますが、 4.1 だとコケるそうです。
yes と答えてもリブートしろとはいわれず、そのまま終ってしまいますし、 スーパーブロックが壊れているのかと思い、代価のもので試してみましたが、 今度は一応 sync しないでリブートしろといわれるのですが、その通りにしても 直りません。
これは SunOS4.1.2 (Solaris1.0.1) から super block に clear flag という のをつけるようにしていて、システムが正常に shutdown された場合は clear flag が立ち、boot 時の fsck を省略するためのものだったと思います。
これは SunOS 4.1.x の in.comsat のバグで、8 文字のログイン名を持つユーザー について biff が効かないという症状になります。以下のフィクスが出ています。
100272 patches SunOS 4.1.1;4.1.2;4.1.3 in.comsat daemon fails with 8-character login namesまた、フリーになっている BSD のソースから comsat だけを持って来ても動きます。
in.comsat か sendmail の問題です。filec /var/spool/mqueue core してみて 下さい。in.comsat の core だった場合は in.comsat のバグです。以下の フィックスが出ています。
100752 patches SunOS 4.1.1;4.1.2;4.1.3: in.comsat daemon fails with MAXIDLE time 1200 secondsまた、フリーになっている BSD のソースから comsat だけを持って来ても動きます。
--岡@エムエフ情報システムさん
スーパーユーザーで次の事を実行して下さい。
cp /dev/null /etc/defaultdomain要は /etc/defaultdomain を空のファイルにして下さい。後は、リブートすれば、 対処出来ます。
Patch-ID# 101739-04 Keywords: sendmail security .forward headers messages mx timezone(目次)
R$+ $@$1<@$w> tack on our hostnameというところを
R$+ $@$1<@$j> tack on our hostnameとすると良いとのことです。また S11 を下記のように変更すれば、いわゆる GENERIC FROM (ユーザ名@ドメイン名) の設定になります.
S11 R$*<@$+>$* $@$1<@$2>$3 already ok R$+ $@$1<@$m> tack on my hostname
mail.debug ifdef(`LOGHOST', /var/log/syslog, @loghost)という行があるので、これより前に define(`LOGHOST',1) という1行を 加えるか、またはこの行を
mail.debug /var/log/syslogに変更すると良いです。
あと loghost=localhost の場合、つまり hosts に
127.0.0.1 localhost loghostとある場合には hostname を aho とすると /etc/net/ticlts/hosts に
aho loghost/etc/net/ticlts/services に
syslog syslogという記述を加える必要があります。
/usr/compat/bin/cc というシェルスクリプトがあり、これらのヘッダ、 ライブラリを使ってコンパイルしてくれます。ただし、コンパイラオプションを まともに解釈できないので、 "$*" を "$@" に書き換えて下さい。ついでに exec を 追加しておくのもよいでしょう。
コンパイルする時に、"cc hogehoge -lc.1.6" の様に「-l」オプションで、明示的に link するライブラリを指定するのも手です。ここで指定する数字は OS の バージョンによって違うと思うので、"ls /usr/lib/libc.so.*" で確認して下さい。
コンパイルし直すのはゴメンだというならば、
ln -s /usr/lib/libc.so.1.6 /usr/lib/libc.so.101.6とするだけでも結構動きます。ただし、その後このホストでなにも考えずに make した他のバイナリを,他の非 JLE ホストに持ってゆくと,そのホストでも libc.so.101 がないと言われてしまいます…。
また、以前 fj.sources ポストされた unjle というツールを使えば、ロードする shared lib を変更することができます。ただし、作者の水原@富士ゼロックスさん 曰く
ご愛用ありがとうございます。ただ、こいつはただダイナミックリンクする ライブラリのメジャーバージョン番号を書き換えているだけなので、JLE の 機能を本当に使っているプログラムは動かなくなってしまいますから、気を つけて下さい。という事でしたなので、もしこれを使うときはちゃんとコピーを取ってからに して下さい。
#if (defined __sun3x__) || (defined __sun4__)と fix されなければならないところが
#if (defined __sun3x__) || (defined sun4)のようになる等の問題があります。非 JLE 機を使うか、p0064-01 のパッチを 当てて下さい。GNU sed などをインストールしてもよいでしょう。
この様な場合は terminfo の中に "enacs=\E(B\E)0" があるのがよくないよう です。termcap を適切に変更して terminfo を作り直せば、きちんと表示される ようになります。
ちなみに私は以下の様な設定にしています。
vk|kterm|kterm| (X window system):\ :hs:es:ts=\E[?%i%dT:fs=\E[?F:ds=\E[?H:\ :KJ:sc=\E7:rc=\E8:cs=\E[%i%d;%dr:TY=ascii:tc=xterms:
なお、日本サン・ユーザ・グループの運営するBBSには JLE 用の /lib/shlib.etc があるようです(現状未確認、以前はあった)。これを使えば通常の方法で JLE コードを持った resolv+ を作ることも出来ます。
xdm で OpenWindows と mit X11R5 とを切替えることができるようにする ためのパッチが fj.sources で公開されています。v34 の 3402 で、以下の ようなものです。
|From: too@sala.sony.co.jp (OKADA Takashi) |Newsgroups: fj.sources |Subject: experimental patch for xdm - choose local server with menu |Message-ID:現在でも安定して動作しており、動作実績は現在では二年間に延びているそう です。なお作者の方から次のコメントがありました。|Date: 23 Sep 92 03:58:06 GMT |Sender: news@sala.sony.co.jp (Usenet News System) |Followup-To: fj.sources.d |Organization: Science Art Laboratory, Tokyo, Japan. |Lines: 706 |Nntp-Posting-Host: atrai | |SALAの岡田と申します。 | | このパッチは,X11R5 の xdm にプルダウン・メニューを付加し,コンソー |ルで動作するXサーバプログラムを自由に選択できるようにするための試験的 |なパッチです。念のため "experimental" ということにしてありますが,一年 |弱の動作実績があり,それなりに安定して動作しているようです。
| xdm 自体は安定しているように見えますが,サーバを殺したり再起動したり | する回数が増えるに従ってデバイス周りで「ひっかかってとまる」ことがあ | るようなので,これを使う場合は OpenWindows 2 のサーバはやめたほうが | いいでしょう。 | また,作ったのが昔なんで,最近の fixes があたっているときに,そのまま | パッチが当たるかどうかは存じません。
これは Xsun のオンラインマニュアルに記述のあるとおり、サーバーを立ち 上げる時に引数として
| -ar1 milliseconds | This option specifies amount of time in milliseconds | before which a pressed key should begin to | autorepeat. | | -ar2 milliseconds | This option specifies the internal in milliseconds | between autorepeats of pressed keys.を指定すれば調節できます。デフォルトではそれぞれ 200 ms, 50 ms です。
なお static に default 値を変えるには,mit/server/ddx/sunの sun.h の中に、
#define AUTOREPEAT_INITIATE (200) /* milliseconds */ #define AUTOREPEAT_DELAY (50) /* milliseconds */というところがあります. ここの部分を調節すればいいはずです。
mconvertfont -x XXX.fb ; makes XXX.bdf bdftopcf XXX.bdf > XXX.pcfただしこの場合、XXX.bdf の段階で空白文字を付け加えることが必要との ことでした。なお、mconvertfont は /usr/openwin/demo の下にあります。
XView はフォントセットに関する情報を
$OPENWINHOME/lib/locale/{LANG}/OW_FONT_SETS/OpenWindows.fsから取得しているので、これを書き換えると良いとのことです。実際には、X11R5 の
contrib/lib/i18nXView2/locale/japanese/OW_FONT_SETS/OpenWindows.fsで置き換えると一応動くようです。
なお、ここで指定されている fontset が Open できない時には「デフォルトの フォントセットをオープンできない」を連発し、core dump します。上記の ファイルを編集して、適当なフォントに map し直すといいかもしれません。
cmdtool -lc_inputlang Cとして起動すれば良いでしょう。
また 3.0 から 3.1 の差分が、 ftp://ftp.iij.ad.jp/pub/X/contrib/Xsun24-3.0.tar.Z などにあります。
なお、SS10/GS + SunOS4.1.3 では PseudoColor サーバが動かないそうです。 それから CG9 でも X11R5 のパッチレベルが高すぎるとカラー、モノクロの 切り替え時に画面が乱れるという不都合があるそうです (未確認)。
typedef struct cg3bc { #ifdef sparc u_char mpixel[128*1024]; /* bit-per-pixel memory */ u_char epixel[128*1024]; /* enable plane */ #endif u_char cpixel[CG3B_HEIGHT][CG3B_WIDTH]; /* byte-per-pixel memory */ } CG3BC, CG3BCRec, *CG3BCPtr;これが面倒ならば、rom-monitor (ok プロンプトが出ているところ) で
k setenv output-device screen:r1152x900x66と入力してからリブートして、ディスプレイの解像度を変える方法があります。 ただしハードウェアオーナーズガイドによると、これは 16inch モニタのみで しか保障されていない方法だそうですので、your own risc でお願いします。
output-device をこれ以外に設定すると、コンピュータが起動しなくなって しまいます。もしも起動しなくなったら, L1(Stop)-N を押しながらスイッチを 入れて, 不揮発メモリを初期化してください。
X11R5 を keep したまま atok をすぐ使えるようにするには、OpenWindows の なかから、
/usr/openwin/bin/htt /usr/openwin/lib/libX11.so /usr/openwin/lib/locale/ja/* (=>5 font M pcf EH")gKvH")を抜きだして X11R5 と hybrid にすることによって、atok を使える X11R5 に なります。
また、OpenWindows の X11/NeWS Server と font を X11R5 sample server で 置き換えることもできます。
篠田さん(茶々:笹部哲朗さん)--
岡田さん--
マニュアルのすみからすみまで読めば書けるコードなんで PDS あつかいでい いですが,無保証です.
#include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <sys/stream.h> #include <sys/stropts.h> #include <sundev/kbio.h> #include <sundev/kbd.h> int main( argc, argv) int argc; char **argv; { int fd; int arg; struct kiockeymap m; fd = open("/dev/kbd", O_RDWR); if (fd < 0) { perror("/dev/kbd"); exit(1); } arg = KBD_CMD_RESET; if (ioctl( fd, KIOCCMD, &arg) < 0) { perror("KIOCCMD"); exit(1); } arg = TR_ASCII; if (ioctl( fd, KIOCTRANS, &arg) < 0) { perror("KIOCTRANS"); exit(1); } exit(0); }なお最後の手段として「キーボードを引っこ抜いてもう一度差し込めば モニタに落ちる」というのがあります。 (目次)
うちの SUN Sparc station IPX OS 4.1.3 JLE 1.1.3 で WangDAT model 3200 を とりあえず繋いだ状態では、 Exabyte EXB-8200 8mm Helical Scan と認識して いたようで、正常に読み書きはできるのですが、スピードが遅過ぎて使いものに なりませんでした。そこで、/sys/scsi/targets/st_conf.cを以下の様に変更し、 リコンフィグしたところ scsi dat deviceと認識し、快適に動きました。
------- st_conf.c ----- EXB8500の次へ挿入 /* WangDAT 3200 */ { "WangTek 3200 DDS-DC/DAT",18,"WangDAT Model 3200", ST_TYPE_WANGDAT3200,512, (ST_VARIABLE | ST_BSF | ST_BSR | ST_KNOWS_EOD | ST_LONG_ERASE | ST_AUTODEN_OVERRIDE), 5000,5000, { 0x00, 0x00, 0x00, 0x00 }, { 0, 0, 0, 0} }, -----stdef.h ----------- #define ST_TYPE_EXABYTE 0x28 /* Exabyte */ #define ST_TYPE_EXB8500 0x29 /* Exabyte */ #define ST_TYPE_WANGDAT3200 0x2a /* WangTek 3200 */ --------ここまで---------
さらに調子良く使うためには、st_conf.cに以下の部分を追加しました。
/* Local Addtional Tape Drive (5GB 4mmDAT) */ /* This code from Nihongo-Solaris2.1/2.2:/kernel/drv/st */ #ifdef ST_NO_POSITION /* SunOS5.1/5.2 ? */ #define oNO_POSITION | ST_NO_POSITION #else #define oNO_POSITION #endif /* ST_NO_POSITION */ #ifdef ST_KNOWS_EOD /* SunOS4.1.2/4.1.3 */ #define oKNOWS_EOD | ST_KNOWS_EOD #else #define oKNOWS_EOD #endif /* ST_KNOWS_EOD */ { "Archive Python 4mm Helical Scan", 14, "ARCHIVE Python", /* type */ 0x2c, 1024, #if 1 (ST_VARIABLE | ST_BSF | ST_BSR | ST_LONG_ERASE oKNOWS_EOD oNO_POSITION), #else (ST_VARIABLE | ST_BSF | ST_BSR | ST_LONG_ERASE | ST_AUTODEN_OVERRIDE oKNOWS_EOD oNO_POSITION), #endif 5000, 5000, { 0x00, 0x8c, 0x8c, 0x8c}, { 0, 0, 0, 0 } }この修正により、st0に接続しているとすれば、
#include <fcntl.h> #include <sys/types.h> #include <sys/ioctl.h> #include <scsi/generic/commands.h> #include <scsi/generic/mode.h> #include <scsi/impl/uscsi.h> struct uscsi_cmd cmd; union scsi_cdb cdb; u_char md[12] = { /* random data */ 0, /* reserved */ 0, /* medium type */ 0, /* reserved */ 8, /* block descriptor length */ 0, /* density */ 0,0,0, /* # of blocks */ 0, /* reserved */ 0,2,0, /* block length (512b) */ }; main() { int fd; if ((fd = open("/dev/rsr0", O_RDWR | O_NDELAY)) == -1) { perror("open"); exit (1); } cdb.scc_cmd = SCMD_MODE_SELECT; cdb.low_count = 12; cmd.uscsi_cdb = (caddr_t) &cdb; cmd.uscsi_cdblen = CDB_GROUP0; cmd.uscsi_bufaddr = (caddr_t) md; cmd.uscsi_buflen = sizeof(md); cmd.uscsi_flags = USCSI_DIAGNOSE | USCSI_ISOLATE; /* write */ if ((ioctl(fd, USCSICMD, (struct uscsi_cmd *) &cmd)) == -1) { perror("ioctl"); exit (1); } exit(0); }(目次)
SUPER ASCII(94/9), 日経バイト(94/11) および独自調査の中間報告です。 使用されているドライブごとに製品名を並べてみます。
PIONEER DR-U104X 512可 パリティ有り PIONEER DR-S104X シナノケンシ PX-34CH 512可 パリティ有り PLEXTOR PX-45CH ICM CD-610S ELECOM ECD-L650 シナノケンシ DM-3028 512可 パリティ有り PLEXTOR DM-5028 東芝 XM-3501B ELECOM ECD-550 TAXAN TS-CD400 Caravelle CD-440P MIDORI CXA-600 Logitec SCD-400 東芝 XM-4101B 512不可 パリティ有り Toshiba XM-4100A ELECOM ECD-250B Logitec LCD-550 Caravelle CD-100P NEC CDR-260 NEC PC-CD60 NEC CDR-510 パリティ有り NEC PC-CD170 NEC PC-CD170N MIDORI CXA-450 TAXAN TS-CD300 NEC CDR-511 NEC PC-CD180 NEC CDR-210 512不可 パリティ無し SCSI TEXA LU-CD2 Logitec SCD-200 MIDORI CXA-301 SONY CDU7811-10 パリティ有り SONY CDU7811-10 SONY CDU-55S MERCO CDS-E Media Vision CDR-H93MV 512不可 パリティ有り TAXAN TS-CD200 松下 CR-503 パリティ有り ICM CD-310S AIWA ACD-300 512可 パリティ有り AIWA ACD-300このうち PIONEER と PLEXTOR の製品は DIP SW の切替で、ブロックサイズを 512bytes にできるので、boot に使用できる。東芝の XM-4101B はパターン カットにより 512bytes に変更できる。
なお、その他の製品はスイッチによるブロックサイズ変更をサポートしている のか不明ですので、これらの製品を使用されている方で、「マニュアルに記述 がある」とか、「マニュアルに説明のないスイッチがある」などという方は、 御一報ください。
rkling@austin.intel.com (Ralph Kling) さん(和訳:辻さん)--
東芝の 2048 バイトにたいしサンは 512 バイトを転送ブロック・サイズに しています。これを直すために SunOS の user-scsi-driver を利用した 小さいプログラムを書きました。これをドライブをマウントする前に走らせて ください。例の "unrecognized vendor" というのは無視できます。audio を 使いたいのなら、同じ user-scsi-driver を使って自分でドライバーを書く 必要があります。コマンドがサンのとは全然違うからです。東芝に電話をかけて スペックを聞いて下さい。(15ドルでそれを送ってくれます)
# include <sys/types.h> # include <sys/buf.h> # include <sun/dkio.h> # include <scsi/targets/srdef.h> # include <scsi/impl/uscsi.h> # include <strings.h> # include <stdio.h> char cdrom[] = "/dev/rsr0"; extern char * cdrom_status(); /* group 0 commands */ #define TEST 0x00 #define REZERO 0x01 #define SENSEREQ 0x03 #define READ 0x08 #define SEEK 0x0b #define NOP 0x0d #define INQ 0x12 #define MODESEL 0x15 #define RESERVE 0x16 #define RELEASE 0x17 #define MODESENSE 0x1a #define STARTSTOP 0x1b #define DIAGRCV 0x1c #define DIAGSND 0x1d #define MEDIUMLOCK 0x1e /* group 1 commands */ #define READCAP 0x25 #define READEXT 0x28 #define SEEKEXT 0x2b /* group 6 commands */ #define AUDIOTRACK 0xc0 #define AUDIOPLAY 0xc1 #define AUDIOSTILL 0xc2 #define AUDIOSTOP 0xc3 #define EJECT 0xc4 #define CLOSE 0xc5 #define AUDIOSUB 0xc6 #define AUDIODISK 0xc7 #define ROMMODE 0xc8 /***/ #define CMDLEN(cmd) ((cmd >= 0x20) ? 10 : 6) /***/ main() { int fd; int i; struct uscsi_cmd ucmd; char * s_command; char * s_buffer; if ((fd = open(cdrom, 0)) == -1) { fprintf(stderr, "open: "); perror(cdrom); exit(1); } s_command = (char *) malloc(10); if (s_command == NULL) { printf("malloc error (command)\n"); exit(-1); } bzero(s_command, 10); s_buffer = (char *) malloc(256); if (s_buffer == NULL) { printf("malloc error (buffer)\n"); exit(-1); } bzero(s_buffer, 256); s_command[0] = MODESEL; s_command[1] = 0x10; s_command[4] = 12; s_buffer[3] = 0x08; s_buffer[10] = 0x02; ucmd.uscsi_cdb = s_command; ucmd.uscsi_cdblen = 6; ucmd.uscsi_bufaddr = s_buffer; ucmd.uscsi_buflen = 4096; ucmd.uscsi_flags = USCSI_WRITE; i = ioctl(fd, USCSICMD, ucmd); close(fd); exit(i); }(目次)
MacLife 1994/10 にのっていたスキャナの比較記事を参考にして選びました ので、Mac 用のソフトはすべてにあります。その他広告も参考にしました。
UNIX用のソフトを提供しているスキャナ Optical Software bit ・SII CS-6151 400x 800 ? x ? 8 ColorCCD \288,000 ・SII CS-7151 400x1200 1200x2400 8 ColorCCD \473,000 SII ScanMate Sun: SunOS 4.1.[23] + OpenWindows [23] \100,000 SGI: IRIX 5.x \400,000? ・HP ScanJet IIc ? x ? ? x ? 8 ? \???,??? ・HP ScanJet IIcx 400x 400 1600x1600 8 ColorCCD \178,000 HP MPower 2.0(Multimedia Package) HP: HP-UX 9.x \100,000? ・UMAX PowerLook 600x1200 2400x2400 10 ColorCCD \300,000? ???(for UNIX) \???,???--
長橋@富士通研さんが作成した EPSON GT-8000/6000 用画像取り込みツール gtscan, xscan があります。 ftp://keisu3.t.u-tokyo.ac.jp/pub/keisu/ImageScanner/ などから入手できます。多分 GT-9000 でも問題なく動くでしょう。
現在、対応しているのは kernel architecture が sun4c のもののみです。 sun4m には対応していませんが、実は動くという報告もあるようです。 (目次)
SunOS の場合、プロセスが動くためにはあらかじめスワップ領域にプロセスが 使用するメモリと同じ大きさの領域を確保しておかなくてはいけません。ですから スワップ領域は、少なくとも (物理) メモリとおなじだけは必要です。目安として メモリの 2倍、という話を聞いたことがあります (根拠は忘れました)。 巨大なプロセスを動かす人は、スワップ領域も大きくとる必要があります。 ちなみに私は現在 150MB ほど取っています (100MB では足りなかった)。
複数台のディスクが接続されている場合、一個のディスクに巨大なスワップ領域を 取るよりは、いくつかのディスクにスワップ領域を分けて作成し、/etc/fstab に
/dev/sd1b swap swap rw 0 0 /dev/sd3b swap swap rw 0 0などと書いておけば、ページングやスワップが高速に行なえます。
また、スワップ領域はディスクの先頭に作ることはできません。1シリンダでも いいから、かならず普通のパーティションを切って、その後にスワップ領域を 取りましょう。
注: SunOS 4.X の場合、/usr/kvm/sys/(ARCH)/conf のコンフィギュレーション ファイルの "config" の項目を変更し、カーネルを再構築することによって、 デフォルトのスワップ領域を変更することができます。詳しくはマニュアル "System Administration Procedures" の pp225, Chap9,Sec "System-Specific Description Lines" 参照して下さい。--松下電器産業の和気 裕之さん
分散スワップを使用する目的は、スワップ時のディスクの負荷を分散させる ことにあります。しかしながら、システムに高速ディスクと低速ディスクが 混在している場合はこの限りではありません。
砂原 訳、Nutshell Handbooks シリーズの "UNIXシステムチューニング" (アスキー出版局) の pp175,"4.5.3 スワップ領域の分散" の項で、以下のように 解説されています。
最良の性能を得るためには、スワップパーティションやスワップファイルを できるだけ多くの異なったディスクに置く必要がある。しかし、システムに 高速ディスクと低速ディスクが混在している場合、スワップにはすべて高速 ディスクを使用しなければならない。
# cp /dev/eeprom myeeprom.datとでもします。紙に印刷しておくと安心です。
ID/NVRAM は、q コマンドで書き換えられますが、HOSTID やイーサネットアドレス などの書き込み禁止領域があるようです。当方で確認している書き込みアドレスは、
0xfef04800〜0xfef04fffです。モニタの o コマンドを使って書き込みます。
書き込んだ後も内容が消えるようなら、ID/NVRAM の内蔵電池の消耗が考えられます。 マシンの購入先や秋葉原の部品やさん等で SGS-Thomsonの MK48T02B を注文して 手に入れます (私は実際に注文したことはありません)。
従来の、SS1, SS1+, SS2, IPC, IPX といった古いタイプのモデルでは、Floppy のドライブを交換すればできそうです(やった人連絡下さい)。
次にソフト的な話。
Solaris1.1 は OK、2.2 は volume manager と同時に使えないというバグが あるようです。
Solais2.* では、File Manager のメニューを使って、NEC-DOSを選んで format すれば mount でき、98でも読み書き可能だそうです。ただ、すでに format されているdiskを読んでも毎回、Unformatted Floppy の menu が出てしまう そうです。OS の Version-up に期待したいところです (今はどうなっているの でしょうか?)。
SunOS 4.1.* では、mtools の改変版によって読み書き出来ます。 このパッチは京大マイコンクラブの伊藤 康史さんによるもので、
Newsgroups: fj.sources Subject: mtools-2.0.7 patch for Japanese 2HD (1232KB) format Message-ID: <2gmgkn$785@hemp.imel.kyoto-u.ac.jp>として投稿されています。
ちなみに、 --麦谷 浩平@ジュース奈良さん
SS-1,SS-1+ 前面 HDD L R ========= ========= 0 4枚で、1組。 ========= ========= 1 (0L,1L,2L,3L)(4L,5L,6L,7L) ========= ========= 2 (0R,1R,2R,3R)(4R,5R,6R,7R) が、組。 ========= ========= 3 4Mbx9 SIMMを、先に充填する。 ========= ========= 4 残った場所に、1Mbx9 SIMMを入れる。 ========= ========= 5 SIMMは、いずれも、30pinタイプ。 ========= ========= 6 ========= ========= 7 背面 SS-2,IPCについては、後日。
Patch-ID# 100351-01 Synopsis: NeWSprint queue hangs up when out of paper D ate: 13-Aug-91ところが、これでも直らないという情報もあります。バージョンアップすれば 直るのでしょうか? (未確認)
SS で使う TYPE 5 キーボードは主に3種類あります。
キートップが英語なら UNIX の TYPE 5 という訳ではなく (日本ではあまり お目にかかることはないと思いますが) アメリカやイギリスの TYPE 5 という のもあるそうです。決定的に違うのが Esc の位置で、Help キーの右隣にある のが各国語の、tab の上にあるのが UNIX の TYPE 5 です。
これらの扱いは、ディーラ・代理店によってかなり違ってくるようですので、 まずは担当の業者に相談してみて下さい。なお 1994 年現在で、値引き前で 60000 円強くらいだったという話を聞いたことがあります。海外の通信販売 等が利用できるなら、もっと安く換えるでしょう。 (Sun Type4 keyboad の コンパチキーボードが $150 というのがあったそうです) --笹部哲郎さん
最近、ハードウェア的には JLE Type5 互換だけれど大きさは XMiNT の キーボードなみ、配列は ASCII +カナで10キー無し、というキーボードが 販売されています。複数の業者が扱っていて例えば笹部のところには伊藤忠 テクノサイエンスを経由して買ったものがありますし、Sun Express でも 扱っていますが、モノはすべて同じようです。
このキーボードは大きさ配列とも多くの Type 3/4 ファンを納得させるものと 思いますが、問題もあります。キーストロークが浅くちょうどノート PC の ような感じです。好みが別れるでしょう。Type 3 のキータッチが好きな人は 耐えられないかもしれません。
%dd if=/dev/rst0 conv=swab | tar xvf -で読めますが、最初から Sgi の方で
% tar cvf /dev/tapensとしたり、リモート・ログインできるならば SUN のドライブを使って
% tar cvf sun:/dev/rst8とする方が、簡単でしょう。
以前 comp.sources.misc に流れた、
comp.sources.misc v22i031-v22i033 mntdisk - Allow general users to mount disks, Part01-03がお勧めです。
マウントやイジェクトだけでなく、FDの初期化などもできるので便利 :-) syslog でログも残せるので管理者としても便利ですし....
device-driver audioamdという行をコメントアウトして カーネルを再構築すればいいです。LX では 問題ないようです。
アンサーセンターによると LaserShot を使うには手動で
# chown lp /dev/term/a # chmod 600 /dev/term/a # lpadmin -p プリンタ名 -v /dev/term/a -I simple # lpadmin -o cs8 -parenb -istrip onlcr ixon -tabs ±^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ この行はエラーがでて受け付けてくれなかったので設定しませんでした # accept プリンタ名 # enable プリンタ名と設定すればできるそうです。設定する時は admintool で登録済みのプリンタ名を 削除しておいて下さいね。(でもこれだけでだめだったので以下へ)
次に、この後に /etc/lp/interfaces/ プリンタ名というファイルができるので、 これを書き換えます。このファイルは lpr によってインターフェース設定および フィルタに使われるシェルスクリプトです。書き換えるところは 547 行目から stty でインターフェースの設定をしてるので、stty のオプションをプリンタの 設定にあわせてやります。(bps,parity,stopbit等々)詳しくは man stty で見 て下さい。
それと onlcr を -onlcr へ変更するのを忘れないように。これをしないとイメージ データが正常に出力されない場合があります。またヘッダバナーを出力させない ようにするには、332 行目の nobanner を yes にすれば大丈夫です。
--小山田@富士通ネットワークエンジニアリングさん
設定方法は以下の通りです。
lpadmin -p プリンタ名 -v シリアルポート名 -o nobanner -o "stty='回線速度 cs8 -parenb -istrip -opost -tabs'"tab の設定がうまく行かないことがあるので stty で設定して下さい。
最終的な設定は
[lpstat -p lw2 -lの出力結果] printer lw2 is idle. enabled since Fri Feb 25 20:04:38 JST 1994. available. Form mounted: Content types: simple Printer types: unknown Description: Canon LASER-SHOT A-304 Connection: direct Interface: /usr/lib/lp/model/standard On fault: write to root once After fault: continue Users allowed: (all) Forms allowed: (none) Banner not required Character sets: (none) Default pitch: Default page size: Default port settings: 19200 cs8 -parenb -istrip onlcr ixon -tabsこの設定で一応は印刷できるようになりますが、LASER SHOT の場合 (というか LIPS では) ジョブという概念があって、ジョブ開始や終了の LIPS コマンドを プリンタに渡すようなフィルタが必要です。フィルタは awk 等で簡単に作れますが、 このフィルタを lpfilter コマンドで登録しなければなりません。私の所では これがうまくいかないので、alias で回避しています。
alias lpr 'lips3 \!* | lp -o nobanner'lips3 は以下のような awk script です。
#!/bin/awk -f BEGIN { printf("^[P31;300;2J^[\\") # ジョブ開始 (LIPS3 300dpi EUC) printf("^[<") # ソフトリセット printf("^[[4 L^[[10`^[[0t") # 行ピッチ (8LPI) # 水平絶対位置移動 (10) # マージン設定 (左) } { print } END { printf("^[P0J^[\\") # ジョブ終了 }
Patch-ID# 101317-04 Keywords: lp bug fixes Synopsis: SunOS 5.3: lp jumbo patch Date: Jan/11/94の README によると、FIX された bug ID はおよそ 100 個ほどあるそうな…。
また、HDD を物理的に接続してから、scsiinfo というプログラムを -F オプションとともに用いると、disk_type の出力が format.dat の形式で 出力できます。
Mac に継いで何とか…というのも、あったような気がする。
(詳しい方、教えてください)
FILE rw-r--r-- 27379 Sep 16 13:55 dp-2.3-patch2.tar.gz FILE rw-r--r-- 44696 Sep 13 13:02 dp-2.3-patch2.tar.Z
ここでもし印刷が終了していないのにもかかわらずプリンタが idle 状態に なっていれば、印刷指令が届かなかったとみなして再出力指令を出すように なっている。
この判定部分が正しく動かない場合があり、印刷が成功しているのにも かかわらず、papif が印刷を再試行してしまうことがある。これが、問題の 原因であった。
この判定部分は、papif.c の中にあり、IDLESTUFF というフラグにより判定& 再試行を行うかどうかを制御する。
具体的には、m4.setup 中の
define([papflags],concat(papflags,[ -DIDLESTUFF]))の行を消去するか、
define([papflags],concat(papflags,[ -DIDLESTUFF=0]))のようにする。
#!/bin/sh IDLESTUFF=0 export IDLESTUFF papif ...
私の知識が古いので、情勢が変わっているかも知れませんが(と但し書き)。
xv や hpcdtoppm などのソフトウェアの話以前に、繋ぐ CD-ROM Drive によって データが読めるかどうかという問題があります。Photo-CD つまりマルチセッションの CD-ROMは、Solaris2.3 から対応されると発表されていました(使ったことがないので 真実は知りません)。これは、Drive がマルチセッションに対応していて、挿入した CD-ROM がマルチセッションでもマウントができますよと言うことだと思います。
では SunOS4.1.3 ではマウントできないかと言うと、そうでもありません。 というのは、初期の頃の Drive を使えば、当時はマルチセッションなどという規格が ありませんでしたから、普通の CD-ROM だと認識しちゃいます。だから SunOS4.1.3 もマウントしてくれます。逆に、Photo-CD 対応などと唱っている Drive を使うと、 マウントできません。
ただし、古い Drive でマウントできちゃうとは言っても、あくまでシングル セッションとしてマウントしてしまうので、最初に書き込んだデータしか読む ことが出来ないはず。つまり追記したりファイルの順番を変えたりという情報は 無効に扱われるはずです。
ソフトに関してもあまり最新情報をフォローしていないんですが、hpcdtoppm で ppm フォーマットに変換できることは確認しました。hpcdtoppm のフォーマット 変換ロジックを xv に入れ込むパッチも流れたと思います。
ただし (但し書きが多いな)、Kodak は Photo-CD のファイルフォーマットを 公開しておらず、hpcdtoppm は著者 Hadmut Danisch が Photo-CD のファイルを 独自に解析してロジックを組んだプログラムなので、色の再現性が忠実ではないと 言われていますが、ただ画面で見て楽しむぶんには充分だと私は感じました。
忠実性を確保したければ、Kodak からライセンスを買って組んだソフトを利用する ことをお勧めします。