HP-UX General
1820706 メンバー
2705 オンライン
109627 解決策
新規ポスト

任意のサイズのファイル生成したい

 
hajimek
頻繁なアドバイザー

任意のサイズのファイル生成したい

お世話になります。

指定したサイズのファイル(テキストでもバイナリでもよい)を作成したいのですが、HP-UXで実現するコマンドはありますでしょうか。

ディスクの空き容量を一時的に操作するために、使用したいのですが、そのようなコマンドがテキストにも見つかりません。

どなたか詳しい方がいらっしゃいましたらご教授願えませんでしょうか。

よろしくお願いいたします。
4件の返信4
isao
頻繁なアドバイザー

任意のサイズのファイル生成したい

prealloc(1)コマンドが使えます。

$ prealloc hoge 1200

$ ll hoge

-rw-r--r-- 1 ... 1200 Aug 11 16:06 hoge

hajimek
頻繁なアドバイザー

任意のサイズのファイル生成したい

isao様 ご返答ありがとうございます。

早速試してみたのですが、1MBくらいのファイルは

作成できるのですが、10MBくらいになると

エラーになってしまいます。

manでみると上限サイズがあるように書かれているのですが、具体的な値が書かれていませんでした。

今回、500MB位の巨大なファイルを作成したいと

考えておりますが、解決策はありませんでしょうか。
hajimek
頻繁なアドバイザー

任意のサイズのファイル生成したい

失礼しました。

コマンド入力ミスでエラーが出ていただけでした。

巨大ファイルも問題なく作成できました。

ありがとうございました。
isao
頻繁なアドバイザー

任意のサイズのファイル生成したい

そのシェルで作成できるファイルの最大サイズが制限されていませんか?ulimitコマンドで確認できると思います。当方では、以下のように40MBのファイルも作成できています。

$ ulimit

unlimited

$ prealloc hoge 40000000

$ ll hoge

-rw-r--r-- 1 ... 40000000 Aug 11 16:27 hoge

もし、HP-UX11iであれば、ddコマンドを使って以下のようにファイルを作成することも可能です。

$ dd if=/dev/zero of=hoge bs=1024k count=40

40+0 records in

40+0 records out

$ ll hoge

-rw-r--r-- 1 ... 41943040 Aug 11 16:32 hoge

これは、1024k(1024*1024)バイトのブロックを40個(40MB)書き込んでファイルを作成します。