システムコールについて調べているのですが、 OS毎に、システムコールに違いがあります。 SystemV Release4.0(SVR4.0) の 全システムコールの種類を 知りたいのですが、どこかに情報はありませんでしょうか? |
こんにちは 今、qpopper2.53というPOP3でメールを受信できるようにする モジュールをインストールしているのですが、 解凍して、./configureをかけた際、 loading cache ./config.cache checking whether make sets ${MAKE}... yes checking for gcc... gcc checking whether the C compiler (gcc ) works... no configure: error: installation or configuration problem: C compiler cannot create executables. というメッセージがでてMakefilesなどのファイルが生成されません。 Cコンパイラがconfigureのプログラムを実行可能にしてくれないらし いのです。 LIBSの設定は"-lsocket -ldl -lnsl"と設定してあります。 ccというのが/usr/abiccs/necbin 内にあったので、 そのパスを指定したのですが、いざ中身をviでみてみたら #!/sbin/sh #ident "@(#) cc.m4,v 1994/01/26 06:37:31 1.3" /usr/abiccs/bin/cc -Kssizeof -Yi,/usr/abiccs/necinclude -YP,/usr/abiccs/neclib:/ usr/abiccs/lib:/usr/lib "$@" -lnec という感じになっていました。 どうもこのようなモジュールやツールなどを解凍、インストールする時 ドキュメント通りにはいきません。 UX/4800特有の設定などをしなければならないのでしょうか。 それから、CC コンパイラはどこかで手に入れられるものなのでしょうか? よろしくお願いします。 |
> SystemV Release4.0(SVR4.0) の 全システムコールの種類を > 知りたいのですが、どこかに情報はありませんでしょうか? すいません、知らないです。SVR4と言ってもいろいろありますから、 全部調べるとなると大変でしょうね。 > ccというのが/usr/abiccs/necbin 内にあったので、 あぁ、ずっと HP-UX かと思ってたら、NECのUXだったのね。 > そのパスを指定したのですが、いざ中身をviでみてみたら スクリプトでもバイナリでも、要は動けばいいんです。 で、動いたんですか? ちなみに /usr/abiccs/necbin/cc は ANSI C準拠コンパイラだと思います。 > それから、CC コンパイラはどこかで手に入れられるものなのでしょうか? そのシステムにgccは入ってませんか? ないようなら ftp://ftp.eos.hokudai.ac.jp/pub/gnu/gcc/ から お好きなバージョンをどうぞ。2.8.1あたりが安定してるんでしたっけ? ユニ男さんへ。僕が UX 知ってるなら教えてあげられるけど、 残念ながら使ったことがないし、これまでいくつか回答しましたが どうも的外れな答えしか書いてないような気がします。近くにUNIXを 知ってる方がいたら その人に質問するか、あるいは fj.unix などで 質問する方がいいと思います。 |
いつもお世話になってます。 >あぁ、ずっと HP-UX かと思ってたら、NECのUXだったのね。 UX/4800なんです。周りにあまり聞ける人がいなくて・・・ >スクリプトでもバイナリでも、要は動けばいいんです。 >で、動いたんですか? ちなみに /usr/abiccs/necbin/cc は >ANSI C準拠コンパイラだと思います。 動きませんでした。 >そのシステムにgccは入ってませんか? ないようなら > ftp://ftp.eos.hokudai.ac.jp/pub/gnu/gcc/ >から お好きなバージョンをどうぞ。2.8.1あたりが安定してるんでし >たっけ? GCC入っています。PATH指定しても下のメッセージが出てしまいます. 稼動していないみたいなんです。 >どうも的外れな答えしか書いてないような気がします。近くにUNIXを >知ってる方がいたら その人に質問するか、あるいは fj.unix などで >質問する方がいいと思います。 そんなことありません。とても参考になります。こちらこそあやふやな質問ばかりで迷惑をかけているのではないか常日頃思っています。 >近くにUNIXを知ってる方がいたら その人に質問するか、あるいは >fj.unix などで質問する方がいいと思います。 fj.unix ですね。探していってみたいと思います. ちなみにSOCKS5の件ですが、 setenv LIBS "-lsoket -ldl -lnsl" として./configure→makeで解決しました。 |
>すいません、知らないです。SVR4と言ってもいろいろありますから、 >全部調べるとなると大変でしょうね。 米国Sun社のサイトにありました。ご参考まで。 http://www.sun.com/smcc/solaris-migration/docs/transition-guide_2.5/apx_b.html |
CGIのファイルをサーバにおいて パーミッションを変更しようとすると、 下のように出て変更できません。 502 SITE command not implemented. どなたか助言をお願いします。 |
はじめまして、かんじゃと申します。 こちらのホームページで 「UNIXネットワークベストプログラミング入門」技術評論社 が紹介されています。 じつは小生もこの本のプログラムを 実行してみたのですが seg fault のメッセージが表示され てうまく実行できません。 >文字列リテラルを書き換えており、 FreeBSDで >実行するとコアダンプしてしまった(どちらもC >言語中級者なら 自分で問題箇所を修正できるレベル)。 というコメントが書かれておりましたが、具体的にはどういった ことが問題なのでしょう? よろしければご教示、お願いします。 |
はじめまして、かんじゃと申します。 こちらのホームページで 「UNIXネットワークベストプログラミング入門」技術評論社 が紹介されています。 じつは小生もこの本のプログラムを 実行してみたのですが seg fault のメッセージが表示され てうまく実行できません。 >文字列リテラルを書き換えており、 FreeBSDで >実行するとコアダンプしてしまった(どちらもC >言語中級者なら 自分で問題箇所を修正できるレベル)。 というコメントが書かれておりましたが、具体的にはどういった ことが問題なのでしょう? よろしければご教示、お願いします。 |
メールアドレスの記入ミスで同じ内容のものを2度書き込んで しまいました。 申し訳ありません。 |
> 502 SITE command not implemented. FTPでのパーミッションの変更は、SITEコマンドを使用するんですが、 相手側のFTPサーバにはSITEコマンドが実装されていないので、 できない、ってことです。telnetでログインしてchmodするか、 管理者に頼んでまともなFTPサーバに置き換えてもらうしかないです。 > seg fault のメッセージが表示されてうまく実行できません。 現在、手元には その本もUNIX環境もないので、確かなことは 言えませんが、どこかで char *buf="abc" などと初期化して いる部分があると思います。で、それを buf[0]='X' などと 変更していますが、そこで落ちるはずです。"abc" は文字列 リテラルなので変更することはできないから(変更できる 環境もありますが)。なので、char buf[]="abc" などと書き 換えれば動いたと思います。 *buf="abc" と buf[]="abc" の違いについては、ネット上に 落ちてる「C言語FAQ」に詳しく書いてあります。 |
>> seg fault のメッセージが表示されてうまく実行できません。 > 現在、手元には その本もUNIX環境もないので、確かなことは > 言えませんが、どこかで char *buf="abc" などと初期化して > いる部分があると思います。・・・以下省略 さっそくのご教示ありがとうございます。 以上参考にさせていただき、さらに修行していきます。 |
文字列リテラルは、昔のCでは、結構普通に書き換えたりしてたみたいです。 unixの古いccのライブラリでも、この書き換えをやっているという話を聞いたことがあります。 (聞いたのは、一時ファイルの名前を作るライブラリ関数だったような…) ANSI C以前は、自動変数の場合には、配列の初期化ができなかったために、 便宜的に利用してたのかもしれません。それとも、スタックに文字列を確保しても、 これを関数の呼び出し元に返すことはできないので、mallocを使う代わりに 静的領域を利用してたのかな…にしても毎回同じ領域が使用されるので、 static にすれば済むことって気も…? いずれにしても、ROM化やコンパイラが同じ文字列リテラルを共用させるために、 ANSI C以降は、文字列リテラルの変更は未定義とされたようです。 |
> いずれにしても、ROM化やコンパイラが同じ文字列リテラルを共用させるために、 に加えて、複数プロセスでデータセグメントを共有させるため、 例えば ls を並行して2個実行した場合、スタックとヒープは 2個用意されるが、データセグメントは1個しか用意されない、 と思ってるんですが、全然違うかも。 # アセンブラやってないんで、ここらへん いまいち感覚的に理解できない。 |
>に加えて、複数プロセスでデータセグメントを共有させるため、 DOSが長いもので、マルチプロセスのメモリ管理はよく分からないです(苦笑)。 >例えば ls を並行して2個実行した場合、スタックとヒープは >2個用意されるが、データセグメントは1個しか用意されない、 とすると、文字列リテラルだけでなく、静的な変数まで共有される 訳ですよね。 素人考えでは、ホントにそれで良いの?と思っちゃいます… 例えば、コマンドラインオプションで設定されるフラグが グローバル変数だったりすると(あり得ますよね)、前後のlsの オプション指定が異なる場合に、先のlsのフラグまで影響を 受けちゃうおそれがないのかなぁ…? |
すいません、よく考えずに適当なことを言ってしまいました(^^; では、2個のlsで共有される領域は何だろう? |
>では、2個のlsで共有される領域は何だろう? うーん、unixのメモリ管理はよく知りませんです(苦笑) |
ここすごいですねっ!内容がすごく充実しててびっくりしました。<BR> 分からないことがあったら来てみようと思います。<BR> ところで質問です。<BR> ○○○.zip のようなファイルはどうやって解凍すればいいのでしょうか?<BR> gzip -d とか uncompress も試してみたけど、やっぱりだめでした。<BR> UNIXでは解凍できないんですか? |
> ここすごいですねっ!内容がすごく充実しててびっくりしました。 ども。ついさっき更新しましたのでよろしく。 http://X68000.startshop.co.jp/~68user/unix/history.html > ○○○.zip のようなファイルはどうやって解凍すればいいのでしょうか? unzip、zipなどのコマンドがあります。unzip -l hoge.zip で一覧表示。 unzip -e hoge.zipで展開です。 |
私もここのファン(?)ですが掲示板の投稿は初めてです。早速ですが、UNIXのコマンドについて教えて下さい。 su - username この時のハイフンはどんな意味を持つのでしょうか? |
FreeBSD の su ならば - は -l と同じです。 マニュアル: http://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&man=su&dir=jpman-3.2.0%2Fman ソース: http://www.jp.freebsd.org/cgi/cvsweb.cgi/src/usr.bin/su/su.c?rev=1.29.2.2 多分他のUNIXでも同じだとは思うけど、確信はありません。 |
ありがとうございます。 ご教示の通り、 - と -l は同じでした。 |
WindowsでFTPサーバのソフトを作成したいのですが、 よくわかりません。UNIXの場合は拝見させて頂いたのですが winの場合はちょっと違うみたいでして・・・。 宜しければレスお願い致します。 |
すいません、Windows環境は持ってない&使ってないので わかりませんです。 # FTPクライアントではなくて、「FTPサーバのソフト」なんですか? # いわゆる ftpd を作成されるのですか? |
>FTPクライアントではなくて、「FTPサーバのソフト」なんですか? >いわゆる ftpd を作成されるのですか? はい、ftpdです。1ヶ月ほど前より悩んでおります。 RFC日本語版やら、winsock本を読んでいるのですが、 どうしてもFTPportが開いてくれないのです。 >すいません、Windows環境は持ってない&使ってないので >わかりませんです。 いえいえ。私もわからなかったので、ご存知かと思いまして 質問しました。有難う御座いました。また悩み続けます(^^;)。 |
echoサーバのような単純なサーバではうまくいってるんでしょうか? まずはそういう簡単なサーバを作りながら winsock を理解しては どうでしょう。 # winsockを知らない人間が言う言葉ではないな(^^; ## 既にやっておられたらすいません。 |
>## 既にやっておられたらすいません。 全くやってなかったですが、今、ソースは見つけました。 http://www.macnica.co.jp/soft/prog/win_echo.txt こういうので良いのでしょうか? >まずはそういう簡単なサーバを作りながら winsock を理解しては >どうでしょう。 了解しました。echoサーバっていうのは、サーバーにあるMSGを 送るとそのMSGを送り返してくる機能を持ったものみたいですね。 調べてみました。ちょっとソースを理解してみます。 有難う御座いました。 |
> こういうので良いのでしょうか? そういうのです。 それで Winsock 上での socket・bind・listen・accept を覚えてから、 ftpd を作る、と。最初からコネクション2本な ftpd にチャレンジする よりは簡単だと思います。 |
有難う御座いました。 頑張ってみます。 |
UNIXでフロッピーディスク(FD)に書き込んでWindows98で読み込む事が出来るのですか。 またその逆はできるのですか。できるとしたらどのようなファイルが出来るのですか。 教えて下さい。 |
# Who are you? UNIXで書いてWinで読む、Winで書いてUNIXで読む、両方できます。 UNIX/Win の両方から読める形式は、FAT ファイルシステムというものですが、 Windows で普通にフロッピーをフォーマットすれば FAT になります。 UNIX でフロッピーを見る場合は mount という作業が必要になります。 FreeBSD の場合はこちら。 http://www.jp.FreeBSD.ORG/QandA/HTML/350.html 他の UNIX 系 OS でも似たようなもんだと思います。UNIX からの 読み込み・書き込みは、ふつーに cp・mv・エディタなどで /mnt 以下のファイルを操作すればいいでしょう。 あるいは UNIX からフロッピーにアクセスする際には、mtools を使う という手もあります(たしか mount は必要なかったような)。 |
始めまして 始めてここにきました。 ア!? だから始めましてなんですね^^;; 偶然検索していて見つけました。 今日はとってもお勉強になりました。 また、ちょくちょく来ますです♪ 頑張ってくださいね。 敬具。 |
はじめまして、塩蔵です。 すごく充実した内容ですね。 UNIX初心者の僕としましては、びっくりです。 突然ですが、質問あります。 EUCコードで、全角Aは、16進でa3c1となるんですが、 あるファイルに全角Aを書いて、 odコマンドで、”od −x ファイル名”を実行すると、 c1a3と表示されてしまいます。 なぜ、EUCコードで、全角Aは、16進でa3c1であるのに、 c1a3と表示されるのでしょうか? それとも、odコマンドの使い方が間違ってるのでしょうか? お願い致します。 |
> c1a3と表示されてしまいます。 http://www.cs.gunma-u.ac.jp/~j5306050/net/c-http-1.html に少し書いてありますが、バイトオーダーの違いです。 試してみると、Pentium のようなリトルエンディアンマシンでは c1a3、 Sparcのようなビッグエンディアンマシンでは a3c1 になりました。 しかし、バイトオーダーを意識させるダンプコマンドってのは アリなのかなぁ…? |
システムリプレイス時のトラブルで、24日朝〜25日23時の間の メールが全部消えてしまいました(25日21時にPOPを覗くと数十通 あったけど、その分が全部消えてしまった)。 「alloc:/ file system full」な方と、出版社の方、 申し訳ありませんが、もう一回メール下さい。 多分私信はその2通だけだったと思うけど、他にメール出してた方が、 いらっしゃいましたら、すみませんが再送して下さい。 |
日付を間違えてた。 システムリプレイス時のトラブルで、24日朝〜24日23時の間の メールが全部消えてしまいました(24日21時にPOPを覗くと数十通 あったけど、その分が全部消えてしまった)。 です。 |
こんにちわ。 自分のページにカウンターを置きたいのですが、 fluteでCGIは使えますか?掲示板は可能なんですが 他から取ってきたカウンタはエラーが出て良く分からないんです。 ここにあったカウンターもいただきましたが、どう変更して、どのようなファイルをどう置いたらいいのかよくわかりません。助けてください。 |
> fluteでCGIは使えますか? 使えます。勝手に覗かせてもらいましたが wwwcount.cgi の内容が変です。 コマンドライン上から % perl -c wwwcount.cgi とすると、 Unmatched right bracket at wwwcount.cgi line 75, at end of line syntax error at wwwcount.cgi line 75, near "}}" wwwcount.cgi had compilation errors. となります。改行コードの問題でしょうか? 最初からもう一度転送しなおして下さい。少なくとも % perl -c wwwcount.cgi でエラーが出る状況では、CGI経由でも絶対に動きません。 > ここにあったカウンターもいただきましたが うちのは設置手順がめんどくさいので、お勧めしません :-) |
できました。自宅のパソコンでダウンロードしたものを 学校に転送してやると、やはり改行コードがおかしくなってるようでした。 結局、学校の端末からもう1度作り直しました。 さすがプロ!ありがとうございました(笑) |
こんにちは。 新しいサーバーを構築して、そのサーバーに現サーバーの /etc/passwd と /etc/shadowファイルを移行したいので すが、試しに1つだけ /etc/passwd をそのまま移して( group,ホームディレクトリ、シェルのパスは変えました。) 、/etc/shadowはそのまま現サーバーの/etc/shadowを移し ました。 そのあと、 > pwconv > creatiadb として、メールを送受信してみたのですが、ログインは認識 しているようなのですが、パスは認識してくれないようです。 何か、他にやる事が有るのでしょうか? よろしくお願いします。 |
Linux ですか? 僕は FreeBSD 以外知らないのですが、 > パスは認識してくれないようです これは、「ログインシェルが認識されない」という意味ですか? あるいは「パスワードが認識されない」という意味ですか? 前者なら、一般的な UNIX では、ログインシェルとして使う シェルは、事前に /etc/shells にフルパスで書いておく必要が ありますが、それはいじりましたか? 後者ならわかりません。もちろん現サーバのパスワードを 入力したんですよね? あとLinux って、デフォルトではシャドウ パスワードを使わないそうですが、新サーバのそこらへんの設定は しました? |
ちょっと前の話。アドレス空間は低位から順に テキストセグメント text ... マシン語コード データセグメント data ... static な初期化済変数 bss ... static な未初期化変数 heap ... malloc() で確保される領域 スタックセグメント stack ... auto変数 というふうに使われるので、UNIX で共有されるのはテキストセグメントだけ。 …かな? たぶん。 # うう、gas の吐くアセンブリがわからん。ebp,eax レジスタってナニ? |
こんちは。自分の名前をGOO検索したら、なんか BBSが有ったので、やってきました。 ネットを止めてカフェでたまにやってるいまでも 自分の偽物が居て結構楽しいです。 今度インターネットを始める時は CGIが使えるプロバイダを選ぼうと思うので その時は、管理のキビしーBBSの作り方を 教えてください。では、失礼します。 |
学校のUNIXで"http://www.freemail.ne.jp/" のようなfreemailを使うことができるのですか |
> こんちは。自分の名前をGOO検索したら、なんか > BBSが有ったので、やってきました。 お久しゅう。2年振りくらいかね。元気でやっておられるようで なにより。こっちもそれなりに生きてます :-) > 学校のUNIXで"http://www.freemail.ne.jp/ > のようなfreemailを使うことができるのですか 名前(ハンドル)さえ名乗れない人に教えるほど、僕は心が広くないので。 出直してらっしゃい。 # 名前書かない人って、こちらが回答しても返事を返してこないから嫌い。 |
初めましてAyaと申します。 検索で偶然見つけたのですが、内容の充実ぶりに驚きました。 突然なのですが質問させていただきます。 sedmailで添付ファイルを送るにはどうしたらよいのでしょうか? 私は何も知らないと言っても過言でないくらいUNIX初心者なので、 的外れなことを言っていたらすいません。 |
> sedmailで添付ファイルを送るにはどうしたらよいのでしょうか? 自分で MIME ヘッダを付ければいいです。まず http://www.mew.org/Newsletters/3.html をよく読んで、multipart mail の構造を理解すると。で、sample.txt に From: my@mail.address To: foo@bar.com Subject: This is test mail. Mime-Version: 1.0 Content-Type: Multipart/Mixed; boundary="--Next_Part--" Content-Transfer-Encoding: 7bit ----Next_Part-- Content-Type: Text/Plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit ほげ ----Next_Part-- Content-Type: Text/Plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit ふが ----Next_Part---- などと書くと。そしたら % nkf -j < sample.txt | sendmail foo@bar.com で送信です (nkf で文字コードをiso-2022-jpに変換してるわけ)。 勝手に MIME ヘッダを付けてくれるソフトもあるんじゃないかと 思うんですが、残念ながら僕は知りません。 |
始めまして二太郎と申します。 大学で急にメールサーバーの管理をさせられてしまいました。 sedmailを使ってメールの送受信のテストをしたところ、「$ mail」 としてメールを読むとメールの本文が半角だけの場合はヘッターと 本文ともに読めるのですが、本文に全角の文字を使うと「*** Mess age content is not printable:delete, write or save it is to a file ***」とでてメールの本文が読めません。しかし「$ mail | more」としてメールを読むと全角の文字が含まれるメールでも読む ことが出来ます。「$ mail」としても全角の含まれるメールを読め るようにしたいのですが、初心者の私にはどの辺から手を付けてい いのか分かりません。何かアドバイスをいただけたらと思い、書き 込みをさせていただきました。よろしくお願いします。 ちなみに今日1日調べて私なりに考えたのは「sendmail.cf」の「KA NJI_CONVERSION」の所かと思っています。どうでしょうか? |
> *** Message content is not printable:delete, write or save it is to a file *** このメッセージを出してるのは mail コマンドであって、sendmail ではないです。 % env LANG=ja mail % env LANG=ja_JP.JIS mail などとするとダメですか? あるいは日本語対応の mail コマンドが用意されて ないですか? ガッコの Solaris では /bin/mail、/usr/bin/mail は LANG をいじっても 「*** Message content is…」となってしまいましたが、/usr/ucb/mail では LANG をいじらなくてもできました。 # はて、Solaris の /bin/mail・/usr/bin/mail では日本語メールは # 読めないのかなぁ…? > $ mail | more としてメールを読むと全角の文字が含まれるメールでも読む > ことが出来ます。 デフォルトでは文字が不正かどうか調べるけど(結果的に日本語が含まれていると 「表示できない」と判断されることもある)、パイプで他のコマンドに渡すときは そのまま渡すというコマンドは結構あります。例えば ls なんかもそうですね。 日本語を含むファイル名を作って ls で見ると、日本語部分は ??? などと表示 されますが、ls | cat とすると、ls はファイル名を変換せずに cat に渡します。 |
ありがとうございました。 添付ファイルを送ることに成功しました。感激♪ また、質問することもあると思いますが、 そのときは、またお願いします。 |
レス本当にありがとうございました。 さっそくLANGをいじってみましたが、私の大学も solarisなのでダメ でした。しかしメールソフト(Windous95用)を使えば、きちんと読 めるので、今のところメールの利用者からは問題がでていないので 困っているのは私だけのようです。(笑) 急がなくてもいいようなので、もう少しいろいろと試してみたいと 思います。 UNIXの勉強が全然足りないのでこのページを参考に頑張っていきま すので今後またお世話のなるかもしれませんがよろしくお願いしま す。 |
思い出した。SystemV 系 UNIX には mailx コマンドというのが あって、これなら日本語が通ります。 |
「mailx コマンド」を今、家からtelnetでログインして試したと ころ、日本語が通りました!! これでぐっすり眠れそうです。 本当にありがとうございました。 |
再び、質問させていただきます。 テキストデータを添付することはできたのですが、 バイナリデータの場合どうもうまくいきません。 符号化して書きこまなければならないのでしょうか。 もしそうなら、どうやって符号化するのでしょうか。 それとも、他に方法があるのでしょうか。 どうか御教授お願いいたします。 |
> バイナリデータの場合どうもうまくいきません。 次にこの質問がくるんじゃないかと予想はしてました :-) バイナリは http://www.mew.org/Newsletters/3.html の 「安全な符号方式の定義」のように、 Content-Type: image/gif; name="hoge.gif" Content-Transfer-Encoding: base64 LS0tIGRyYWZ0LW5ndHJhbnMtdHJhbnNsYXRvci5vcmlnCVN1biBOb3YgMTUgMTY6MzI6NDYg MTk5OAorKysgaWQtdHJhbnMJU3VuIE5vdiAxNSAxNToxNDo1NCAxOTk4CkBAIC0xLDggKzEs MTIgQEAKICNyZXYgMDAuMDIKIEludGVybmV0LURyYWZ0ICAgICAgICAgICAgICAgICAgICAg と、適切な MIME TYPE を付けた上で、BASE64 でエンコードする必要があります (name="hoge.gif" は必要なら付けてください)。なので、プログラム書いて 自動化しないと苦しいでしょう(まぁ手動でやってるわけじゃないんですよね?)。 perl がわかるなら http://www.cc.rim.or.jp/~ikuta/mime_pls/ を使って、 open(GIF,"hoge.gif"); $buf = join("",<GIF>); require 'mimew.pl'; $data = &mimeencode($data); などとするのが簡単ですかね。最後の &mimeencode は $data = &bodyencode($data); $data .= &benflush; だったかもしれない。試してみて下さい。 |
あ、やっぱり mimeencode じゃうまくいかないや。 mimeencode は =文字コード?エンコード方式?BASE64化されたデータ= という MIME 形式に変換します。一方、bodyencode は BASE64化します。 今回は MIME 形式(正確な用語じゃないかもしれない)じゃなく、 BASE64 のデータが欲しいので、bodyencode を使って下さい。 mimeencode はメールヘッダなどのエンコードに使えますね。 |
ようやくできました。 やっぱり、エンコードしなくてはいけなかったのですね。 ありがとうございました。 |
ウインドウズが一番だぜかかって来い |
tcshの補間機能の説明について補足です。 Ctrl-dは補間そのものではなく補間候補をリストし、 実際の補間にはTabを使うようです。 |
おぉ、歌って踊れるハッカーを目指していらっしゃる にゃんさんの居られる研究室の方(長い)ですね。 UNIX/FreeBSD のえらい人が身近にいるなんて、うらやましい。 # にゃんさんは僕のことを知らないです。念のため。 > 実際の補間にはTabを使うようです。 TABのことをすっかり忘れていました。今度更新するときに直して おきます。ありがとうございました。 |
はじめまして。 他のユーザーがファイルを使用していることを確認するfuserコマンドがうまく使えません。fuser -u filenameと指定するだけではだめなのでしょうか?またこのコマンドはvi等で使用しているだけでは作動しないのでしょうか? |
はじめまして。 他のユーザーがファイルを使用していることを確認するfuserコマンドがうまく使えません。fuser -u filenameと指定するだけではだめなのでしょうか?またこのコマンドはvi等で使用しているだけでは作動しないのでしょうか? |
ふーん、SystemV には fuser ってコマンドがあるのね。 で、fstat は BSD only なのか。 > vi等で使用しているだけでは作動しないのでしょうか? vi は emacs はオープンしてバッファに読み込んだらクローズして しまうので無理だと思います。tail -f filename などオープンしっぱなしの プロセスなら表示できます。 |
どーも。はじめまして。 セガBBS過去ログすごいですね。 こういうことってできるんですね。 そこで、便乗要望、、。 比較的新しい99年7月辺りの過去ログ とかって、みることできますかね、、? どうか、宜しくお願いします。 |
一部のBBSだけですが、お肉さんのとこで取ってるはずです。 http://www.lunartecs.ne.jp/~segabito/fushigi.html |
どもども^^; DCやサターンの人もいるかもしれないので、 ↓こちらを紹介したほうがいいかもしれません http://gamelay.usami.com/~segabito/ 19日から12月15日まで研修で南浦和の寮生活なので、 その間はシステムの改良・変更はあまりできなくなります。 ここ数日は原因不明の不調でログが飛びまくっていますが、 果たしてどうなることやら・・・ 帰ってきたらLinuxも勉強するぞー |
プロバイダーを見つけました。 よく雑誌で見るプロバイダーなので イマイチ信頼度がひくいんですけど CGIが使える見たいなので、決めちゃおうかなぁ っておもってます。 http://www.interq.or.jp/misc/man/ftp/usercgi.html これってCGIが使えるってことでスヨね? では、又来ます。:-O |
interq って zeus っていう WWWサーバなんだよね。できれば apache っていうのがお勧めなんだけど。あと、そこに書いて あるように、#exec cmd/#exec cgi は使えません。 いろいろ設定をいじったり、深く使いたいなら他のところを 探した方がいいんじゃないかね。まぁ、どこがいいかってのは わからないんだけど。 でも簡単な CGI を設置できればいいということなら、 interq でも OK だと思います。 |
はじめまして。 私はUNIX初心者なのですが勉強してサーバー構築手順書、C/S設計手順書を作りたいと思っています。分かりやすい本などをどなたか教えていただけませんか? 熱意はあります。宜しくお願いします。 |
サーバを構築したいということなら、「FreeBSDでサーバ構築」 「Linuxでサーバ構築」とかいう本が結構出てます。それを手に 入れるのが近道じゃないでしょうか。ただし僕はそういうのを 買ったことはないので、どれがお勧めかはわかりません。 本屋で手に取って内容を吟味して下さい。 まぁ、apache/bind/sendmail/pppd あたりの設定方法が さらっと書いてあるだけなので、もっと深く知りたければ O'Reilly の本を買うことになるでしょう。 |
68USERさん、アドバイスありがとうございます。 早速検討してみます。 |
ご無沙汰してます。 apache の .htaccess のネットマスクについて教えて頂けないでしょうか? ネットマスクがマスクする部分(ビットが0の部分、または、より右側のビット) に対応するIPアドレスのビットは、0にするのか1にするのかということ なのです。 例えば、133.205.78.73〜133.205.78.79 のホストのアクセスを禁止する場合、 (なお、2進と10進は以下の通りです。 01001 001b = 73d 01001 111b = 79d 11111 000b = 248d ) <Limit GET POST> order allow,deny allow from all deny from host </Limit> の host の指定方法なんですが、 133.205.78.72/255.255.255.248 又は 133.205.78.72/29 とすべきなのか、それとも 133.205.78.79/255.255.255.248 又は 133.205.78.79/29 なのでしょうか? http://japache.infoscience.co.jp/japanese_1_3/manual/mod/mod_access.html には、 > (すなわち 10.1.0.0/16 は 10.1.0.0/255.255.0.0と同じです) とあるんで、この例では、マスクされるビットが全部0になってますよね (10.1.0.0の最後の2バイト)。 でも、バイト単位でない場合には、マスクされるビットを全部1にしてる 例もみたものですから↓ http://www.med.teikyo-u.ac.jp/~morikawa/howto/access.html の >allow from 202.253.111.0/255.255.252.0 あるいは 202.253.111.0/22 では、111d = 01101111b ですからマスクされるビットは1になってます。 それとも、バイト単位の指定の場合だけ0にしてもいいのかな? |
多分「どちらでもよい」だと思います。 133.205.78.72/29 は、 10000101 11001101 01001110 01001000 のうち、最初の29ビットにマッチするもの を表すので、10000101 11001101 01001110 01001??? にマッチし、 結局 133.205.78.72〜133.205.78.79 にマッチする。 一方 133.205.78.79/29 は、 10000101 11001101 01001110 01001111 のうち、最初の29ビットにマッチするもの を表すので、10000101 11001101 01001110 01001??? にマッチし、 結局 133.205.78.72〜133.205.78.79 にマッチする。 ではないでしょうか。ネットマスクの意味からいって、 ネットマスク*外*のビットには、とくに意味はないと思います。 ただ、意味なくビットを立てるのはわかりにくいので、 僕なら 133.205.78.72/29 を選びます。 あと、わかっておられるとは思いますが、133.205.78.72/29 だと 133.205.78.72 自身も含まれますので、 > 133.205.78.73〜133.205.78.79 のホストのアクセスを禁止 にはなりません。 # 133.205.78.72/29 というドメインがあって、133.205.78.72 が # ゲートウェイアドレスなら構いませんが。 |
> # 133.205.78.72/29 というドメインがあって、133.205.78.72 が > # ゲートウェイアドレスなら構いませんが。 あれ、ホスト部が All zero な IP アドレスってゲートウェイじゃないかも。 133.1.0.0 とか 133.2.0.0 などのIPアドレスって、何て呼ぶんでしたっけ…。 |
おお、すばやいご回答、ありがとうございます。 >ネットマスク*外*のビットには、とくに意味はないと思います。 なるほど、分かりました。 >僕なら 133.205.78.72/29 を選びます。 この選び方の違いに過ぎなかったのですね。 >133.205.78.72 自身も含まれますので、 あっ、すいませんm(_ _)m 133.205.78と指定した場合は、133.205.78.1〜133.205.78.255だと いう記述をどこかで読んでたので、ここでも間違ってマスクされた ビットが全部0となる場合を除外してしまいました。 >133.1.0.0 とか 133.2.0.0 などのIPアドレスって、何て呼ぶんでしたっけ…。 話に付いて行けない…(苦笑) IPアドレスもちゃんと勉強しないといけないなぁ… |
すいません。 ↓の名前を入れ忘れましたm(_ _)m |
先の質問に関連して、今回初めて .htaccess について調べたのですが、 どうもよく理解できないことがあるので、教えてください。 order は、allow と deny の評価順序を指定するというような説明があるんですが、 これはどういう意味なのでしょうか? 最初、評価順序がどう影響するのか分からなかったのですが、 「UNIX &インターネットセキュリティ」(O'REILLY)の deny,allow は、denyとallowの両方に含まれるhostは許可する allow,deny は、denyとallowの両方に含まれるhostは禁止する という趣旨の記述を読んで、ようやく使い方については分かったのです。 でも、このような作用をなぜ評価順序で説明するのかが理解できないのです。 また、例えば order allow,deny allow from hostA deny from hostB という設定があった場合、どちらにも含まれないhostC からのアクセスは どうなるのでしょうか? allow と deny の双方を指定するってことは、どちらか一方が必ず from all になるとは限らないですよね(もし、そうなら省略可能にすると思うので)。 |
ん…X68000.startshop.co.jp の時計がずれてる。 > 「UNIX &インターネットセキュリティ」(O'REILLY)の > deny,allow は、denyとallowの両方に含まれるhostは許可する > allow,deny は、denyとallowの両方に含まれるhostは禁止する > という趣旨の記述 ん〜、これもどうも…何か違うような。確かに order は まぎらわしいですねぇ。 例えば order deny,allow は 1. 最初は全て許可 2. deny で指定されていたら拒否 3. allow で指定されていたら許可 という手順で評価しますが、大事なのは 「deny にマッチしても、その後 allow にマッチした場合は、閲覧を許可する」 ということだと思います。 例えば 阪大からは弾くけど、阪大の工学部(適当)からのみ許可する場合 order deny,allow deny from 133.1 allow from 133.1.2 阪大は許可するけど、阪大の工学部だけは弾く場合 order allow,deny deny from 133.1.2 allow from 133.1 てな感じでどうでしょう。より一般化すると、 「許可したホスト以外は拒否」なら order deny,allow deny from all allow from 許可するホスト 「拒否したホスト以外は許可」なら order allow,deny allow from all deny from 拒否するホスト でしょうか。上の2つの order を逆にすると、どのホストからも 見られなくなります。 素人考えでは、 deny from 133.1.2 allow from 133.1 と書けば、上から順に評価する、ってな風にすればわかりやすいのに、 わざわざ order なんか指定できるようにしたからわかりにくくなった、 と思ってます。もしかしたら、もっと難しい理由があって order が 用意されてるのかもしれませんが。 > どちらにも含まれない hostC からのアクセスはどうなるのでしょうか? 許可されると思います。order mutual-failure なら拒否されます。 # order mutual-failure # …allow に指定され、deny に指定されていないホストのみ許可。それ以外は拒否。 |
なので、 阪大は許可するけど、阪大の工学部だけは拒否し、なおかつ 群馬大は弾くけど、群馬大工学部だけは許可する という設定は無理じゃないかと思ってます。仮にできるとしても、 2つに分ける必要がありますよね。変なの。 |
さっそく、ありがとうございます。 >ん〜、これもどうも…何か違うような。 あっ、関係ないかも知れないけど、正確に引用しときますね(苦笑) >order ord >許可文と拒否文をチェックする順番を指定する。 >"deny,allow"を指定すると、最初に拒否エントリをチェックする。 >拒否リストと許可リストの両方に含まれるサーバーは許可する。 >"allow,deny"を指定すると、最初に許可エントリをチェックする。 >両方に含まれるサーバーは拒否する。 >"mutual-failure"を指定すると、許可リスト中のホストに許可を与え、 >拒否リスト中のホストを拒否し、それら以外については拒否する。 68userさんの説明とapacheのマニュアルを見ると、 すくなくとも、"mutual-failure"の説明は、 両方に含まれる部分について正確さを欠いてますね。 以下について応答する前に、ちょっと確認なんですけど、 >上の2つの order を逆にすると、どのホストからも >見られなくなります。 これは、下に関しては、「どのホストからも見えてしまう。」 の間違いということはないのでしょうか? |
> これは、下に関しては、「どのホストからも見えてしまう。」 > の間違いということはないのでしょうか? あ、間違いです。 「許可したホスト以外は拒否」なら order deny,allow を order allow,deny にすると、「全部拒否」になってしまい、 「拒否したホスト以外は許可」なら order allow,deny を order deny,allow にすると、「全部許可」になってしまう、ですね。 > "mutual-failure"の説明は、 > 両方に含まれる部分について正確さを欠いてますね。 ん〜、不正確とは言えないかもしれないけど、不親切ではありますね。 mutual-failure でも allow,deny の順に評価され、allow にマッチしたとしても その次に deny について評価され、そこでマッチしたら拒否、ってことです。 そういうことを http://japache.infoscience.co.jp/japanese_1_3/manual/mod/mod_access.html#order allowとdeny状態が評価されるどんな場合でも、"short-circuiting"は存在しません。 は言ってるんでしょうけど、もともと order っていう仕組みがわかりにくいのに、 ヘボい訳のせいで さらにわけのわからんことに。 |
>あ、間違いです。 よかった。 これが違ったら、また最初から理解し直しになるところでした(苦笑) >ヘボい訳のせいで さらにわけのわからんことに。 あっ、確認したのは、 >Only those hosts which appear on the allow list and >do not appear on the deny list are granted access. の方だったので、これなら問題ないですよね。 先の回答に戻ります。 >> どちらにも含まれない hostC からのアクセスはどうなるのでしょうか? >許可されると思います。 なるほど、やはりデフォルトは許可なんですね。 > 「deny にマッチしても、その後 allow にマッチした場合は、閲覧を許可する」 評価が後の方が優先するような感じはあったのですが、どうもよく分からなかったのです。 >阪大からは弾くけど、阪大の工学部(適当)からのみ許可する場合 allow か deny どちらかが常に from all なら、もっと別の指定の仕方があるだろうし、 なんとなく、こういう使い方を考えてるのかな…、と思ったもので、 その前にどちらにも現れない hostC の取り扱いをお伺いしました。 > 阪大は許可するけど、阪大の工学部だけは拒否し、なおかつ > 群馬大は弾くけど、群馬大工学部だけは許可する >という設定は無理じゃないかと思ってます。 なるほど、そうですね。 ここまでは、考えてなかった(苦笑) 68user さんの回答を読んでいて、ふと思ったのですが、 実際には、allow list と deny list があるのではなく、 例えば allow list だけがあって(抽象的な意味で)、 この list は最初は全ホストが詰まってる。 そして、allow 指令は、ここに指定されたホストを追加し、 deny 指令は、指定されたホストをここから削除する。 また、order による評価順序は、この追加、削除の動作順序で、 最後に list に残ったホストのみを許可する。 なお、mutual-failure の場合は、list を最初に空にし、 allow 指令を先に評価する。 (逆に、最初は空の deny list だけがあるとしても同じ) というように考えるってのは、どうでしょうか? Apache 1.3 から、deny,allow には(初期状態はOKです)とか、 allow,deny には (初期状態はFORBIDDENです) って注釈が ついたから、ちょっと的ハズレかな…? |
> というように考えるってのは、どうでしょうか? good です。…と思ったら、 > Apache 1.3 から、deny,allow には(初期状態はOKです)とか、 > allow,deny には (初期状態はFORBIDDENです) って注釈が > ついたから、 う、知らなかった。ということは、 > order allow,deny > allow from hostA > deny from hostB > という設定があった場合、どちらにも含まれないhostC からのアクセスは > どうなるのでしょうか? 少なくとも apache 1.3 では `不可' ですね。実験してみたところ、 拒否されました。 ということは、order allow,deny って order mutual-failure と 同じ意味になってしまうんじゃないのかなぁ…。order allow,deny の 初期状態を FORBIDDEN にして、なにかうれしいことがあるんだろうか。 |