web-dev-qa-db-ja.com

システムのインストール後にスワップを追加するにはどうすればよいですか?

Ubuntuのインストール中にスワップパーティションを作成しませんでした。その後、スペースを解放して、スワップパーティションを作成しました。起動するたびに、手動でgpartedを開いてスワップパーティションを右クリックし、 'swapon'オプションをオンにします。

ブート時にスワップパーティションを自動的に有効にするにはどうすればよいですか?

また、スワップパーティションを作成していない場合、他のオプションは何ですか?

153
user13593

/etc/fstabを編集して、新しいスワップパーティションを追加する必要があります。

Sudo nano /etc/fstab

次のような行を追加する必要があります

UUID=735b3be3-779c-4d21-a944-b033225f3ab4 none   swap    sw      0       0

コマンドを使用してUUIDを取得します

Sudo blkid /dev/sda3

/dev/sda3を適切なデバイス名に置き換えてください)。

関連する:

132
user4124

インストール後にスワップパーティションを作成するには、空のパーティションを作成します。穴がないはずです。次に、このパーティションを次の方法でフォーマットできます。

Sudo mkswap /dev/sdX

/dev/sdXyourパーティションに置き換えます。このパーティションをスワップとしてマウントします

Sudo swapon -U UUID

uUIDは、これから読み取られる/dev/sdXのUUIDです。

blkid /dev/sdX

次の行を追加して、/etc/fstabに新しいスワップをバインドします。

UUID=xxx    none    swap    sw      0   0

休止状態にスワップを使用する場合は、/etc/initramfs-tools/conf.d/resumeのUUIDをこのコンテンツRESUME=UUID=xxxで更新する必要があります。 $ Sudo update-initramfs -uを忘れないでください。

物事を完了するために:予備のパーティションがない場合、スワップファイルを作成することもできます。 この回答 スワップファイルを作成し、ブート時にそれを有効にする方法のアイデアを提供します。

105
Takkat

スワップパーティションを作成したくない場合や作成方法がわからない場合は、パーティションと同じように機能するスワップファイルを作成できます。手順は次のとおりです(ターミナルを使用):

  1. 空のファイルを作成します(1K * 4M = 4 GiB)。

    Sudo mkdir -v /var/cache/swap
    cd /var/cache/swap
    Sudo dd if=/dev/zero of=swapfile bs=1K count=4M
    Sudo chmod 600 swapfile
    
  2. 新しく作成されたファイルをスワップスペースファイルに変換します。

    Sudo mkswap swapfile
    
  3. ファイルのページングとスワッピングを有効にします。

    Sudo swapon swapfile
    

    検証方法:swapon -sまたはtop

    top -bn1 | grep -i swap
    

    次のような行を表示する必要があります:KiB Swap: 4194300 total, 4194300 free

    無効にするには、Sudo swapoff swapfileコマンドを使用します。

  4. fstabファイルに追加して、次回のシステム起動時に永続的にします。

    echo "/var/cache/swap/swapfile none swap sw 0 0" | Sudo tee -a /etc/fstab
    
  5. 起動時にスワップファイルを再テストします。

    Sudo swapoff swapfile
    Sudo swapon -va
    

    注:上記のコマンドは、fstabファイルの構文を再チェックします。そうしないと、Linuxが正しく起動できません。

54
kenorb

Gpartedを使用してこれを行うグラフィカルな方法があります。

Gpartedを実行します:

Sudo gparted

インストールしていない場合は、次を使用してインストールできます。

Sudo apt-get install gparted

Gpartedが実行されたら:

  1. 割り当てられていないブロックを右クリックし、newをクリックして、パーティションを割り当てます。
  2. パーティションをlinux-swapとしてフォーマットします
  3. パーティションを右クリックして、_swaponをクリックします

完了したら、パーティション名の横に鍵のアイコンがあるはずです

12
Charles V

from linux.com スワップファイルを作成する方が柔軟性が高いため、スワップストレージの数と大きさを動的に調整できます。また、スワップパーティションをシステムディスクから遠ざけることができるため、システムが高速になります。また、複数のスワップスペースを使用する場合は、それらの使用優先順位を同じ値に調整します。そのため、ラウンドロビンを使用して書き込みが行われるため、さらに速度が向上します。

