|
Solaris 2.5.1 以降のことしか分からないんですが、 > 昨日間違って /var/adm のfileと subdirectoryをすべて削除してしました。 そこにあるのはログファイルの類だけです。sulog とか loginlog とか messages とかです。ログファイルが決定的な意味を持たないのなら問題ないです。 どっちにしても、CD-ROM にあったとしても元には戻りません。 utmp とか utmpx とかはログインとかの記録を保持するファイルです。当然 boot した時間や shutdown した時間も記録するので、それで文句を言うのでしょう。 私はこれを更新する際には実にアバウトに # cat utmp > utmp # cat utmpx > utmpx とかで済ませています(環境は Solaris 2.5.1 ですが)。だから空のファイルが あれば問題ないかと思います。空のファイルを作っておけば良いだけなので、 スイッチをいれた直後に L1+a で ROM モニタモードに移行してから、 boot -s して、/var をマウントして touch コマンドあたりで空のファイルを 作れば良いかと思います。あるいは、起動時に utmp がないと文句を言われて 止まった時に CTRL-C とか打ち込んでもブートの続きが始まるかも知れません。 CD-ROM にこだわるのなら、やはりスイッチいれた直後に L1+a で ROM モニタ モードに移行してから、OK プロンプトに boot cdrom すれば CD-ROM から たちあがあります。Solaris 1.1.2 は知らないのですが、2.5.1 以降だと Openwin が使えて、cmdtool なんかも好きなだけ使えます。で、適当な ところに手動で /var をマウントしてからコピーすれば良いかと思います。 参考までに Solaris 7 のインストール CD-ROM の /var は次のように なっています。tar でコピーするとか、 手動で同じもの作っても問題ないんじゃないでしょうか? # ls -alRF /tmp/root/var/adm total 8 drwxrwxr-x 4 root sys 2048 Jul 31 1999 ./ drwxr-xr-x 16 root sys 2048 Jul 31 1999 ../ -rw------- 1 kmem kmem 0 Jul 31 1999 aculog drwxrwxr-x 2 tty tty 2048 Jul 31 1999 log/ drwxrwxr-x 2 tty tty 2048 Jul 31 1999 passwd/ -rw-rw-rw- 1 operator kmem 0 Jul 31 1999 spellhist -rw-r--r-- 1 root kmem 0 Jul 31 1999 utmp -rw-r--r-- 1 root kmem 0 Jul 31 1999 utmpx -rw-rw-r-- 1 tty tty 0 Jul 31 1999 wtmp -rw-rw-r-- 1 tty tty 0 Jul 31 1999 wtmpx ./log: total 4 drwxrwxr-x 2 tty tty 2048 Jul 31 1999 ./ drwxrwxr-x 4 root sys 2048 Jul 31 1999 ../ ./passwd: total 4 drwxrwxr-x 2 tty tty 2048 Jul 31 1999 ./ drwxrwxr-x 4 root sys 2048 Jul 31 1999 ../ # 長くってすみません |
|
rosegadenさん 回答どうもありがとうございます。 おっしゃる通り、空のファイルを作っただけで起ち上げに成功しました! あーよかった。 L1というのはKeybordについているのですか? その他色々わからないTerminologyがあるのですが、その辺は またゆっくり調べてみます。 ご指導どうもありがとうございました! |
|
はじめまして 実は今Linuxでデーモンプログラムの勉強をしてるのですけど、 よくわかりません。 デーモンプログラムってループして実行時に&でバックグラウンド でいいんでしょうか? HP探しててもサンプルソースが見つからないし‥ よろしかったら教えて下さい。お願いします。 |
|
> デーモンプログラムの勉強をしてるのですけど まずはここを読んで下さい。結構面倒です。 http://www.race.u-tokyo.ac.jp/~moro/unix-programmer/faq-j_2.html#SEC16 実行時に明示的に & でバックグラウンドにしなくても、 自力でデーモンとして常駐 (って UNIX ではあんまり 言わないか) するのが望ましい挙動です。 ところで Netscape6 が出ましたね。 http://www.netscape.com/index.html |
|
68user さんありがとうございました。 自分はデーモンについての知識がまだたりませんね。 HPを見て勉強します。 |
|
お忙しいところすいません。初めまして、はぴおと申します。 ネットワークプログラミング大変分かりやすく、勉強させて いただいております。 このサイトを参考にPerl(CGI)でPOP3クライアントをつくったのですが、 一つだけ分からないことがあります。 色々な本やサイトを見ても、FROMヘッダーにはメール送信者の名前と メールアドレスが入ると思うのですが、自作POP3クライアントで メールを受信した場合、FROMヘッダーにはメール送信者名しか入りません。 同じメールをOutlookで受信してみると、同じメールでもちゃんとFROM ヘッダーに、メールアドレスが付加されてました。 以下自分の推測なのですが、色々と理由を自分なりに考えてみました。 ・自作POP3クライアントが正しくメールを受信できていない。 ・正しくメールを受信できているが、ほかにやらなければいけないこと がある 昨日一日、色々なサイトをまわったり、本を調べたり、MLで聞いて みたりしましたが、分かりませんでした。 藁にもすがる思いでココに書き込んでます。 どうかご意見をお聞かせ下さい。 それでは宜しくお願いします。 以下参考になるか分かりませんが、私の環境です。 -OS: WIndows2000 -Perl : ActivePerl Build 620 -apache_1_3_12_win32 はぴお lovex@bd.mbn.or.jp |
|
初めて投稿させていただきます。 UNIX歴2か月の初心者で 今初めてシェルプログラミングに挑戦してます。 作成したいものは、lastcommで前日のログ履歴を出し、管理者宛にメールを 送るというものなのですが早速つまずいてしまいました。 現在の日付(MON,DAY)を取得するまではできるのですが、”前日”をどうやって表現すればいいのかわからず困っています。 DAYを-1しようとしたのですがうまくいきません。 以下のように記述しています。 どなたかご存知の方、ご教授お願いします。 LANG=C; export LANG BUF= set `date` echo $2 # "Nov"と表示されます echo $3 # "15"と表示されます expr $3 -1 > $BUF # expr: syntax errorになります |
|
68userさんいつも助けていただいて感謝です。 case Expose: while (1){ if ( ! XCheckWindowEvent(display, window, ExposureMask, &event) ){ break; } これを使ってみたところちゃんと一回だけ描画してくれました。 こんな関数もあったんですね。 勉強不足で申し訳ありません。 根本的に解決できなくても動いてくれれば とりあえずは解決したと思っておきます。 本当にありがとうございました。 またお世話になるかもしれないですが、 そのときはよろしくお願いします。 |
|
初めましてbookと申します。 UNIXのgccで作成したライブラリを、CCでコンパイルを行う時に 使用できるのか調査しています。 gcc -c share_test.cc ar cr libtestshare.so share_test.o ranlib libtestshare.so CC test_gcc.cc -L. -ltestshare 現状は、ライブラリ内の関数を呼び出す箇所で、 コンパイルエラーになってしまいます。 そもそも、このような使い方が出来るのかどうか、 ご存知の方がいらっしゃいましたらご教授ください。 よろしくお願いします。 |
|
> ”前日”をどうやって表現すればいいのかわからず困っています。 > DAYを-1しようとしたのですがうまくいきません。 > expr $3 -1 expr $3 - 1 です。- と 1 の間にスペースが必要です。 しかし、これだと毎月1日に実行すると 0日となって しまうので、根本的にまずいです。というわけで、-v オプションを使いましょう。 % date -v-1d で1日前の日付が得られます。ただし、Solaris などの date には -v オプションはないので、sh でやるなら perl などを呼び出すのがいいでしょう。 # なので、最初から perl で書くのも手です。 > 現状は、ライブラリ内の関数を呼び出す箇所で、 > コンパイルエラーになってしまいます。 どういうエラーが出るのかちゃんと書きましょう。 FreeBSD と Solaris ではこの方法でうまく動きました。 あと、これは static link 用のライブラリですので、 拡張子は .so より .a が適切でしょう (違うかなぁ?) > 自作POP3クライアントでメールを受信した場合、 > FROMヘッダーにはメール送信者名しか入りません pop は、ただ単にヘッダとボディを送信するだけです。 From がどうだとか Subject がどうだとか、そういう データ内部には立ち入りません (基本的には)。 Outlook で「メールのソースを表示」したものと、 自作 pop3 クライアントの出力の、From: 周辺を両方 見せて下さい。 |
|
前日の日付取得の件 68userさん、ご教授ありがとうございました。 Solaris環境なのでシェルで作成するのはやめます。 perlも少し触ったことがあるのですがC言語の方が経験が長いので Cで作成しようと思っています。 が、一般的 or perlの方が効率的なのでしょうか? |