WindowsとUbuntuは単一のスワップパーティションを共有できますか?


13

Ubuntu 12.04とWindows 7でシステムをデュアルブートしています。インストール中にUbuntu用の特別なスワップパーティションを作成しました(推奨)。

Windowsから起動するときに、Windowsはこのスワップ領域/パーティションを独自のスワップ/ページファイルとして使用できますか?


1
申し訳ありませんが、窓はそれほど賢く/柔軟ではありません。ページングを使用し、ディスク上にファイルを作成し、ある意味でスワップとして使用します。
マヘシュ

マイクロソフトはそれをしないと言っています:blogs.msdn.microsoft.com/commandline/2016/11/17/…そして18.04LTSがスワップファイルを使用するようになったため、コンセプトは廃止されました。
K7AAY

@ K7AAYの記事はデュアルブートに関するものではなく、WSL に関するものなので、これはまったく関係ありません。また、WSLを使用している場合でも、バージョン1903
phuclv

回答:


11

可能ですが、おそらく実験としてのみ:

注:これはwhat-ifの回答であり、特にUbuntuのhibernateを使用している場合はお勧めしません

  • 理論的には、はい、WindowsはLinux側の巧妙なスクリプトを使用して、ページ(スワップ)ファイルにスワップパーティションを使用できるはずです。

  • 私はそれを試したことがないので、段階的に行うつもりはありません。もしあなたがこれを実装する方法を理解できないなら、あなたもそれを試してはいけません:)

    1. Windows内からパーティションをNTFSとしてフォーマットし、そのドライブをスワップファイル専用に使用するようにWindowsをセットアップします(C:には何もありません)

    2. Ubuntuの起動時にパーティションをLinuxスワップとしてフォーマットし、スワップを有効にするための起動/起動スクリプトを用意します(swapon)。

    3. パーティションをntfsとしてスワップオフして再フォーマットするシャットダウンスクリプトを用意します。

代替(まだ推奨されません)オプション:

NTFSパーティションが両方のスワップファイルに十分な大きさであれば、NTFSパーティションでこのガイドに従ってスワップファイル作成できます。

ただし、次の理由により、この代替方法は推奨されません。

  • NTFS(3G)パーティションでのスワップは、CPUに非常に負荷がかかります。
  • さらに悪いことに、ファイルが断片化される可能性があるため、パフォーマンスが低下する可能性があります。

または、そのパーティションでスワップとしてファイルを使用します
-lgarzo

@lgarzoそのオプションは知っていますが、NTFS(3G)パーティションでのスワッピングはCPUに非常に負荷がかかるのでお勧めしません:)
ish

さらに悪いことに、ファイルが断片化される可能性があるため、パフォーマンスが低下する可能性があります。
lgarzo

@lgarzo絶対に。おそらく私の答えを編集して、これは別のオプションですが(ntfsパーティションが両方のスワップファイルに十分な大きさである場合)、説明した理由のために推奨されないことを追加できますか?ありがとう!
ISH

1
この方法は2002年まで使用されていました。2011年現在、Windows 7はswapfsドライバーで動作すると報告されています。
ダンダスカレスク

2

LinuxのスワップとWindowsのページファイルの両方で多くのGBを無駄にすることなく、ハードドライブのスペースを節約することが目標の場合、LinuxでSwapSpaceを使用して動的なスワップファイルサイズを使用することを検討できます。


外部のWebサイトを単にリンクするのではなく、完全な答えを書いてください。それらを参照として配置することは非常に良いことですが、他のWebサイトがオフラインになるなどの場合に備えて、ここ重要な手順を配置することをお勧めします。
dadexix86

1

自分では試していませんが、swapfsでスワップパーティションをマウントできます。理論的には、そこにページファイルを配置できます(ミニダンプなどではなく、いくつかの理由があります)。


1

うまくいきます。

何が必要ですか?SwapFs-3.0ファイルの指示に従ってください