追伸USBスロット内にUSBストレージを誤って残し、sataケーブルを取り外して差し戻すだけでデバイスの順序を簡単に変更できるため、デバイス名の代わりにUUIDを使用します-どのドライブが接続されているかについてあまり心配する必要はありません。

3
Osis

(sdaxの「x」をスワップパーティション番号に置き換えます。例:sda5)

「xxx」をUUID番号に置き換えます。例:67682d1b-a1d8-4377-a3dd-67340c141619)


su(パスワードを与えてルート権限を取得)

blkid/dev/sdax(UUIDを取得)mkswap/dev/sdax(スワップパーティションをフォーマット)swapon -U xxx

nano/etc/fstab(fstabの編集)UUID = xxx none swap sw 0 0(このテキストを入力して保存し、スワップを永続的にします)(その後fsantabを閉じます)


nano /etc/initramfs-tools/conf.d/resume(「再開」ファイルを作成し、このテキストを保存してhibernate/resumeを使用)RESUME = UUID = xxx(ctrl + xでnanoを閉じる)->(yで保存)

マシンを再起動する

ログインすると、休止状態/再開をテストできます

2
wmameer

これは、Ubuntu用のRamドライブの作成方法に関する包括的なチュートリアルです。残念なことに、スクリーンショットはカットアンドペーストで表示されません。後で追加しますが、必要ありません。

最初に行う必要があるのは、RAMドライブ用のスペースを作成することです。 32 GBのハードドライブのみのデュアルブートシステムがあります。私のUbuntuは実際にはSDカードにインストールされています(はい、実際のインストールであり、Live Casperのものではありません)。私のスワップもSD上にあり、すぐに使い古される可能性があります。スワップの変更方法を調べてこの記事を見つけましたが、答えが気に入らなかったので、変更を加えながらチュートリアルを作成しました。

単にスワップパーティションを増減する場合は、お気に入りのパーティションマネージャを使用してパーティションを増減するだけです。 Ubuntuはすでにどこに行くべきかを知っており、サイズに依存しません。場所を変更するか、新しいスワップを作成する場合は、先に進んでください。最初に行う必要があるのは、ハードドライブを縮小してスワップ用のスペースを確保することです。 Windowsシステムがインストールされているディスクを縮小する場合は、Windowsを使用してディスクを縮小することをお勧めします(ディスク自体は知っています)。純粋なUbuntuを使用している場合は、ライブUbuntu USBを使用してサイズ変更を試してください。

Windowsのサイズ変更手順:

  1. システムをバックアップし、ドライブを最適化します。
  2. スタートバーを右クリックします。
  3. ディスク管理を選択
  4. 正しいドライブを右クリックします
  5. 縮小を選択します。
  6. 正しい金額を入力してください。

Ubuntuを使用している場合。必ずUbuntuツールを使用してください。割り当てを完了するには、GPartedを含むUbuntuの起動可能なライブUSBを使用します。ライブUSBは、何らかの理由でGpartedを使用する最良の方法です。最初のインストールからUSBを用意するか、使いやすくするためにUSBを作成する必要があります。

ドライブを「最適化」したにもかかわらず、それを行うための十分なスペースがなかったため、2000年の入力は許可されませんでした(Windowsが実際に最適化したとは思わない)。いくつかの実験で、私は1000を許可されました。それから私は再び1000を試しましたが、うまくいきました。私は小学校の数学の先生に、MS Windowsプログラマーよりも1つ多く感謝しています。そのため、小学校の数学に十分近い1.95gbが残った。

パーティションをフォーマットする

これで、gpartedでそのスペースを適切なスワップドライブとしてフォーマットする準備が整いました。 Windowsを使用していて、UbuntuとWindowsを切り替える場合は、「電源」と「シャットダウン」をクリックするときにShiftキーを押したままにしてください。これは非常に重要です。特に、別のオペレーティングシステムで「C」ドライブの詳細をいじる場合は重要です。デュアルブートを使用している場合、通常の状況ではWindowsが偽のシャットダウンを行うことを既に知っている必要があります。一部の人々は「高速ブート」を無効にしました。私のシステム(Windows 10)にはその選択肢がありません。友人のGoogleのおかげでシフトキーを使用する必要があります。ライブUSBを使用して起動し、「C」ドライブを(クリックして)マウントできない場合、完全にシャットダウンしませんでした。ウィンドウをリロードし、Shiftキーを使用して再度シャットダウンします。

