[aur-general] yaourt - tmpfs error: No space left on device
Hi, I have been told on arch-general mailing list that that this problem should be post here too, because this is an AUR problem. I'm trying to install icecat with yaourt but get always error: No space left on device. $ df -H Filesystem Size Used Avail Use% Mounted on /dev/sda3 66G 38G 26G 60% / tmpfs 3.2G 0 3.2G 0% /dev/shm tmpfs 3.2G 0 3.2G 0% /sys/fs/cgroup tmpfs 3.2G 3.2G 160k 100% /tmp tmpfs 627M 4.1k 627M 1% /run/user/1000 I have installed my arch linux on one partition only, on /dev/sda3. I tried to install icecat several times, moreover after a reboot too, but always get this error message. I tried also to setup yaourt and makepkg: /etc/yaourtrc TMPDIR="/tmp" /etc/makepkg.conf BUILDDIR=/tmp/makepkg Still get the above error. $ free -h total used free shared buffers cached Mem: 5.8G 4.2G 1.6G 2.9G 64M 3.2G -/+ buffers/cache: 928M 4.9G Swap: 511M 0B 511M /etc/fstab /dev/sda3 / ext4 rw,relatime,data=ordered 0 1 /dev/cdrom /media/cdrom iso9660 ro,user,noauto,unhide 0 0 /swapfile none swap defaults 0 0 On the arch-general mailing list I get the following advices. * From Daniel Micay: Stop building a very large package in a filesystem of very limited size. The BUILDDIR option is unset by default, and if you leave it unset `makepkg` will work fine. * From me: Before I edited the file: /etc/makepkg.conf I tried to install with yaourt the icecat package but get the same error message. That is way I edited the /etc/makepkg.conf file and set the BUILDDIR option to: BUILDDIR=/tmp/makepkg So, leaving it unset doesn't work here. * From Daniel Micay: Leave it unset and build with makepkg directly.
Set BUILDDIR=/var/tmp instead, /tmp is filling up.
Or just use the *default* of not building in a global directory... especially /tmp which is a ramdisk. * From Mark Lee: I just looked at yaourt's yaourtrc and it's clear that it's storing its temporary files in /tmp. Building with yaourt means building in tmpfs which would for large compilation jobs can exhaust the tmpfs file system. Either extend the size of /tmp by specifying a larger size when mounting in /tmp (using fstab or just command line) or set a different direcotry via yaourt --tmp <temporary directory>. This should really be posted to the AUR mailing list since it's an AUR issue. I hope this helps. * From Ralf Mardorf: [rocketmouse@archlinux ~]$ grep tmp /etc/fstab #tmpfs /tmp tmpfs nodev,nosuid,size=3G 0 0 It's commented out, but I once had to use it and it solved the issue for me. * From John Broggs: The best way to overcome this error is to allocate the space you need in fstab as per the instructions on the fstab page on ArchWiki. * From Bigby James: systemd will allocate /tmp to a ramdisk by default, whether you specify it or not. Specifying tmpfs in /etc/fstab allows you to dictate how large the ramdisk is, but unless you explicitly stop systemd from mounting /tmp in RAM that's where it will go. I solve this problem by building icecat directly with makepkg. -- Regards from Pal
Hi, I had the same problem with some large packages. The solution is to make ~/tmp/yaourt and have in your ~/.yaourtrc set TMPDIR=/home/csanyipal/tmp/yaourt (if that's your username). If you use /tmp, then building will be faster, but everything will be in the memory drive (tmpfs 3.2G ... /tmp = in memory). That is better for smaller packages, but if you run chrome or firefox with lots of tabs and some more memory-intensive programs, you'll end up with the "no space left" message. Cheers o7 Filip 19.07.2014, 13:17, "Csányi Pál" <csanyipal@gmail.com>:
Hi,
I have been told on arch-general mailing list that that this problem should be post here too, because this is an AUR problem.
I'm trying to install icecat with yaourt but get always error: No space left on device.
$ df -H Filesystem Size Used Avail Use% Mounted on /dev/sda3 66G 38G 26G 60% / tmpfs 3.2G 0 3.2G 0% /dev/shm tmpfs 3.2G 0 3.2G 0% /sys/fs/cgroup tmpfs 3.2G 3.2G 160k 100% /tmp tmpfs 627M 4.1k 627M 1% /run/user/1000
I have installed my arch linux on one partition only, on /dev/sda3.
I tried to install icecat several times, moreover after a reboot too, but always get this error message.
I tried also to setup yaourt and makepkg: /etc/yaourtrc TMPDIR="/tmp"
/etc/makepkg.conf BUILDDIR=/tmp/makepkg
Still get the above error.
$ free -h
total used free shared buffers cached Mem: 5.8G 4.2G 1.6G 2.9G 64M 3.2G -/+ buffers/cache: 928M 4.9G Swap: 511M 0B 511M
/etc/fstab
/dev/sda3 / ext4 rw,relatime,data=ordered 0 1 /dev/cdrom /media/cdrom iso9660 ro,user,noauto,unhide 0 0 /swapfile none swap defaults 0 0
On the arch-general mailing list I get the following advices.
* From Daniel Micay: Stop building a very large package in a filesystem of very limited size. The BUILDDIR option is unset by default, and if you leave it unset `makepkg` will work fine.
* From me: Before I edited the file: /etc/makepkg.conf
I tried to install with yaourt the icecat package but get the same error message. That is way I edited the /etc/makepkg.conf file and set the BUILDDIR option to: BUILDDIR=/tmp/makepkg
So, leaving it unset doesn't work here.
* From Daniel Micay: Leave it unset and build with makepkg directly.
Set BUILDDIR=/var/tmp instead, /tmp is filling up.
Or just use the *default* of not building in a global directory... especially /tmp which is a ramdisk.
* From Mark Lee: I just looked at yaourt's yaourtrc and it's clear that it's storing its temporary files in /tmp. Building with yaourt means building in tmpfs which would for large compilation jobs can exhaust the tmpfs file system. Either extend the size of /tmp by specifying a larger size when mounting in /tmp (using fstab or just command line) or set a different direcotry via yaourt --tmp <temporary directory>.
This should really be posted to the AUR mailing list since it's an AUR issue. I hope this helps.
* From Ralf Mardorf: [rocketmouse@archlinux ~]$ grep tmp /etc/fstab #tmpfs /tmp tmpfs nodev,nosuid,size=3G 0 0
It's commented out, but I once had to use it and it solved the issue for me.
* From John Broggs: The best way to overcome this error is to allocate the space you need in fstab as per the instructions on the fstab page on ArchWiki.
* From Bigby James: systemd will allocate /tmp to a ramdisk by default, whether you specify it or not. Specifying tmpfs in /etc/fstab allows you to dictate how large the ramdisk is, but unless you explicitly stop systemd from mounting /tmp in RAM that's where it will go.
I solve this problem by building icecat directly with makepkg.
-- Regards from Pal
On 19/07, Филип Брчић wrote:
If you use /tmp, then building will be faster, but everything will be in the memory drive (tmpfs 3.2G ... /tmp = in memory). That is better for smaller packages, but if you run chrome or firefox with lots of tabs and some more memory-intensive programs, you'll end up with the "no space left" message.
The tmpfs has a fixed amount of RAM, so running chrome and firefox won't make a difference, his tmpfs is 3.2G and he used all of it up. -- Sincerely, Johannes Löthberg PGP Key ID: 3A9D0BB5
On 19/07, Johannes Löthberg wrote:
On 19/07, Филип Брчић wrote:
If you use /tmp, then building will be faster, but everything will be in the memory drive (tmpfs 3.2G ... /tmp = in memory). That is better for smaller packages, but if you run chrome or firefox with lots of tabs and some more memory-intensive programs, you'll end up with the "no space left" message.
The tmpfs has a fixed amount of RAM, so running chrome and firefox won't make a difference, his tmpfs is 3.2G and he used all of it up.
(That is, that’s what caused his current problem, using up the RAM other ways will also give you that error.) -- Sincerely, Johannes Löthberg PGP Key ID: 3A9D0BB5
Tmpfs has a fixed amount of desired RAM. But, if you have enough programs that use that same RAM it will start swapping on your swap drive (in his case only 512MB). Also, 3.2G is not nearly enough for large stuff (kdelibs, libreoffice, firefox, ...), since it has to hold both the source, the object files and the installed files. 19.07.2014, 13:43, "Johannes Löthberg" <johannes@kyriasis.com>:
On 19/07, Филип Брчић wrote:
If you use /tmp, then building will be faster, but everything will be in the memory drive (tmpfs 3.2G ... /tmp = in memory). That is better for smaller packages, but if you run chrome or firefox with lots of tabs and some more memory-intensive programs, you'll end up with the "no space left" message.
The tmpfs has a fixed amount of RAM, so running chrome and firefox won't make a difference, his tmpfs is 3.2G and he used all of it up.
-- Sincerely, Johannes Löthberg PGP Key ID: 3A9D0BB5
--tmp *?* [1] Regards, Ralf [1] -------- Forwarded Message ------ To: General Discussion about Arch Linux Subject: [Bulk] Re: [arch-general] yaourt - tmpfs error: No space left on device Date: Sat, 19 Jul 2014 15:08:51 +0200 /tmp being too small for building packages after a "standard" Arch Linux installation, in combination with yaourt using /tmp by default is a problem. A simple workaround is to run yaourt with --tmp /somewhere/with/enough/space. -- Best regards, Alexander Rødseth / xyproto
2014-07-19 20:04 GMT+02:00 Ralf Mardorf <info.mardorf@rocketmail.com>:
--tmp *?* [1]
Yes, see "man yaourt" and search for "tmp". - Alexander / xyproto
On 19/07, Csányi Pál wrote:
Hi,
I have been told on arch-general mailing list that that this problem should be post here too, because this is an AUR problem.
That isn't an AUR problem, no, that’s an yaourt error. If you want them to change the default build directory go talk to upstream, because this has absolutely nothing to do with the AUR. tmpfs 3.2G 3.2G 160k 100% /tmp Note the 100% used on /tmp.. -- Sincerely, Johannes Löthberg PGP Key ID: 3A9D0BB5
participants (5)
-
Alexander Rødseth
-
Csányi Pál
-
Johannes Löthberg
-
Ralf Mardorf
-
Филип Брчић