| カテゴリ | サブカテゴリ | 登録日 | タイトル | 内容 | ポイント | 表示名 |
| HP-UX | HP-UX 一般 | 2002/9/10 | 空ディレクトリの検索方法 | 空ディレクトリ(=ファイルとサブディレクトリが存在しないディレクトリ)を探すための何かいい方法をどなたかご存知ではないですか? | 17 | poo |
| 2002/9/10 | RE:空ディレクトリの検索方法 | find(1)だけでは出来そうに無いので、以下のスクリプトと組み合わせたらどうですかね? 下のスクリプトは、ディレクトリをリストしてファイルの個数が0であれば表示します。これをckemptyとかの名前を付けておきます。 #!/usr/bin/sh if [ $( ls -A $1 | wc -l ) = 0 ] then echo $1 is a empty directory fi 上記スクリプトと、find(1)を以下のように組み合わせれば出来そうです。 find . -type d -links 2 -exec ckempty {} \; 以下は、私のマシンでテストした結果です。 ./hoge/a is a empty directory ./hoge/b is a empty directory ./hoge/c is a empty directory ./foo is a empty directory findのオプションの意味としては、 -type d : ディレクトリだけを見つける。 -links 2 : サブディレクトリを持たないディレクトリのリンクカウントは2なのでそれだけを見つける。 ls(1)で確認してみると正しいことが判ります。 $ ls -AR hoge foo foo: hoge: a b c hoge/a: hoge/b: hoge/c: 上記は、HP-UX11.11で試しました。 |
isao | |||
| 2002/9/10 | RE:空ディレクトリの検索方法 | アイディアだけですが。 ls -Rだと空ディレクトリは1行、そうでないディレクトリは 複数行でそのあとに空改行が表示されます。 これを利用して、スクリプトを作ればいけるかと思います。 |
まりお | |||
| 2002/9/10 | RE:RE:空ディレクトリの検索方法 | ls
-R だけだと、.(ドット)で始まるファイルはリストされないので、オプションの、-A をつけて、ls -AR とするほうがよろしいかと思います。-a
にしてしまうと、"."と、".."もリストされるので注意です。 |
isao | |||
| 2002/9/10 | RE:空ディレクトリの検索方法 | 泥臭い方法ですが #for a in `find / -type d` >do > b=`ls -l $a|wc -l` > if [ $b = 1 ]; then > echo $a > fi >done findでディレクトリ(-type d)を検索して 検索したディレクトリのls -lの結果が1行の場合 すなわちファイルもサブディレクトリも無い ものだけをif文で抽出します。 ls -lの結果が1行の場合は何も無いディレクトリです。 |
sin | |||
| 2002/9/10 | RE:空ディレクトリの検索方法 | 皆さんと同じように、私も、1) 候補のリストを作る。 と 2) 空であるかの判定 の2つに分けるのが良いと思います。 1)については isao さんの -type d と -links 2 を頂戴して、2) に関しては、小さなCの プログラムで実現するのはいかが。(まあそれほど頻繁 に行なう操作でないでしょうから、そこまですることは ないかもしれませんが、)例えば、 #include <stdio.h> #include <dirent.h> #define TRUE_FOR_FIND 0 #define FALSE_FOR_FIND 1 main(argc, argv) int argc; char *argv[]; { DIR *dirp; struct dirent *dp; int count = 0; if ((dirp = opendir(argv[1])) == (DIR *)NULL) { exit(FALSE_FOR_FIND); } while ((dp = readdir(dirp)) != NULL) { if (++count > 2) break; } closedir(dirp); if (count == 2) exit(TRUE_FOR_FIND); /* it only contains "." and ".." */ exit(FALSE_FOR_FIND); } これをコンパイルして、例えば emptyp という実行 ファイルにしたとして、 find / -type d -links 2 -exec emptyp {} \; -print で / から検索できます。 |
nadachi | |||
| その他 | ちょっと一息 | 2002/9/1 | Itanium2マシンを売るには | こんな記事を見つけました。 http://japan.cnet.com/Enterprise/News/2002/Item/020830-2.html 厳しそうですねぇ>Itanium ここはちょいと発想を変えて、激安Itanium2マシンを出してで挽回を図るなんてぇのはどうですか>HP殿。 Sunの檄安機と同程度の15万〜20万くらいでItanium2マシンを出して、どんどんItanium2を使ってもらう。Itanium2なWSになれた技術者はサーバも同様のCPUの方が管理しやすいって事で、Itanium2サーバが売れていく.....なぁんてぇ話なんですがね(^^;;。 #単に安いItanium2マシンが欲しいだけという説はあるけど(^^;;>こばやし |
22 | こばやし |
| 2002/10/16 | RE:Itanium2マシンを売るには | zx6000をHP-UX11.22で使用していますがメチャクチャ起動が早いです。今からアプリを仕込むのですがこれもパフォーマンスが上がりそうなので仕事がワクワクです。 | pepe25jp | |||
| HP-UX | ネットワーク | 2002/8/30 | リモートディレクトリの検索について | HP-UXのワークステーションからリモートホストにデータを 取得する動作を考えております。 リモートホストの/aaaというディレクトリの下にP1,P2,P3という ディレクトリが存在する可能性があると考えてください。 仮にp1,p2と存在した場合には、P2からデータを P1,P3と存在した場合にはP3からデータを取得したいのですが、 リモートディレクトリの有無を検索するコマンドをご存知の かたいらっしゃいませんでしょうか? 自分自身の場合はstatコマンドなどがあるかと思います。 よろしくお願いします。 |
13 | yusuke |
| 2002/8/30 | RE:リモートディレクトリの検索について | 単純にremshでlsを実行すれば,ディレクトリの存在はチェックできるのではないですか? $ remsh hoge ls のようにして.この結果で処理を分岐させればよい. ...シェルスクリプトの話ではない? |
3 | R.Noguchi | ||
| 2002/8/30 | RE:RE:リモートディレクトリの検索について | またはNFSでマウントしてしまうとか. | 2 | R.Noguchi | ||
| 2002/8/30 | RE:RE:リモートディレクトリの検索について | remsh
host 'if [ -d /tmp ];then echo hoge; fi' なんてこともできるのご存知ですか? (と言っても 私も今回初めて試してみて実際動くことを確認した わけですが・・・ ^^;) 基本的にはR.Noguchiさんと同じ発想ですが、' '内の 部分は相手側で実行され分岐の判断も相手側でできる点 が一味違います。 |
8 | kab | ||
| 2002/8/30 | RE:RE:RE:リモートディレクトリの検索について | これ良いですね(^^;;。 いままでこう言うのって、相手側にスクリプトを作って、 それを実行させていたんですが、簡単なものであれば このやり方の方がメンテナンスとかもずっと楽です。 |
こばやし | |||
| 2002/9/2 | RE:RE:RE:リモートディレクトリの検索について | ありがとうございます。 なかなか面白いコマンドがあるものですね。 実施しようとしている動作はすべて自動であるので、このコマンドは 使えるかと思います。 ただ、すでにユーザにて一部プログラムを作成されており、 C言語で記述されているため、できればC言語にそのまま組み込める形 であれば良かったのですが。 次回にぜひ試してみようと思います。 |
yusuke | |||
| 2002/9/2 | RE:リモートディレクトリの検索について | ついでですが、こんな事もできちゃいます: # remsh host 'if [ -d /tmp ] then echo hoge else echo tako fi' hoge |
kab | |||
| HP-UX | システム管理 | 2002/8/30 | 256Mbyteのmallocは可能か? | OS:
HPUX10.20 EWS: B2000 実装メモリ:512Mbyte の環境で すでにいくつかのアプリケーションが動作して 120Mbyte程度 仮想メモリを消費している時 C言語プログラムで malloc(256*1024*1024) 256Mbyteの 仮想メモリ空間を確保したいのですが 実行すると プログラムのロード時点で メモリ不足(資源不足)のエラーとなり 実行できません。 どなたか、256Mbyteの変数領域を 確保する方法をご存じの方は ご教授ください。 |
17 | TLSG01 |
| 2002/8/30 | RE:256Mbyteのmallocは可能か? | SAMでkernel
parameterのmaxdsizを変更し256MB以上に すれば可能かと思います。ただし、スワップ領域が256MB 以上の空きがないと依然として領域確保はできないと 思います。maxdsizのデフォルト値は確か64MBだった ように記憶してますが、最近は試したことがないので この値は違っているかもしれません。 |
3 | kab | ||
| 2002/8/31 | RE:256Mbyteのmallocは可能か? | ITRC
の技術情報に、メモリ関連のエラーメッセージをまとめたものがあったような気がします。 maxdsiz なのか、swap なのか
など、ボトルネックが何かの参考になるかもしれません。 時間があれば、後で探してみますが。 あれ、プログラムのロード時点というのは、malloc の実行エラーでは、なくプログラムの起動時ですか? malloc で割り当てるメモリは、起動時にはリザーブしないと思いますが。malloc が原因というのは確実なのですよね? あと仮想メモリがどのくらいあるか、仮想メモリを 120Mbyte 消費というのを何でみていらっしゃるかなどが少し気になりました。# それがわかっても、何かわかるか自信はないんですが。 |
3 | Yuri | ||
| 2002/8/31 | RE:RE:256Mbyteのmallocは可能か? | 見つかりましたが、ちょっと、勘違いで
swap 関連の警告を集めたものでした。 日付: 02/04/22 ドキュメントの詳細: スワップ・エラーと警告 ドキュメントID: SKHARVKBRC00000733 |
3 | Yuri | ||
| 2002/9/2 | RE:RE:256Mbyteのmallocは可能か? | 仮想メモリはtopコマンドで表示されるので Memory: 21512K (8524K) real, 22900K (9960K) virtual, 388780K free Page# 1/4 空きが388Mbyte有ることが判ります。 |
TLSG01 | |||
| 2002/9/2 | RE:256Mbyteのmallocは可能か? | 基本的にはkabさんのおっしゃるようにmaxdsizの設定だと思います。(もちろんそれだけの仮想メモリがあることは大前提ですが...) あと既にチェック済みかとは思いますが、limit値はどうでしょうか。 limit (csh系) ulimit -a (sh系) で、datasize(又はdata)はいくつになっていますか? |
2 | Hirotada | ||
| 2002/9/3 | RE:256Mbyteのmallocは可能か? | kabさんの言うとおり、malloc(3)で指定したサイズのメモリを確保するためには、 1. カーネルパラメータmaxdsizが、確保したいサイズ以上に設定されている 2. スワップ領域に確保したい領域以上の空きがある 上記二つの条件を満たしている必要があります。 maxdsizは、samなどで確認することができます。 スワップ領域の空きは、swapinfo -t を実行し、freeのサイズがどのくらいあるかを調べます。 # swapinfo -t Kb Kb Kb TYPE AVAIL USED FREE USED dev 1048576 33436 1015140 3% reserve - 512840 -512840 memory 1157676 1047840 109836 91% total 2206252 1594116 612136 72% 上記出力結果の、totalの行のFREEの部分、この例では612136KB=約600MB の部分が現在利用可能なスワップ領域の空きになります。 |
2 | isao | ||
| 2002/9/4 | RE:256Mbyteのmallocは可能か? | maxssiz
が256*1024*1024より少なかったので 401604608 にしたところ mallocできました。 次にシェアードメモリで256Mbyte(すでに128Mbyte 使用しているので合計 384Mbyte)確保したところ プロセスのexitと同時にディスクトップ環境が logoutしてしまい Login画面の戻ってしまう 現象が起こりました。 |
TLSG01 | |||
| HP-UX | HP-UX 一般 | 2002/9/2 | TELNETはRootで認証するのですか? | サーバへのLoginユーザを抑制しています。 UNIXユーザが普通にTELNETでログインする時に、 必ずtelnetdがrootでログインの手続きをしているように 見えるのですが、これはTELNETDの動きとしては一般 的な事なのでしょうか?(rloginではこうは見えません) どなたかTELNETDに詳しい方、ご教示願います。 |
18 | E.B.Aoki |
| 2002/9/2 | RE:TELNETはRootで認証するのですか? | telnetdはinetdのポート23で制御されるため rootユーザで処理を行うのはごく普通の事と 思います。 inetdの起動ユーザを別のユーザに変更すれば 制御可能では?と思いますが、影響が大きいので 避けられた方が無難ではと思います。 rloginは.rhostsで制御されていますので telnetとは別物と考えています。 |
6 | sin | ||
| 2002/9/2 | RE:TELNETはRootで認証するのですか? | telnetdは単にloginプロセスにログイン手続きを引き 渡しているだけのはずです。telnetは別にUNIXユーザ でなくともPC clientからでも使えるものですので、 rloginのようにUNIX間のログインを前提としたもの とは認証の手続きに関しては全く違います。telnetd にとっては相手のユーザー情報は未知の領域なので、 基本的には単にloginプロセスに任せているだけです。 当然、loginプロセスは/etc/passwdなど、rootでない と読めない情報が必要なのですから、rootの権限で 動きます。/usr/bin/loginはSUIDビットが立っていま すね。 |
6 | kab | ||
| 2002/9/2 | RE:TELNETはRootで認証するのですか? | 設定状況にもよりますが,通常はtelnetdはinetdからコールしているかとおもいます. /etc/inetd.confに telnet stream tcp nowait root /usr/lbin/telnetd telnetd なんて記述があり,ここでrootで起動するように指定しているのではないですか? (6項目のrootの部分) ただ,telnetdはWellKnownPortを使用することもあり,通常はrootで起動すると思います. |
6 | R.Noguchi | ||
| 2002/9/2 | RE:TELNETはRootで認証するのですか? | telnetdやinetdの関連などは他の方が述べられているとおりです。 Well-Knownなポートを利用するデーモンはほぼこの動きになります。 rootで実行したか、SUIDされているプロセスが親になりポートをLISTENしていて、その後の処理を子に引き継ぐときに一般ユーザにスイッチするのが普通です。 たとえば一般的にはhttpdもそうです。 > サーバへのLoginユーザを抑制しています。 OpenSSHなどを利用することを検討されてはいかがですか? telnetでは何も抑制できませんし(パスワードが平文でダダ漏れです)、r系コマンドもソースアドレスが正しいという前提に立っていますから、IP詐称が行われる可能性も否定できません。 そもそも、他人のマシンを利用することなんて、会社組織内では深夜まで残ってれば誰にでもできることですからね...。 OpenSSHでは公開鍵認証だけを用いるようにすればいいでしょう。また、3.4以降defaultとなっている、UsePrivirageSeparationを有効にした環境では、一種のjail環境となりsshd本体への攻撃に対しても安全性が高まっています。 OpenSSHはwww.software.hp.comでも提供されています。 |
6 | K.SakaI | ||
| 2002/9/5 | RE:TELNETはRootで認証するのですか? | 有難うございます。 Telnetdプロセスがrootで動き、Forkしてloginを呼んでいるところまでは理解でしたの ですが、リモートユーザからユーザIDとリモートノードのIPアドレスが送られてLOGIN認証を する前に、上記のユーザIDがrootユーザとリモートのIPアドレスが送られてLOGIN手続きを 取っているように見えるので不思議でした。 もしかしたら、トレースユーティリティ(市販のもの)のバグかもしれませんが、その前に 一般的な常識なのかと思いお尋ねしてみました。 |
E.B.Aoki | |||
| HP-UX | ネットワーク | 2002/8/30 | IPアドレス/ホスト名を変更後リブートするとCDEが正常に起動しない | またまた基本的なところで申し訳ございません。 IPアドレスとホスト名を変更するために次のようなことをしました。 # /sbin/init.d/net stop # vi /etc/hosts # vi /etc/rc.config.d/netconf # vi /var/adm/inetd.conf # /sbin/init.d/net start 終了後、再起動をすると、ホスト名とネットワークカードでfailし、CDEが正常に起動しません。復旧セッションで、 # hostname と打つと正常に変更後のものが出てくるのですが・・・。 正常に起動させるにはどのようにしたらよいでしょうか?(基本的なところですいません。) |
23 | TK |
| 2002/8/30 | RE:IPアドレス/ホスト名を変更後リブートするとCDEが正常に起動しない | 通常のIP、ホスト名変更と違うのは、 net stop/startですね。 OSに反映前にnetconfの再読み込みが入ってますので この辺が原因のような気がします。 もしくは、/etc/rc.config.d/netconf.日付 とかで /etc/rc.config.d直下にバックアップを取得しているのはと思います。 1.元のIPに戻す。 # vi /etc/hosts # vi /etc/rc.config.d/netconf # vi /var/adm/inetd.conf # shutdown -r 0 2.変更したいIPに変更 # vi /etc/hosts # vi /etc/rc.config.d/netconf # vi /var/adm/inetd.conf # shutdown -r 0 と、1,2実施で直ると思いますが。 ※現状の状態で、 uname -aとかで変更後のホスト名帰ってきますか? |
6 | kani | ||
| 2002/8/30 | RE:RE:IPアドレス/ホスト名を変更後リブートするとCDEが正常に起動しない | #uname
-a で確認したところ、ホスト名が一部ありませんでした。 お寒い話ながら、ホスト名が「9文字」だったので、8文字分のみ認識されていました。しかし、 #hostname で確認すると、9文字分がでるんですよねぇ〜。 ありがとうございました。 |
TK | |||
| 2002/8/30 | RE:IPアドレス/ホスト名を変更後リブートするとCDEが正常に起動しない | きっと、名前解決に時間がかかっているのでは?と思います。 まずはじめに、/etc/hostsを参照するようにすればよいと思います。 1、 /etc/resolv.conf を作成 2、 この記述を hosts: files [NOTFOUND=continue] dns [NOTFOUND=continue] nis と設定してみてください。 これによって、まずはじめに自分のhostsファイルを参照しますので 名前解決に失敗することはないと思いますよ。 |
bamboo | |||
| 2002/9/2 | RE:IPアドレス/ホスト名を変更後リブートするとCDEが正常に起動しない | host:
files〜の記述は、 /etc/nsswitch.conf ですね。 /etc/resolv.confは ドメイン名や、DNS参照先サーバーを記述します。 |
kei1 | |||
| HP-UX | ネットワーク | 2002/9/2 | IPアドレス | 一枚のLANカードに複数のIPアドレスを割り当てることは可能ですか? イメージしているのはサービスガードのように 動的アドレスを普通の構成で実現することです。 |
35 | おおたはら |
| 2002/9/2 | RE:IPアドレス | 複数のIPアドレスを一つのLANに設定する 場合、lan0:1(2,3,4)と/etc/rc.config.d/netconf のインターフェースを設定する変数に書き込めば 可能です。書き込み後に#/sbin/init.d/net startを 実行すれば#netstat -inで見えます。 |
10 | sin | ||
| 2002/9/2 | RE:IPアドレス | 厳密に言えば、 11.Xでは、 ifconfig lan0:1 xx.xx.xx.xx up で、 10.20では、 ifalias lan0 add xx.xx.xx.xx とすれば追加できます。 ただし、追加できるアドレスは、プライマリI/F と同じサブネットIDを持つ必要があったと思います。 尚、11.xで追加したIP addressを削除するには、 ifconfig lan0:1 0.0.0.0 とすればよく、10.20では ifalias lan0 delete xx.xx.xx.xx のようにして削除します。 |
8 | kab | ||
| 2002/9/2 | RE:RE:IPアドレス | ちなみに ifalias はパッチとしてインストールする必要があります。PHNE_12492 | 3 | kk | ||
| 2002/9/2 | RE:IPアドレス | 次の様なことをやりたいのですが(IPは架空) A.普通のアドレスは132.21.39.21/24ビットマスク 動的は10.21.39.22/23ビットマスク B.普通のアドレスはAと同じ 動的アドレスは192.168.100.22/24ビットマスク |
おおたはら | |||
| 2002/9/2 | RE:RE:IPアドレス | Aの動的アドレスは132.21.39.22/23ではないですか? としたら Static<Dynamicで× 可否判断できませんがStatic>Dynamicでしたら○と 思います。 Bは検証段階なんかでよく聞く設定ですが、正式に 認められるのかどうか不明です。 スイッチ/Firewallなどがなければマナー上は ともかく設定は可能と思います。 |
7 | sin | ||
| 2002/9/2 | RE:RE:RE:IPアドレス | Static<Dynamic、Static>Dynamic 度やって判断するんですか |
おおたはら | |||
| 2002/9/3 | RE:RE:RE:RE:IPアドレス | 24ビットでは255.255.255.0 23ビットでは255.255.254.0 二進数ですから24ビットでアクセス可能なアドレスは 自ノードをいれて254(0と255は除く) 23ビットはその2倍の508です。 0はサブネット全体を意味すので除外 255は全ノードを意味するので除外 254(Static)<508(Dynamic)で判断 |
7 | sin | ||
| 2002/9/3 | RE:RE:RE:RE:RE:IPアドレス | なんとなく納得できました。 |
おおたはら | |||
| HP-UX | システム管理 | 2002/9/2 | make_recoveryのオプションについて、 | make_recoveryのオプションが良く分かりません。 一般的なオプションを教えて下さい。 因みに、プレビューモードの有り・無しはリストア時に影響はありますか。 |
23 | やっち |
| 2002/9/2 | RE:make_recoveryのオプションについて、 | #
make_tape_recovery -Av 昔からこればっかりです。 |
10 | K.SakaI | ||
| 2002/9/2 | RE:RE:make_recoveryのオプションについて、 | 後は、テープデバイスが複数ある場合にどのテープデバイスを使用するか指定する「-d」オプションぐらいでしょうか。 -dをつけない状態であれば、0mnを使用します。 |
kani | |||
| 2002/9/2 | RE:RE:RE:make_recoveryのオプションについて、 | ほんとは"-C"だっけ、依然と違いがあるかどうかを確認するようなオプションを併用したい。 だけど、これつけると異様に時間がかかる場合があって断念せざるを得ない場合もあったので、割愛。 |
K.SakaI | |||
| 2002/9/2 | RE:RE:RE:RE:make_recoveryのオプションについて、 | -Cつければ、変更履歴(?)を取得出来ますね。 check_recovery実行で変更されたファイルの情報が取得できますね。 作業する時の作業前、後バックアップ時につけると 効果的なのかな。 バックアップ取得した状態に戻ればいいので、 使う機会がありませんが。 |
kani | |||
| 2002/9/2 | RE:make_recoveryのオプションについて、 | #make_tape_recovery -i で対話形式での使用も可能ですよ。 | kk | |||
| 2002/9/3 | RE:make_recoveryのオプションについて、 | -pオプションをつけると設定ファイルが作成されて、 /var/opt/ignite/recovery/makrec.append 編集後(lvextend,vgextend等)-rオプションのみで 実行するとカスタマイズがいろいろできたような気が… 環境がないのでできませんが…(--;) |
HASI | |||
| HP-UX | システム管理 | 2002/9/2 | ファイルシステムのサイズ縮小 | ファイルシステムのサイズを縮小したいのですが、 簡単な方法があれば教えて下さい。 OSはHPUX10.20です。 |
17 | takosan |
| 2002/9/2 | RE:ファイルシステムのサイズ縮小 | OnlineJFSというプロダクトを導入していれば、マウントしたままでも縮小できます。 が、入ってないでしょう...。 ・ファイルシステムバックアップ ・umount ・lvreduce ・(extendfs??) ・mount ・ファイルシステムリストア ってやるしかないです。 |
1 | K.SakaI | ||
| 2002/9/2 | RE:RE:ファイルシステムのサイズ縮小 | K.SakaIさんの手順フォロー。 extendfsもしくはnewfsが必要です。 あと、newfsにすると、mount後にマウントポイントの ディレクトリに対してオーナー、グループ等の権限付与を忘れずに。 |
1 | kani | ||
| 2002/9/3 | RE:RE:RE:ファイルシステムのサイズ縮小 | extendfsはファイルを縮小する場合には使用できません。あくまでextend。lvreduceをすればLVは縮小されますが、まれにファイルシステム自体が壊れてしまう場合があり、その場合newfsで初期化するしかなくなります。 ということで、 1. バックアップ 2. umount 3. lvreduce 4. fsck 5. mount 4,5,が失敗する場合 4. newfs 5. mount 6. restore こんな感じです。 |
2 | kk | ||
| 2002/9/3 | RE:RE:RE:RE:ファイルシステムのサイズ縮小 | フォローありがとうございます。 newfsは必要ないという意見もありますが、私はkkさんの手順のようにnewfsするほうが精神衛生上好ましく思います。 OnlineJFSのようなものが当たり前になってくるにつれて、このような考え方は古くなっていくのでしょうかね... |
3 | K.SakaI | ||
| 2002/9/3 | RE:ファイルシステムのサイズ縮小 | LVMを前提とすると. 通常のデータエリアであれば, umount->lvreduce->mount でよいと思います. もちろん削減された部分に含まれたファイルは破壊されますので, 通常は事前にバックアップして,作業後にリストアします. これが/varや/やSWAP用エリアなどOS用のエリアだと厄介です. この場合に手順はありますが,IgniteUXでバックアップして,リストア時対話形式にすれば各LVのサイズ調整ができるので,この機能を使用するのが楽だと思います. IgniteUXのマニュアルにも用途としてLVのサイズ調整があげられています. |
4 | R.Noguchi | ||
| 2002/9/3 | RE:RE:ファイルシステムのサイズ縮小 | swapはちょっと厄介ですが、/varはシングルユーザモードでやればOKだと思います。 この方法で20回くらい/varを減らして/usrを増やしました。 |
4 | Hirotada | ||
| 2002/9/3 | RE:ファイルシステムのサイズ縮小 | 縮小後のLVOL(LE)配置をきれいにしたいならIgniteUX 途中に空きエリアがあってもいいならkkさんの手順だと 思います。(間違いなくnewfs必要ですが) |
2 | sin | ||
| HP-UX | HP-UX 一般 | 2002/8/22 | HPのVXVMエラーについて | hp-ux11iを使用しています。OS起動時に以下のようなメッセージが出ますがこれはどうすれば出ないようになりますか?どこが悪いのでしょうか?またこれはVxVMがワルサをしているのでしょうか?以下メッセージ。 "vxvm:vxconfigd: ERROR: enable failed: Volboot file not loaded transactions are disabled" |
20 | amazon |
| 2002/8/22 | RE:HPのVXVMエラーについて | volbootファイルを再作成する必要がありそうです。 # vxdctl init で再作成できるとありますが、確認してみてください。 |
5 | K.SakaI | ||
| 2002/8/22 | RE:RE:HPのVXVMエラーについて | とは書きましたが、HP-UX11iから付属しているVeritas
Volume Managerについて把握していません。 上記の対応があっているかどうか自信なしです。 今必死でマニュアル読んでいますが、どうぞ十分に確認してみてください... |
8 | K.SakaI | ||
| 2002/9/4 | RE:HPのVXVMエラーについて | いろいろ回答ありがとうございました。 | amazon | |||
| 2002/9/2 | RE:HPのVXVMエラーについて | このメッセージは、vxconfigdの起動に失敗した時に表示されるメッセージと似ています。 volbootファイルが不正のような感じです。 ですが、このシステムには、VxVMが構成されているのでしょうか? Base-VxVMはHP-UX 11iの2001年12月版以降、OSと一緒にインストールされますが、vxinstallを行わないと、OS起動時にvxconfigdは起動されないようになっているはずですが・・・。 |
8 | さんぺい | ||
| HP-UX | ネットワーク | 2002/9/3 | NFS タイムアウトのデフォルト値 | man
mount_nfs(1M)すると、NFSマウントのタイムアウト値(timeo=n)のデフォルトはkernelに設定されているとなっているのですが、どうすれば現在のデフォルト値を調べることができるかご存知の方はいらっしゃいますか? (ちなみにHP-UXシステム管理のテキストには7がデフォルトと書いてありますが...) |
15 | Hirotada |
| 2002/9/3 | RE:NFS タイムアウトのデフォルト値 | HP-UXのものは見つけられませんが、最近のLinuxやSolaris2.xなど多くの処理系では'7'(0.7秒)がdefaultとなっているようです。 | 5 | K.SakaI | ||
| 2002/9/3 | RE:RE:NFS タイムアウトのデフォルト値 | やはりtimeo=7の線が濃厚でしょうか。 | Hirotada | |||
| 2002/9/3 | RE:RE:RE:NFS タイムアウトのデフォルト値 | #またまた核心に触れてませんが 11iのpfs_mountのmanを見ると、timeo=7がdefaultだと明記されていました。 pfs_mountは内部的にnfsを使用していたような。 ところで、どうしてtimeoのデフォルトが気になるのでしょうか(^^;) 調整されるつもりなら、どうせ指定してしまうのではないでしょうか?なんて思ったり... |
3 | K.SakaI | ||
| 2002/9/3 | RE:RE:RE:RE:NFS タイムアウトのデフォルト値 | 鋭いご指摘です。 ご指摘の通り調整を試みているのですが、現在の値(=デフォルト)が分からないので新しく指定した値がどの位大きくなっているか分からないのです。 まぁ色々試してみればいいといえばいいのですが... |
Hirotada | |||
| 2002/9/3 | RE:NFS タイムアウトのデフォルト値 | カーネルで設定されているということでちょっと調べてみたらあやしい記述を見つけました。 /usr/include/mntent.h ファイル内に #define DEFAULT_TIMEO 7 という記述があります。 ここで指定しているのではないでしょうか?値は7になっていますしね。 |
9 | kk | ||
| 2002/9/3 | RE:RE:NFS タイムアウトのデフォルト値 | 確かに、いかにもこれみたいですね。 脱線しますが、/usr/include/mntent.hにあるということは、これを変更してカーネルを再構築してもコンパイル済みのバイナリを変更できるわけではないので、デフォルト値を変更することはできないんですよね。(別に変更したいわけではないです。単なる興味です。) だとすると、厳密な意味では現在のカーネルバイナリがDEFAULT_TIMEO=7でコンパイルされているかどうかを知るのはほとんど無理? |
Hirotada | |||
| 2002/9/3 | RE:NFS タイムアウトのデフォルト値 | samから、Networking
and Communications -> Network File Systemを選んで、確認したい接続を選択し、Actions ->
View more Incormation -> View Mount Options で、Retranmsmission Timeout
(timeo)というのがあります。 これで確認できるのではないでしょうか? #HP-UX 11.0です。他のバージョンはわかりません(^^;;。 |
10 | こばやし | ||
| 2002/9/3 | RE:RE:NFS タイムアウトのデフォルト値 | こんなに細かくオプションを確認できるとは。samもあなどれませんね。/usr/sam/lbin/autooptで取得してくるみたいですが、samで見るしか無さそうですね。 # manが無いのでちょっと怖くて使えません... |
Hirotada | |||
| 2002/9/3 | RE:NFS タイムアウトのデフォルト値 | Kernelへの反映は/usr/conf/lib/libnfs.aで行っていますが 値の確認は思いつきません。 #time mounf -F nfs <REMOTE HOST>:<REMOTE DIR> <LOCAL> でNFSサーバを停止して確認されてみてはいかがでしょうか? Timeoutの変更は mount時に -o で timeo=値 で可能です。 |
4 | sin | ||
| HP-UX | HP-UX 一般 | 2002/8/29 | フルバックアップのコマンドは? | こんにちは,皆さんがフルバックアップ時に使用しているコマンドは何でしょうか? 私は速度が速いのでfbackupを使用しています. 他にもdd,cpioやtar,dumpとかvxdumpとかがありますが,fbackupより良いコマンドはありますか? IgniteUXはフルバックアップには向かないのでしょうか? |
47 | R.Noguchi |
| 2002/8/29 | RE:フルバックアップのコマンドは? | Omnibackという製品があります。 バックアップに特化した製品でネットワーク 上の他のシステムのバックアップやができたり バックアップスケジュールの管理ができたりした と思います。また、ファイルシステムではない Raw volumeのバックアップも取れたはずです。 何をもって『良い』とするがわかりませんので これが最善とはいえませんが、検討してみる 価値は有ると思いますが。 |
3 | kab | ||
| 2002/8/29 | RE:フルバックアップのコマンドは? | HP-UXの場合、fbackupを利用されるのがもっとも素直で的確な解だと思います。 汎用的な部分はtarかcpioかって感じですかね。 これは"どちら派"なのか分かれるところでしょうね。 tar+gzは途中が欠落すると、それ以降が全部だめになりますが、cpio+gzは欠落したブロック部分だけがだめで、それ以降に影響はないという違いがあるようですね。 それでも、使い慣れたtarを使ってますが... ORACLEのデータファイルをバックアップするとき、それがrawなのかファイルシステムなのか区別したくなかったので、どっちだろうとddで取るスクリプトを使ってました。 ddはそんなくらいでしか使ってません。 システム変更の際は、IgniteUXも事前に利用しますが、あくまでも、2次的な位置付けとして、最後の保険ということで使っています。 |
6 | K.SakaI | ||
| 2002/8/29 | RE:フルバックアップのコマンドは? | 何をバックアップするかにもよるのではないでしょうか? OS部(要は/とか)なのかAP部(/opt等)か、あるいはデータ部(/homeとか、あるいはRAWデバイスとか)。 それらを全部含めてフルバックアップと仰っているのであれば、用途によってコマンドを変える...というのもありかなぁと思います。 ちなみにわたしもfbackupは好きです(^^;; |
5 | こばやし | ||
| 2002/8/29 | RE:フルバックアップのコマンドは? | 私は、FULL
BACKUP に dd 。 データファイルはcpio でBACKUPしています。 fbackupもcpioもデータ領域のバックアップではOKですが システムのFULL BACKUPには失敗しました。 SCSI 6 マスタ SCSI 5 に空DISKをセットして # dd if=/dev/rdsk/c2t6d0 of=/dev/rdsk/c2t5d0 bs=1024k [Enter] |
5 | TLSG01 | ||
| 2002/8/29 | RE:フルバックアップのコマンドは? | 何をバックアップするのか。 何にバックアップするのかで変わってくるかと。 ※後、バックアップするデータ量とか、バックアップするにあたり、システムを停止出来る時間があるのかとか。 連装DAT,DLT装置を使用するなら、 IGNITE+OmniBackに一票です。 DISK、DAT、DLTにバックアップするだけなら IGNITE+fbackupに一票ですね。 OSはIGNITEで決まりとして、 データは第3ミラーでDISKコピーってパターンもありますし、バックアップをどういった状態で取得するのかという最終的な到達地点によってfbackupに変わる物が出てくるのか出てこないのかってとこではないでしょうかね。 |
6 | kani | ||
| 2002/8/29 | RE:フルバックアップのコマンドは? | システムディスク(vg00)については以下の様にしています。 IgniteUXは2GBを越えるファイルは アーカイブされないのでもう一つ fbackupはハードリンクの戻しがうまくいかないので もう一つ 以上のことから下記の様にしています。 #cp /usr/bin/dd /sbin/dd #shutdown 0 ←シングルユーザになる #vgchange -a n /dev/vg01,02,03 ←vg00以外を落とす #make_tape_recovery -Av ←IgniteUXはB.3.7です。 #reboot -r ブート途中で止めて ISL> プロンプトにする。 ISL>hpux -is ←シングルでブート もう一本のテープを入れる。 #/sbin/dd if=/dev/vg00/rlvol1 of=/dev/rmt/0mn bs=4096k データのあるLVOLをRAWデバイスでifに指定します。 0mnはノーアンロードです。 LVOLのLEサイズは普通 4MBの倍数ですので bs=4096kでOK DDS3でしたら24GB入るので システム部分は 大抵はテープ一本でOK 指定したLVOLの順番は要記録です。 IgniteUXはLVOLの情報と最低限のものと割り切って 本当のデータはddで戻しています。 復旧する時はIgniteUXで作ったテープからブートして HP-UXが起動したら再度シングル(hpux -is)でブート して ddで書き込んだテープをセットして ddした順に #dd if=/dev/rmt/0mn of=/dev/vg00/rlvol1 bs=4096k 全部終わったらリブートして完了です。 |
10 | sin | ||
| 2002/8/29 | RE:RE:フルバックアップのコマンドは? | 詳細な手順ありがとうございます. 「IgniteUXは2GBを越えるファイルはアーカイブされない」 「fbackupはハードリンクの戻しがうまくいかない」 というのは知りませんでした.参考になります. ハードリンクは余り使用していないので,気になりませんが,IgniteUXの2Gはフルバックアップには致命的ですね. 気になるのはddの速度ですが,fbackupよりはやいのかな? |
R.Noguchi | |||
| 2002/8/30 | RE:RE:RE:フルバックアップのコマンドは? | IgniteUXはpaxでアーカイブされるので業界標準で 2GB以上は取得できません。(tarと同じです) ddの速度は見てのとおりRAWデバイスで取りますので メモリ上のバッファを使用しません。 LVOLの使用容量が10%とか20%でしたらfbackupの方が 早いでしょうが、60%とか以上でしたら余計な処理が ないだけ早いと思います。 またミラーUXをお使いならlvsplitを組み合わせると 言う手段もあります。 |
5 | sin | ||
| 2002/8/30 | RE:RE:RE:フルバックアップのコマンドは? | dd のバックアップは、ファイルシステムの中の 一つのファイルだけ壊れたという時でも、全部もどすことになりますので、どんな場面で使うかも想定された方がよいと思います。 | 8 | SK | ||
| 2002/8/29 | RE:フルバックアップのコマンドは? | 私は、フルバックアップと言えば、OmniBackのhostがいいと思います。 Igniteは、vg00だけを採って、サーバ障害時のミニマムOS起動用って感じで使っています(その後、Omniのフルバックアップで戻します)。 ちなみに、私の会社に出入りしているHPのエンジニアは、作業終了後、フルバックアップということで、fbackupでバックアップを採って帰っていきます。 |
3 | ishi-ishi | ||
| 2002/8/29 | RE:フルバックアップのコマンドは? | 皆さんご意見ありがとうございます. 確かにバックアップの要件にもよりますね... fbackupはHP独自だときいたもので,心配になって質問してみました. 私が入社した当時はcpioでバックアップが行われていました. 起動用イメージはCOPYUTILでした. その後速度が速い,扱いやすいということでfbackupが使用されるようになりました. COPYUTILもなくなり,IgniteUXになりました. cpioはファイルの一部取出しとかが面倒(わかりづらい)ので余り好きじゃありません. RAWが取れるということではddかomniバックしかないのですね. DISK to DISKでバックアップが取得できれば,これに越したことは無いですが,さすがにそのような容量はないです. やはりOmniBackが使用できなければ,IgniteUX+fbackupが無難なようですね. |
R.Noguchi | |||
| 2002/8/29 | RE:RE:フルバックアップのコマンドは? | ブートディスク障害からの回復ということでは,Ignite-UX
+ [fbackup or OmniBackII]という組み合わせでしょうか。 なお,Ignite-UXを使用する場合はLTOを使うのはやめましょう。 LTOからはbootできないことになっているらしいので,とっても意味ないですから。 |
5 | ish | ||
| 2002/8/30 | RE:フルバックアップのコマンドは? | backupのコマンドについて論議されていますが、バックアップの頻度や世代について、皆さんはどうしていますか? バックアップを複数本のテープで順番に取るというのは、世間では一般的なんでしょうか? また、バックアップをとったテープを離れた場所に保存するようなことをされていますか? |
3 | k83n3 | ||
| 2002/8/30 | RE:RE:フルバックアップのコマンドは? | うちではフルバックアップは月一回で3世代で回しています. 最後のバックアップ以外は遠隔地に送付しています. バックアップ取るのはよいのですが, やっぱりリカバリーの訓練しておかないといざというときにあせりますね. |
R.Noguchi | |||
| 2002/8/30 | RE:RE:フルバックアップのコマンドは? | 私の所はOmniBackIIでのバックアップ(『host単位』のバックアップ利用)を月〜金に実行、fbackupでのバックアップを数ヶ月に一度実行しています。 前者はテープ5巻の5世代、後者はテープ2巻の2世代です。 また、Oracleを使っていますが、Omniではオンラインバックアップモード、fbackupではシングルユーザーモードで実施しています。 リカバリについては、最大でもlvol単位(HDDクラッシュ時)でしかやったことがないので(frecover利用)、システムがぶっ飛んだときの全戻しは出来るかどうか、不安といえば不安ですね… |
3 | kei1 | ||
| 2002/8/31 | 便乗質問 再インストール+frecover | 便乗質問になってしまいますが、全部ぶっとんでしまった、というとき、インストール・メディアからの再インストール + frecover というのはありでしょうか?この場合、戻らないもの、再設定・再作成が必要なものには何が考えられますか。 | 3 | Yuri | ||
| 2002/9/3 | RE:便乗質問 再インストール+frecover | IgniteUXが無いときで,fbackupのフルバックアップを持っているときは, Yuriさんのおっしゃる方法でよくリストアーしました. ・OSメディアからの最小インストール(frecoverで上書きするので,時間のかからない最小構成でやります.CDE抜きです) ↓ ・シングルユーザモードでfrecoverでのフルリストアー という手順です. fbackupを取得した同じサーバに戻すのであれば,この方法でかまわないですが, 他のサーバにリストアーするのであれば,frecoverで戻してはいけないファイルなどがあり注意が必要です. |
R.Noguchi | |||
| 2002/9/3 | RE:RE:便乗質問 再インストール+frecover | 了解です。 できるはず、と思っていたのですが、皆さんの書き込みをいろいろ読んでいるうちに心配になりました。 |
Yuri | |||
| HP-UX | HP-UX 一般 | 2002/9/3 | Ignite-UXインストールエラー | swinstallにてインストールを実行すると「リモートファイルアクセスエラー」が表示される。 前提:Ignite-UXダウンロードファイル正常 ファイルシステム問題なし 展開する「INSTALL」ファイルのサイズが0バイト |
19 | やっち |
| 2002/9/3 | RE: Ignite-UXインストールエラー | なかなかコメントつきませんね(^^;;。 #わたしも根本的な回答ではないのですが。 もう少し具体的に、どういった操作を行った...ということをかかれたほうが良いかと思います。 #できれば他の人がその手順をたどれる程度に(^^;;。 これだと、どこか手順が間違っているのではないか?と思ったとしても、どこがどう間違っているか、わかりません。 |
こばやし | |||
| 2002/9/3 | RE:Ignite-UXインストールエラー | どのような手順でインストールを実施して,どこで失敗した(エラーが出た)のか書いていただけると,返答がつきやすいのではないでしょうか? 文脈からして, Downloadは成功(多分50M〜100Mはあると思います). 展開するとできるINSTALLファイルのサイズが0バイト ということでしょうか? 展開時にエラーが出ないとすると,Downloadは失敗していないのかな? swinstallのコマンドが間違えているとか... |
R.Noguchi | |||
| 2002/9/3 | RE:Ignite-UXインストールエラー | 似た事例を見つけたのですが、もしかして/etc/hostsファイルにホスト名が2つ以上エントリされていませんか? | 2 | K.SakaI | ||
| 2002/9/3 | RE:RE:Ignite-UXインストールエラー | 言葉足らずでしたね・・・ さっきの似た事例ってのはこれです。 http://forums.itrc.hp.com/cm/QuestionAnswer/1,,0xdd2518276953d61190040090279cd0f9,00.html 127.0.0.1 localhost loopback <hostname> 127.0.0.1 <hostname> こんな風になってたら、 127.0.0.1 localhost loopback これだけでいいんだよ、ってことです。 |
8 | K.SakaI | ||
| 2002/9/5 | RE:Ignite-UXインストールエラー | やっちさん、 その後どうですか?Ignite-UXのインストール。うまく行ったならいいのですが、ちょっと気になったので投稿してみました。 ダウンロードしたということは www.software.com から Ignite-UX をダウンロードしたのだと思いますが、展開する INSTALL ファイルとは? www.software.com の Ignite-UX のインストールガイドではダウンロードしたファイルを展開する必要はないように思いますが。 http://www.software.hp.com/products/IUX/download.html#inst |
yuki | |||
| HP-UX | HP-UX 一般 | 2002/7/6 | LE PEの情報スクリプト | lvdisplayかpvdisplayコマンドを 結果を元にエクステント位置情報を まとめられないでしょうか LE・PE位置はいつも以下の理由が あると想定して目で確認しています。 ・LEが2つ以上のPVへ跨いでいる ・ミラーが変則(LEの位置違い) (理想出力結果?) LV順 PE位置 ディスク lvol7 00000 - 00249 /dev/dsk/c7t7d0 00250 - 00499 /dev/dsk/c8t8d0 lvol8 00000 - 00999 /dev/dsk/c9t9d0 よろしくお願いします。 |
18 | HASI |
| 2002/7/9 | RE:LE PEの情報スクリプト | lvdisplayの出力結果から、awkとかでファイルを操作するとできそうな気がしますが、「こうしたら!」という案がすぐには出せそうにありません。 | poo | |||
| 2002/7/9 | RE:LE PEの情報スクリプト | Perl書きに怒られそうですが。一例として、 #!/usr/contrib/bin/perl $PV=""; while (<>) { chop; if (/LV Name/) { print $_, "\n"; break; } @line = split; if ($line[0] =~ /\d{5}/) { @valid = @line; if ($PV ne $valid[1]) { print "$valid[0] $valid[1] $valid[2]\n"; $PV = $valid[1]; } } } print "$valid[0] $valid[1] $valid[2]\n"; 意図としては lvdisplay -v で出てくる extent mapで、PV名が変わる部分を表示するようにしている だけです。( striped LVOLの場合には役に立ちそうに ありませんが。ある程度連続しているなら少しは見える かも。) で、これを例えば xxx.pl としておいて、lvdisplay -v の結果を読ませます。 $ lvdisplay -v /dev/vg00/lvol1 | xxx.pl LV Name /dev/vg00/lvol1 00000 /dev/dsk/c1t0d0 00000 00127 /dev/dsk/c1t0d0 00127 と、少しはシンプルになります。 (自分で読んでいて誤りを見つけてしまった。最後の extentが異なったPVにあると、if文の中で1回、 スクリプトの終わりで同じ行がもう1回プリントされて しまう。済みません、フラグかなんかつけるか、 最後のprint文は抜いて下さい。) |
8 | nadachi | ||
| 2002/7/10 | RE:RE:LE PEの情報スクリプト | ありがとうございます。 ・・・実行してみても何も返ってきませんした。 でも、ロジック的なものが少し掴めてきたので、 参考にさせてもらいます。シェルでは・・・(汗) |
HASI | |||
| 2002/9/3 | RE:LE PEの情報スクリプト | HASIさんの理想とは違いますが考えてみました。 (50Point位ほしいな) #!/usr/bin/sh for i in `strings /etc/lvmtab | grep '/dev/dsk/'` do echo---${i}------------ pvdisplay -v $i | sed -n ' /PE Status LV LE/,/^$/{ $!N /^ *\([0-9][0-9]*\) *\(.*\) *\([0-9][0-9]*\) *\n.*\2/!P D }' done 結果は PE Status LV LE 0799 current /dev/vg01/lvol1 0799 1799 current /dev/vg01/lvol2 0999 |