68user's page 掲示板

Prev< No. 1272〜1300> Next  [最新発言に戻る] [過去ログ一覧]
No. 1272 # 超ビギナー 2000/10/19 (木) 16:34:45
ほんとしょうもない質問ですみません。
Print Screen機能を使って画面を印刷したいんですが、
どうしたらいいのでしょうか。
教えてください。

No. 1273 # 伊藤 2000/10/19 (木) 18:59:10
-u 同一内容の行は1度しか表示しない。

% cat sample | sort
abc
def
def
ghi
% cat sample | sort
abc
def (同じ行は一度しか表示しない)
ghi



2回目に-uが入ってないのでは
初心者なので違っていたら済みません。

No. 1274 # 68user 2000/10/20 (金) 07:15:36
> 簡単すぎるパスワードだと変更することができません。
root なら「パスワードが簡単すぎるぞ」と怒られても、再度
同じパスワードを入力すればムリヤリ変更できますが、一般
ユーザでは hsj さんの書かれたようなことをしない限り、
無理でしょうね。

> HTTPはResponseヘッダとボディの間はCRLFで区切るって
> 規定されてませんでしたっけ。
です。
    http://x68000.startshop.co.jp/~68user/cgi-bin/wwwboard.cgi?log=1135
の書き方はちょっとアレなので、書き直すと、
    http://news.yahoo.co.jp/headlines/top/
のヘッダ/ボディのセパレータは LF になってます。

00000000 48 54 54 50 2f 31 2e 30 20 32 30 30 20 4f 4b 0a |HTTP/1.0 200 OK.|
00000010 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a 20 74 65 |Content-Type: te|
00000020 78 74 2f 68 74 6d 6c 0a 43 6f 6e 74 65 6e 74 2d |xt/html.Content-|
00000030 4c 65 6e 67 74 68 3a 20 31 39 31 30 33 0d 0a 0a |Length: 19103...|
00000040 3c 68 74 6d 6c 3e 0a 3c 68 65 61 64 3e 0a 3c 21 |<html>.<head>.<!|

> Print Screen機能を使って画面を印刷したいんですが、
Print Screen キーを押したら、xwd コマンドを実行するように、
ウィンドウマネージャを設定するのが一番簡単そうです。

> 2回目に-uが入ってないのでは
ですね。御指摘どうもです。次回更新時に修正しておきます。

No. 1275 # 超メール初心者 [E-mail] 2000/10/20 (金) 13:11:21
はじめまして。
今、procmailを用いて転送制限の設定を行っているのですが
添付ファイル付きのメールを転送しない設定ができません。

ある雑誌に載っていた方法を試したのですが、どうもうまくいきません。

:0 c
* !Content-Type:.*multipart
!転送先メールアドレス

資料に目を通した限り、うまくいきそうな感じがするのですが
間違いなり、さらにうまい方法があるならばお教えください。
お願いします

No. 1276 # 超メール初心者 [E-mail] 2000/10/20 (金) 13:18:44
追記します。
下記の例は、添付ファイルがついていた場合
メール転送しないという意味で書いています

No. 1277 # 超初心者 [E-mail] 2000/10/20 (金) 16:16:55
68userさん、hsjさん。返信ありがとうございます。
やはりそうですか・・・。
さすがにセキュリティを下げると問題があるので、コマンドレベルから
やることは破棄せざるをえなくなりました。
その代替となると、passwdコマンドのソースを研究するしかないのかもしれませんね。どこかにそんなことを詳しくのっている場所はないでしょうか?
現在自分自身でも検索中です。

No. 1278 # hsj 2000/10/20 (金) 21:45:44
@68userさん
スミマセン、ぼくの確認方法が正しくなかったようです。
確実な方法で確認したところ、確かにnews.yahoo.co.jpは
LFしか返してきませんね。はー

