我在 MSI GF63 笔记本电脑上安装了 Ubuntu。我的规格如下:Intel Core i5 9300H(四核)8 GB RAM nVidia GTX 1050 Intel 660p 512GB SSD(140GB + 15GB 交换用于 Linux)
我的系统在加载时会间歇性地冻结。如果我播放音乐、运行 nodeJS 和 Java 服务器、打开 Firefox 和 VS Code。系统会间歇性地冻结。我尝试让 htop 保持运行,以查看是否遇到任何瓶颈,但我发现在这些情况下 CPU 和内存都没有耗尽容量。通常音频不会滞后,音乐和通话大部分时间保持开启,尽管有时会略微卡顿,但鼠标不会移动,Alt + Tab 不起作用
我尝试按照建议安装 DRM KMS这里但我尝试切换到使用 X-Server 的 nVidia GPU,但无济于事,这也没有解决问题。由于我无法诊断任何瓶颈,所以我没有其他选择。
➜ ~ free -h
total used free shared buff/cache available
Mem: 7.6G 6.5G 125M 573M 988M 270M
Swap: 15G 1.0G 14G
➜ ~ sysctl vm.swappiness
vm.swappiness = 60
➜ ~ grep -i swap /etc/fstab
# swap was on /dev/nvme0n1p6 during installation
UUID=a0c6ff2a-8e8c-428a-8ab6-37ca22bdb822 none swap sw 0 0
Gnome 扩展命令返回以下内容:
➜ ls -al /usr/share/gnome-shell/extensions
total 16
drwxr-xr-x 4 root root 4096 Feb 3 23:54 .
drwxr-xr-x 6 root root 4096 Feb 3 23:54 ..
drwxr-xr-x 3 root root 4096 Feb 3 23:54 [email protected]
drwxr-xr-x 3 root root 4096 Feb 3 23:54 [email protected]
➜ ls -al ~/.local/share/gnome-shell/extensions
ls: cannot access '/home/maverick/.local/share/gnome-shell/extensions': No such file or directory
free -h
在没有过大负载的情况下观察到滞后时的输出
total used free shared buff/cache available
Mem: 7.6G 2.5G 2.6G 394M 2.5G 4.5G
Swap: 15G 199M 15G
输出lshw -C memory
sudo lshw -C memory
[sudo] password for maverick:
*-firmware
description: BIOS
vendor: American Megatrends Inc.
physical id: 1
version: E16R3IMS.309
date: 03/26/2020
size: 64KiB
capacity: 15MiB
capabilities: pci upgrade shadowing cdboot bootselect edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer acpi usb biosbootspecification uefi
*-memory
description: System Memory
physical id: 3b
slot: System board or motherboard
size: 8GiB
*-bank:0
description: SODIMM DDR4 Synchronous 2667 MHz (0.4 ns)
product: M471A1K43CB1-CTD
vendor: Samsung
physical id: 0
serial: 32E64524
slot: ChannelA-DIMM0
size: 8GiB
width: 64 bits
clock: 2667MHz (0.4ns)
*-bank:1
description: [empty]
physical id: 1
slot: ChannelB-DIMM0
*-cache:0
description: L1 cache
physical id: 45
slot: L1 Cache
size: 256KiB
capacity: 256KiB
capabilities: synchronous internal write-back unified
configuration: level=1
*-cache:1
description: L2 cache
physical id: 46
slot: L2 Cache
size: 1MiB
capacity: 1MiB
capabilities: synchronous internal write-back unified
configuration: level=2
*-cache:2
description: L3 cache
physical id: 47
slot: L3 Cache
size: 8MiB
capacity: 8MiB
capabilities: synchronous internal write-back unified
configuration: level=3
*-memory UNCLAIMED
description: RAM memory
product: Cannon Lake PCH Shared SRAM
vendor: Intel Corporation
physical id: 14.2
bus info: pci@0000:00:14.2
version: 10
width: 64 bits
clock: 33MHz (30.3ns)
capabilities: pm cap_list
configuration: latency=0
resources: memory:a441a000-a441bfff memory:a4422000-a4422fff
答案1
出现冻结和延迟的原因是内存不足,并且系统正在进行交换。您正在运行许多进程,在重新启动之前退出这些进程可以解决许多问题。内存和交换被回收,然后系统就不会冻结/延迟了。
数字版权管理
撤消您的 DRM KMS 修改,因为它们并未解决问题。
内存
您需要将 RAM 从 8G 增加到 16G。您总是希望以相等大小、匹配的 RAM SODIMM 对配置内存,以便系统可以利用内存交错的速度优势。要配置内存,请添加另一个具有这些规格的 8G RAM SODIMM...
description: SODIMM DDR4 Synchronous 2667 MHz (0.4 ns)
product: M471A1K43CB1-CTD
vendor: Samsung
serial: 32E64524
size: 8GiB
width: 64 bits
交换
增加 RAM 后,我们将最后进行交换更改。
您需要将交换分区从 16G 减少,然后我们将切换到 4G 的 /swapfile。完成后,您可以将 16G 交换分区分配给 / 或 /home 分区。
笔记:命令使用不当dd
可能导致数据丢失。建议复制/粘贴。
sudo swapoff -a # turn off swap
sudo rm -i /swapfile # remove old /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
sudo chmod 600 /swapfile # set proper file protections
sudo mkswap /swapfile # init /swapfile
sudo swapon /swapfile # turn on swap
free -h # confirm 16G RAM and 4G swap
在 /etc/fstab 中注释掉此行...
UUID=a0c6ff2a-8e8c-428a-8ab6-37ca22bdb822 none swap sw 0 0
将此行添加到 /etc/fstab...
/swapfile none swap sw 0 0
重新启动。使用 验证 /swapfile 操作是否正确free -h
。