![Ubuntu 18.04 在 RAM 和 SSD 升级后随机冻结](https://linux22.com/image/1167352/Ubuntu%2018.04%20%E5%9C%A8%20RAM%20%E5%92%8C%20SSD%20%E5%8D%87%E7%BA%A7%E5%90%8E%E9%9A%8F%E6%9C%BA%E5%86%BB%E7%BB%93.png)
我的 ASUS VivoBook R542UQ-DM153 上之前有 8GB 的 RAM 和 1TB 的硬盘。我添加了 250GB 的 WD Blue SSD 和 8GB 的 RAM。现在总 RAM 为 16GB。我还在 SSD 上全新安装了 Ubuntu。现在每次使用量很大时系统都会死机,我别无选择,只能硬关机。请帮我解决这个问题。
$ sudo dmidecode --type memory
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 3.0.0 present.
Handle 0x0008, DMI type 16, 23 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 64 GB
Error Information Handle: Not Provided
Number Of Devices: 4
Handle 0x0009, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0008
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: SODIMM
Set: None
Locator: ChannelA-DIMM0
Bank Locator: BANK 0
Type: DDR4
Type Detail: Synchronous Unbuffered (Unregistered)
Speed: 2400 MT/s
Manufacturer: 859B
Serial Number: E0F2D27D
Asset Tag: 9876543210
Part Number: CB8GS2400.C8D
Rank: 1
Configured Clock Speed: 2133 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
Handle 0x000A, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0008
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: Unknown
Set: None
Locator: ChannelA-DIMM1
Bank Locator: BANK 1
Type: Unknown
Type Detail: None
Speed: Unknown
Manufacturer: Not Specified
Serial Number: Not Specified
Asset Tag: Not Specified
Part Number: Not Specified
Rank: Unknown
Configured Clock Speed: Unknown
Minimum Voltage: Unknown
Maximum Voltage: Unknown
Configured Voltage: Unknown
Handle 0x000B, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0008
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: SODIMM
Set: None
Locator: ChannelB-DIMM0
Bank Locator: BANK 2
Type: DDR4
Type Detail: Synchronous Unbuffered (Unregistered)
Speed: 2400 MT/s
Manufacturer: 04CB
Serial Number: 01210200
Asset Tag: 9876543210
Part Number: AO1P24HC8T1-BSFS
Rank: 1
Configured Clock Speed: 2133 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
Handle 0x000C, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0008
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: Unknown
Set: None
Locator: ChannelB-DIMM1
Bank Locator: BANK 3
Type: Unknown
Type Detail: None
Speed: Unknown
Manufacturer: Not Specified
Serial Number: Not Specified
Asset Tag: Not Specified
Part Number: Not Specified
Rank: Unknown
Configured Clock Speed: Unknown
Minimum Voltage: Unknown
Maximum Voltage: Unknown
Configured Voltage: Unknown
答案1
您的系统很有可能正在寻找不存在的可用交换空间。
当发生这种情况时,系统将陷入停滞,因为系统会不断地将存储设备分页以获取不存在的交换空间。
有两件事导致这种情况的发生。
1-你的 swappiness 设置得太高对于具有 16 GB RAM 的固态硬盘,您无需将 swappiness 设置为 60。
运行以下命令将 swappiness 设置为 10:
echo 'vm.swappiness = 10' | sudo tee -a /etc/sysctl.conf
以后要更改 swappiness,您可以编辑文件/etc/sysctl.conf
或使用sed
。以下示例将 swappiness 从 10 更改为 20:
sudo sed -i 's/swappiness = 10/swappiness = 20/g' /etc/sysctl.conf
运行以下命令来应用更改:
sudo sysctl -p
您可以尝试此设置。使用固态硬盘时,最好将 swappiness 设置为 20 或更高,因为系统将能够利用缓存的 RAM。就我个人而言,我的固态硬盘有大约 5GB 的 RAM,10 就足够了。
2 – 您还可以增加交换空间以释放更多 RAM。目前,您有 16 GB 的 RAM,这已经足够了。但是,您没有太多的交换空间。当 RAM 使用率过高时,这可能会导致系统变慢。
使用以下命令增加交换文件的大小:
sudo swapoff -a
sudo dd if=/dev/zero of=/swapfile bs=1M count=8192
sudo mkswap /swapfile
sudo swapon /swapfile
这会将交换文件设置为 8 GB。要将交换文件设置为 16 GB,您可以增加到count=8192
。count=16384
使用count=4096
重置将大小恢复为 4 GB。
除非使用休眠模式,否则您不需要 16 GB 的 RAM 交换空间。如果您使用休眠模式,建议您将交换空间设置为与 RAM 相同的大小. 对于不使用休眠模式的系统,建议最低 16 GB RAM 为 4 GB。
此外,当您的交换能力设置为较低的数字时,交换文件的大小变得不那么重要。
编辑
我刚刚检查了您的笔记本电脑型号,上面显示您使用的是 Nvidia 显卡。运行以下命令安装 Nvidia 驱动程序:
sudo apt update
sudo ubuntu-drivers autoinstall
重新启动以应用更改。
答案2
如果最近其他人遇到类似的问题,我也遇到了类似的冻结问题,该问题发生在几周前我更新 Ubuntu 18.04 之后。我现在意识到它破坏了我的 Nvidia 驱动程序安装。我重新安装了它,现在看起来没问题了。
对于安装来说这是有效的:
如何在 Coffee Lake 18.04 上安装 NVIDIA CUDA 工具包 - 它受支持吗?
只需更新当前的驱动程序版本。
答案3
没错,但如果您还有类似的问题,我会检查以确保 RAM 完好无损。尝试将 RAM 换到相反的插槽中。如果总 RAM 较少且可用 RAM 较少,则其中一个内存条有问题。我之所以这么说,是因为我买了一个全新的 Crucial 内存条,它完全有问题——技术人员发现我插入了两个内存条,却无法启动。当技术人员只插入一个内存条时,计算机可以正常工作,显示 8GB RAM。
不过,请先尝试一下其他人写的内容。