Solaris 11.3用のスワップファイルを作成できません。

Solaris 11.3用のスワップファイルを作成できません。

メモリ不足のため、Solaris 11.3 でコンパイルが失敗しました。このボックスは、新しいオペレーティングシステムがインストールされた600GBドライブと8GB RAMを備えたUltraSPARCワークステーションです。システムにメモリが不足しているため、箱から取り出したのは本当に混乱しています。

フォローしようとしています。Solarisシステムへのスワップスペースの追加さらにスペースを追加してください。

# Step 1
$ sudo su -
...

# Step 2
# mkdir /var
mkdir: Failed to make directory "/var"; File exists
# mkfile 2048m /var/swap

# Step 3
# ls -l /var/swap
-rw-------   1 root     root     2147483648 Jul 16 11:42 /var/swap

# Step 4
# swap -a /var/swap
"/var/swap" is not valid for swapping.
It must be a block device or a regular file with the
"save user text on execution" bit set.

2つの質問があります。まず、Oracleのほとんどすべての文書が間違っているほど間違った点は何ですか?

第二に、スワップスペースをどのように作成しますか?どうやって作りますか?時間lsリストに出ますか?


これは文書の3段階です。追加されましたので参考にしてください時間:

次のように入力してファイルが作成されたことを確認します。

ls -l /directory/swap-file-name

新しいファイルがディレクトリに表示されます。たとえば、

ls -l /foo/16mswap    -rw------T   1 root     other    16777216 Dec 12 14:24 /foo/16mswap

ベストアンサー1

あなたが見つけたページは、Solarisがまだスワップファイルを使用していた2011年から始まったSolaris Studio 12.3に関連しています。 ZFS をルートファイルシステムとして使用する Solaris 11.3 では、実際のブロックデバイスが必要であるため、プロセスは若干異なります。幸いにも、ZFSを使用すると、ZFSボリュームを介して実際のブロックデバイスを非常に簡単に使用できます。

まず、既存のボリュームを確認します。

zfs list -t volume

swap@というボリュームが表示される可能性が高い/rpool/swapため、新しいデバイスに別の名前(たとえば)を使用する必要がありますswap2

これが私が見るものです:

bash-[501]# zfs list -t volume
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool/dump  3.08G   139G  2.99G  -
rpool/swap  2.06G   139G  2.00G  -

また、既存のスイッチング機器を見てください。

bash-[502]# swap -l
swapfile             dev    swaplo   blocks     free
/dev/zvol/dsk/rpool/swap 275,1         8  4194296  4194296

次のステップは、新しいボリュームを作成することです。次のコマンドでは、-Vオプションはファイルシステムを持つデバイスではなくrawブロックデバイスを作成していることを示し、2Gサイズは次のとおりです。

bash-[503]# zfs create -V 2G rpool/swap2

これで、ボリュームリストが変更されたことがわかります。

bash-[504]# zfs list -t volume
NAME          USED  AVAIL  REFER  MOUNTPOINT
rpool/dump   3.08G   137G  2.99G  -
rpool/swap   2.06G   137G  2.00G  -
rpool/swap2  2.06G   137G  2.00G  -

その後、そのブロックデバイスをスワップとして有効にできます。

bash-[505]# swap -a /dev/zvol/dsk/rpool/swap2

そしていつものように、を使ってスワップデバイスを見ることができますswap -l

bash-[506]# swap -l
swapfile             dev    swaplo   blocks     free
/dev/zvol/dsk/rpool/swap 275,1         8  4194296  4194296
/dev/zvol/dsk/rpool/swap2 275,3         8  4194296  4194296

おすすめ記事