また、Ubuntuforums.orgでLinux SwapパーティションをWindowsスワップファイルとして使用する方法で役立つものを見つけることができます。

最初は、スワップスペースをNTFSにフォーマットしようとしましたが、Linuxがスワップスペースを独自のものとして認識する能力を失ったことが判明しました。

その後、従来のLinuxスワップに再フォーマットし直しました。

次に、fstabに戻りました。だった:

UUID=4c6a4... none  swap  sw  0  0

それを無効にし、代わりに置きます:

/dev/sda7   swap   swap   defaults   0   0

よく覚えていれば、Windowsを起動した後、RAWとして認識されなかったか、FAT32としてフォーマットできたかもしれません。

そして、すべてが機能し始めました。

しかし、問題が発生します。つまり、私のVistaには追加の文字が「添付」されたため、ようやく2つのドライバーがありましたが、実際には同じパーティション「e:\」にリンクされ、「s:\」として確立されました。

幸いなことに、 'SwapFs-3.0'から* .regファイルで推奨される場所にレジストリにアクセスするだけで十分でした。追加の追加レコード「e:\」をレジストリから削除する必要があることが判明しました。

現在、問題なくシステム間スワップスペースを楽しんでいます。3.2 GBのスペースを回復しました。

Linuxを使用してわずか4、3か月で、このような複雑な操作を行えるようになります。したがって、多大な労力をかけずにこれを行うことができます。

要約すると:

  1. LinuxスワップパーティションをWindowsと共有し、Windowsスワップファイルを保存するスペースとして利用することが可能です。
  2. SwapFs-3.0のおかげでとても簡単です。
  3. CPUがどれだけ重いかわかりませんでした。
  4. パーティションは「管理」コマンドによってマウントされていると認識されず、パーティションアプリもマウントされていると認識しません。
  5. Explorerはそれをディスクと見なします。
  6. 実際、多くのディスク容量を節約できます。

0

物事が変更されました...以前はMS-DOS 4で開始された可能性のあるInstallable FileSystemを意味するLinuxパーティション(主に当時EXT3用)IFSを読み取ることができるIFSドライバーがありました(以前はそれがWindowsに残っているOS2の要素)、RAMドライブの作成、ドライブ文字の割り当てなど、IFSでできることはいくつかありました。(最近では、おそらくimdiskがより良い方法です)EXT2IFS(および後のext2fsd)とともに、Windows内からLinuxスワップパーティションにアクセスする機能がありました。そのため、ファイルシステムドライバーに付属している小さなドライブマネージャーユーティリティを使用して、ドライブ文字をスワップパーティションに割り当て、それを使用するようにWindowsに指示するだけで、swapfile.sysファイルなどでした。昨日、Windows 10はAnniversaryアップデート以降に署名済みドライバーを必要とするため、ほとんどのIFSドライバーは現在少なくとも機能していません。残念ながら、Windows内からEXT2およびHFS +パーティションデータにアクセスできなくなります。そのため、答えは本質的にはもはやなくなりました。しかし、古いバージョン(Win7やXPなど)の場合、ここで述べた方法で行うのは非常に妥当です。


-1

簡単な答えは:いいえ、できません。

WindowsはLinuxパーティションを認識しませんが、その逆も可能です(LinuxはWindowsパーティションを認識します)。


1
Linuxパーティションとしては何もありません。ファイルシステムについて話す必要があります。ext3 / 4、NTFS、FAT16 / 32など
マヘシュ

真実、技術的なレベルを低く保つことを望んでいた
leousa

1
@ Mahesh、Linux、およびLinux Swap はパーティションタイプ(0x82および0x83、IIRC)です。を確認してくださいfdisk -l。スワップも独自のファイルシステムだと思います。
-ish

私の悪い、あなたは正しい。@izxに感謝し、正しく思い出してください。;)
Mahesh

2
より複雑な答えは、それ 行われたということです。
ダンダスカレスク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.