これでUbuntu Liveモードになり、以下をお読みください:

あなたが純粋なUbuntuであり、Windowsで縮小しなかった場合。 gPartedの[サイズ変更]オプションを使用します。ドライブをすでに縮小している場合は、サイズ変更手順を実行しないでください。ダッシュバーにGPartedと入力すると、アプリケーションを非常にすばやく取得できます。サイズを変更するドライブを右クリックします。

ここで、未割り当て領域をパーティションドライブとしてフォーマットします。

前:

どうすればいいかわからなかったので、SDで以前のRamドライブを調べました。 Linuxスワップとしてフォーマットされています。そこで、最近割り当てたフォーマットをLinux Swapとして縮小しました。
プライマリパーティションと警告通知に対してOKと言ったところ、うまくいきました!

パーティションのフォーマット

フォーマットと新しいパーティションの後

sd上の古いスワップパーティションがmmblk1p5と呼ばれ、新しいパーティションもp5であり、mmblk0が前にあるのは偶然です。あなたのp6またはp7である可能性があります。心配しないで。

mmblk0は物理ディスクであり、pはその物理ディスク上のパーティションです。 mmblk01は別の物理ディスクなどです(これが私のSDです)これ以上作業を行う前に、Windowsを再度開いて、Windowsがまだ起動していることを確認しました。あなたが怠zyであるか、純粋なubuntuマシン上にいる場合、このステップを実行する必要はありません。 Windowsが破損した場合は、WindowsでそのディスクにUbuntuを新規インストールします(スワップも行います)。システムを壊した場合、新しいインストールでスワップを割り当てることができるため、これ以上の手順を実行する必要はありません。すべて順調に進み、Windowsが起動しました。これで、Windowsのディスクマネージャーに新しいパーティションが表示されます(スタートバーを右クリックして、ディスクの管理を取得します)。

次に、スワップをブートルーチンにアタッチします

この質問に対する以前の回答には、実際には不要で複雑なスワップオン/オフコマンドがありました。必要なことは、正しいファイルを見つけて、スワップが新しいパーティションを指すようにすることだけです。繰り返しますが、パーティションのサイズを変更するだけであれば、何もする必要はありません。パーティションを見つけるためのセットアップは既に完了しています。サイズは自動的に行われます。

パーティションを変更した場合、または初めてスワップを行う場合は、以下をお読みください。

教えてください、これは私がこれをするのは初めてです。私はUNIXオタクではなく、GUIツールを好みます。このチュートリアルを作成するときに、私は学び、指を交差させています。これまでのところ、すべて順調に進んでいます。システムのルートにはetcというディレクトリがあります。そのディレクトリ内にはfstab(拡張子なし)というファイルがあります。スーパーユーザー「su」権限でこのファイルを編集する必要があります。それを行う前に、Live USBで作成した新しいスワップパーティションのUUIDが必要です。 Sudo suと入力します。これで、スーパーユーザーモードになりました。あなたは何でもすることができます(あなた自身の存在を一掃することを含む)。

blkidと入力し、新しいスワップパーティションのuuidを探します。私は下に私のものを見、それを強調しました:

PartUIDには注意しないでください。

今、他の人はタイプを言うでしょう:

Sudo gedit /etc/fstab

しかし、私はそれを試してみましたが、正しいファイルが見つかりませんでした(コメントをお願いします)。

ですから、geditと入力して、GUIのようにすっきりと開きます(成功!)。なぜなら、私はすでにスーパーユーザーモード(Sudo su)になっていたので、変更後にファイルを保存するなど、Geditで任意の操作を行うためのルート権限を持っています。素晴らしい!変更または破損する前に、fstabをfstab.bakというバックアップとして保存します。

風変わりなGUIの方法を使用してバックアップを作成し、おなじみの「名前を付けて保存」を選択し、ファイルに「bak」を追加しますfstab.bak .bak拡張子が付いていることを確認してください。オタクは、端末のcpコマンドを使用するように指示しますが、私たちの初心者は、最初にこれを取得するために端末でファイルを見つけることができません。他のワードプロセッサと同様に、「名前を付けて保存」コマンドの後、現在のファイルはfstab.bakになります。前に持っていた実際のファイルを開き、バックアップファイルを閉じます。拡張機能なしで実際のfstabを編集していることを再確認してください。バックアップファイルを編集した場合、再起動しても何も起こりません。また、バックアップコピーは元のファイルの実際のバックアップではありません。

