对于一台新的、闪亮的笔记本电脑(假设有16GB内存和SSD硬盘)进行桌面安装,是否有必要设置交换分区?
sudo su
mkdir /swap && \
cd /swap && \
fallocate -l 2g 2GB.swap && \
mkswap 2GB.swap && \
swapon 2GB.swap && \
echo "# # # Swap File # # #" >> /etc/fstab && \
echo "/swap/2GB.swap none swap sw 0 0" >> /etc/fstab && \
mount -a
不利之处
无法将系统休眠到交换文件中,正如@Takkat所提到的,我已经检查过,并且第一次尝试休眠,但它不起作用,所以如果你想要休眠,你需要交换分区,否则,如果使用交换文件也可以。
fallocate
、mkswap
和swapon
的用法吗?如果我想在以后增加交换空间,这将是有教育意义和有用的。 - Heisenberg如果你想要使用休眠功能,那么必须要有一个与你的总内存大小相同或更大的交换分区。
除此之外,如果你有16GB的内存,原则上可能不需要 - 我见过有人说只要1GB就足够在没有交换分区的情况下运行,尽管我想这可能因人而异。在我的情况下,我使用一台配备8GB内存的笔记本,并且有一个相同大小的交换分区用于休眠(它还可以作为缓冲区,以防我的工作变得特别消耗内存,有时确实会发生)
这是一个理论问题还是实际问题?
在实际应用中,几乎没有理由避免使用交换分区,因为磁盘空间便宜且充足(尤其在崭新的笔记本电脑上)。
从理论上来说,16GB的内存可能永远不会被用完。考虑以下情况:
现在考虑这些情况同时发生。交换分区将作为缓冲区,在不可预测的事件同时发生时提供一些时间,让系统在崩溃之前保存工作等。
特别是因为有了笔记本电脑,总会有一天需要休眠来保护你的数据。也许你离开电脑去喝咖啡,但突然有事情发生,一个小时后你才回来。如果你的电池在那个时候没电了,休眠模式将保护你尚未保存的工作。
sudo -s
fallocate -l 4000m /swap_file #4000 mb, may want higher than 4000mb
swapoff -a
mkswap /swap_file
nano /etc/fstab
#delete previous swap entry then add
/swap_file swap swap defaults 0 0
#then save and exit
swap-offset /swap_file #remember the output of this
nano /etc/grub.d/40_custom
add to linux line: resume=<partition swapfile is on> resume_offset=<swap-offset return data>
swapon -a
nano /home/name/bin/hibernate_shutdown
#!/bin/bash
echo shutdown > /sys/power/disk
echo disk > /sys/power/state
create shortcut. system-settings->keyboard->shortcuts->custom shortcuts add
gnomesu /home/name/bin/hibernate_shutdown
set to F11
chmod +x /home/name/bin/hibernate_shutdown
restart computer
如果您想在休眠后重新启动而不是关机
echo reboot > /sys/power/disk
echo disk > /sys/power/state