Indexに戻る
OK boot sd(0,6,2) -sw
と打てば良いです。SCSI DEVICE 6(CD-ROM)の2番目のファイルからSingle User Modeで立ちあげろということです。
OK boot cdrom
でも動くマシンもあります。
Indexに戻る
Postmaster: root
MAILER-DAEMON: postmaster
#decode: "|/usr/bin/uudecode"
nobody: /dev/null
root: oku
daemon: oku
このように、root,daemonの後の名前を管理者のIDに変えておけば 良いでしょう。decodeはセキュリティの問題からコメントアウトして おくんだそうです。 これを変更したら、newaliasesを実行します。
/usr/local -root=hogehoge:areare,access=hogehoge,areare
と書いたら、/usr/localへのhogehoge,areareからのルートのアクセス 許可と、マウントなどの使用許可を与えます。これを書き直したら、 exportfs -aを実行して下さい。
:ap:lm=\r\nHere is serilab,Who?\72 :sp#9600:
プロンプトが``Here is serilab, Who''になる。
wheel:*:0:oku,koyama
こうすると、okuとkoyamaしか、ルートに変身する権限を持たない。
operatorはshutdownなどをできる権限を持つ人のグループです。
NISでクライアント、またはスレーブサーバのマシンは、このファイ ルの最後、$+:$の記述が必要であり、デフォルトでついてきて設定 以外書いてはいけない。そうしないと、NISのサーバーと同じエント リーを重複して持つことになってしまう。
また、ゲートウェイなどにするためにセカンドイーサネットボード を買った場合にはhostname.インターフェース名というファイルを 作らなくてはいけない。例えば今現在rigelにはle1という名前の インターフェースボードがついているのでhostname.le1というファイ ルにrigelgwと書いてある。
SGI(IRIX4.05)のマシンには/etc/sys_idというファイルにマシン名が 書いてある。
phone dgram udp wait root /usr/local/lib/phoned phoned
また、大山研ではメールの読み書きにpopperを使用しているので以下 の記述が追加されている。なおIRIX4.05では/usr/etc/inetd.confである。
pop3 stream tcp nowait root /usr/local/etc/popper popper
さらにyoubindが動いているマシン(mailserver)では以下の記述を コメントアウトしておく
#comsat dgram udp wait root /usr/etc/in.comsat in.comsat
なお、このファイルを書き換えた時はkill -HUP (process id of inetd)を行なう。
#
# Network masks database
#
# only non-standard subnet masks need to be defined here
#
# Network netmask
133.34.0.0 255.255.255.128
1995年8月現在(1995/3に行なわれたネットワークの整備により変更されました) IRIX4.05のnetmaskの変更は/etc/config/ifconfig-1.options というファイルを*作り*
netmask 0xffffff80
broadcast 133.34.28.255
としておきます。(大山研のサブネットアドレスは133.34.20.128/25だから ブロードキャストアドレスは133.34.20.255になります。)(Sunのデフォルト ブロードキャストアドレスはAll 0ですからこれを変えるには /etc/rc.localを変える必要 があります。)
#
# Local networks
#
loopback 127.0 software-loopback-net
#
ynu-netmask 255.255.255.0
#
ynunet 133.34
#
# Faculty of Engineering networks
#
red 133.34.36 # Dep. of Naval Architechture and Ocean Eng.
orange 133.34.44 # Dep. of Civil Eng.
indigo 133.34.16 # west side of current common network
# # Dep. of Electrical and Computer Eng.
violet 133.34.28 # east side of current common network
# # Dep. of Architecture and Building Sci., Dep. of Natiral Sci.
#
lavender 133.34.17 # ele & comp, nakagawa-mori lab.
aquamarine 133.34.18 # ele & comp, arisawa lab.
carmine 133.34.19 # ele & comp, dohi-ishii lab.
spiral 133.34.20 # ele & comp, LocalTalk network
nilegreen 133.34.21 # ele & comp, kawamura lab.
jewel 133.34.22 # ele & comp, matsumoto lab.
loup 133.34.50 # ele & comp, computer room
january 133.34.51 # ele & comp, computer room
february 133.34.52 # ele & comp, computer room
march 133.34.53 # ele & comp, computer room
april 133.34.54 # ele & comp, computer room
may 133.34.55 # ele & comp, computer room
june 133.34.56 # ele & comp, computer room
july 133.34.57 # ele & comp, computer room
august 133.34.58 # ele & comp, computer room
september 133.34.59 # ele & comp, computer room
october 133.34.60 # ele & comp, computer room
iron 133.34.68 # ele & comp, tamura lab.
dungeon 133.34.69 # ele & comp, arisawa lab. multi media res. net
#
olive 133.34.30
milkyway 133.34.20.128
1995年8月現在
それ以外の時は、新しいユーザを登録する時にはここに登録してやる。 順番としては、ID、パスワード(必ず記述があるようにする)、 ユーザ番号(重複がないようにする)、グループ番号、名前、 ホームディレクトリ、シェル(通常はCシェル)で区切りはコロン。 当然新しいユーザにはホームディレクトリを作っておいて、 所有権(chown)と、グループ設定(chgrp)をしてやり、 .login, .cshrc, .logoutファイルなどをコピーしておいてやる。
またこのファイルの変更を行なう時には、必ず、vipwコマンドを使う。
書き方は、まず、そのプリンタの名前($|$を使うことで複数の名前を 記述できる)を書き、コロンで区切って設定を書く。lprの`-P'オプシ ョンで、使うプリンタを選ぶか、環境変数の`PRINTER'にプリンタ名 を書いておく。
設定についてはUNIXマガジンの1990年の10月号を見ると良い。 どこかの研究室にかならずあるはずです。 ofの設定にはプリンタ側の漢字コードに変換するようなフイルタを 通すような設定が必要ですし、LaTeX の設定にもそれなりの 記述が設定ですので、それなりの人に聞いて設定して下さい。 プリンタ側の設定などとともに、これはかなり思考錯誤しないと うまくいかないかも知れません。
関連ファイルとして、ttytabも書き直す必要があります。 このファイルを書き換えたらrebootしてやる必要があります。
rc.localの場合は、デフォルトにかなり手を加えます。 基本的に後から付け加えるdaemonはこれに記述するそうです。 NIS関係のdaemonはその手の本を見るとして、基本的に付け加えるのは、 `phone'と`xdm'、サーバーマシンの場合は`jserver'と`fs'、でしょう。 それぞれ、電話、Xウインドウへのログイン、日本語変換、 Xウインドウのフォントサーバなどを管理します。 しかし、芹澤研、大山研では、`phone',`fs'の記述は必要ありません。 記述については、どこのドメインを見ても書いてあると思うので、 それらを参考にすれば問題ないでしょう。 ただし、xdmについては、rcの一番最後に記述した方がいいかも知れません。 あと、sendmailがコメントアウトしてあるかも知れません が、sendmail.cfをきちんと設定してから、コメントを外して下さい。 また逆にプリンタをつないでいないマシンでlpdを起動させる必要はないので コメントアウトしたほうが良いものもあります。 もちろん、リモートプリンタとして使う場合は別です。 (printcapにそれ相応の記述が必要です)
# set the netmask from NIS if running, or /etc/netmasks for all ether interfaces
ifconfig -a netmask + broadcast + > /dev/null
というところがありますが,これに設定を付け加えます. Ethernetインターフェースとして le0 という名前のものを一つだけ持ってい る場合は,
ifconfig le0 netmask + broadcast ブロードキャストアドレス > /dev/null
を上記ifconfig の行の*次に*加えます.(ifconfig -a ... の行を書き換えて
はいけないのは ソフトウェアループバックネットワークインタフェースの設
定があるからです)
le0が接続されるネットワークが133.34.30.0/25 の場合は,ブロードキャスト
アドレスが 133.34.30.127 となりますから次のように /etc/rc.local を変更
します.
# set the netmask from NIS if running, or /etc/netmasks for all ether interfaces
ifconfig -a netmask + broadcast + > /dev/null
ifconfig le0 netmask + broadcast 133.34.30.127 > /dev/null
ゲートウェイマシンなどインターフェースを複数持つ場合は,インタフェース毎 に設定をします.例えば,2つのインタフェース
# set the netmask from NIS if running, or /etc/netmasks for all ether interfaces
ifconfig -a netmask + broadcast + > /dev/null
ifconfig le0 netmask + broadcast 133.34.30.127 > /dev/null
ifconfig le1 netmask + broadcast 133.34.20.255 > /dev/null
これらのファイルを書き変えたら、psコマンドでsendmailのdaemonを 殺して(通常はrc.localから、起動されているはず)、
#/usr/lib/sendmail -bd -q1h
を実行します。
phone 1167/udp
rmap-w 1434/udp
を最後に付け加えるぐらいでしょう。
#
# /etc/shells
#
/bin/sh
/bin/csh
/usr/local/bin/tcsh
ユーザがシェルを変更する時は、chshまたは、yppasswd -sを使います。
# name getty type status comments
console "/usr/etc/getty std.9600" sun on local secure
ttya "/usr/etc/getty std.9600" vt100 off local secure
ttyb "/usr/etc/getty msdos.9600" vt100 on local secure
例えば、プリンタを接続した場合は、statusのところをttyaのように、 `off local secure'と書きます。端末して使う場合は`on local secure'です。 また、端末の特性はgettyのところに書きますが、 このエントリーが(msdos.9600など)、gettytabに記述されていること が必要です。同様に、typeの記述はtermcapファイルに記述があるも のでなくてはいけません(端末ソフトの種類)。
;
; Server Info. for BIND
;
domain oyamalab.dnj.ynu.ac.jp
nameserver 133.34.20.129
nameserver 133.34.50.141
nameserver 133.34.50.142
SGIのマシンは/usr/etc/resolv.confです。 このファイルを書くとデフォルトでDNSを引きに行ってしまうので、 次の行をファイルの先頭に足して下さい。
hostresorder local bind
mail -rw,hard hogehoge:/var/spool/mail
区切りは、空白またはtabで、割当名、mount状況、実際の存在場所の 順で、記述されていきます。 また、rc.local等で次のように記述があるはずです。
/usr/etc/automount /remote automount.map
このように書くと、automountするディレクトリの情報は`automount.map'、 それは何処にmountされるかというと`/remote'にという意味です、 つまり、さきほどの記述でいうと/remote/mail(割当名)を見る と自動的にhogehoge:/var/spool/mailをそこにmountするということに なります。ですから、
hoge#cd /var/spool
hoge#ln -s /remote/mail /var/spool/mail
とかという記述をNISドメイン内のhogeというマシンで実行しておくと、 hoge:/var/spool/mailというディレクトリはhogehoge:/var/spool/mail と共有することができます。
#
# @(#)make.script 1.24 88/02/08 SMI
#
DIR =/etc
all: passwd group … automount.map ypservers
ypservers.time: $(DIR)/ypservers
@awk '!/^#/ && !/^$$/ {print $$1 }' $(DIR)/ypservers | \
$(MAKEDBM) - $(YPDBDIR)/$(DOM)/ypservers;
@touch ypservers.time;
@echo "updated ypservers";
@if [ ! $(NOPUSH) ]; then $(YPPUSH) ypservers; fi
@if [ ! $(NOPUSH) ]; then echo "pushed ypservers"; fi
ypservers: ypservers.time
$(DIR)/ypservers:
ここで、このようにMakefileに新たなNISマップを追加した場合に、 スレーブサーバー側が、これを受け付けずmakeの途中で止まった状態に なる場合があります。そんな時にはypserversをすでに設定してある 場合には、スレーブサーバーの記述をコメントアウトしてmakeをかけ、 すべてのスレーブサーバーをクライアントにします。 そして、全てのスレーブサーバーで、ypservを殺す。ypbindが生きて いるのを確認して、
# cd /usr/etc/yp
# ypinit -s マスタサーバー名
を実行して、色々聞かれますが、Returnを押していきます。 そしてypservを起動する。 これで、スレーブサーバーに新しいマップがコピーされます。 そこでypserversが設定してある場合には先ほどのコメントアウトを外して、 /var/ypでmakeをかけます。
SunOS4.1.Xにはsendmail,sendmail.mxという2種類のバイナリがつい てきます。sendmailはNISを使って配送するもの、sendmail.mxがDNS を使って配送するものです。普通はDNSを使って配送しますので、 sendmail.mxを使用します。
本来ならばどんなコードが来るかわからないメールに対して全てnkfの フィルタを通すのはどうかと思います。将来的にはメールを送る本人が 気にしてJISで送るように心がけたいものです。
# cd /usr/ucb
# mv newaliases newaliases.org <--実は/usr/lib/sendmailへのsym. link
# ln -s /usr/lib/sendmail- newaliases
# cd /usr/lib
# mv sendmail sendmail.nis
# ln -s sendmail.mx sendmail-
というようなことをします。そして新たに、sendmailファイル を作ります。
#! /bin/sh
/usr/local/bin/nkf.jis | /usr/lib/sendmail- $*
ここで、nkf.jisは漢字コード変換ツールで、JISに変換する ものであります。さらに、ファイルの属性を
#chmod 4551 sendmail
/usr/ucb/mqueueがあるマシンは、それも/usr/lib/sendmail-に リンクしておきます。 また、外部からのメールの受信を指定の漢字コードにしたい場合は、
#cd /usr/bin
#mv mail mail-
あらたに、mailというファイルを作ってやります。
#!/bin/sh
/usr/local/bin/nkf.jis|/usr/bin/mail- $*
そして、
#chmod 4755 mail
をします。
#cd /usr/bin
#ln -s /usr/local/X11R5/bin X11
#cd /usr/lib
#ln -s /usr/local/X11R5/lib/X11 .
#cd /usr/include
#ln -s /usr/local/X11R5/include/* .
また、includeファイルを一部書き換えます。すなわち、/usr/include /sys/stdtypes.hの
typedef unsigned short wchar_t;
の記述に
#ifndef X_WCHAR
typedef unsigned short wchar_t;
#endif
を付け加えます。 もいっちょ/usr/share/lib/locale/のなかの
LANGINFO/ LC_CTYPE/ LC_MONETARY/ LC_TIME/ LC_COLLATE/
LC_MESSAGES/ LC_NUMERIC/
の各ディレクトリで
#ln -s C ja_JP.ujis
なんてことします。
で、バックアップをとる必要のあるパーティションは、 /home,/usr/localです。 このうちの/usr/localについては、新しいソフトをインストールしでもしない 限り、あまり頻繁にバックアップをとる必要がありませんが、 必ず、とっておく必要があります。
/homeについてはルートの良心に任されています。毎週でも毎月でも、 頻繁にとって悪いことはありません(テープの劣化は考慮して下さい)。 逆に一年以上とか間を空けるのは死を招くでしょう。 ディスクは壊れるものです。
#dump 0cusf 1500 /dev/rst8 /home
で、/homeのバックアップがとれます。 また、バックアップの取りたいdiskを持つマシンに、 テープ装置がない場合には、 例えばspicaのハードディスクのバックアップを取りたいけど spicaにはテープ装置がない時、 charlieにテープ装置があるとする時、 rdumpを使います。
#rdump 0cusf 1500 charlie:/dev/rst8 /usr/local
と、spicaで実行します。
また、これをリストアする時は
#cd /home
#restore rf /dev/rst8
または
#restore rf charlie:/dev/rst8
このとき、`r'オプションの変わりに、`i'オプションを使うと リストアするファイルを対話的に決められます。 ダンプした情報は/etc/dumpdatesに書いてありますから、 前いつバックアップをとったかの参考にしてください。
これにより、/usr/local/texというディレクトリがバックアップされました。
リストアは、
#cd /usr/local/tex
#tar xvpf dev/rst8
また先ほどと同じように自分がtapeドライブを持っていない場合は バックアップは
#tar cvf - ./tex | rsh charlie dd of=/dev/rst8
リストアはリストアしたいディレクトリに移って
#rsh charlie cat /dev/rst8 | tar xvf -
です。
NISを行なってない場合は、普通にShutdownをすればいいのですが、 NISの場合は、あらかじめ殺しておかなければいけないdaemonが あります。
NISでつながっている全てのマシンでautomount,lpdを psコマンドでプロセス番号を見て殺してから、 格が下(クライアント→スレーブサーバ→マスターサーバ) のマシンからshutdown -h nowを行ないます。 または、reboot,fastbootをルートで実行します。 もちろん、このとき他のユーザがログインしていないことと、 裏ジョブが走ってないことを確認してから、実行して下さい。 また、NFSサーバーマシンは最後にshutdownして、最初に立ち上げます。
/tmp/.get.*というファイル群は立ち上げ直しても消してくれてないか も知れませんので、気がついたら、消しておく必要があるでしょう。 もちろん誰かが仕事をしていない時にです。エディタ一つ起動しても /tmpに一時ファイルを作ってますので、それも間違って消してしまっては まずいでしょうから...
#cd /etc
#vipw
ここで、vipwはパスワードファイルをエディットするための専用の 命令です。環境変数EDITORにエディタの名前を書いておくと そのエディタが立ち上がります。これによりパスワードファイルへ の設定が終了したら、NISではネットワーク上での設定を行ないます。 やはり、マスターサーバー上で、
#cd /var/yp
#make
これにより、ユーザの登録は終了しますが、ユーザのディレクトリを 作ってやらなくてはいけません。ユーザの集まっているディレクトリ に移り、
#mkdir ユーザディレクトリ名
さらに、最低限のファイルをコピーしてそのユーザの所有権を 与えてやります。いま、Skelというユーザが標準的なファイルを持って いるとすると、
#cd ユーザディレクトリ名
#cp ~Skel/.login
#cp ~Skel/.cshrc
#cp ~Skel/.logout
#cd ..
#chown -R ユーザ名 ユーザディレクトリ名
#chgrp -R グループ名 ユーザディレクトリ名
以上のように、所有権と、グループを設定してやります。 ただし、-Rオプションはディレクトリに対して実行する時に使われます。
さて、ここで注意として、新しいソフトがうまく動くかどうかのテストは、 必ずルート以外の権限で行なって下さい。 ルートだと権限がつよすぎて取り返しのつかないことをしてしまう可能性があ ります。 ので、makeは、自分のIDで行なうか、それ専用のユーザ(例えば、src,adm) で行なって下さい。
さて、たいがいの場合ソースにはREADME,INSTALLなどのドキュメントが 添加されていますので、これを読んでその通りに作業を行なえばインス トールができます。ここでは、それがない場合の一般的なやり方を次の 3つの場合に分けて説明します。
xmkmf→make clean→make→make install(→make install.man)
と行なえば、簡単にインストールができます。 ここで、最後のmake installは、ルートになって実行します。 また、xmkmfはImakefileから、Makefileを作成するために、 imakeを呼び出すためのシェルスクリプトです。 ここで、インストールディレクトリは普通、 TeX 関係が/usr/local/bin/tex、X関係が/usr/local/bin/X11、 その他は/usr/local/binです。
このMakefileの中には、cleanやinstallの項が親切に ついている場合があります。 その場合は、make installとかやるだけで、 適当なディレクトリにインストールされます。 それがない時は自分でコピーします。
この場合も最後のインストールやコピーはルートになって行ないます。
rmapの見た目を変更するにはそのディレクトリの中の rmapconfをいじって下さい。
Control+G
で通常のプロンプト状態に戻ります。ただし、そのままでは何も見 えないと思います。Returnを押して下さい。画面下から、プロンプトが 現れます。
また、xdmのプロンプトを再表示したい時は、xというユーザ名でコン ソールからログインして下さい。パスワードは聞かれません。
#ps ax|grep xdm
と、入力してxdmのプロセス番号を確認して下さい。 つまり、次のような表示がされるはずですから、
154 ? IW 0:03 /usr/local/X11R5/bin/xdm -config /usr/local/X...
14056 ? IW 0:00 -:0 (xdm)
14064 p2 S 0:00 grep xdm
xdmを起動しているプロセス番号をみて(この場合154です)、 別のマシンや端末から、
#kill -HUP 154
とすれば、直るはずです。 また、/var/adm/xdm-pidというファイルにこの番号が書いてありますので、 それを見ても良いでしょう。 同じく/var/adm/xdm-errorsにxdmに関するログが出ていますから、 何かあった時にはこれを見て下さい。
この他に、/var/adm/lpd-errsはプリンターのエラーメッセージが 書き込まれるファイル、/var/log/authlog, /var/log/syslogなどの システムからのメッセージがありますので時おりチェックする必要 があります。
こんな時は、とりあえず何とかしてルートが ログインして、
世の中には、知らない方がいいこと知ってはいけないことがあります。 これもその一つです。一般のユーザは知らなくていいコマンドであります。 なぜなら、これによって、全然関係ない人でもルートになれてしまうのです。 その具体的な方法は、ここでは書きませんがそれほど恐ろしい意味も含んだ キー操作なのです。 さて、ここでこのキーを押したらそれで終りではありません。 それによって、不等号のプロンプト(>)、または、OKという プロンプトが出ているはずです。 もし、不等号のプロンプトが出ている時は、nを入力します。
>n
そうすると、OKというプロンプトに変わるはずです。 ここで、次のように入力します。
OK sync
こうすると、ハングした時の情報を整理して、再立ち上げをしてくれます。
一般の人は、知らなくてもいいことですが、TeX は一つの実行ファイルを リンクをすることで複数の命令を実行しています。 `ls -l'を/usr/local/bin/texでやって下さい。 jlatex,jslitex,latex,texのすべてのファイルがjtexファイルに シンボリックリンクしてあることがわかると思います。 で、実はこのjtexはシェルスクリプトなのです。
結果からいいますと、virtexというファイルがあり、これに添加するファイル を変えることによって複数のコマンドを実行しているわけです。 この添加するファイル(拡張子 `.fmt')はフォーマットファイルと呼ばれ、 環境変数`TEXFORMATS'で、それが存在するディレクトリを指定することが できます。
同様に、jtex.poolというファイルが、存在するディレクトリは、 `TEXPOOL'、fontdescというfontの情報が入ったファイルを示すのが `TEXFONTS'、スタイルファイル(拡張子 .sty)などのあるファイルを示すのが `TEXINPUTS'、\BibTeX 用のbibfileのあるところは`BIBINPUTS'に、 それぞれ`.login'ファイルに設定しておきます。 しかし、普通はデフォルトで設定した値そのままで使っているので `TEXINPUTS',`BIBINPUTS'以外は特に設定する必要はないと思います。 おいてある場所を変えた時に設定すればいいでしょう。
src%crontab -e
とすると、emacsまたは、viが立ち上がりますので、 次のような記述を書き加えます。
0 4 * * * /usr/bin/rm -f /var/tmp/.fontinfo
こうすると、毎日朝の4時にフォントのダウンロード情報ファイルを 削除します。
(注)今現在(1995.9)はTeXの印刷にはdvi2psを使用してdviファイルを PostScriptファイルに変換しています。画面に表示するにはghostview を通じてghostscriptを、PostScriptプリンタにはそのまま、lips3プ リンタにはlips3のドライバを組み込んだghostscriptを使用しています。
さて、METAFONTに関する命令は他に次のようなものがあります。
>mf ''\mode:=bitgraph;'' ''mag:=magstep(0);'' input etc.mf
と記述します。ここで、magstep内の数字は基準の大きさから何倍の大きさ を作るかを指定します。(すなわち、TeX でいうところのlarge,hugeのフォ ントのことです。)また、inputの後は入力ファイル名です。
このようにすると、etc.118gf, etc.tfmファイルができますので、 さらに、gfファイルをpkフォントに直し、フォントディレクトリに インストールする。 METAFONTの使い方は、METAFONT bookを見て下さい。
このインストールしたフォントを使えるようにするには、 定義のファイルが必要ですが、この書き方は、 マクロファイルのディレクトリにあるetclogo.texファイルを 参考にして下さい。
また、新しいフォントをインストールする時には /usr/local/src/TeX/contribに新たなディレクトリを作成し、 そこにインストールを行ない、pk,tfm,定義の各ファイルを それぞれ必要とされるディレクトリにシンボリックリンクを 張るようにしたほうが、TeX のバージョンアップをした時などに 便利です。