[步骤] Linux Swap 内存 (交换内存) swap 的设置

步骤一:理解 Linux Swap 内存 (交换内存)

1.1 理解 Linux 使用 Linux 虚拟内存的机制

1) Linux 内核会周期性的把内存中不常调用的匿名页和共享内存交换至 Swap 内存 (交换内存)
2) 当内存不足时,Linux 系统会把匿名页和共享页交换至 Swap 内存 (交换内存)

1.2 理解 Linux Swap 内存 (交换内存) 使用优先级的设置机制

Linux 的 swappiness 参数用于控制 Swap 内存 (交换内存) 的使用。
swappiness 参数的默认值是 60,也就是说当物理内存使用率达到 40 时,开始使用 Swap 内存 (交换内存)。
当 swappiness 参数的值是 0 时,则只有当物理机内存耗尽了以后才会使用 Swap 内存 (交换内存)。
当 swappiness 参数的值是 100 时,则立刻使用 Swap 内存 (交换内存)。

步骤二:Linux Swap 内存 (交换内存) 开关的设置

2.1 查看 Swap 内存 (交换内存)

# swapon -s

2.2 开启 Swap 内存 (交换内存)

# swapon -a

2.3 关闭 Swap 内存 (交换内存)

# swapoff -a

2.4 重启 Swap 内存 (交换内存)

# swapoff -a && swapon -a

步骤三:Linux Swap 内存 (交换内存) 使用优先级的设置

3.1 临时设置 Swap 内存 (交换内存) 使用优先级的设置

# sysctl -p swappiness=60

或者:

# sysctl vm.swappiness=60

或者:

# echo 60 > /proc/sys/vm/swappiness

(补充:这里以把 swappiness 的值设置成 60 为例)


注意:
1) 临时设置重启后失效
2) 临时设置了以后不会马上生效,只有当系统重新调用内存以后才会生效

3.2 永久设置 Swap 内存 (交换内存) 使用优先级的设置

3.2.1 修改 /etc/sysctl.conf 文件
# vim /etc/sysctl.conf

添加以下内容:

......
vm.swappiness=60

(补充:这里以把 swappiness 的值设置成 60 为例)

3.2.2 让刚刚修改的 /etc/sysctl.conf 文件生效
# sysctl -p

3.3 查看 Swap 内存 (交换内存) 使用优先级的设置

3.3.1 通过 /proc/sys/vm/swappiness 文件查看
# cat /proc/sys/vm/swappiness
3.3.2 通过 sysctl vm.swappiness 命令查看
# sysctl vm.swappiness

[步骤] Linux journal 日志的永久存储

正文:

步骤一:理解 journal 日志存储机制

默认情况下,journal 的日志存储在 /run/log/journal,而 /run 目录只是一个临时目录。

将 Storage 参数设置为 persistent 后,journal 的日志将存储在 /var/log/journal,/var/log 则是一个永久的目录。

步骤二:将 journal 日志设置为永久存储

2.1 修改 /etc/systemd/journald.conf 文件

# vi /etc/systemd/journald.conf

将部分内容修改如下:

[Journal]
......
Storage=persistent
......

2.2 重启 systemd-journald 服务

# systemctl restart systemd-journald.service

参考文献:

https://linuxconfig.org/introduction-to-the-systemd-journal