/run 空间不足

/run 空间不足

在 Ubuntu Precise 上,/run 中的空间不足:

admin@foo:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        19G  6.6G   12G  38% /
udev             10M  8.0K   10M   1% /dev
none             50M   40M   11M  79% /run
none            5.0M     0  5.0M   0% /run/lock
none            249M     0  249M   0% /run/shm

我应该分配更多吗?怎么分配?

编辑:这是我的 fstab:

admin@foo:~$ cat /etc/fstab
proc            /proc       proc    defaults    0 0
/dev/sda1       /           ext3    defaults,errors=remount-ro,noatime    0 1
/dev/sda2       none        swap    sw          0 0

答案1

在一个在 Ask Ubuntu 上发帖科里登特建议一个可能的解决方法:

mount向文件中添加命令/etc/rc.local

mount -t tmpfs tmpfs /run -o remount,size=85M

确保脚本exit 0在成功时将返回“ ”,在出错时将返回任何其他值。(摘自文件。)

答案2

我认为没有必要增加 /run 的大小,但如果确实需要增加,请尝试编辑 /etc/fstab 文件。所有挂载点和大多数分区都列在那里。如果您的 /run 分区是 tmpfs(至少根据https://askubuntu.com/questions/57297/why-has-var-run-been-migrated-to-run,在按照这些说明操作之前我会确认)那么您可以简单地将 /run 挂载的 fstab 行更改为类似于以下内容:

none /dev/shm tmpfs defaults,size=8G 0 0

看看大小是如何在 之后声明的defaults?尝试这样做。您也可以使用兆字节,方法是使用 M:

none /dev/shm tmpfs defaults,size=100M 0 0

此后重新启动计算机,更改就会生效。

编辑:划掉,Ubuntu 似乎run使用 /etc/init 和 /etc/init.d 中的文件创建分区,而不是通过 fstab。您必须查看这些文件并找到它用来run手动创建和编辑它的 mount 命令。我现在没有可以测试这个的盒子,但请尝试运行这个:

find /etc/init* -type f | xargs grep "mount"

或者

find /etc/init* -type f | xargs grep "run"

如果它是通过 bash 脚本安装的,那么它应该找到执行安装的文件和行。

答案3

临时增加tmpfs文件系统

1)/etc/fstab使用vi或您选择的任何文本编辑器打开,

2)找到该行/dev/shm并使用 tmpfs size 选项来指定预期大小,

e.g. 512MB:
tmpfs      /dev/shm      tmpfs   defaults,size=512m   0   0

e.g. 2GB:
tmpfs      /dev/shm      tmpfs   defaults,size=2g   0   0

然后

mount -o remount /dev/shm

答案4

由于 journald.conf 配置错误,我出现了此错误,我使用了 Storage=volatile 和 RuntimeMaxUse=1G,而 /run 的大小只有 200M。/run 分区是内存分区。Storage=volatile 告诉 journald 将日志存储在内存中的 /run/log/journal 中,并且使用 RuntimeMaxUse=1G 我们很容易得到 >200M 日志溢出。

以“System”为前缀的选项适用于存储在持久文件系统(更具体地说是 /var/log/journal)上的日志文件。以“运行时”适用于存储在易失性内存文件系统中的日志文件,更具体地说是 /run/log/journal

- 从journald.conf 文档

对我来说,解决方案是使用以下命令配置 journald.conf:

[Journal]
Storage=persistent
RuntimeMaxUse=50M
SystemMaxUse=1G

更多细节:

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           199M  199M    0M 100% /run

$ du -sh /run/log/journal
199.0M  /run/log/journal

$ cat /etc/systemd/journald.conf

[Journal]
Storage=volatile
RuntimeMaxUse=1G

相关内容