VMware扩展Ubuntu磁盘,Swap故障:Cannot allocate memory

前言

所有步骤都是实际操作有效的,作记录及给大家一些参考。

安装硬盘分区管理工具gparted

先打开终端,输入su,再输入密码使用root

apt-get install gparted
# 启动工具
gparted

处理swap分区

1G的swap
默认情况下,/dev/sda2及其/dev/sda5是锁定状态(像/dev/sda1一样有把钥匙)。上图示是已经swapoff掉了。
在锁定状态下,是无法删除的,并且在这工具内右键swapoff会报错误:Cannot allocate memory
处理办法,打开终端,并使用ROOT,执行以下命令:

# 查看正在使用的交换区
swapon -s

在这里插入图片描述

# 创建并拷贝/dev/zero到/home/swap
dd if=/dev/zero of=/home/swap bs=1024 count=512000
# 设置交换文件
mkswap /home/swap
# 启用交换分区
swapon /home/swap
# 停用交换分区
swapoff /dev/sda5
# 确认是否已成功(可选)
swapon -s

删除交换分区

在Gparted界面,在/dev/sda5右键,delete, 同理再删除/dev/sda2

重新调整/dev/sda1 的大小

点击/dev/sda1, 右键Resize

扩展分区大小
在vmware虚拟机内,我扩展给ubuntu的硬盘空间是50G,这里显示最大51199 MiB,预留下2G给交换分区,最终New size(MiB)设置为:49151 MiB (51199 - 2048),点击Resize确认按钮。

创建交换分区

在剩下的2G空间unallocated右键,New创建一个extended分区
在这里插入图片描述
再在这个extended的分区里new一个逻辑分区,file system选择为linux-swap,最后选择绿色的钩钩,完成保存。
在这里插入图片描述
结果图没有保存,最后New Partition #1变为/dev/sda2,交换分区变为/dev/sda5

改回交换分区为新创建的上述分区

# 启用新的交换分区
swapon /dev/sda5
# 停用原先创建的交换分区
swapoff /home/swap

最后

重启动一下虚拟机,删除掉gparted(可选), 删除/home/swap文件

apt-get remove gparted
rm -f /home/swap
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当出现"fork failed: cannot allocate memory"错误时,这通常表示系统内存不足以执行所需的操作。有几种方法可以解决这个问题。 首先,你可以通过运行"free -m"命令来查看系统内存的使用情况。关注"Mem"的"total"指标,表示总内存大小,"Used"表示已使用的内存,"buff/cache"表示缓存使用的内存,"swap"的"used"表示交换分区的使用情况。如果"swap"的"used"为0,表示未使用交换分区,这是正常情况。\[1\] 如果发现系统内存不足,你可以尝试创建一个swap分区来增加可用内存。可以按照以下步骤进行操作: 1. 运行"dd if=/dev/zero of=/var/swap.1 bs=1M count=1024"命令创建一个1GB大小的swap文件。 2. 运行"mkswap /var/swap.1"命令格式化swap文件。 3. 运行"swapon /var/swap.1"命令将swap分区挂载到文件系统中。\[2\] 创建swap分区后,再次运行"free -m"命令查看内存使用情况。然后尝试重新执行你的操作,例如"composer update"。 另外,如果问题是由于进程数过多导致的,你可以尝试修改最大进程数。可以按照以下步骤进行操作: 1. 运行"echo 1000000 > /proc/sys/kernel/pid_max"命令修改最大进程数。 2. 运行"echo 'kernel.pid_max=1000000' >> /etc/sysctl.conf"命令使修改永久生效。 3. 运行"sysctl -p"命令重新加载sysctl配置。\[3\] 这些方法应该能够解决"fork failed: cannot allocate memory"错误。如果问题仍然存在,请进一步检查系统资源使用情况,例如CPU和磁盘空间,并确保系统配置符合你的需求。 #### 引用[.reference_title] - *1* [centos7无法远程和登录,在线用户命令执行报错 fork failed :Cannot allocate memory](https://blog.csdn.net/edgar_t/article/details/107912328)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [安装composer后报错proc_open(): fork failed - Cannot allocate memory](https://blog.csdn.net/zhemejinnameyuanxc/article/details/90245502)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [fork failed: cannot allocate memory问题](https://blog.csdn.net/weixin_34112208/article/details/92394973)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值