查看: 8476|回复: 11

RK3566 交换空间为0的问题

[复制链接]

1

主题

6

回帖

225

积分

中级会员

Rank: 3Rank: 3

积分
225
发表于 2022-5-30 13:53:02 | 显示全部楼层 |阅读模式

硬件型号:ROC-RK3566-PC V1.1
固件版本:ROC-RK3566-PC-UBUNTU18.04-GPT-20211201-1545
编译ros程序的时候在某些程序包指定进度处卡死,报内存错误,查看交换空间为0,在线等待设置方法,谢谢。
回复

使用道具 举报

22

主题

352

回帖

1898

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1898
QQ
发表于 2022-5-30 14:39:48 | 显示全部楼层
sudo dd if=/dev/zero of=swapfile bs=1G count=8
mkswap swapfile
sudo swapon swapfile
回复 支持 反对

使用道具 举报

1

主题

6

回帖

225

积分

中级会员

Rank: 3Rank: 3

积分
225
 楼主| 发表于 2022-5-30 14:54:25 | 显示全部楼层
之前用这个命令试过,还是不行,如下:

root@firefly:~# free -m
              总计         已用        空闲      共享    缓冲/缓存    可用
内存:        1969         267        1353           5         347        1671
交换:           0           0           0
root@firefly:~# swapon -s
root@firefly:~# dd if=/dev/zero of=/swapfile count=2048 bs=1M
记录了2048+0 的读入
记录了2048+0 的写出
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 14.1608 s, 152 MB/s
root@firefly:~# ls / | grep swapfile
swapfile
root@firefly:~#
root@firefly:~# chmod 600 /swapfile
root@firefly:~# ls -lh /swapfile
-rw------- 1 root root 2.0G 5月  27 02:47 /swapfile
root@firefly:~#
root@firefly:~# mkswap /swapfile
正在设置交换空间版本 1,大小 = 2 GiB (2147479552  个字节)
无标签, UUID=4d1599ed-68ee-4572-b6e8-ffd68bd34c98
root@firefly:~# swapon /swapfile
swapon: /swapfile:swapon 失败: 无效的参数
root@firefly:~#
root@firefly:~# free
              总计         已用        空闲      共享    缓冲/缓存    可用
内存:     2016348      274728       20096        5200     1721524     1711360
交换:           0           0           0
回复 支持 反对

使用道具 举报

22

主题

352

回帖

1898

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1898
QQ
发表于 2022-5-30 15:51:17 | 显示全部楼层
20629280 发表于 2022-5-30 14:54
之前用这个命令试过,还是不行,如下:

root@firefly:~# free -m

swapon /swapfile改成swapon swapfile试一下
回复 支持 反对

使用道具 举报

1

主题

6

回帖

225

积分

中级会员

Rank: 3Rank: 3

积分
225
 楼主| 发表于 2022-5-30 16:04:33 | 显示全部楼层
试了一下 还是不行:
firefly@firefly:~$ sudo dd if=/dev/zero of=swapfile bs=1G count=1
记录了1+0 的读入
记录了1+0 的写出
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 8.01742 s, 134 MB/s
firefly@firefly:~$ mkswap swapfile
mkswap: 打不开 swapfile: 权限不够
firefly@firefly:~$ sudo mkswap swapfile
mkswap: swapfile:不安全的权限 0644,建议使用 0600。
正在设置交换空间版本 1,大小 = 1024 MiB (1073737728  个字节)
无标签, UUID=42819505-bec6-49f9-987c-6b7108be8744
firefly@firefly:~$ sudo swapon swapfile
swapon: /home/firefly/swapfile:swapon 失败: 无效的参数
firefly@firefly:~$
回复 支持 反对

使用道具 举报

22

主题

352

回帖

1898

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1898
QQ
发表于 2022-5-30 16:18:48 | 显示全部楼层
20629280 发表于 2022-5-30 16:04
试了一下 还是不行:
firefly@firefly:~$ sudo dd if=/dev/zero of=swapfile bs=1G count=1
记录了1+0 的读 ...

。。。。。。。。。
添加交换分区大小都是这样的操作,
sudo swapoff swapfile
sudo rm -fr /swapfile
sudo rm -fr swapfile
sudo dd if=/dev/zero of=swapTest bs=1G count=1
sudo chmod 666 swapTest
sudo mkswap swapTest
sudo swapon swapTest

回复 支持 反对

使用道具 举报

1

主题

6

回帖

225

积分

中级会员

Rank: 3Rank: 3

积分
225
 楼主| 发表于 2022-5-30 16:28:32 | 显示全部楼层
试了还是不行,在电脑上可以,在这个3566开发板上就不行
firefly@firefly:~$ sudo swapoff swapfile
swapoff: swapfile:swapoff 失败: 没有那个文件或目录
firefly@firefly:~$ sudo rm -fr /swapfile
firefly@firefly:~$ sudo rm -fr swapfile
firefly@firefly:~$ sudo dd if=/dev/zero of=swapTest bs=1G count=1
记录了1+0 的读入
记录了1+0 的写出
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 7.96702 s, 135 MB/s
firefly@firefly:~$ sudo chmod 600 swapTest
firefly@firefly:~$ sudo mkswap swapTest
正在设置交换空间版本 1,大小 = 1024 MiB (1073737728  个字节)
无标签, UUID=f896171c-de4e-4203-9a54-15041128241f
firefly@firefly:~$ sudo swapon swapTest
swapon: /home/firefly/swapTest:swapon 失败: 无效的参数
firefly@firefly:~$
回复 支持 反对

