bin456789 / reinstall

一键DD/重装脚本 (One-click reinstall OS on VPS)
GNU General Public License v3.0
2.88k stars 478 forks source link

为什么我装的 Alpine不能开swap? #99

Closed mrjg117 closed 3 months ago

mrjg117 commented 5 months ago

su dd if=/dev/zero of=/swapfile bs=1024 count=2097152 chmod 600 /swapfile mkswap /swapfile fstab+ /swapfile swap swap sw 0 0

重启后不会生效

bin456789 commented 5 months ago

要在 Alpine Linux 上设置并启用交换文件,确保在创建和配置交换文件后进行了正确的步骤。你已经大部分都正确了,但可能在某些步骤中有遗漏或需要调整。这里是一个详细的指南:

1. 创建交换文件

dd if=/dev/zero of=/swapfile bs=1024 count=2097152

2. 设置交换文件的权限

chmod 600 /swapfile

3. 设置交换空间

mkswap /swapfile

4. 激活交换空间

swapon /swapfile

5. 编辑 /etc/fstab 文件

确保你在 /etc/fstab 文件中添加了以下内容:

/swapfile swap swap defaults 0 0

注意,你之前的 fstab 文件内容可能是:

/swapfile swap swap sw 0 0

其中 sw 应该被替换为 defaults

6. 验证交换空间

重启系统后,可以通过以下命令验证交换空间是否启用:

free -h

你应该在输出中看到交换空间的大小。如果未生效,可以尝试以下步骤进行故障排除:

故障排除步骤

  1. 检查交换文件的存在性:确保重启后交换文件仍然存在。

    ls -lh /swapfile
  2. 手动启用交换空间:重启后手动启用交换空间,看是否能成功。

    swapon /swapfile
  3. 检查 /etc/fstab:确保 /etc/fstab 文件的格式正确,没有拼写错误。

    cat /etc/fstab
  4. 日志文件:检查系统日志文件以获取任何相关错误信息。

    dmesg | grep swap

通过上述步骤,你应该能够在 Alpine Linux 上成功配置和启用交换文件。如果问题依旧存在,可以提供更多的系统日志或错误信息,以便进一步诊断。

git-sunyata commented 5 months ago

rc-update add swap 需要加这个,以保证开机启动。否则重启后就没了

mrjg117 commented 5 months ago

要在 Alpine Linux 上设置并启用交换文件,确保在创建和配置交换文件后进行了正确的步骤。你已经大部分都正确了,但可能在某些步骤中有遗漏或需要调整。这里是一个详细的指南:

1. 创建交换文件

dd if=/dev/zero of=/swapfile bs=1024 count=2097152

2. 设置交换文件的权限

chmod 600 /swapfile

3. 设置交换空间

mkswap /swapfile

4. 激活交换空间

swapon /swapfile

5. 编辑 /etc/fstab 文件

确保你在 /etc/fstab 文件中添加了以下内容:

/swapfile swap swap defaults 0 0

注意,你之前的 fstab 文件内容可能是:

/swapfile swap swap sw 0 0

其中 sw 应该被替换为 defaults

6. 验证交换空间

重启系统后,可以通过以下命令验证交换空间是否启用:

free -h

你应该在输出中看到交换空间的大小。如果未生效,可以尝试以下步骤进行故障排除:

故障排除步骤

  1. 检查交换文件的存在性:确保重启后交换文件仍然存在。
    ls -lh /swapfile
  2. 手动启用交换空间:重启后手动启用交换空间,看是否能成功。
    swapon /swapfile
  3. 检查 /etc/fstab:确保 /etc/fstab 文件的格式正确,没有拼写错误。
    cat /etc/fstab
  4. 日志文件:检查系统日志文件以获取任何相关错误信息。
    dmesg | grep swap

通过上述步骤,你应该能够在 Alpine Linux 上成功配置和启用交换文件。如果问题依旧存在,可以提供更多的系统日志或错误信息,以便进一步诊断。

按照你的操作试了下还是不行,日志输出:[ 1.014277] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization

甲骨文的x64免费机 bash reinstall.sh alpine 安装的alpine, 也尝试了按照前边网友提示的 添加 rc-update add swap 。但还是同样不行。

git-sunyata commented 5 months ago

楼上写的非常详细了,1-4步,如果没问题,swap就应该启动完成了。。。如果不重启,会一直有效

盲猜楼主说的错误,应该发生在第3或者第4步。。。这个错误第一次见,,不熟,无法提供帮助了。。。等待有能力者解决

(其实,修改fstab和rc-update,只是保证启动时swap也跟着启动起来。。。。。。rc-update的命令是以前踩的雷,Debian系列修改完fstab就行,alpine需要加rc-update命令; 参考过官方文档,好像独立整出个分区做swap,修改完fstab就行了。。。自己实操的,后期整的/swapfile,在现有的分区里,无法直接自动启动,需要rc一下。。。具体原理,好用之后,也就没深究)

bin456789 commented 4 months ago

dd if=/dev/zero of=/swapfile bs=1024 count=2097152 chmod 600 /swapfile mkswap /swapfile

echo '/swapfile swap swap sw 0 0' >>/etc/fstab

rc-update add swap

我测试了,没问题啊