Upgraded to 12.3 from 12.2 and have problem with /usr becoming huge

Upgraded my system to 12.3 from 12.2, I am having a problem with usr becoming huge, I set a root size of 20 gb originally , seemed to be ok in 12.2

Now the usr sub-directory has become 10gb or more, don’t know but nfs seems to be doing some form of journal creation in there. Running with 89mb free goes up to 300mb free sometimes

So is there some way to enlarge the root system? DD to new larger partition … suggestions?

without rebuilding the whole machine.

Ideas?

Brian

ercoupeflyer wrote:
>
> Upgraded my system to 12.3 from 12.2, I am having a problem with usr
> becoming huge, I set a root size of 20 gb originally , seemed to be ok
> in 12.2
>
> Now the usr sub-directory has become 10gb or more, don’t know but nfs
> seems to be doing some form of journal creation in there. Running with
> 89mb free goes up to 300mb free sometimes
>
> So is there some way to enlarge the root system? DD to new larger
> partition … suggestions?
>
> without rebuilding the whole machine.
>
> Ideas?
>
> Brian
>
>
Are you sure you are using all the applications on your machine? It
seems most of the application binaries sit inside /usr.

This may help you in identifying top 50 directories by size.
Icons themes (/usr/share/icons) on my system occupy 360MB . That is huge
amount of space :slight_smile:

du -x /usr | sort -n | tail -n 50 


GNOME 3.6.2
openSUSE Release 12.3 (Dartmouth) 64-bit
Kernel Linux 3.7.10-1.16-desktop

On 2013-10-12 04:46, ercoupeflyer wrote:
> So is there some way to enlarge the root system? DD to new larger
> partition … suggestions?

It is possible to put /usr on a different partition. This is nowdays not
often done, but years ago it was quite common. It is still supported. I
think it is the easiest alternative.

Other partitions can be moved with even less hassle, but they are
typically small: /srv, /usr/local, /opt… in some cases they are big or
have important reasons to put on their own partition (a server). The
/tmp partition is also a classic. Or /var, but that one is tricky.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

Update,

Ok, yes I have always put tmp etc as separate partitions but not this time so moved /tmp to separate partition, The simple fix for me this moment was to move /var/tmp as well to a separate partition which returned 1.9gb to my root partition. This was easily done and caused no side effects. It looks like the latest version of KDE latest uses this tmp area instead of /tmp for all its work(Or maybe it has for a while but), which seems to be huge when you have a few people working on the machine. 

Moving var or usr( usr definatly not supported by latest systems) seems almost impossible without re-build of machine.

It also looks like nfs v4 is creating some sort of journal in /usr/lib/nfs/ looks big sometimes does anyone know about this? should I mount a partition for this if its getting big?


I did this to fix system

    used yast to create 10gb partitions for /tmp and /usr/tmp 
    told partition to mount at /tmp and /var/tmp respectivly
    at console did telinit 1
    give password to logon
    umount /tmp and /var/tmp  --- need to do this as above mount caused hidden files
    rm all files from both
    mount /tmp and /var/tmp
    telinit 5

My solution but not sure if this is good practice, any thoughts

Thanks for your suggestions!

Brian

Not good IMHO. If you run into trouble (this may be in unsuspected areas), nobody will know what you changed on the system.
Rather have a look at /usr, Under normal conditions 20GB should be enough for root. Have a look at what’s installed, in the software manager you can set the order by clicking on the column headers for Size.

I have not run into any issues, Have tested all areas that created tmp files in here /usr/tmp, there is also a link to this from another sub directory, this change is now documented in the machine configuration for this area, in the future all var subsystems will be created on separate partition with some extra storage allocated per user.

fstab entries were created for this change by yast, so rebooting works fine, and mounts changed systems correctly.

My surprise was the amount of space each cache that is created for a user requires for KDE.4.10 . On this system, 100mb to 300mb per user, not sure just what is in this but that will have to now be calculated carefully to support the number of users on this ltsp system, will be using 300mb in all user space calculations for this filesystem in the future. 10 users 3gb etc.

What I did as indicated in previous post was a quick fix to allow the system, which had started to fail (out of space errors for many applications and system processes).

Maybe the KDE guys can provide some details and ways to reduce kde’s space requirements.

Thanks

Brian

The Plasma theme cache takes up 80 MB per theme and user, see also here: http://forum.kde.org/viewtopic.php?f=22&t=96677.