使用道具 举报

22

主题

352

回帖

1898

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1898
QQ
发表于 2022-5-30 16:32:49 | 显示全部楼层
20629280 发表于 2022-5-30 16:28
试了还是不行,在电脑上可以,在这个3566开发板上就不行
firefly@firefly:~$ sudo swapoff swapfile
swap ...

输入试一下
sudo chmod 777 swapTest
sudo swapon swapTest
回复 支持 反对

使用道具 举报

1

主题

6

回帖

225

积分

中级会员

Rank: 3Rank: 3

积分
225
 楼主| 发表于 2022-5-30 16:55:57 | 显示全部楼层
还是不行,怎么办啊
firefly@firefly:~$ sudo chmod 777 swapTest
firefly@firefly:~$ sudo swapon swapTest
swapon: /home/firefly/swapTest:不安全的权限 0777,建议使用 0600。
swapon: /home/firefly/swapTest:swapon 失败: 无效的参数
回复 支持 反对

使用道具 举报

22

主题

352

回帖

1898

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1898
QQ
发表于 2022-5-30 17:20:42 | 显示全部楼层
20629280 发表于 2022-5-30 16:55
还是不行,怎么办啊
firefly@firefly:~$ sudo chmod 777 swapTest
firefly@firefly:~$ sudo swapon ...

前面步骤都是成功的,只有最后的出差,swapon -h或者man swapon查看它的使用手册,看一下在这个板子是要接什么参数
回复 支持 反对

使用道具 举报

1

主题

6

回帖

225

积分

中级会员

Rank: 3Rank: 3

积分
225
 楼主| 发表于 2022-5-31 11:25:04 | 显示全部楼层
命令输入进去似乎也没有什么有用的信息,继续等待解决方法。
firefly@firefly:~$ swapon -h

用法:
swapon [选项] [<指定>]

允许将设备和文件用于分页和交换。

选项:
-a, --all                启用 /etc/fstab 中的所有交换区
-d, --discard[=<policy>] 如果设备支持,启用 swap 丢弃
-e, --ifexists           自动跳过不存在的设备而不提示
-f, --fixpgsz            必要时重新初始化交换区
-o, --options <列表>     以英文逗号分隔的 swap 选项
-p, --priority <优先级>  指定交换设备的优先级
-s, --summary            显示已使用交换设备的摘要(已废弃)
     --show[=<列>]        以可自定义的表格形式打印摘要
     --noheadings         不打印表头(与 --show 合用)
     --raw                使用原生输出格式(与 --show 合用)
     --bytes              在 --show 输出中以字节数显示交换区大小
-v, --verbose                 详尽模式

-h, --help               display this help
-V, --version            display version

<spec> 参数:
-L <标签>              同 LABEL=<标签>
-U <uuid>              同 UUID=<uuid>
LABEL=<标签>           按交换区标签指定设备
UUID=<uuid>            按交换区 UUID 指定设备
PARTLABEL=<标签>       按分区标签指定设备
PARTUUID=<uuid>        按分区 UUID 指定设备
<设备>                 要使用设备的名称
<文件>                 要使用文件的名称

可用的丢弃策略类型(针对 --discard):
once          :只进行单次区域丢弃(swapon)
pages          :对释放的页在重新使用前丢弃
* 如果未选择策略,则两者都将启用。(默认)

Available output columns:
NAME   设备文件或分区路径
TYPE   设备的类型
SIZE   交换区大小
USED   已使用字节数
PRIO   交换优先级
UUID   swap uuid
LABEL  swap 标签

更多信息请参阅 swapon(8)。
firefly@firefly:~$ man swapon
没有 swapon 的手册页条目
当没有手册页时,可以用 man 7 undocumented 命令来寻求帮助。
firefly@firefly:~$ man 7 undocumented
在第 7 节中没有关于 undocumented 的手册页条目。
firefly@firefly:~$
回复 支持 反对

使用道具 举报

1

主题

6

回帖

225

积分

中级会员

Rank: 3Rank: 3

积分
225
 楼主| 发表于 2022-6-1 16:38:31 | 显示全部楼层
交换文件的位置需要在 /userdata/rootfs_overlay/ 内
如果要导出文件系统,要先把交换文件关闭并删掉,不然做出来的固件会有问题

问题已经解决 谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|风火轮WIKI|手机版|小黑屋|深圳风火轮团队 ( 粤ICP备17095099号 )

GMT+8, 2024-4-19 12:28 , Processed in 0.062213 second(s), 20 queries .

快速回复 返回顶部 返回列表
 
【客服1】 商务合作 15289193
【客服2】 业务洽谈 13257599
【客服3】 售前咨询 510313198
【邮箱】
smartfire@smartfire.cn