>  http://x68000.startshop.co.jp/~68user/cgi-bin/wwwboard.cgi?log=1135
> の書き方はちょっとアレなので、書き直すと、
>  http://news.yahoo.co.jp/headlines/top/
> のヘッダ/ボディのセパレータは LF になってます。
こっちの意味は取り違えてなかったんですが(苦笑

@超初心者さん
いやそうではなくて、ユーザが任意の文字列を選ぶ際に、
その文字列のパスワードとしての強度を(ある程度)判定してくれる物を
取り除いてしまうこと自体が「改悪」だと言う意味です・・・。

No. 1279 # ケイ 2000/10/21 (土) 00:34:11
お礼が遅れてすいませんでした。
てっきり頼り過ぎたので無視されたと
思って掲示板を見てませんでした(^^;
なるほど、良く分かりました。
ありがとうございました

No. 1280 # 68user 2000/10/21 (土) 15:25:40
> 超初心者
> 超メール初心者
> 超ビギナー
こういうハンドルはやめてください。そこまで匿名性を
求めるならば、www.2ch.net などを利用してください。

> 今、procmailを用いて転送制限の設定を行っているのですが
> 添付ファイル付きのメールを転送しない設定ができません。
まずは ~/.procmailrc の先頭に LOGFILE=$HOME/procmail-log
などと書いて、ログを取りましょう。原因究明はその後です。

> passwdコマンドのソースを研究するしかないのかもしれませんね。
まぁそうなりますが、passwd は人間様が対話的に使うコマンド
なので、*BSD ならスクリプト向きの pw コマンドってのが
あります。これは root での使用を前提としているので、
指定したパスワードをそのまま設定してくれます。Redhat
Linux にも、その手のコマンドがあるかもしれません。

で、以下のようなスクリプト
    #!/usr/bin/suidperl
    $username=$ARGV[0];
    $newpasswd=<STDIN>;
    chomp($newpasswd);
    echo $newpasswd | pw usermod -n $username -h 0
を passwd_change という名前で保存して、
    # chmod 4755 passwd_change
    # chown root passwd_change
しておけば、誰でも
    % echo newpasswd | passwd_change username
で変更できます。

もちろんこのままでは、セキュリティもへったくれもないので
何かしらの制限を付けないといけません。

@has
文字コードの件、了解です。

No. 1281 # Madstar [E-mail] 2000/10/22 (日) 02:40:11
どうも皆さん始めまして。

私は最近Cygwinでプログラミングの勉強を始めました。
Linuxのことはまだほとんどわからないので2つ同時に
勉強しなければならないので大変です(^_^;)

で、インターネットで拾ってきたいろんなサンプルソースを
コンパイルして遊んでるんですが、LinuxとWin32での
ソースレベルでの互換性に疑問があります。

たとえば、あるサンプルソースの場合、シリアルポートにアクセス
するのに

#makefile
SERIALDEVICE = /dev/ttyS0

#tool.c
/* setup serial port */
void open_serial(char *devicename)
{
        struct termios newtio;

        dfd = open(devicename, O_RDWR | O_NOCTTY);
        if (dcfd < 0) {
    perror(devicename);
    exit(-1);
        }

        open_serial(SERIALDEVICE);

という具合にデバイスをオープンしているのですが、
このソースをWin32アプリとしてコンパイルしても当然(?)動きません。

で、SERIALDEVICEの部分を COM1 に変えて見たのですが、これも
動きませんでした。

他のファイルやソースを眺めてみても、良くわからないのですが、
この場合、Win32で動作させるにはどのようにすべきなのでしょうか?

No. 1282 # 雅人 2000/10/23 (月) 00:40:25
ども、はじめまして。雅人と言います。
質問なのですが
掲示板をつくろう(1)でperlを書くならEUCで書くべきと
書かれてたのでSJIS(CRLF)からEUC(CRLF)に変換したところ
逆に文字化けが起こってしまいました。
ローカルな環境(win95)でもアップロード先(virtualave.net)
でも文字化けが起こってしまいます。
これの原因とは一体なんなのでしょうか?
よろしくお願いします。

No. 1283 # 宗佑 [E-mail] 2000/10/23 (月) 11:16:10
超メール初心者あらため宗佑です。

procmailの転送設定、自己解決しました。
記述が足りなかっただけでした。
うーん、奥が深いですね、メール転送。
これからスクリプトを徐々に複雑にしていこうと思います。

でもprocmailを記述しているHPって少ないものなんですね。
載っている例も基本的なものです。
私も自分で試している途中ですが、procmailの達人みたいな例の
載っているHPをどなたかご存知内でしょうか?
お願いいたします

No. 1284 # 68user 2000/10/23 (月) 22:30:07
@雅人さん
> ローカルな環境(win95)でも
メモ帳などのエディタで化ける、ということならば
EUC を読めるエディタを入手して下さい。

> アップロード先(virtualave.net) でも
ブラウザの文字コード設定を「日本語 EUC」として直るならば、
CGI の出力する日本語部分が短かすぎるため、ブラウザが
文字コードを正しく解釈していないのでしょう。その場合は、
    print "Content-type: text/html\n\n";

    print "Content-type: text/html; charset=EUC-JP\n\n";
として下さい。

@宗佑さん
> でもprocmailを記述しているHPって少ないものなんですね。
> 載っている例も基本的なものです。
確かに少ないですね。僕もあまり見かけたことがありません。
ただ、基本的なところをわかっていれば procmailrc(5) と
procmailex(5) でなんとかなることも多いです。

@Madstar さん
うーん、さっぱりです。シリアルポートの操作さえしたことがないので…。

No. 1285 # 68user 2000/10/24 (火) 00:21:28
>  print "Content-type: text/html; charset=EUC-JP\n\n";
> として下さい。
というより、Content-type ヘッダには EUC-JP/Shift_JIS/ISO-2022-JP
などの charset を付加 *すべき* です。

僕のところの CGI プログラムには一部にしか付いていませんが、
これは悪い CGI の見本です。必ず charset を付けましょう。

No. 1286 # 雅人 2000/10/24 (火) 00:46:24
どうも、ありがとうございました!
無事できました。

No. 1287 # 海苔王 2000/10/24 (火) 16:51:10
みなさん、はじめまして。海苔王と申します。
現在、ソラリス7でサーバーを構築しています。
apache,sendmail,popper と動かしてきて、昨日までは
メールが動いていたのですが、突如、受信ができなくな
ってしまいました。電八で出たエラーは以下のとおりです。 +OK QPOP (version 3.0.2) a ******starting.
C: USER ***
S: +OK Password required for ******
C: PASS ********
S: -ERR [SYS/TEMP] maillock error 3: '/usr/mail/*****'

といった内容でした。sendmail.def からいろいろ見直したのですが、
うごきませんでした。どうかアドバイスお願いします。

No. 1288 # 68user 2000/10/24 (火) 23:44:09
チェック項目を思い付くままに。
    1. /var/log/messages や /var/log/maillog に詳細なエラーは出ていないか
    2. /usr/mail/ のパーミッションがおかしくなったのではないか (ls -ld /usr/mail)
    3. /usr/mail/ にロックファイルらしきものは残っていないか (ls -lA /usr/mail)
    4. ディスクの残り容量は (df -k)。i-node space が枯渇していないか (dk -ki)
    5. ソースから grep maillock して、エラー箇所を捜し出す
あと重要なのが、全ユーザでメールを取得できないのか、
一人だけメールを取得できないのかってこと。全ユーザなら
1,2,4 あたり。一人だけなら 3 をチェック。

ってな感じでしょうか。

No. 1289 # Madstar 2000/10/26 (木) 00:25:25
>うーん、さっぱりです。シリアルポートの操作さえしたことがないので…。

残念です(T_T)

まぁシリアルポートなんて今更余り使わないですよねぇ(^_^;)
いろいろ検索かけてるんですが、さっぱりです。

No. 1290 # mm 2000/10/26 (木) 00:51:17
>まぁシリアルポートなんて今更余り使わないですよねぇ(^_^;)
DOS時代には、awkで
print "AT" > "AUX"
みたいな感じでモデムとお話してましたが、
Windowsではどうなんだろう…試してません(^^;

No. 1291 # hsj 2000/10/26 (木) 01:22:13
> シリアルポート
ぼくの当てにならない記憶によると、
winでシリアルポートを開くときはAPIのCreateFile()を使うはずです。
その辺を調べてみてください。
で、この辺のソースはwin系と*nix系での互換性を維持するのは
難しいところだと思います。
ぼくはCygwinは使ったことありませんが、おそらくopen()を実装するのに
このAPIを使ってると思うので、もしかしたら開けるかもしれません。
が、結局フラグが違うでしょうからあまり意味無いと思います・・・。
#そもそもLinuxのopen()ってシステムコールですしね

No. 1292 # ありしあ 2000/10/26 (木) 16:37:09
初めまして。
Perlの勉強をし始めたばかりなのですけど、ソケットを使ったクライアントプログラムの作り方とか…全くの初心者な私にはすごく解りやすくて、それに読みやすかったです。

全部説明しよとう難しくなってるサイトや、簡単に説明しようと補足説明が抜けてるサイトも多いですけど、このサイトの説明はとても解りやすいです。
えっと感想をここに書いて良い物かどうか解りませんが、本当に参考になりました。ありがとうございます。

No. 1293 # NoiR 2000/10/26 (木) 21:48:01
少なくともNTであれば
C:\> type CON > COM1
といった方法でシリアルポートとお話できます。
parityやbaud rate、タイムアウト等の設定は、MSDOSと同じ
modeコマンドで行います。
Windows95/98のことは知りませんが、似たようなものだと思いますよ。

No. 1294 # 68user 2000/10/27 (金) 00:19:20
@ありしあさん
お褒めの言葉ありがとうございます。でもありがたくは思いますが、
もっとありがたいのは「ここは間違っている」「ここの記述が
理解しにくかった」などの指摘です。もちろん「こういうサンプル
プログラムがあるとよい」とか、単なるタイプミスのご報告でも
大歓迎です。

何かしら気づいた点がありましたら、よろしくお願いします。

と言っておきながら、これまでいくつかプログラムの不具合や
記述ミスのご指摘を頂きましたが、忙しくて web に反映できず、
誠に申し訳なく思っています。手元にあるファイルは修正して
いますので、暇ができ次第更新するつもりです。

# なのに、また忙しくなってきてしまった…。

No. 1295 # 宗佑 [E-mail] 2000/10/27 (金) 09:51:22
procmailについてあるツールformailについての
質問です。

formailを使用して自動返信設定を作成中なのですが
from句を任意で指定したアドレスに変更して、返信したいのです。

今の状態を見るとユーザー名+サーバーのドメイン名といった具合になってしまいます。
これを"xxx@xxx.yyy.zzz"といった指定したメールアドレスをfrom句に入れて自動返信したいのです。そういった方法はあるのでしょうか?
よろしくお願いいたします

No. 1296 # 宗佑 [E-mail] 2000/10/27 (金) 16:59:39
追記です。

現在、procmailの設定は

:0 h c
* !^FROM_DAEMON
* !^X-Loop:your@own.mail.address
| (formail -r -A"Precedence: junk" \
-A"X-Loop: your@own.mail.address" ; \
cat resmsg) | $SENDMAIL -t

これだと、送信者名がUNIXのユーザー名になってしまう。
最後の$SENDMAILで送信しているから当然なのですが・・・
ので、この送信者をxxx@xxx.yyy.zzzとしたいのです。
なにとぞ、よろしくお願いします。

追伸
どなたか、linuxサーバー(Redhat 6.2)で使用可能なお勧めの
自動返信ツールをご存知でしたら教えてください。

smtpにはsendmail8.9.3を使用しています。

No. 1297 # やまま 2000/10/27 (金) 17:08:48
むにむに。。思ったこと。

link-check.pl

114-115行目。
        &check_link(SITES=>[@sites],
     MAX_CHILDRED=>20);

138-143
        if ( defined $args{SITES} ){
    @sites = @{$args{SITES}};
        }
        if ( defined $args{MAX_CHILDREN} ){
    $max_children = $args{MAX_CHILDREN};
        }

MAX_CHILDRED -> ?

No. 1298 # 海苔王 2000/10/27 (金) 18:52:20
>68user 様
アドバイスありがとうございました。
どうやら容量の枯渇が原因でした。
余計なものを移動したら、動くようになりました。
ありがとうございました。

No. 1299 # ありさわ [E-mail] 2000/10/27 (金) 19:41:12
Perlのネットワークプログラムで、サーバーとの接続が
切れた状態を検出したいのですが、LANケーブルがつながった状態で
通信できなくなった状態は検出してPerlプログラムを終了出来るのですが
LANケーブルを引きぬくことによって、通信できなくなった状態はどのようにして検出したらよいのですか?

一応、Perlの中でPingをうって帰ってきた値を見て検出しようと
したのですが、Perlの中のPingはRoot権限でないとエラーに
なってしまいます。
Root権限以外でPingを実行する方法か、あるいは違う方法を
知っていたら教えて下さい。お願いします(v_v)

No. 1300 # 68user 2000/10/28 (土) 04:43:23
@宗佑さん
> "xxx@xxx.yyy.zzz"といった指定したメールアドレスを
> from句に入れて自動返信したいのです。
これは、単に From ヘッダが xxx@xxx.yyy.zzz になっていれば
いいのですか? それとも envelope from が xxx@xxx.yyy.zzz と
なっていて、例えば転送途中でメール送信に失敗した場合、
エラーメールが xxx@xxx.yyy.zzz に送られることを意図して
いますか?

前者ならただ単に From: を置換するだけなので、formail -i や
formail -I でできそうです。後者なら sendmail -f xxx@xxx.yyy.zzz
でしょうか。

なお、僕は formail を使ったことはありませんし、できるか
どうか試してもいません。


@やままさん
> MAX_CHILDRED -> ?
む、typo ですね。直しました。御指摘ありがとうございました。


@ありさわさん
ケーブルを抜いた状況だとどうなるんですかね。多分僕なら一定時間で
タイムアウトさせて unreachable かどうかを判断すると思いますが、
本当はどうすべきなのかは わかりません。

それはそれとして、以下は ping で判断するという前提の話。
ping は ICMP プロトコルを使いますが、これは root 権限が
ないと実行できません。その証拠に ping コマンドは root に
suid されています。
    % ls -l /sbin/ping
    -r-sr-xr-x 1 root wheel 195956 Jul 27 23:31 /sbin/ping*
というわけで、素直 (?) にping コマンドを使うのがいいのでは
ないでしょうか。

Prev< No. 1272〜1300> Next  [最新発言に戻る] [過去ログ一覧]