元のfstabファイルは次のようになります。

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/mmcblk1p6 during installation
UUID=a611601a-6ea8-4e34-9859-42a2470cac29 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/mmcblk0p1 during installation
UUID=00F2-C0CE  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/mmcblk1p5 during installation
UUID=8fb20159-62e4-41a3-8550-791c7a66c328 none            swap    sw              0       0

最後の行(私はあなたのために赤にしました)には、おそらく起動時に使用される元のスワップ情報があります。前のblkidコマンドから、新しいドライブのUUIDを確認できました。ターミナル内のテキストを強調表示し、右クリックしてコピーを選択することにより、そのフレーズをコピーします。そのフレーズをスクラッチパッドとしてsu権限なしで別の別のエディターに貼り付けます(Libre Officeを使用でき、ギークはnanoを使用できます)。この手順により、引用符なしで適切なテキストを簡単に取得できるので、fstabファイルに簡単に貼り付けることができます。このファイルはできるだけ変更しないでください。

New UUID
UUID="709ea197-e6fb-428b-9c1f-4b258452b10c"

したがって、新しいUUIDは上記の赤でリストされています。必要なのは、スワップのuuidを変更することだけです。スワップドライブがない場合は、上記のfstabファイルに自分の行をコピーし、前のblkidコマンドから適切なuuidを追加します。 (正しいuuidを選択してください!)
これが最初のスワップ行である場合は、余分なものを含む完全な行を含めるようにしてください

none            swap    sw              0       0

それほど正確な間隔を気にしないでください。

私の新しいファイルは次のようになります:変更の上にもコメントを追加したことに注意してください#文字はコメントであることを意味します。

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/mmcblk1p6 during installation
UUID=a611601a-6ea8-4e34-9859-42a2470cac29 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/mmcblk0p1 during installation
UUID=00F2-C0CE  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/mmcblk1p5 during installation  NOW changed to mmcblk0p5
UUID= 709ea197-e6fb-428b-9c1f-4b258452b10c  none            swap    sw              0       0

引用符を貼り付けないでください。 =記号の後にスペースを入れないでください。

ファイルを保存します。

変更を保存するために、もう一度開きます。 geditと端末を閉じるには、危険なsu権限を使用してください。これは、オタクがあなたをdoingるのであなたをoldるでしょう(簡単な作業です...また、物事を簡単に破壊できるためです)。

再起動し、指をクロスします!

再起動し、システムパフォーマンスアプリを見て、スワップが機能しているかどうかを確認しました。まだスワップドライブがありました!しかし、それは新しいものですか、古いものですか?新しいドライブは古いドライブと同じサイズであるため、新しいドライブが実際にロードされたことを確認できませんでした。したがって、次のように入力しました:swapon(SWAPON以外は入力しないでください。スワップの一覧が表示されます:safe)。これで、mmblk0p5に新しいドライブが表示され、fstabで行ったUUIDの作業と一致します。私のスリムな32GBメインドライブが有効になりました:


これで、これまでにこれを行ったことのない初心者ユーザーによるこのチュートリアルは終了です。このチュートリアルを作成した理由の半分は、私たちを助けてくれる(そしてありがとう)オタクが初心者ユーザーを助ける方法を理解できるようにするためです。以前の回答は誤解を招くものであると疑われ、作業をしながらチュートリアルを作成することにしました。他の有用な回答から推測することで、必要なのはfstabファイルを編集して再起動することだけでした。 。すべてうまくいきましたが、私はまだWindows 10を使用しており、まだシステムを消去していません。 Windows pagefile.sysをLinuxスワップファイルとして共有する方法を知っている人がいれば、Windowsでは2 GBが使用され、32 GBマシンではhdスペースが非常に高価になるため、興味があります。

2
Bhikkhu Subhuti

/ etc/fstabで定義されたスワップファイルシステムが必要です。次のような行が含まれている必要があります

UUID=67682d1b-a1d8-4377-a3dd-67340c141619 none            swap    sw              0       0

もちろん、UUIDの値をデバイスの識別子に置き換える必要があります。

2
Adam Byrtek