68user's page 掲示板

Prev< No. 897〜902> Next  [最新発言に戻る] [過去ログ一覧]
No. 897 # 68user 2000/06/05 (月) 03:37:00
> この/dev/hda2を/homeにし、/varは/dev/hda1内に移したいのですが、
> 果たしてできるのでしょうか。
できなくはないでしょうが、かなり怖い作業ですね。
特にリモートでの作業になってしまう、というのが。

    1. cd /var
    2. シングルユーザモードに移行
    3. 不必要なプロセスを全て殺す
    4. /etc/fstab から /var のエントリを削除
    5. mkdir /newvar
    6. cd /var; tar zcvf - . | (cd /newvar; tar zxvfp -)
    7. mv /var /oldvar
    8. mv /newvar /var
    9. システムをリブート

かなぁ。7 から 8 の間で、/var 以下のファイルをオープンしようと
するプロセスがあれば、その動作は失敗します。また、(おそらく)
最初に /var 以下のオープンしているプロセスは、7 を行っても
引続き /oldvar 以下のファイルをオープンし続けているので、
最後にリブートが必要です。

/home については、上の作業をした後、

    A. シングルユーザモードに移行
    B. /etc/fstab に /dev/hda2 /home ext2 なエントリを追加
    C. /dev/hda2 を /newhome としてマウント
    D. rm -rf /newhome/* (フォーマット。newfs を使った方がよいけど)
    E. cd /home; tar zcvf - . | (cd /newhome; tar zxvfp -)
    F. mv /home /oldhome
    G. リブート
    H. rm -rf /oldhome

でしょうか。

僕は Linux を触ったことがないので、コマンド名やオプションが
Linux でも通用するかどうかはわかりません。事前に十分シミュ
レーションしてから行って下さい。できれば Linux-users-jp や
fj などで、
    「…という作業手順でいのでしょうか?」
と質問した方がよいと思います。
# もし「それではうまくいかない」「こうすれば簡単だ」という回答を
# もらったら、僕にも教えて下さい :-)

なお、上記の通りにやってうまくいくかどうかは保証できません。


> あと、メールのヘッダやフッタに自動的に広告などをいれている
> メールを見かけますが、ああいうものは、
> どういったカタチで実現しているんでしょうか?
> CGIなどを使って、というカタチでしょうか。
CGI は web の仕組みであって、メールとは全く関係ありません。
# web 上でボタンを押すとそういうメールが送られる、
# というなら関係ありますけど。

確か、そういう機能を持ったメーリングリストプログラムが
あったように思いますし、常に一箇所からしかメールが発信
されないなら、その部分でヘッダやフッタを追加してもいいです。

No. 898 # 68user 2000/06/05 (月) 03:43:52
> 7. mv /var /oldvar
おっと。マウント中のマウントポイントは mv できないかも
(FreeBSD ではそうでした)。

一度 /dev/hd2 を umount すればいいですが、もし device busy
などと怒られたら、umount -f で強制アンマウントできます。
本当は fstat や fuser で、/var 以下のファイルを使用している
プロセスを調べて、それを殺してから umount するのが筋ですけど。

No. 899 # yuji 2000/06/05 (月) 13:27:56
いつもお返事、ありがとうございます。(^^)
表現が悪かったですね。>CGI(^^;
おっしゃるように、この場合は、必ずしもWWWサーバーと
やりとりするわけではないですから。

perlやCによるプログラム
でヘッダやフッターを処理したメールを、SMTPサーバーで
送信しているのか、それともSMTPサーバーのどこかで、
ヘッダやフッターを設定できるのかな、と思いまして。

今のところは、他の場所で使う予定はないですので、
自分で付加するプログラムを実験してみようと思っています。
下のメーリングリスト関連のリンク集を参考に、
いろいろなメーリングリストの特徴を勉強してみようと思います。(^^)
http://yamanoya.ecs.cst.nihon-u.ac.jp/patio/ml/makeml/mllinks.html

No. 900 # CZ 2000/06/05 (月) 21:19:42
お返事ありがとうございます。

早速Linuxのメーリングリストに入る準備をしましたが、業務用に使っているわけではないし、物は試しと思って一発勝負をかけてみました。

% /usr/local/apache/bin/apachectl stop
% fuser -k -m /dev/hda2
| /etc/fstab から /var のエントリを削除

ここで`umount /var`としたら'device busy'が出たので、深く考えずに再度`fuser -k -m /dev/hda2`としたら見事telnetが死にました。そこで
% umount -f /var
% mv /newvar /var
% reboot
この作業を管理会社の方にお願いしました。

| /etc/fstab に /home 追加
% mkdir /newhome
% mount /dev/hda2 /newhome
% rm -rf /newhome/*
% cd /home; tar zcvf - . | (cd /newhome; tar zxvfp -)
ここで何かエラーが出たのですが、読み飛ばし。
% mv /home /oldhome
% reboot

再起動したらさっきのエラーが原因らしく/newhomeの中が空で、かつ/homeができていなかったので、

% cp -a /oldhome/* /newhome
% mkdir /home
% reboot

再起動中に混乱してきました。(そういえばさっきの/newhomeはどうなるんだ? `mkdir /home`は不要だったか?)

% mount
(あ、ちゃんと/dev/hda2 on /home type ext2 (rw)になってる。)
% ls /home
(中身もある。ひょっとして成功か?)

というわけで、成功しました。(あるいは成功したように見えています。)一つ間違えば追加料金を払って再設定してもらうところでした。今までもこんな具合に、システムをほとんど理解しないまま手探りで運用してきました。もっとしっかり身に着けようと、本などを買って勉強してはいるのですが。

ただ、/newhomeと/homeが両方存在しています。/newhomeは消しても構わないと判断できるでしょうか。

No. 901 # 68user 2000/06/06 (火) 01:01:56
> ただ、/newhomeと/homeが両方存在しています。/newhome は
> 消しても構わないと判断できるでしょうか。
多分よいと思いますが、df -k して、別パーティションで
あることを確認して下さい。また、本当にコピーできたか
どうか du や diff などで確認して下さい。

> `mkdir /home`は不要だったか?
/dev/hda2 を /home にする、ということなのでマウントポイント
/home はマウントする前に mkdir で作成しなければなりません。

なお、マシンが手元にあるなら、シングルユーザモードで起動してから
作業をするのが正しいやり方です。


> perlやCによるプログラムでヘッダやフッターを処理したメールを、
> SMTPサーバーで送信しているのか、それともSMTPサーバーのどこかで、
> ヘッダやフッターを設定できるのかな、と思いまして。
SMTP サーバがヘッダやフッタに関与することはないと思います
(そういうサーバが世の中に絶対ないとは言い切れませんが)。

ちなみにメーリングリストサーバの fml なんかは、ポリシー
として、フッタを付けるような機能は実装しない方針だった
ように思います (今はどうか知りません)。

No. 902 # mac 2000/06/07 (水) 07:04:04
はじめまして。

pl(cgi)で
    $A="abc";
この$Aに入っている“abc”をクリプト化したいのですが
どのようにすればよろしいですか?

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