Linux,ubuntu中的S4--hibernate(休眠)实现,swap分区相关命令学习记录

这篇文章详细记录了在Linux系统中管理swap分区的过程,包括查看swap设置、关闭与格式化swap、更新GRUB,以及如何设置UUID以实现开机自动挂载和启用休眠功能。同时,还涉及到了initramfs的更新和使用rtcwakeup命令进行定时唤醒。

学习笔记记录–linux S4

学习过程中的一些笔记记录,怕时间长忘了。

相关命令

1.显示当前swap的设置:swapon --show
2.关闭所有swap:swapoff -a
3.格式化成swap分区:mkswap /dev/nvme0n1p3
4.激活swap分区:swapon /dev/nvme0n1p3
5.更新grup:update-grub
6.编辑grub: nano /etc/default/grub,
7.GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash(加 resume=UUID=UUID值)”
8.swap分区UUID 获取:blkid | grep -i swap
9.swap分区开机自动挂载需要修改/etc/fstab 文件,最后添加上
UUID=前面的UUID swap swap defaults 0 0
10.echo RESUME=UUID=swap分区的UUID值 | sudo tee /etc/initramfs-tools/conf.d/resume
11.更新initramfs,运行sudo update-initramfs -c -k all
12.sudo nano /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla,添加后面的字段到最后

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate
ResultActive=yes

13.运行rtcwakeup -m disk -s 20

<think>我们正在讨论的是在类Unix系统(如Linux)中如何检查是否存在swap分区swap分区是用于虚拟内存的磁盘空间,当物理内存不足时,系统会将部分内存数据交换到swap空间中。 在Unix/Linux系统中,我们可以通过多种命令来检查swap分区的存在和状态: 1. 使用 `swapon` 命令:`swapon --show` 或 `swapon -s`(旧版)可以显示当前激活的swap分区和文件。 2. 使用 `free` 命令:`free -m` 或 `free -h` 可以查看内存和swap的使用情况,如果swap行有显示数值,则说明系统有swap空间。 3. 查看 `/proc/swaps` 文件:`cat /proc/swaps` 会列出当前系统使用的swap空间。 4. 使用 `lsblk` 或 `blkid` 命令:这些命令可以列出所有块设备,通过查看是否有标记为swap分区。 5. 查看 `/etc/fstab` 文件:该文件包含了挂载信息,可以查看是否有swap分区的配置。 具体操作示例: 方法一:使用 `swapon` ``` swapon --show ``` 如果没有任何输出,则说明当前没有激活的swap分区。 方法二:使用 `free` ``` free -h ``` 输出示例: total used free shared buff/cache available Mem: 7.7Gi 1.5Gi 3.2Gi 123Mi 3.0Gi 5.8Gi Swap: 2.0Gi 0B 2.0Gi 这里Swap行显示有2.0GiB,说明存在swap分区。 方法三:查看 `/proc/swaps` ``` cat /proc/swaps ``` 输出示例: Filename Type Size Used Priority /dev/sda2 partition 2097148 0 -2 如果输出为空,则没有swap。 方法四:使用 `lsblk` ``` lsblk -f ``` 在输出中查找类型为“swap”的分区。 方法五:查看 `/etc/fstab` ``` grep swap /etc/fstab ``` 如果配置了swap,这里会显示类似:/dev/sda2 none swap sw 0 0 注意:有时swap可能以文件形式存在(swapfile),所以上述命令也会显示swap文件。 结论:通过以上任一方法都可以检查系统是否存在swap分区。如果所有方法都显示没有swap,则系统当前没有配置swap空间。 §§相关问题§§ 1. 如何在Linux系统中创建swap分区? 2. 如何调整Linux系统中swap分区的优先级? 3. 在Linux中,如何将swap分区设置为永久挂载? 4. 如何监控Linux系统中swap空间的使用情况? 5. 在Linux中,如何添加一个swap文件?</think>在类Unix系统(如Linux)中,查看系统是否有swap分区swap文件,可通过以下方法: ### 检查方法: 1. **`free` 命令** ```bash free -h ``` - 若输出中 `Swap` 行显示非零值(如 `Swap: 2.0Gi`),则存在swap空间 - 若显示 `Swap: 0B` 或未列出 `Swap` 行,则无swap空间 2. **`swapon` 命令** ```bash swapon --show ``` - 显示当前激活的swap设备/文件(如 `/dev/sda2` 或 `/swapfile`) - 无输出则代表无活跃swap 3. **检查 `/proc/swaps` 文件** ```bash cat /proc/swaps ``` - 列出所有swap分区/文件路径及大小 - 空文件则无swap 4. **查看磁盘分区信息** ```bash lsblk -f | grep -i swap # 检查分区类型 blkid | grep -i swap # 检查分区标签 grep swap /etc/fstab # 检查开机挂载配置 ``` ### 结果解读: - **存在swap**:上述命令会显示swap设备路径(如 `/dev/sdXN`)、swap文件(如 `/swapfile`)或大小 - **无swap**:命令输出为空、`free` 显示 `Swap: 0B`,或 `/proc/swaps` 为空 > ⚠️ 注意:swap可能以**分区**(如 `/dev/sda2`)或**文件**(如 `/swapfile`)形式存在,两种形式均有效。
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值