おっと、私もこのページにお礼を言いに来たのですが プチ先駆者が(笑) このページには大変お世話になっています ネットワークプログラミングの部屋でファイルディスクリプターという 概念を初めて知りました、僕は学生なのですが将来こういう方面の仕事に つきたいと思ってます。大変に参考になるページでした このページの更新、たのしみにしてますm(。。)m |
>> 2557 いろいろと調査してみた結果、windows上でコンパイルしたものを圧縮してsolarisに持っていっても、JAVA周りの環境さえ同じなら正常に動作するということなので、大丈夫だと思います。 ありがとうございました。 |
お世話になります、小僧です。 AIX上での文字コードに関してお聞きしたい事があります。 ファイルの文字コードを確認するコマンドというのは 存在するのでしょうか? 例えば、「このファイルの文字コードはShift-JISだな」などの 判断を行えるようなコマンドの事なのですが。 それと、iconvを行う事が出来る文字コードは、 "/usr/lib/iconv"ファイルに登録されているようなのですが、 このファイルはデフォルトでは存在しないのでしょうか? ご存知の方がいらっしゃいましたら、宜しくお願い致します。 |
kccなんてコマンドがありましたけど、AIXに存在するかどうかは 不明です。 Ex: kcc -c kannji_file.txt ん〜ちょっと調べてみると、どうもLinux系だけみたいだなぁ・・・ |
はじめまして、 現在色々とcgiを作成しており、 色々とよくわからないバグを調べている内 たどり着いた次第です。 他のサイトではあまり解説されていない ヘッダの解説など大変助かりました。 これからも更新楽しみにさせていただきます。 |
>>2564 スナフキン kccコマンドですが、ちょっと無さそうですね・・・ 現在使用しているAIXにmanコマンドが入っていないので なんともいえませんが、ネットや手持ちの資料には 載って無さそうです。 ついでに、と言っては失礼ですが、iconvでもう一つ質問を。 iconvコマンドで、変換後に存在しない文字が存在した場合、 自動で"_"に変換されるようですが、この"_"を他の文字に 変更する事は可能なのでしょうか? 例えば"*"にしたりする事は可能なのでしょうか? ご存知の方がいらっしゃいましたらアドバイスお願い致します。 |
>>2564 スナフキン 文字コードを判断する方法ですが、mule に付属している coco、 昔 fj に流れた kanjitype、jcode.pl の jcode::getcode、 mule/emacs のステータスバーに表示される E/S/J の文字。 僕が知っているのはこれくらいです。 |
お世話になります、小僧です。 色々と調べて頂いてありがとうございます。 どうやら、私の環境で調べる方法はなさそうですね・・・ また分からない事がありましたら、アドバイスお願い致します。 |
>>2564 スナフキン > ん〜ちょっと調べてみると、どうもLinux系だけみたいだなぁ・・・ こういう一般的な用途のコマンド (ファイルを読んでコード変換するだけ) で、 なおかつソースが公開されているものは、よっぽどのことがない限り Linux 専用ということはありません。 FreeBSD の port/package にもありますし、NetBSD の package には含まれて ないようですがコンパイルすれば使えるでしょう。まぁ、それを言い出したら 多分 Windows でも Mac でも使えそうな気がしますが。 >>2563 小僧 そういえば最初にここを紹介すべきでした。 http://www.jp.FreeBSD.org/QandA/HTML/1254.html >>2566 小僧 > 自動で"_"に変換されるようですが、この"_"を他の文字に > 変更する事は可能なのでしょうか? 多分できないです。できたとしても、その環境の iconv のみの独自拡張でしょう。 こういうのは考え方を変えて、 % sed 's/&/&/g' | sed 's/_/&ubar;/g' | iconv -f shift_jis -t euc-jp | \ sed 's/_/\*/g' | sed 's/&ubar;/_/g' | sed 's/&/&/g' などとファイル中の _ を別の文字に置換してから iconv を通せば なんとでもできます。 # &ubar; というのは、いま適当に考えた実体参照で、本当は存在しません。 >>2560 Moo >>2561 へんきち >>2565 sisya どもども。できれば改善すればよい点も書いていただけると嬉しいです。 # と言っても、時間がなくて対応できない可能性が大なんですが。 |
お世話になっております。 シェルスクリプトが上手く動作せず困っています。 行っている方法は、 Linux7.1J sendmail-8.11.2-14 procmail-3.21-0.71で ユーザ"XYZ"のホームディレクトリに.procmailrcファイルを置き、 XYZ宛てのメール受信時に条件が合えばシェルスクリプト"ABC"を 実行するようにしています。 メール受信時に条件が合い、シェルスクリプトを実行するところまでは 上手くできたのですが、実行するシェルスクリプトの中の一部分のみ 動作しません。 その部分とはユーザ"mono"に切り替え、さらにシェルスクリプトを実行する以下です。 su - mono -s /home/mono/mno.sh ---(1) ※ユーザ"mono"はパスワードなしです。 ((なお、mno.shの記述は scp /var/XYZ/123.txt abc.world.co.jp:/home/mono/123.txt ssh abc.world.co.jp sh /home/mono/mno2.sh です。 他のLinuxサーバabc.world.co.jpへsshでファイルをコピーし、 他のサーバのシェルスクリプトmno2.shを実行)) (1)の部分に対してエラーでは、 standard in must be a tty と表示されます。 他のサーバではこの記述通りで動作しました。 また、メール受信時にシェルスクリプト"ABC"を実行するユーザ"XYZ" で手動でシェルスクリプトを実行すると(1)の部分も動作します。 Webで調べたところ、同じような現象になっている例もありましたが 解決策がありません。 そしてエラーの意味がよくわかりません。 勝手な推測ですが、実行しているサーバではセキュリティが強いため パスワードなしとしている"mono"ユーザが原因ではないかと思います。 ですが、シェルスクリプトでパスワードも記述した形での"su"の実行は 可能かどうか分かりません。 申し訳ありませんが、何かよい策をお教えください。 |
タブ区切りテキストを split /\t/ で切って各フィールドを変数に読み込み、 join "\t" で戻そうとすると、 場合によってはデータが抜けていることがあるので困ります。 タブ区切りデータを a, b, c, d、タブを->であらわすと、 split /\t/, "a->b->c->d" => (a,b,c,d) split /\t/, "a->->c->d" => (a,c,d) split /\t/, "a->b->->d" => (a,b,d) split /\t/, "a->->->d" => (a,d) split /\t/, "a->b->->" => (a,d) ということで、 1 while $str =~ s/\t\t/\t♪\t/; @list = split /\t/, $str; for (@list) { s/♪//; # $_ は @list の要素を参照する。♪がデータにないと仮定 } とかやってるんですが、いかにもダサいですね。 もっと常道はあるんでしょうか? Excel で編集すると a->b->->\n が a->b\r\n となってしまうのも 困る。 |
<A href="javascript:x(1)">1</A> をクリックすると最終的に Nの値(abcの所)を計算し document.location.href="http://www.a/cgi/a.cgi?N=abc"; としていたのですが、不便な所を感じ変えたいと思っています。 Submitボタンを押したらNを計算し <FORM name="f" method="post" onSubmit="if(x() != true) {return false}" action="a.cgi"> <INPUT type=hidden name=N value=abc> としてa.cgiを起動する方法は知っているのですが、 上のものと組み合わせた感じで <A href="javascript:x(1)">1</A>をクリックして 最終的にNを計算し <INPUT type=hidden name=N value=abc> のようにpost/getで起動する方法はないでしょうか? 自分なりにやってみてもよくわからないのです。 どなたか教えて下さい。 お願いします。 ちなみに初心者です。難しいことは解らないので細かく教えていただくと 助かります。 |
>>2570 q19_77 > standard in must be a tty su は端末 (tty) からのパスワード入力を求めているのに、 端末がないよ、という意味です。 端末というのは、キーボードで入力ができて、文字が表示されるもの、 たとえば kterm がそれです。procmail 経由で実行されると端末が 割り当てられないので (キーボードもないし、出力する画面もない) エラーになっているわけです。 > 他のサーバではこの記述通りで動作しました。 本当ですか? どうして root でもないのに、パスワードなしで su で他ユーザになれるのですか? > su - mono -s /home/mono/mno.sh 気になる点は2つ。 なぜ -c でなく -s なのでしょうか? http://www.linux.or.jp/JM/html/GNU_sh-utils/man1/su.1.html によると、-s はシェルを実行するオプションですから、-s の場合端末が あることをチェックしているのかもしれません。 あるいは環境変数 TERM などがセットされているので、端末を見にいってしまう という可能性も考えられます。 ちなみに FreeBSD 4.4-RELEASE では、端末がない状態で (cron 経由) echo PASSWORD | su root -c /usr/bin/id でプログラムの実行ができました。 >>2571 ふくし > 場合によってはデータが抜けていることがあるので困ります。 そんなことはないと思いますが、perl のバージョンは何ですか? perl-5.005_03 ではそのような挙動を示しませんでした。 |
>>2573 68user さん: えっと、 split /\t/, "a->b->c->d" => (a,b,c,d) split /\t/, "a->->c->d" => (a,'',c,d) split /\t/, "a->b->->d" => (a,b,'',d) split /\t/, "a->->->d" => (a,'','',d) split /\t/, "a->b->->" => (a,b,'','') となってくれる、ということですか? あれーおかしいなー、、。 実は、下の♪を使ったコードが動いたのでロクな検証をしてないのでした。 勝手な思い込みで外していたら申し訳ありません。 Excel による末尾のタブの削除等の現象かな? うーんうーん。 |
皆さん教えてください。 DATのテープを新しく交換するときに、ラベリングを行おうとすると I/O errorが出るんですけど、まさか、formatが必要とかそんなことですか |
お世話になります。 相変わらずiconvで困っています。 下記のように、コマンドを発行したのですが、 エラーが出てしまってiconvが出来ません。 ----- コマンド発行 ----- $iconv -f shift_jis -t euc aaa ----- エラーメッセージ ----- iconv: 0791-004 コンバータがオープンできません 自分で調べたところ、必要なファイルだと思われるのは、 /usr/lib/iconvファイルだと思うのですが、 このファイルは存在しません。 もしこれが原因なら、中身のサンプルを教えていただければ幸いです。 宜しくお願い致します。 |
>>2576 小僧 > $iconv -f shift_jis -t euc aaa euc という文字コードは存在しないような気がするので (ほんとか?)、 とりあえず -t euc-jp を試してみましょう。 >>2574 ふくし > となってくれる、ということですか? はい、そういうことです。 |
>>2577 68user >とりあえず -t euc-jp を試してみましょう。 ----- 実行文 ----- iconv -f shift-jis -t euc-jp aaa を行ってみましたが、同じ現象が発生しました。 当然の事ながら、ファイル"aaa"はきちんと存在します。 宜しくお願い致します。 |
>>2574 ふくし > split /\t/, "a->b->->" split /\t/, "a->b->->", -1 でわ? |
>>2576 小僧 web で AIX のマニュアルを探してみました。 http://publib.boulder.ibm.com/doc_link/Ja_JP/a_doc_lib/cmds/aixcmds3/iconv.htm http://publib.boulder.ibm.com/doc_link/Ja_JP/a_doc_lib/aixprggd/genprogc/convert_prg.htm#A197C1176 によると、AIX では euc-jp ではなく IBM-eucJP なのかもしれません。 Shift_JIS も同様に IBM-932 かもしれません。 > 自分で調べたところ、必要なファイルだと思われるのは、 > /usr/lib/iconvファイルだと思うのですが、 上記マニュアルを見ると、コンバータのファイルのありかは /usr/lib/nls/loc/iconv/ /usr/lib/nls/loc/iconvTable/ と書いてあるように見えます。 # なぜ /usr/lib/iconv/ だと判断したかが第三者にわかるように書きましょう。 # 皆が AIX を使っているありませんので。 僕は AIX4.3 のマニュアルを見ましたが、あなたがお使いのバージョンが わからないので、これが正しいかどうかはわかりません。ちゃんと OS の バージョンを書きましょう。 >>2579 /tk なるほど。その例では確かに -1 が必要ですね。僕は split /\t/, "a->->c->d" => (a,'',c,d) のように真ん中に TAB がある例だけを試していて、気づきませんでした。 |
>>2573 68user ご返答ありがとうございます。 >> 他のサーバではこの記述通りで動作しました。 >本当ですか? どうして root でもないのに、パスワードなしで >su で他ユーザになれるのですか? >> su - mono -s /home/mono/mno.sh ユーザ"mono"にパスワードがないため、なぜか実行できました。 >なぜ -c でなく -s なのでしょうか? よく分からずに指定したシェルを実行するとあったので、-s に しました。また -c でも駄目でした。 >ちなみに FreeBSD 4.4-RELEASE では、端末がない状態で (cron 経由) > echo PASSWORD | su root -c /usr/bin/id >でプログラムの実行ができました。 この場合、rootのパスワードが必要かと思いますが、そこはどのように されているのでしょうか。 >そんなことはないと思いますが、perl のバージョンは何ですか? >perl-5.005_03 ではそのような挙動を示しませんでした。 perlのバージョンは、perl-5.6.0-12ですが、 シェルスクリプトはどちらもperlを使用しておりません。 #!/bin/sh su - mono -s /home/mono/mno.sh また、 #!/bin/sh scp /var/XYZ/123.txt abc.world.co.jp:/home/mono/123.txt ssh abc.world.co.jp sh /home/mono/mno2.sh と書いています。 そもそもこれが駄目なのでしょうか。 宜しくお願いします。 |
初めて書込みするんですけども、最近Cシェルを始めたんですが・・・ 最初にログインした、IPアドレスから他のアドレスへログインする事ってできますか? |
>>2580 68user 返信ありがとうございます。 >web で AIX のマニュアルを探してみました。 わざわざ時間を割いていただいてありがとうございます。 ># なぜ /usr/lib/iconv/ だと判断したかが第三者にわかるように >書きましょう。 >僕は AIX4.3 のマニュアルを見ましたが、あなたがお使いのバージョン >がわからないので、これが正しいかどうかはわかりません。ちゃんと >OS のバージョンを書きましょう。 申し訳ございませんでした。 調べたのは「UNIX クイックリファレンス」という本です。 OSのヴァージョンは、AIX 4.3です。 次回からはきちんと記載するように致します。 お蔭様で、iconvが出来るようになりました。 本当にありがとうございました。 |
いつも参考にさせて貰っています。 ひとつ気づいた所があるのですが、Perlでのforkを使ったサーバプログラムの部分ですが、 親プロセスは子プロセスの終了ステータスを受けとらなければならないため、waitが必要だと思います。waitが無いと、子プロセスが終了してもdefunct状態のまま存在し続けてしまいます。 このwaitについて、下記の一行を追加するだけでうまくいきます。 $SIG{CHLD} = sub { wait }; (オライリーのらくだ本より) 以上、ご参考まで。 |
お世話になります、小僧です。 連続の質問になるので、気が引けるのですが、 どうしても分からないので相談させて下さい。 AIX4.3.3 にてCDをマウントを行ったのですが、 CDのファイル名が全て小文字に変換されてしまいます。 Windowsで見ると大文字、小文字の区別がされています。 マウントを行うときに、オプション指定で 大文字、小文字を判定させる事は可能なのでしょうか? #AIXでのマウントってちょっと特殊なんですよね? #私が実行したマウントコマンドを記述しておきます。 #>mount -V cdrfs -r /dev/cd0 /mnt アドバイス、お願い致します。 |
はじめまして。 サンプルプログラムをいつも参考にさせていただいている者です。 「C言語で ftp クライアントを作ってみよう (1)」のプログラムを 参考にFTPプログラムを作成していますが、プログラム中で、 cdコマンド、putコマンド相当の処理を行う場合はどのような記述を すればよいか教えていただけないでしょうか(_0_) user、passwd、quitの入力を、USER、PASS、QUITを使用して コマンドをしているように見えます。これ相当の処理を、cd、putで 行う場合のプログラミングを調べております。 申し訳ありませんが御覧になっていたらアドバイスをお願いします (_0_) |
はじめまして。* システムコール・ライブラリルーチンのページをよく見させて いただいている者です。 ふと、気がついた部分がありまして生意気にも 指摘の投稿させていただきました。 http://x68000.startshop.co.jp/~68user/unix/pickup?usleep において、マイクロ秒:百万分の一秒 であり、 0.001 秒単位ではなく、 例の説明も違っていると思います。 既に指摘があったらすいません。 |
こんにちは。 http://X68000.startshop.co.jp/~68user/が正式なURLとの事ですが、OmniWeb4.0.6というブラウザを使うとアドレスを読み込み出来ない旨が表示され以下のようなエラーが表示されます。 http://www2.startshop.co.jp/~68user/では正常に表示されます。 Mar 19 00:45:16 http://X68000.startshop.co.jp/~68user/(HTTP): Host not found: u30dbu30b9u30c8 x68000.startshop.co.jp u306fu3042u308au307eu305bu3093 Mar 19 00:45:16 http://X68000.startshop.co.jp/~68user/ (HTTP): Host not found: ホスト x68000.startshop.co.jp はありません ブラウザのバグかもしれませんが、一応ご報告まで。 ネットワークプログラミングの基礎知識、とても参考になります。 では。 |
>>2588 狂態公開 う〜ん。 ;; ANSWER SECTION: x68000.startshop.co.jp. 17h56m14s IN CNAME ww2.startshop.co.jp. www2.startshop.co.jp. 17h56m14s IN A 210.249.139.22 CNAMEか・・ 狂態公開さんの所のDNSサーバーがおかしいんだと思うぞう。 |
x68000.startshop.co.jp. 17h56m14s IN CNAME www2.startshop.co.jp. だな。wを一つ消してもた |
初めまして、こんばんわ。 ブックさせて頂いて、お勉強させて頂いております。m(_ _)m レンタルサーバを1台借りて、色々しているのですが 今回IPアドレスを2つ追加したのはいいけれど、設定に途方にくれて 書き込みさせて頂いております。 ifconfig_fxp0="inet 210.224.181.hhh netmask 255.255.255.0" ifconfig_fxp0_alias0="inet 210.224.177.ttt netmask 255.255.255.255" 現状に、追加 210.188.eee.6/31 (7も有効)ということで ifconfig_fxp2_alias0="inet 210.188.eee.6 netmask 255.255.255.254" を、追加した次点ではpingでもちゃんと返って来てたのが・・ ifconfig_fxp3_alias0="inet 210.188.eee.7 netmask 255.255.255.254" も、追加したら 6では パケットエラー、7では1行出てそれ以降は いつまでたってもうんともすんとも状態になってしまいました。 が、これはtera term menu で自分サーバー内からのことで、外から TELNET使用すると普通にpingで返ってくるのですが、これはどう考えたらよいものなのでしょうか。 ご存じの方いらっしゃいましたら、アドバイスを頂きたく書き込みさせて頂きました。宜しくお願い致します。 |
>>2591 あや まず、OS 名とバージョンを書きましょう。FreeBSD っぽいので FreeBSD として回答します。 fxp0, fxp2, fxp3 ということは、NIC 3 枚差しなのですか? ifconfig -a で fxp0, fxp2, fxp3 それぞれの情報がちゃんと 出てきます? > ifconfig_fxp2_alias0="inet 210.188.eee.6 netmask 255.255.255.254" > を、追加した もし /etc/rc.conf を編集してリブートしているのでしたら、それは やめて、コマンドラインから # ifconfig fxp2 inet 210.188.eee.6 alias netmask 255.255.255.254 などとして、その後 # ifconfig -a で確認するようにして下さい。 で、要は # ifconfig fxp0 inet 210.224.181.hhh netmask 255.255.255.0 # ifconfig fxp0 inet 210.224.177.ttt alias netmask 255.255.255.255 # ifconfig fxp2 inet 210.188.eee.6 alias netmask 255.255.255.254 # ifconfig fxp3 inet 210.188.eee.7 alias netmask 255.255.255.254 とした、ということですか? fxp2 と fxp3 にそれぞれ重複して IP アドレスを振ってないならば、 「alias」を削って # ifconfig fxp0 inet 210.224.181.hhh netmask 255.255.255.0 # ifconfig fxp0 inet 210.224.177.ttt alias netmask 255.255.255.255 # ifconfig fxp2 inet 210.188.eee.6 netmask 255.255.255.254 # ifconfig fxp3 inet 210.188.eee.7 netmask 255.255.255.254 じゃないかなと思います (ifconfig の実装によっては OK なのかも)。 > も、追加したら 6では パケットエラー、7では1行出てそれ以降は > いつまでたってもうんともすんとも状態になってしまいました。 エラーの内容を具体的に書きましょう。 で、ping が通らないということは、インタフェースが認識されていないか、 ルーティングテーブルがおかしいか、arp テーブルがおかしいのでしょう。 netstat -a、netstat -r、arp -a の結果はどうなってますか? |
>>2587 pyu > マイクロ秒:百万分の一秒 であり、0.001 秒単位ではなく、例の説明も > 違っていると思います。 ご指摘ありがとうございます。早速修正しました。 http://x68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/unix/org/func.src 僕はマイクロ=ミリ (ミリはマイクロの略称) だと完全に勘違いしていたのですが、 ミリ秒=1/1,000 秒 マイクロ秒=1/1,000,000 秒 なのですね。よく考えれば1ミリメートルと1マイクロメートルが同じ長さなはずが ない、と。 >>2588 狂態公開 > OmniWeb4.0.6というブラウザを使うとアドレスを読み込み出来ない旨が > 表示され以下のようなエラーが表示されます。 うーむ、僕も DNS がおかしいのではないかと思うのですが…。 もし Mac OS X をお使いでしたら、ping や nslookup を 試してみて下さい。 |
>>2586 超初心者 > 参考にFTPプログラムを作成していますが、プログラム中で、 > cdコマンド、putコマンド相当の処理を行う場合はどのような記述を > すればよいか教えていただけないでしょうか(_0_) perl 編で、FTP プロトコルそのものの解説をしておりますので、ご一読下さい。 http://x68000.startshop.co.jp/~68user/net/ftp-1.html http://x68000.startshop.co.jp/~68user/net/ftp-2.html http://x68000.startshop.co.jp/~68user/net/ftp-3.html http://x68000.startshop.co.jp/~68user/net/ftp-4.html >>2584 persianopeh > 親プロセスは子プロセスの終了ステータスを受けとらなければならないため、 > waitが必要だと思います。 ごもっともです。wait をすっかり忘れておりました。 ただ、解説も一緒に付けたいので、少し時間を下さいませ。 |
>>2585 小僧 > マウントを行うときに、オプション指定で大文字、小文字を判定させる > 事は可能なのでしょうか? まず基礎知識。CD-ROM にはいくつかフォーマットの種類があります。 http://www.zdnet.co.jp/magazine/pcjapan/0105/sp2/09.html http://publib.boulder.ibm.com/doc_link/Ja_JP/a_doc_lib/cmds/aixcmds1/toc.htm ISO9660 は大文字・小文字を区別しません (たぶん全て大文字で記録される)。 Joliet は、MS-DOS の 8.3 形式とロングファイルネームの2つのファイル名を 持ちます。UNIX のように大文字・小文字を区別するには RockRidge (ロックリッジ) というフォーマットを使います。 よって、その CD-ROM が ISO9660 で作られているなら、大文字小文字の 区別はできません。ただし Windows で大文字小文字が区別されている ということは、その CD-ROM は Joliet か RockRidge なのかもしれません。 Windows で見て、8.3 形式とロングファイルネームの両方が表示されるなら、 それは Joliet 形式かもしれません (本当かなぁ)。 なお、AIX は Joliet には非対応ですが、RockRidge には対応しているようです。 http://publib.boulder.ibm.com/doc_link/Ja_JP/a_doc_lib/aixbman/admnconc/fs_overview.htm これらのファイルタイプを mount のオプションで指定する方法は、web の マニュアルからは読みとれませんでした (むしろ cdrfs を指定すれば 自動認識してくれそうに思える)。 というわけで、残念ながら解決法はわかりませんでした。 >>2852 mattu > 最初にログインした、IPアドレスから他のアドレスへログインする > 事ってできますか? 質問の意味がわかりません。 |
>>2581 q19_77 > ユーザ"mono"にパスワードがないため、なぜか実行できました。 なるほど、納得です。 >> echo PASSWORD | su root -c /usr/bin/id >>でプログラムの実行ができました。 > この場合、rootのパスワードが必要かと思いますが、そこはどのように > されているのでしょうか。 echo PASSWORD の部分に root のパスワードを書いています。 > perlのバージョンは、perl-5.6.0-12ですが、 > シェルスクリプトはどちらもperlを使用しておりません。 それは、ふくしさんに対しての回答です。今回の問題で perl のバージョンを 疑っているわけではありません。 一番簡単なのは root 権限で su - mono -c /home/mono/mno.sh とすることです。root 権限なら何の問題もなくできるはず。 また、問題を切り分けましょう。 > ssh abc.world.co.jp sh /home/mono/mno2.sh ここで tty を要求している可能性もないとは言えませんので、まずは su - mono -c /usr/bin/id から始めるべきです。 |
お世話になります。m(_ _)m FreeBSD 3.5.1 を 利用しております。 すみません、前回書き込みが間違っていました。 NICは1枚です。IPは計4つの状態です。 rc.conf の中身は現在下記のようにしています。 ifconfig_fxp0="inet 210.224.171.ttt netmask 255.255.255.0" ifconfig_fxp0_alias0="inet 210.224.177.hhh netmask 255.255.255.255" ifconfig_fxp0_alias1="inet 210.188.fff.6 netmask 255.255.255.254" ifconfig_fxp0_alias2="inet 210.188.fff.7 netmask 255.255.255.254" ww# ping 210.188.fff.6 PING 210.188.fff.6 (210.188.fff.6): 56 data bytes ping: sendto: Can't assign requested address ・ ・ と、続いて www# ping 210.188.fff.7 PING 210.188.fff.7 (210.188.fff.7): 56 data bytes この行のみしか出ません。 ww# ifconfig -a fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 210.224.171.ttt netmask 0xffffff00 broadcast 210.224.171.ttt inet 210.224.177.hhh netmask 0xffffffff broadcast 210.224.177.hhh inet 210.188.fff.6 netmask 0xfffffffe broadcast 210.188.fff.7 inet 210.188.fff.7 netmask 0xfffffffe broadcast 210.188.fff.7 www# netstat -a Active Internet connections (including servers) Proto Recv-Q Send-Q Local Address Foreign Address (state) tcp 0 6823 210.224.177.hhh.http TKTcd-01p91.ppp..1696 FIN_WAIT_1 tcp 0 0 210.224.177.hhh.http TKTcd-01p91.ppp..1694 TIME_WAIT tcp 0 0 210.224.177.hhh.http 203.139.83.201.4518 FIN_WAIT_2 tcp 0 0 210.224.177.hhh.http 210.225.27.166.13100 FIN_WAIT_2 tcp 0 0 210.224.177.hhh.http 210.225.27.166.13088 FIN_WAIT_2 tcp 0 4 www.telnet c85242.tctv.ne.j.1872 ESTABLISHED tcp 0 0 *.http *.* LISTEN tcp 0 0 *.smtp *.* LISTEN tcp 0 0 *.pop3 *.* LISTEN tcp 0 0 *.telnet *.* LISTEN tcp 0 0 *.ftp *.* LISTEN tcp 0 0 *.sunrpc *.* LISTEN udp 0 0 *.sunrpc *.* udp 0 0 *.syslog *.* Active UNIX domain sockets Address Type Recv-Q Send-Q Inode Conn Refs Nextref Addr c89aaf80 dgram 0 0 0 c89a0fc0 0 c89aafc0 c89aafc0 dgram 0 0 0 c89a0fc0 0 0 c89a0fc0 dgram 0 0 c899f680 0 c89aaf80 0 /var/run/log www# netstat -r Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default oscrt1e-L5.gw.saku UGSc 26 1593573 fxp0 localhost localhost UH 0 112 lo0 210.188.fff.6 0:e0:18:e0:10:2b UHLWb 0 10 lo0 => 210.188.fff.6/31 link#1 UC 0 0 fxp0 210.188.fff.7 ff:ff:ff:ff:ff:ff UHLWb 0 141 fxp0 210.224.171 link#1 UC 0 0 fxp0 oscrt1e-L5.gw.saku 0:0:5e:0:1:16 UHLW 26 0 fxp0 1200 oscrt2e-L5.gw.saku 0:e0:80:2f:1d:0 UHLW 0 0 fxp0 1199 210.224.177.hhh/32 link#1 UC 0 0 fxp0 www# arp -a ? (210.188.fff.6) at 0:e0:18:e0:10:2b permanent [ethernet] ? (210.188.fff.7) at ff:ff:ff:ff:ff:ff permanent [ethernet] oscrt1e-L5.gw.sakura.ad.jp (210.224.171.1) at 0:0:5e:0:1:16 [ethernet] oscrt2e-L5.gw.sakura.ad.jp (210.224.171.2) at 0:e0:80:2f:1d:0 [ethernet] このようになっております。宜しくお願い致します。 |
>>2596 68user ご返答ありがとうございます。 su - mono -c /usr/bin/id として試してみましたが、やはりmonoユーザになれないようでした。 68userさんの言われる通り、以下のようにroot権限で処理を行うように しましたところ、上手く動作しました。 sudorsファイルにmonoユーザがroot権限で"su"できるよう記述 mono ALL= NOPASSWD: /bin/su シェルスクリプトファイルに以下のように記述 sudo su - mono -c /home/mono/mno.sh 上手く動作しなかった原因と対処法は分かりませんでしたが、 動作するようになりましたので、よかったです。 どうもありがとうございました。 |
>>2597 あや > ifconfig_fxp0_alias2="inet 210.188.fff.7 netmask 255.255.255.254" ifconfig_fxp0_alias2="inet 210.188.fff.7 netmask 255.255.255.255" だと思います。 // 以下参照 http://www.freebsd.org/ja/handbook/configtuning-virtual-hosts.html |
早速ありがとうございます。 210.188.fff.6/31 として 6と7がIPとして有効。 /31と言うことで255.255.255.254としていたのですが、 7の場合は255.255.255.255とする理由をご伝授頂ければ勉強になります。 ww# ping 210.188.fff.6 PING 210.188.fff.6 (210.188.fff.6): 56 data bytes ping: sendto: Can't assign requested address ・ ・ と、続いて www# ping 210.188.fff.7 PING 210.188.fff.7 (210.188.fff.7): 56 data bytes ping: sendto: Can't assign requested address ・ ・ と、続くようにはなりましたが。 何度もすみません。宜しくお願い致します。 |