Answers:
您需要编辑/etc/fstab
并添加新的交换分区。
sudo nano /etc/fstab
您需要添加一条看起来像
UUID=735b3be3-779c-4d21-a944-b033225f3ab4 none swap sw 0 0
然后使用以下命令获取UUID
sudo blkid /dev/sda3
(/dev/sda3
用适当的设备名称代替)。
sudo fdisk -l
来自:askubuntu.com/questions/182446/…),然后查找Type:Linux swap。
sudo blkid /dev/sda4
不为我打印任何内容(sda4是代码为82h的新创建分区,fdisk说它是“ Linux swap / Solaris”分区)。
mkswap
运行而改变),另一个说使用3号主分区磁盘/dev/sda
。有些人更喜欢UUID,因为即使设备名称的分配发生了变化,UUID也会保持不变。这就是差异如此重要的原因。但是,如果您确定不会对驱动器进行分区,/dev/sda3
则使用时也应同样安全。
要在安装后创建交换分区,请创建一个空分区。它应该没有孔。然后可以使用以下命令格式化该分区:
sudo mkswap /dev/sdX
更换/dev/sdX
用你的分区。挂载此分区作为交换
sudo swapon -U UUID
/dev/sdX
从这里读取的UUID是您的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
。
完成任务:如果没有备用分区,也可以创建交换文件。该答案为您提供了有关如何创建交换文件并在启动时启用它的想法。
gparted
调整分区大小。
如果您不希望或不确定如何创建交换分区,则可以创建一个交换文件,该文件的工作方式与分区相同。以下是步骤(使用终端):
创建一个空文件(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
将新创建的文件转换为交换空间文件。
sudo mkswap swapfile
启用文件以进行分页和交换。
sudo swapon swapfile
通过以下方式验证:swapon -s
或top
:
top -bn1 | grep -i swap
应该显示如下行: KiB Swap: 4194300 total, 4194300 free
要禁用,请使用sudo swapoff swapfile
命令。
将其添加到fstab
文件中以使其在下次系统引导时持久存在。
echo "/var/cache/swap/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
在启动时通过以下方法重新测试交换文件:
sudo swapoff swapfile
sudo swapon -va
注意:上面的命令重新检查fstab
文件的语法,否则您的Linux无法正常启动。
fstab
文件的语法(针对任何拼写错误),否则Linux可能无法正确启动,从而导致严重的启动问题,尤其是在远程服务器上。
有一种使用gparted的图形方式来做到这一点。
运行Gparted:
sudo gparted
如果没有安装,可以使用
sudo apt-get install gparted
gparted运行后:
new
linux-swap
swapon
完成后,分区名称旁边应有一个钥匙图标
(用交换分区号替换sdax中的“ x”,例如:sda5)
用UUID号替换“ xxx”,例如:67682d1b-a1d8-4377-a3dd-67340c141619)
su(提供密码以获取root权限)
blkid / dev / sdax(获取UUID)mkswap / dev / sdax(格式交换分区)swapon -U xxx
nano / etc / fstab(编辑fstab)UUID = xxx无swap sw 0 0(输入并保存此文本以使交换永久生效)(然后关闭fsantab)
nano /etc/initramfs-tools/conf.d/resume(创建“恢复”文件并保存此文本以使用休眠/恢复)RESUME = UUID = xxx(按Ctrl + x关闭nano)->(y保存)
重新启动机器
登录,现在您可以测试休眠/恢复
这是有关如何为Ubuntu创建Ram Drive的综合教程。不幸的是..屏幕快照不会通过剪切和粘贴显示在其中。.稍后我将添加它们,但是不需要它们。
您需要做的第一件事是为ram驱动器创建空间。我有一个只有32GB硬盘的双启动系统。我的Ubuntu实际上安装在SD卡上(是的,是实际安装,而不是Live Casper)。我的交换也位于SD上,可能很快就会用完。我查找了如何更改交换的内容,找到了这篇文章,但不喜欢答案,因此在进行更改时写了一个教程。
如果您只是希望增加或减少交换分区,则只需通过您喜欢的分区管理器来增加或减少分区。Ubuntu已经知道去哪儿了,它与大小无关。如果要更改位置或进行新的交换,请继续阅读。您需要做的第一件事是收缩硬盘驱动器以提供交换空间。如果要收缩装有Windows系统的磁盘,则最好使用Windows收缩磁盘(它知道它自己的东西)。如果您使用的是纯Ubuntu,请尝试使用实时Ubuntu USB调整大小。
如果您在Ubuntu中。确保使用Ubuntu工具。为了完成分配,我将使用Ubuntu的可引导Live USB,其中包括GParted。无论出于任何原因,Live USB都是使用Gparted的最佳方式,并且您应该在首次安装时就拥有USB或随身携带以方便使用。
不允许在2000年键入内容,因为即使“对”驱动器进行了碎片整理,也没有足够的空间进行操作(我不相信Windows会对它进行了碎片整理)。经过一些试验,我被允许1000。然后我又尝试了1000,它成功了。我应该感谢我的小学数学老师比MS Windows程序员更多的感谢。那给了我1.95GB的内存,这对于我的小学数学来说已经足够了。
现在,我准备让gparted将该空间格式化为适当的交换驱动器。如果您使用的是Windows,并且在Ubuntu和Windows之间来回切换,请确保在单击“电源”和“关闭”时按住SHIFT键。这是非常重要的,尤其是当您弄混另一个操作系统中的“ C”驱动器详细信息时。如果您是双重引导,则应该已经知道Windows在正常情况下会进行伪关闭。有些人禁用了“快速启动”。我的系统(Windows 10)上没有该选择,必须使用Shift键,这要感谢我的朋友Google。如果您使用活动USB启动,并且无法安装“ C”驱动器(单击该驱动器),则说明未完全完全关闭。重新加载窗口,然后使用Shift键再次关闭。
现在您处于Ubuntu Live模式,请阅读以下内容:
如果您是纯Ubuntu,并且在Windows中没有收缩。您将在gParted中使用“调整大小”选项。如果已经收缩驱动器,请不要执行调整大小步骤。您可以在Dash栏中键入GParted并快速获取应用程序。右键单击要调整大小的驱动器。
现在,我们将未分配的空间格式化为分区驱动器:
之前:
我不知道该怎么办,所以我看了我以前在SD上的Ram Drive。它的格式为Linux交换。因此,我格式化了新的分配格式,最近也将其缩小为Linux Swap。
我对主分区和警告通知说“确定”,它奏效了!
格式化分区
这是一个巧合,在旧的交换分区sd
被称为mmblk1p5
和新的也p5
有mmblk0
在前面。您的可能是p6或p7。不用担心
的mmblk0
是物理磁盘和p是该物理磁盘上的分区。并且mmblk01
是另一个物理磁盘,等等。(这就是我的SD)在进行更多工作之前,我再次打开Windows以确保Windows仍然可以启动。如果您懒惰或在纯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),我具有root权限,可以在Gedit中执行任何操作,包括在更改文件后保存文件。精彩!在更改或破坏任何内容之前,请将fstab保存为名为...的备份fstab.bak
。
使用简洁的GUI方式进行备份,然后选择熟悉的“另存为”并将“ bak”添加到文件中fstab.bak
。检查它是否以.bak扩展名存在。极客会告诉您使用terminal cp命令,但是我们新手无法在terminal中找到该文件,因此无法做到这一点。就像任何文字处理程序一样,在“另存为”命令之后,当前文件现在是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!)
如果这是您的第一条Swap行,请确保包括完整行以及其他内容
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
不要粘贴引号。=
标志后没有空格。
再次打开它,以确保您的更改已保存。用危险的su
权限关闭该gedit和终端,这是极客会责骂您执行的操作(因为操作起来很容易...而且也很容易破坏东西)。
我重新启动,然后通过查看系统性能应用程序来检查交换是否正常。我还有交换驱动器!但这是新旧的吗?我无法验证我的新驱动器是否已实际加载,因为新驱动器的大小与旧驱动器的大小相同。因此,我输入:(swapon
不要输入任何超过交换的内容,它只会为您列出交换内容:安全)。现在,我看到新的驱动器mmblk0p5
与我所做的UUID工作相匹配fstab
。我超薄的32GB主驱动器生效了:
这篇教程是从一个以前从未做过的新手开始的。我制作本教程的一半原因是,帮助我们(并感谢您)的极客可以看到如何帮助新手用户。我怀疑以前的答案会引起误解,并决定在我工作时进行教程...通过从其他有用的答案中猜测,我得出的结论是,我所要做的就是编辑fstab
文件并重新启动。一切正常,我仍然有Windows 10,尚未擦除我的系统。如果有人知道如何将Windows共享pagefile.sys
为Linux交换文件,我会很感兴趣,因为Windows占用了2 GB内存,而32 GB的计算机上hd空间非常昂贵。