But AFAIK with sparse files it doesn’t really take up that much space in reality, since there are empty areas in it (it’s just a memory dump to speed up things).

But /var/tmp/ should be cleared out automatically every 30 days on a default installation.
You can change that of course, see here:
https://www.suse.com/releasenotes/x86_64/openSUSE/12.3/#sec.123.systemd-tmpdir

One more detail, the KDE cache does not seem to be deleted when the user logs out.

WIll look into this, Thanks!

Brian

Well, if it were deleted on logout, it wouldn’t make sense to create it in the first place… :wink:

On 2013-10-12 16:26, ercoupeflyer wrote:

> Moving var or usr( usr definatly not supported by latest systems)
> seems almost impossible without re-build of machine.

Of course usr can be moved, and without rebuilding the machine.

> It also looks like nfs v4 is creating some sort of journal in
> /usr/lib/nfs/ looks big sometimes does anyone know about this? should I
> mount a partition for this if its getting big?

I can’t check on my current machine. Next week yes.

> I did this to fix system
>
> used yast to create 10gb partitions for /tmp and /usr/tmp
> told partition to mount at /tmp and /var/tmp respectivly
> at console did telinit 1
> give password to logon
> umount /tmp and /var/tmp — need to do this as above mount
> caused hidden files
> rm all files from both
> mount /tmp and /var/tmp
> telinit 5
>
> My solution but not sure if this is good practice, any thoughts

The normal procedure is - say for usr

Create mountpoint /usrnew and mount new partition.
Copy all usr to usrnew.
Reboot to a live system
Rename /usr to /oldusr
Change fstab to mount the new partition on /usr, not /usrnew
Reboot.

Maybe, mkinitrd has to be run as well (chrooted).


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

I guess

:)lol!

I will try this next week with initrd,

I already tried to do the first part of your suggestion, create usrnew, copy from usr, boot live, rename, move usr to usrold, change fstab, reboot, it failed, could not even get past initial load.

But I did not do initrd, how do I do that and have /usr mounted early?

Thanks
Brian

On 2013-10-13 14:36, ercoupeflyer wrote:

>
> I will try this next week with initrd,
>
> I already tried to do the first part of your suggestion, create usrnew,
> copy from usr, boot live, rename, move usr to usrold, change fstab,
> reboot, it failed, could not even get past initial load.
>
> But I did not do initrd, how do I do that and have /usr mounted early?

Basically, it means booting from a live or another partition, then mount
your system, say under /mnt:


/mnt/
/mnt/usr

Then you do:


chroot /mnt
mkinitrd

That should be all. The initrd archive keeps a copy of the fstab and
other files. Notice that /usr is not mounted early; instead, all needed
programs and libraries for booting are inserted into initrd.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

On 2013-10-13 14:36, ercoupeflyer wrote:
> I already tried to do the first part of your suggestion, create usrnew,
> copy from usr, boot live, rename, move usr to usrold, change fstab,
> reboot, it failed, could not even get past initial load.

Forgot to mention.

I did not say to delete /usr, but move to /oldusr, because if things do
not work, you can easily revert the changes.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

Should I be mounting my root here with the new /usr mounted on /mnt/myroot/usr

for example?


/mnt/myroot
/mnt/myroot/usr
/mnt/myroot/home
/mnt/myroot/tmp
/mnt/myroot/var/tmp
/mnt/myroot/srv

chroot /mnt/myroot
mkinitrd

Sorry just want to be very clear before doing this
Have not done this before

Thanks
Brian

On 2013-10-14 15:56, ercoupeflyer wrote:

> Should I be mounting my root here with the new /usr mounted on
> /mnt/myroot/usr

Your new usr partition must be mounted properly under the main root
partition:

/mnt → main partition
/mnt/usr → separate usr partition

and it must be listed in fstab as “/usr”, Otherwise, mkinitrd will not
know what to do.

>
> for example?
>
>
> Code:
> --------------------
>
> /mnt/myroot
> /mnt/myroot/usr
> /mnt/myroot/home
> /mnt/myroot/tmp
> /mnt/myroot/var/tmp
> /mnt/myroot/srv
>
> chroot /mnt/myroot
> mkinitrd
>
> --------------------

That’s right, you got it.

> Sorry just want to be very clear before doing this
> Have not done this before

Don’t worry: as long as you don’t delete the old usr, you can go back to
things as they were before.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))