Hi,
I am using Fedora-19-Alpha with nilfs2 on /. While everything worked great with Fedora 17, the updated version of yum also check for free inodes before executing the transaction:
Transaction check error: installing package ..... needs 40 inodes on the / filesystem
Which is just plain wong in case of nilfs, as it has no inode limit.
Is there any way to disable that check? diskspacecheck=0 in /etc/yum.conf didn't help unfortunately :/
Thank you in advance, Clemens
Hi again,
I found out that the issue is within rpm, not yum. When installing rpm packages with the "--ignoresize" option, rpm installs fine while otherwise it complains about not enough available inodes.
What I am looking for is a way to make yum pass "--ignoresize" to rpm automatically. Is this possible somehow?
Thank you in advance, Clemens
2013/4/24 Clemens Eisserer linuxhippy@gmail.com:
Hi,
I am using Fedora-19-Alpha with nilfs2 on /. While everything worked great with Fedora 17, the updated version of yum also check for free inodes before executing the transaction:
Transaction check error: installing package ..... needs 40 inodes on the / filesystem
Which is just plain wong in case of nilfs, as it has no inode limit.
Is there any way to disable that check? diskspacecheck=0 in /etc/yum.conf didn't help unfortunately :/
Thank you in advance, Clemens
On 04/24/2013 03:06 PM, Clemens Eisserer wrote:
Hi again,
I found out that the issue is within rpm, not yum. When installing rpm packages with the "--ignoresize" option, rpm installs fine while otherwise it complains about not enough available inodes.
What I am looking for is a way to make yum pass "--ignoresize" to rpm automatically. Is this possible somehow?
I'd recommend you to file a bug against rpm and leave it to the rpm-maintainer to respond.
However, I'd guess the issue you are facing actually is an issue with some fs-relates syscall underneath misbehaving.
Ralf
Hi Ralf,
I'd recommend you to file a bug against rpm and leave it to the rpm-maintainer to respond.
Well, I guess that would take its time ... but I would like to have a useable system now ;)
However, I'd guess the issue you are facing actually is an issue with some fs-relates syscall underneath misbehaving.
Actually its not misbehaving, its just about different expectations - and RPM even provides an option (--ignoresize) to turn off those checks. However, I haven't found a way to make yum pass that option to rpm, so for now I am forced to install RPMs manually instead of using yum :(
Thanks, Clemens
Am 24.04.2013 16:16, schrieb Clemens Eisserer:
I'd recommend you to file a bug against rpm and leave it to the rpm-maintainer to respond.
Well, I guess that would take its time ... but I would like to have a useable system now ;)
However, I'd guess the issue you are facing actually is an issue with some fs-relates syscall underneath misbehaving.
Actually its not misbehaving, its just about different expectations - and RPM even provides an option (--ignoresize) to turn off those checks. However, I haven't found a way to make yum pass that option to rpm, so for now I am forced to install RPMs manually instead of using yum :(
are you sure it is a good idea to chosse a non-supported filesystem for the ROOTFS at all?
Clemens Eisserer <linuxhippy <at> gmail.com> writes:
Hi again,
I found out that the issue is within rpm, not yum. When installing rpm packages with the "--ignoresize" option, rpm installs fine while otherwise it complains about not enough available inodes.
What I am looking for is a way to make yum pass "--ignoresize" to rpm automatically. Is this possible somehow?
Thank you in advance, Clemens
2013/4/24 Clemens Eisserer <linuxhippy <at> gmail.com>:
<SNIP> As a workaround you can set rpm options through /etc/rpmrc. You'll have to do the research to find out how to set it but it would then be used for all rpm transactions.
Cheers, Dave
On 24.04.2013 16:58, David G. Miller wrote:
Clemens Eisserer <linuxhippy <at> gmail.com> writes:
[…]
What I am looking for is a way to make yum pass "--ignoresize" to rpm automatically. Is this possible somehow?
Thank you in advance, Clemens
2013/4/24 Clemens Eisserer <linuxhippy <at> gmail.com>:
<SNIP> As a workaround you can set rpm options through /etc/rpmrc. You'll have to do the research to find out how to set it but it would then be used for all rpm transactions.
Cheers, Dave
rpmbuild != rpm :)
poma
On 24.04.2013 16:36, Clemens Eisserer wrote:
Hi Harald,
are you sure it is a good idea to chosse a non-supported filesystem for the ROOTFS at all?
If I wouldn't be - I wouldn't have spent quite some time to get it working...
Do you know a method to pass command-line arguments to RPM through yum?
Regards, Clemens
When you understand the very essence of the yum, you won't ask it in the first place. :)
poma
On 04/24/2013 03:35 PM, Clemens Eisserer wrote:
Hi,
I am using Fedora-19-Alpha with nilfs2 on /. While everything worked great with Fedora 17, the updated version of yum also check for free inodes before executing the transaction:
Transaction check error: installing package ..... needs 40 inodes on the / filesystem
Rpm was always supposed to check for sufficient inodes in addition to disk space but that check has been broken for 10+ years. In rpm >= 4.11 it actually does something again, hence the different behavior.
Which is just plain wong in case of nilfs, as it has no inode limit.
What does 'stat -f /' return on that system?
Is there any way to disable that check? diskspacecheck=0 in /etc/yum.conf didn't help unfortunately :/
Yum's 'diskspacecheck=0' appears to be broken, it wouldn't hurt to file a bug about it. In addition to it being apparently broken, it doesn't even try to enable the inode problem filtering which would be needed in your case.
- Panu -
On 04/24/2013 10:40 PM, Panu Matilainen wrote:
On 04/24/2013 03:35 PM, Clemens Eisserer wrote:
Hi,
I am using Fedora-19-Alpha with nilfs2 on /. While everything worked great with Fedora 17, the updated version of yum also check for free inodes before executing the transaction:
Transaction check error: installing package ..... needs 40 inodes on the / filesystem
Rpm was always supposed to check for sufficient inodes in addition to disk space but that check has been broken for 10+ years. In rpm >= 4.11 it actually does something again, hence the different behavior.
Which is just plain wong in case of nilfs, as it has no inode limit.
What does 'stat -f /' return on that system?
Is there any way to disable that check? diskspacecheck=0 in /etc/yum.conf didn't help unfortunately :/
Yum's 'diskspacecheck=0' appears to be broken, it wouldn't hurt to file a bug about it. In addition to it being apparently broken, it doesn't even try to enable the inode problem filtering which would be needed in your case.
Well, duh. It seems that it was me who broke yum's diskspacecheck=0 with a seemingly completely unrelated change so I suppose I get to fix it too. As a first-aid, this seems to resurrect it (and yes I'll take this to yum upstream too):
--- a/yum/depsolve.py +++ b/yum/depsolve.py @@ -150,6 +150,10 @@ class Depsolve(object): else: self.logger.critical(_('Invalid tsflag in config file: %s'), fl
+ if not self.conf.diskspacecheck: + self._add_prob_flags(rpm.RPMPROB_FILTER_DISKSPACE, + rpm.RPMPROB_FILTER_DISKNODES) + probfilter = 0 for flag in self.tsInfo.probFilterFlags: probfilter |= flag
- Panu -
poma <pomidorabelisima <at> gmail.com> writes:
On 24.04.2013 16:58, David G. Miller wrote:
Clemens Eisserer <linuxhippy <at> gmail.com> writes:
[…]
What I am looking for is a way to make yum pass "--ignoresize" to rpm automatically. Is this possible somehow?
Thank you in advance, Clemens
2013/4/24 Clemens Eisserer <linuxhippy <at> gmail.com>:
<SNIP> As a workaround you can set rpm options through /etc/rpmrc. You'll have to do the research to find out how to set it but it would then be used for all rpm transactions.
Cheers, Dave
rpmbuild != rpm :)
poma
Actually, /etc/rpmrc is used by rpm; not rpmbuild. Frpmthe rpm man page:
FILES rpmrc Configuration /usr/lib/rpm/rpmrc /usr/lib/rpm/redhat/rpmrc /etc/rpmrc ~/.rpmrc
and from /usr/lib/rpm/rpmrc:
[root@bend ~]# cat /usr/lib/rpm/rpmrc #/*! \page config_rpmrc Default configuration: /usr/lib/rpm/rpmrc # \verbatim # # This is a global RPM configuration file. All changes made here will # be lost when the rpm package is upgraded. Any per-system configuration # should be added to /etc/rpmrc, while per-user configuration should # be added to ~/.rpmrc. # #############################################################
Both rpm and rpmbuild use the same rc files. Probably not the best design but take it up with the rpm project folks.
Cheers, Dave
On 24.04.2013 22:51, David G. Miller wrote:
poma <pomidorabelisima <at> gmail.com> writes:
On 24.04.2013 16:58, David G. Miller wrote:
Clemens Eisserer <linuxhippy <at> gmail.com> writes:
[…]
What I am looking for is a way to make yum pass "--ignoresize" to rpm automatically. Is this possible somehow?
Thank you in advance, Clemens
2013/4/24 Clemens Eisserer <linuxhippy <at> gmail.com>:
<SNIP> As a workaround you can set rpm options through /etc/rpmrc. You'll have to do the research to find out how to set it but it would then be used for all rpm transactions.
Cheers, Dave
rpmbuild != rpm :)
poma
Actually, /etc/rpmrc is used by rpm; not rpmbuild. Frpmthe rpm man page:
FILES rpmrc Configuration /usr/lib/rpm/rpmrc /usr/lib/rpm/redhat/rpmrc /etc/rpmrc ~/.rpmrc
man 8 rpmbuild :) … GENERAL OPTIONS … --rcfile FILELIST … The default FILELIST is
/usr/lib/rpm/rpmrc:/usr/lib/rpm/redhat/rpmrc:/etc/rpmrc:~/.rpmrc. … FILES rpmrc Configuration /usr/lib/rpm/rpmrc /usr/lib/rpm/redhat/rpmrc /etc/rpmrc ~/.rpmrc …
and from /usr/lib/rpm/rpmrc:
[root@bend ~]# cat /usr/lib/rpm/rpmrc #/*! \page config_rpmrc Default configuration: /usr/lib/rpm/rpmrc # \verbatim # # This is a global RPM configuration file. All changes made here will # be lost when the rpm package is upgraded. Any per-system configuration # should be added to /etc/rpmrc, while per-user configuration should # be added to ~/.rpmrc. # #############################################################
You left out what is actually used - *optflags* & *arch* directives - to guess what. :)
Both rpm and rpmbuild use the same rc files. Probably not the best design but take it up with the rpm project folks.
For some of the 'rpm' command options - *maybe* once upon a time. :) It doesn't work even with the RPM version 4.3.3 - EL4. ;)
i.e. - RPM version 4.10.3.1 http://www.rpm.org/max-rpm/s1-rpm-install-additional-options.html#S2-RPM-INS...
/etc/rpmrc: excludedocs: 1
# rpm -i dstat-0.7.2-9.fc18.noarch.rpm error: bad option 'excludedocs' at /etc/rpmrc:1
# rpm -e dstat error: bad option 'excludedocs' at /etc/rpmrc:1
# yum install ./dstat-0.7.2-9.fc18.noarch.rpm error: bad option 'excludedocs' at /etc/rpmrc:1 …
# yum erase dstat error: bad option 'excludedocs' at /etc/rpmrc:1 …
But do work with i.e.
/etc/rpm/macros.excludedocs: %_excludedocs 1
# rpm -qs dstat | grep "not installed" not installed /usr/share/doc/dstat-0.7.2 … not installed /usr/share/man/man1/dstat.1.gz
or
/etc/yum.conf: tsflags=nodocs
Take into account that certain(rpm) directives don't work that way, anyway.
poma
On 04/24/2013 10:40 PM, Panu Matilainen wrote:
On 04/24/2013 03:35 PM, Clemens Eisserer wrote:
Which is just plain wong in case of nilfs, as it has no inode limit.
What does 'stat -f /' return on that system?
Well this is a strange beast:
[root@turre mnt]# stat -f . File: "." ID: 70100000000 Namelen: 255 Type: nilfs Block size: 4096 Fundamental block size: 4096 Blocks: Total: 49151 Free: 40960 Available: 24576 Inodes: Total: 2 Free: 0 [root@turre mnt]# touch 1 [root@turre mnt]# stat -f . File: "." ID: 70100000000 Namelen: 255 Type: nilfs Block size: 4096 Fundamental block size: 4096 Blocks: Total: 49151 Free: 40960 Available: 24576 Inodes: Total: 3 Free: 0 [root@turre mnt]# touch 2 [root@turre mnt]# stat -f . File: "." ID: 70100000000 Namelen: 255 Type: nilfs Block size: 4096 Fundamental block size: 4096 Blocks: Total: 49151 Free: 40960 Available: 24576 Inodes: Total: 4 Free: 0 [root@turre mnt]#
Advertising unlimited inodes with 0 available is an ... interesting choice. Chances are rpm is not the only thing getting upset by that.
- Panu -