スワップ領域を作成するためのコマンド
以下が紹介されていた。
dd
[root@sv12-CentOS74 ~]# dd if=/dev/zero of=ddtest bs=1024 count=1 1+0 レコード入力 1+0 レコード出力 1024 バイト (1.0 kB) コピーされました、 0.000419075 秒、 2.4 MB/秒 [root@sv12-CentOS74 ~]# ls ddtest -lh -rw-r--r-- 1 root root 1.0K 3月 19 04:21 ddtest
dd コマンドは、 InFile パラメーターまたは標準入力を読み取って指定された変換を行い、 変換したデータを OutFile パラメーターまたは標準出力にコピーします。
if=InFile 入力ファイル名を指定します。標準入力がデフォルト値です。
fallocate
使用可能なハードドライブのスペースを確認したので、ファイルシステムにスワップファイルを作成できます。root(/)ディレクトリにswapfileという必要なサイズのファイルを割り当てます。
スワップファイルを作成する最良の方法は、fallocateプログラムを使用することです。このコマンドは、指定したサイズのファイルを即座に作成します。
この例ではサーバーに1GのRAMを搭載しているため、このガイドでは1Gのファイルを作成します。独自のサーバーのニーズに合わせてこれを調整します。
sudo fallocate -l 1G /swapfile
/dev/zero
どうやらfallocateやddはコピーファイルを作成することに使われるらしい。
2つは大体結果が同じになりやすいと思う。だからddを調べている間/dev/zero/
が頻杯に出ていたので気になって調べてみた。
入力元として取るとNULL文字がいっぱい返ってくるファイル
典型的利用例として、何らかの情報を上書きするキャラクタストリームとして使う。あるいは、特定サイズの内容が何もないファイルを作成するのにも使われる。
/dev/null または /dev/zero 文字特殊ファイルは常に空であり、/dev/null または /dev/zero に書き込まれるデータは破棄されます。ファイル /dev/null および /dev/zero のオブジェクト・タイプは *CHRSF であり、 通常のファイルと同様に使用できます。ただし、/dev/null ファイル内のデータは読み取られず、/dev/zero ファイルは常にデータをゼロにクリアして正常に戻されます。
調べてみた
sudo less -f /dev/zero
^@^@^@^@^@^@^@^@....
感想
中身は空だけど容量があるのか。