シゲと申します。 今、red hat 7.1でパッケージソフト開発を行っています。 複数のプロセスが立ち上がるもので、それぞれのメモリー使用量を確認を行っています。 meminfoにより合計のメモリ使用量を測ると13Mぐらいしかないのに、それぞれのプロセスの /proc/(プロセス番号)/status のVmSizeを合計すると、150Mぐらいになってしまいます。 150Mは間違いなく間違っていると思います。 単プロセスのメモリ使用量ってほかに計り方がないのでしょうか? ご教授お願いします。 |
>>2881 シゲ 例えば、ls を同時に 2 プロセス実行していても、メモリ上に配置される /bin/ls の テキスト領域 (命令文の領域) は 1 つしかありません。同様に libc などのライブラリの テキスト領域も共有されます。そこらへんで食い違いが出ているのではないかと思います。 > 単プロセスのメモリ使用量ってほかに計り方がないのでしょうか? どーなんでしょうねー。status の Vm* を足したり引いたりしたら 計算できそうな気もしますが、正確なところはわかりません。 まぁ、ここらへんのテキスト領域をどう計算したいのかにもよると思います。 |
ご教授有難うございます。 帰りの電車の中で考えていたら、ひらめきました。 全プロセス立ち上げ時の,/proc/meminfoの全使用メモリ量から、測定したいプロセスをkillしたときの/proc/meminfoの全使用メモリ量を引けば良い気がしました。 しかし、考えてみれば68userさんのおっしゃるとおり、共有メモリが存在するから、正確な結果ではありませんね・・・。 こまったな・・・。 |
>>2883 シケ゛ 結局は用途次第なわけですが、普通の環境であれば daemon 類が libc を 使っているでしょうから、そこらへんは無視していいでしょう。 あとは、横軸: プロセス数、縦軸: メモリ使用量なグラフでも書いて、 「n クライアント、m リクエスト/sec だと XX MB 程度必要」 とか書いておけばいいんじゃないでしょうか。 # 手抜き? |
はじめまして。 いつもこちらのサイトにお世話になっています。 パスの設定のされていないコマンドにパスを設定するには どうすればよいのでしょうか(絶対パスでは実行できます) 初歩的な質問で恐縮ですがお教えいただけませんでしょうか。 よろしくお願いいたします。 |
>>2885 ホームズ % hoge hoge: Command not found. % /foo/bar/hoge (実行できる) という状況で、hoge とだけタイプすれば実行できるようにするには どうしたらよいか、ということですか? 環境変数を使うのが一番簡単でしょう。 % setenv PATH ${PATH}:/foo/bar (csh・tcsh 系) $ PATH=${PATH}:/foo/bar; export PATH (sh・bash 系) csh・tcsh 系なら set path=($path /foo/bar) でもいいです。 |
お返事ありがとうございます。 68userさんの言われたとおり設定したらできました。 どうもありがとうございました。 |
初めまして、よろしくおねがいします。 お聞きしたいことがあります。 tar xvzf .tgz して、うまく展開したのですが、 もう一度 練習で、やってみようと思うと、 Only one compression option permitted とでてしまいます。 一回しかできないという意味なのでしょうか? 一回、 .tgzを消して試しましたが、同じでした。 初歩的かもわかりませんがよろしくお願いします。 |
>>2888 26歳 > Only one compression option permitted 一つの圧縮オプションしか許されていない。 =複数の圧縮オプションを指定することはできない。 というわけで、Z・z・y・j などの圧縮形式を指定するオプションを、 複数個指定したのでしょう。 例えば tar zxvzf とか、tar xvZzf とか。 |
はじめまして、こんにちは。 環境:Redhat7.3 ログインしているユーザが、現在何処のディレクトリにいるか っていうのを調べることは可能でしょうか? 「who」のオプションであったりしますか? 宜しくお願いします。 |
>>2890 Bootick root 権限があるなら ps -ef eww で環境変数 PWD を見るとか、 /proc の下を覗いてみるとかですかねぇ。 root 権限がないなら無理ではないかと思います。 |
telnetやcgiを使って本IPをメモするソースがほしいのですが、どうしたらいいですか?それと出来れば設置方法も教えてほしいです。素人なのでまったく分かりません。PCに詳しい方、お願いします |
はじめまして。 先日 /dev/null が消えてしまい、少なからずシステムに影響が出てしまいました。 それまで安定稼動していたのに、何故突然消えてしまったのか原因がわかりません。サーバ上で特に作業はしていませんでした。 どなたか同じ現象に遭遇した方いらっしゃいませんか? |
はじめまして。 いつもお世話になっています。 Linuxにて「Proxy サーバ経由の SSL 通信」を行おうと考えております。 「ネットワークプログラミングの基礎知識」にSSL 通信の方法が 記載されていますが、Proxy 経由の方法が分からず、現在格闘中です。 Proxy サーバへの接続はできました(HTTP の通信は OK です)。 Linux & C言語の初心者で恐縮ですが、 これらの技術的なアドバイス・参考になるサイトなどがありましたら、 ご教授下さい。 よろしくお願いします。 |
>>2894 あきゆき 平文で、 CONNECT target.host.com:443 HTTP/1.0\r\n Host: target.host.com\r\n \r\n を送って、サーバから \r\n\r\n が来るまで読み込み (全データが到着するのを待つ)、その中に " 200 " が 含まれていれば接続成功。 その後は SSL でやりとりする、という方法で一応接続はできています。 (" 200 " が含まれていれば OK などという適当な方法以外の) まっとうな やり方は知りません |
>>2895 68user 早速のご返答、ありがとうございます。 ご指摘のように、"CONNECT 〜"を行い、サーバーから "HTTP/1.0 200 Connection established"という応答がきたので、 その後、下記の SSL の設定を行いました。 ---------- SSL_load_error_strings SSL_library_init SSL_CTX_new SSL_new SSL_set_fd SSL_connect←戻り値"0"が返されます。 ---------- SSL_connect で TLS/SSL handshake に失敗したので、 SSL_get_error 関数を実行すると "5"が返されました。 現在、これについて調査中ですが、原因が何か分かりますか? SSL のやりとりに問題がありますでしょうか? SSL のやりとりは、 「ネットワークプログラミングの基礎知識−SSL でアクセスしてみよう」の C言語のソースの「/* ここからが SSL */」以下と同様です。 (検証中のため、「SSL でアクセスしてみよう」と同じサイトにアクセスして、結果を得ようとしております) 何卒よろしくお願いします。 |
>>2896 あきゆき 先程の書込みで不足な情報を追加します。 SSL_get_error で返される値を記載します。 1.SSL_CTX_new(SSLv2_client_method()) →SSL_connect[返り値"0"]、SSL_get_error[返り値"6"] 2.SSL_CTX_new(SSLv3_client_method()) →SSL_connect[返り値"0"]、SSL_get_error[返り値"5"] 3.SSL_CTX_new(SSLv23_client_method()) →SSL_connect[返り値"0"]、SSL_get_error[返り値"5"] よろしくお願いします。 |
>>2897 あきゆき お手数をおかけしました。 「Proxy サーバ経由の SSL 通信」を行うことが出来ました。 Proxy サーバ経由で HTTPS サイトから下記の応答が返されました。 "You have successfully connected using SSL (SSLv2)." 先程の SSL_connect のエラー[返り値"0"]の原因は、 "CONNECT 〜"を送信後の Proxy からの応答待ちの個所でした。 ご迷惑をお掛けして申し訳ありませんでした。 ご返答頂きました 68user さん、誠にありがとうございました。 今後ともよろしくお願いします。 |
お世話になっています。場違いな質問だと思いますが質問させてください。 CVSでローカルでcommitすればサーバ上で自動的にupdateするようにしたく loginfoを編集したのですがうまくいきません。 質問が場違いと言ったのは、CVSサーバがUNIX系ではなくウインドウズ環境だからです。cvsntを使ってます。 いろいろ調べた結果loginfoに以下のように書けばよいとの事なんですが wincvsにてコミットするとエラーがでてしまいます。 diary (date; cat; (sleep 2; cd /home/hoge/diary; cvs -q update -d) &) >> $CVSROOT/CVSROOT/updatelog 2>&1 エラーはnot foundとCould Not Create Child Process (error 2)です。 /home/hoge/diaryや$CVSROOT/CVSROOT/updatelogな書き方がウインドウズでは適用できないと思い d:\diaryなどに書き換えても駄目でした。 具体的には loginfo: test2 (date; cat; (sleep 2; d: cd d:\cvs_test3; cvs -q update -d) &) >> d:\cvs\CVSROOT\updatelog 2>&1 (test2がモジュール名、cvs_test3がupdate先フォルダでいいんですよね?) エラー: Executable (date; cat; (sleep 2; d: cd d:\cvs_test3; cvs -q update -d) &) >> d:\cvs\CVSROOT\updatelog 2>&1 not found Could Not Create Child Process (error 2) ご存知の方、いらっしゃいましたらご伝授よろしくお願いします。 |
自己解決(?)しました。 cvsntを利用した場合、loginfoでの自動更新はできないようです。 WINサーバの場合、cygwinを使用する方法があるみたいなので その方法を試してみる事にします。 お騒がせしました。 |
はじめまして。お力を貸してください。 業務用に、ファイルをアップロードするPerl/CGIを作りました。 エラーもなく動作はしているのですが、巨大なファイルをアップロードするときに、かなりの時間がかかります。 具体的には167MBのファイルをアップロードするのに約40分かかりました。 同じ環境で、同じファイルをFTP(FTP.exe)を使用して転送すると、5分で処理が終了しました。 CGIで時間がかかる原因が、私のソースにあるのか、 CGIのバッファが関係しているのか、それとも他に原因があるのか、 原因の切り分けが出来ずに困っています。 通常、CGIで100MBのファイルをアップロードしようとすると どれくらいの時間で処理できるのでしょうか? また、どうすればFTPと同レベルの処理速度に出来るのでしょうか? ちなみに動作環境はUNIX、線は100BASE、Perl5。 アップロードするCGIにはCGI.pmやcgi-lib.pl等のモジュールは仕様していません。 (それが原因でしょうか?) サーバのログには以下のように出ています。 (1)[14:17:57] "GET /xxx/ファイル入力用.cgi?flg=1 HTTP/1.1" 200 3413 (2)[14:57:11] "POST /xxx/アップロード用.cgi HTTP/1.1" 200 841 アップロードを行う(2)に処理が移るまでに、40分かかっています。 ということは、データのバッファリングに40分かかっているということなのでしょうか? |
友人がRS/6000でTCP/IPのパケット情報をmili sec単位で取得しそれをレポートとして出力したいんですが何か方法はありますか? |
こんにちわ いつもお世話になってます。 grepコマンドである検索文字列と、 その次の行を検索すると言うことは、 出来ないでしょうか? たとえば、 ファイルの中身が ------------------- aaa\n(改行) bbb\n(改行) ccc\n(改行) aaa\n(改行) ddd\n(改行) eee\n(改行) ------------------- と言うファイルがあったときに、 aaa\n(改行) bbb\n(改行) aaa\n(改行) ddd\n(改行) という結果を返して貰うことは出来ないでしょうか? 宜しくお願いします。 |
>>2903 tomu http://x68000.startshop.co.jp/~68user/unix/pickup?grep をご覧ください。 |
Dさん 見逃してました numオプション ^^; ありがとうございました。 |
はじめまして。 はじめてで恐縮ですが、質問させてください。 sortコマンドでカンマ区切りのdatファイルを 1番目と7番目の項目をキーに昇順、 5番目と6番目の項目をキーに降順 という並べ替えをしたいのですが、可能でしょうか? よろしくご教授願います。 |
こんにちは。 HPを開いているのですが質問があります。 BBSの方にアクセス制限をかけたい人物がいるのですが どう、打ち込めばよいかわかりません。 BBSを借りている所に質問したのですが なかなか返事が返ってこないのでこちらに頼ろうと思い 来させて頂きました。m(__)m どうぞ宜しくお願い致します。 その人物のホスト名は↓ FLA1Aae071.kmm.mesh.ad.jp なんですが、*.kmm.mesh.ad.jpと打つと 全然似てない私の方まで制限がかかってしまいました。 どう打てば宜しいのでしょうか? すいませんが教えてください。m(__)m あと、HPに描いた絵などを無断に使用する人物を つきとめる事等はできますでしょうか? |
No.2906#MATSUさん お使いの言語はPerlですか? Perlメモ http://www.din.or.jp/~ohzaki/perl.htm#SortMulti に、複数項目でのソート方法が書いてありますね。 参考になりますでしょうか。 |
こんにちは。 初めて質問させていただきます。 Solalisのtarコマンドでファイルをtarファイルにまとめようとしたのですが、 "ディレクトリ階層が深くダンプできません" というエラーメッセージが出てうまくいきません。 コマンド:tar cvf tarファイル ./対象ディレクトリ 対処方法を知っている方がいたら、教えていただけませんでしょうか? よろしくお願いします。 |
こんにちは FreeBSDで鯖を立てながら Perlで簡単なCGIを作っております 質問があるのですが BBSなどでバイナリファイルのUPLoadは どのように送ればよいのでしょうか わかる方が居りましたらお答えをお願い申し上げます |
突然ですが、 以前このページで紹介していたUNIX関連の本を教えていただけないでしょうか。 |
>>2911 take 右上にある全文検索フォームで適当な単語を入れてみましょう。 「書籍 or 本 or 出版社 or 著者 or 訳者」てな感じで。 あとは http://bookshelves.tripod.co.jp/ とか。 |
こんにちは。突然ですが質問させて下さい。 プロセス番号0〜2の (swapper) /sbin/init -- (pagedaemon) プロセスの役割は何でしょうか? |
質問いたします。下記のコマンドの条件部分($NF ~ /'"$1"')の意味がいまいち理解できないので(「最後のフィールドの中から1フィールド目の値を含むもの」というところまでわかるのですが・・・)、ご教示ください。 ps -el | awk '($NF ~ /'"$1"'/) {print $4}' mypid =$$ |
今更ですが、わかるものだけ回答しておきます。 >>2901 かなっぺ > ということは、データのバッファリングに40分かかっていると > いうことなのでしょうか? web サーバが全データを受信し終わってから CGI プログラムを 起動しているのでしょう。本当にそうなのかどうかは、その 40分の 間に web サーバのプロセスのメモリ使用量がどう変化しているか 観察するといいでしょう。 >>2903 tomu > grepコマンドである検索文字列と、その次の行を検索すると言うことは、 > 出来ないでしょうか? GNU grep ならできますが、僕の試した限りでは Solaris 標準の grep でこれができませんでした。何かやり方はあるのでしょうか? grep で改行コードをひっかけられば解決なんですが。 >>2910 NT > BBSなどでバイナリファイルのUPLoadはどのように送ればよいのでしょうか テキストファイルのアップロードと全く同じでいけるはずです。 >>2913 (^^) > (swapper) > (pagedaemon) スワップ制御とページング制御をする (カーネル内の) プロセスです。 > /sbin/init -- http://X68000.startshop.co.jp/~68user/unix/pickup?init をどうぞ。 >>2914 G OS のバージョンと ps -el の結果とがないと、これの意図するところは わかりません。 > ps -el | awk '($NF ~ /'"$1"'/) {print $4}' mypid =$$ awk が解釈するのは '($NF ~ /' と '/) {print $4}' だけで、$1 の部分はシェルが 1つ目の引数に置換するはずです。 |
>>2915 68user 情報不足で申し訳ございませんでした。しかし、私の疑問は解決致しました。 $1はフィールドではなく、スクリプトの引数を示すということですね。 ありがとうございました。 |
下記のスクリプトはHP-UXの/etc/rc.configファイルなのですが,${CFG_FILE##*/}と${fname##*[.,~\#]}の解読ができません。 どうかご教示ください。よろしくお願い致します。 for CFG_FILE in /etc/rc.config.d/* /etc/TIMEZONE do fname=${CFG_FILE##*/} if [ -f $CFG_FILE -a "$fname" !="core" -a "${fname##*[.,~\#]}" = "$fname"] then . $CFG_FILE fi done |
今日簡単なタテケイの問題がありました。タブ区切りで ブック名 ファイル名 数値A 数値B 数値C ・・・ というファイルをブック名ごとにサマリーし、やはりタブ区切りで ブック名 Σ数値A Σ数値B Σ数値C ・・・ というファイルを作らなければならなかったのですが、 while(<STDIN>) { ($bname = $fname, $A, $B, $C) = split; $data{$bname}{A} += $A; $data{$bname}{B} += $B; $data{$bname}{C} += $C; } for $bname (sort keys %data) { print join, /\t/, $bname, $data{$bname}{A},$data{$bname}{B},$data{$bname}{C},"\n"; } とか書いたらどうしても数値が若干少なくなってしまいます。 数万行あって、ほとんどの行は合ってるんだけど 全体の数字が少ない、、。 しかも、カラム A と B は合ってるのに C だけ少ない。 よくよく見るとファイル名に空白が入ってて、 split /\t/ にしないといけなかったんでした。 しかも、ファイル名が空白のデータは特定のカラムにしか データがなかった。 ふつうこんな間違い方はしませんが、同時に複数の問題が 発生していて、すごくハマりました(泣) |
はじめまして。さっそくなんですが質問です。 掲示板CGIを改造してメール送信機能をつけたのですが、改行が反映されていなかったり、題名が文字化けしたりしてます。 ソースはhttp://www.starcity.ne.jp/~hide/0test/treebbs+.txtです。 元はhttp://www.starcity.ne.jp/~hide/0test/treebbs-.txtです。 #------------------メール送信機能-------------------------# open(MAIL,"| /usr/sbin/sendmail -t") || &error("送信できません。"); print MAIL <<"_MAIL_"; From: ars\@xx.xx To: hide_mkhs\@yahoo.co.jp MIME-Version: 1.0 Subject: A-train railway service X-Mailer: Sendmail Content-type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit 投稿がありました。 名前:$name 題名:$subject メールアドレス:$mail ホームページ:$url メッセージ:$msg --------------------------------------- 投稿者情報 IP:$ip ホスト:$host --------------------------------------- A-train railway service(http://www.starcity.ne.jp/~ars/) _MAIL_ close(MAIL); #--------------------メール送信機能------------------------# こう書き加えたんですが… いま題名はA-train…ですが、日本語にすると文字化けしてしまい、来たメールは 投稿がありました。 名前:みー 題名:新規 メールアドレス:ars@starcity.ne.jp ホームページ:http://www.starcity.ne.jp/~ars/ メッセージ:<b>タグは‥?</b>どうでしょう? --------------------------------------- 投稿者情報 IP:218.133.200.111 ホスト:YahooBB218133200111.bbtec.net --------------------------------------- A-train railway service(http://www.starcity.ne.jp/~ars/) のように改行が反映されてなく、タグもみえみえです。しかも、レスの記号をあらわす">"は>となってしまいます。 どうすればいいのか教えてください。 |
>>2919 みー メールは HTML じゃなくてプレーンテキストなので、 タグが見え見えだったり改行がそのままだったりするんでしょう。 HTML 形式を維持するなら HTML メールをサポートしてるメーラーに HTML 形式のメールを送ればいいんじゃないでしょうか。 (その場合ヘッダはどうなるんでしょうね。 よくわかりません。よく広告とかで壁紙がついてきたりするから、 できることはわかっているのだが、、) 題名が文字化けなのは、ISO-2022-JP を正しく読み込んで ないからでしょう。ブラウザーが送ってくる文字はさまざまなので、 jcode.pl あたりで変換するとか。 |