squashfs-sel tömörített és felcsatolt /usr/lib/python2.6 könyvtár kimountolása sikertelen [Megoldva]

 ( bzs | 2012. június 10., vasárnap - 14:39 )

Sziasztok.
Sok-sok nagyobb könyvtárat tömörítettem miniatűt netbookra squashfs-sel, majd az fstab varázslatait kihasználva rendszerindításkor be is töltém azokat.
Írtam egy scriptet, ami mindet egyszerre ki is mountolja, amikor rendszert akarok archiválni. Itt jött a gond.

Egyedül a python2.6 könyvtár nem akar umount-tal eltávolodni, arra hivatkozván, hogy valami használja azt.
Kiszedtem az fstab-ból, hogy megvizsgáljam, a fluxboxom vagy a terminálom eszi-e éppen, de nem.
Ha mountolom a pitonkönyvtárat, utána már kicsatolhatatlan a kicsike.

Ez miért van?
Mit indít el a python2.6 könyvtárszerkezete önállóan? Van valami démon, ami ha érzékel python-jelenlétet, akkor elindít valamit?

------
Íme a kimenet:

root[lib]# umount /usr/lib/python2.6
umount: /usr/lib/python2.6: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
root[lib]#

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

gondoltam az lsof-ot is ideírom:

root[lib]# lsof | grep python
wicd 1150 root txt REG 8,1 3236 127121 /usr/bin/python2.6
wicd 1150 root mem REG 7,6 104608 3796 /usr/lib/python2.6/lib-dynload/_ctypes.so
wicd 1150 root mem REG 7,6 6548 3321 /usr/lib/python2.6/site-packages/_dbus_glib_bindings.so
wicd 1150 root mem REG 7,6 213720 3750 /usr/lib/python2.6/lib-dynload/pyexpat.so
wicd 1150 root mem REG 7,6 9268 3781 /usr/lib/python2.6/lib-dynload/_random.so
wicd 1150 root mem REG 7,6 21828 3756 /usr/lib/python2.6/lib-dynload/math.so
wicd 1150 root mem REG 7,6 41336 3758 /usr/lib/python2.6/lib-dynload/itertools.so
wicd 1150 root mem REG 7,6 4420 3774 /usr/lib/python2.6/lib-dynload/_weakref.so
wicd 1150 root mem REG 7,6 136152 3323 /usr/lib/python2.6/site-packages/_dbus_bindings.so
wicd 1150 root mem REG 7,6 118604 3061 /usr/lib/python2.6/site-packages/gtk-2.0/gobject/_gobject.so
wicd 1150 root mem REG 7,6 25336 3798 /usr/lib/python2.6/lib-dynload/_collections.so
wicd 1150 root mem REG 7,6 26088 3753 /usr/lib/python2.6/lib-dynload/operator.so
wicd 1150 root mem REG 7,6 15672 3785 /usr/lib/python2.6/lib-dynload/_locale.so
wicd 1150 root mem REG 7,6 7980 3790 /usr/lib/python2.6/lib-dynload/_functools.so
wicd 1150 root mem REG 7,6 21220 3745 /usr/lib/python2.6/lib-dynload/strop.so
wicd 1150 root mem REG 7,6 58220 3069 /usr/lib/python2.6/site-packages/gtk-2.0/glib/_glib.so
wicd 1150 root mem REG 7,6 16308 3771 /usr/lib/python2.6/lib-dynload/binascii.so
wicd 1150 root mem REG 7,6 29768 3777 /usr/lib/python2.6/lib-dynload/_struct.so
wicd 1150 root mem REG 7,6 17492 3763 /usr/lib/python2.6/lib-dynload/fcntl.so
wicd 1150 root mem REG 7,6 19048 3747 /usr/lib/python2.6/lib-dynload/select.so
wicd 1150 root mem REG 7,6 15892 3742 /usr/lib/python2.6/lib-dynload/time.so
wicd 1150 root mem REG 8,1 1525472 190341 /usr/lib/libpython2.6.so.1.0
wicd 1150 root mem REG 8,1 12328 190339 /usr/lib/libpyglib-2.0-python.so.0.0.0
wicd 1150 root mem REG 7,6 17000 3768 /usr/lib/python2.6/lib-dynload/cStringIO.so
wicd-moni 1172 root txt REG 8,1 3236 127121 /usr/bin/python2.6
wicd-moni 1172 root mem REG 7,6 104608 3796 /usr/lib/python2.6/lib-dynload/_ctypes.so
wicd-moni 1172 root mem REG 7,6 16308 3771 /usr/lib/python2.6/lib-dynload/binascii.so
wicd-moni 1172 root mem REG 7,6 17492 3763 /usr/lib/python2.6/lib-dynload/fcntl.so
wicd-moni 1172 root mem REG 7,6 19048 3747 /usr/lib/python2.6/lib-dynload/select.so
wicd-moni 1172 root mem REG 7,6 213720 3750 /usr/lib/python2.6/lib-dynload/pyexpat.so
wicd-moni 1172 root mem REG 7,6 6548 3321 /usr/lib/python2.6/site-packages/_dbus_glib_bindings.so
wicd-moni 1172 root mem REG 7,6 9268 3781 /usr/lib/python2.6/lib-dynload/_random.so
wicd-moni 1172 root mem REG 7,6 21828 3756 /usr/lib/python2.6/lib-dynload/math.so
wicd-moni 1172 root mem REG 7,6 25336 3798 /usr/lib/python2.6/lib-dynload/_collections.so
wicd-moni 1172 root mem REG 7,6 17000 3768 /usr/lib/python2.6/lib-dynload/cStringIO.so
wicd-moni 1172 root mem REG 7,6 4420 3774 /usr/lib/python2.6/lib-dynload/_weakref.so
wicd-moni 1172 root mem REG 7,6 136152 3323 /usr/lib/python2.6/site-packages/_dbus_bindings.so
wicd-moni 1172 root mem REG 7,6 15892 3742 /usr/lib/python2.6/lib-dynload/time.so
wicd-moni 1172 root mem REG 7,6 118604 3061 /usr/lib/python2.6/site-packages/gtk-2.0/gobject/_gobject.so
wicd-moni 1172 root mem REG 7,6 41336 3758 /usr/lib/python2.6/lib-dynload/itertools.so
wicd-moni 1172 root mem REG 7,6 29768 3777 /usr/lib/python2.6/lib-dynload/_struct.so
wicd-moni 1172 root mem REG 7,6 26088 3753 /usr/lib/python2.6/lib-dynload/operator.so
wicd-moni 1172 root mem REG 7,6 58220 3069 /usr/lib/python2.6/site-packages/gtk-2.0/glib/_glib.so
wicd-moni 1172 root mem REG 8,1 1525472 190341 /usr/lib/libpython2.6.so.1.0
wicd-moni 1172 root mem REG 7,6 15672 3785 /usr/lib/python2.6/lib-dynload/_locale.so
wicd-moni 1172 root mem REG 7,6 7980 3790 /usr/lib/python2.6/lib-dynload/_functools.so
wicd-moni 1172 root mem REG 7,6 21220 3745 /usr/lib/python2.6/lib-dynload/strop.so
wicd-moni 1172 root mem REG 8,1 12328 190339 /usr/lib/libpyglib-2.0-python.so.0.0.0
volti 1357 a txt REG 8,1 3236 127121 /usr/bin/python2.6
volti 1357 a mem REG 7,6 36932 3318 /usr/lib/python2.6/site-packages/alsaaudio.so
volti 1357 a mem REG 7,6 225344 3084 /usr/lib/python2.6/site-packages/gtk-2.0/atk.so
volti 1357 a mem REG 7,6 125928 3032 /usr/lib/python2.6/site-packages/gtk-2.0/pango.so
volti 1357 a mem REG 7,6 299132 3076 /usr/lib/python2.6/site-packages/gtk-2.0/gio/_gio.so
volti 1357 a mem REG 7,6 15096 3030 /usr/lib/python2.6/site-packages/gtk-2.0/pangocairo.so
volti 1357 a mem REG 7,6 21184 3074 /usr/lib/python2.6/site-packages/gtk-2.0/gio/unix.so
volti 1357 a mem REG 7,6 78344 3285 /usr/lib/python2.6/site-packages/cairo/_cairo.so
volti 1357 a mem REG 7,6 2111840 3050 /usr/lib/python2.6/site-packages/gtk-2.0/gtk/_gtk.so
volti 1357 a mem REG 7,6 118604 3061 /usr/lib/python2.6/site-packages/gtk-2.0/gobject/_gobject.so
volti 1357 a mem REG 7,6 58220 3069 /usr/lib/python2.6/site-packages/gtk-2.0/glib/_glib.so
volti 1357 a mem REG 7,6 16308 3771 /usr/lib/python2.6/lib-dynload/binascii.so
volti 1357 a mem REG 7,6 213720 3750 /usr/lib/python2.6/lib-dynload/pyexpat.so
volti 1357 a mem REG 7,6 26088 3753 /usr/lib/python2.6/lib-dynload/operator.so
volti 1357 a mem REG 8,1 12328 190339 /usr/lib/libpyglib-2.0-python.so.0.0.0
volti 1357 a mem REG 7,6 25336 3798 /usr/lib/python2.6/lib-dynload/_collections.so
volti 1357 a mem REG 7,6 7980 3790 /usr/lib/python2.6/lib-dynload/_functools.so
volti 1357 a mem REG 7,6 17000 3768 /usr/lib/python2.6/lib-dynload/cStringIO.so
volti 1357 a mem REG 7,6 21220 3745 /usr/lib/python2.6/lib-dynload/strop.so
volti 1357 a mem REG 7,6 15892 3742 /usr/lib/python2.6/lib-dynload/time.so
volti 1357 a mem REG 7,6 4420 3774 /usr/lib/python2.6/lib-dynload/_weakref.so
volti 1357 a mem REG 7,6 136152 3323 /usr/lib/python2.6/site-packages/_dbus_bindings.so
volti 1357 a mem REG 8,1 1525472 190341 /usr/lib/libpython2.6.so.1.0
volti 1357 a mem REG 7,6 17492 3763 /usr/lib/python2.6/lib-dynload/fcntl.so
volti 1357 a mem REG 7,6 19048 3747 /usr/lib/python2.6/lib-dynload/select.so
volti 1357 a mem REG 7,6 29768 3777 /usr/lib/python2.6/lib-dynload/_struct.so
volti 1357 a mem REG 7,6 15672 3785 /usr/lib/python2.6/lib-dynload/_locale.so
volti 1357 a mem REG 7,6 6548 3321 /usr/lib/python2.6/site-packages/_dbus_glib_bindings.so
wicd-clie 1358 a txt REG 8,1 3236 127121 /usr/bin/python2.6
wicd-clie 1358 a mem REG 7,6 104608 3796 /usr/lib/python2.6/lib-dynload/_ctypes.so
wicd-clie 1358 a mem REG 7,6 16112 3039 /usr/lib/python2.6/site-packages/gtk-2.0/gtk/glade.so
wicd-clie 1358 a mem REG 7,6 6548 3321 /usr/lib/python2.6/site-packages/_dbus_glib_bindings.so
wicd-clie 1358 a mem REG 7,6 213720 3750 /usr/lib/python2.6/lib-dynload/pyexpat.so
wicd-clie 1358 a mem REG 7,6 9268 3781 /usr/lib/python2.6/lib-dynload/_random.so
wicd-clie 1358 a mem REG 7,6 21828 3756 /usr/lib/python2.6/lib-dynload/math.so
wicd-clie 1358 a mem REG 7,6 41336 3758 /usr/lib/python2.6/lib-dynload/itertools.so
wicd-clie 1358 a mem REG 7,6 16308 3771 /usr/lib/python2.6/lib-dynload/binascii.so
wicd-clie 1358 a mem REG 7,6 17492 3763 /usr/lib/python2.6/lib-dynload/fcntl.so
wicd-clie 1358 a mem REG 7,6 136152 3323 /usr/lib/python2.6/site-packages/_dbus_bindings.so
wicd-clie 1358 a mem REG 7,6 19048 3747 /usr/lib/python2.6/lib-dynload/select.so
wicd-clie 1358 a mem REG 7,6 19284 3025 /usr/lib/python2.6/site-packages/gtk-2.0/pynotify/_pynotify.so
wicd-clie 1358 a mem REG 7,6 25336 3798 /usr/lib/python2.6/lib-dynload/_collections.so
wicd-clie 1358 a mem REG 7,6 17000 3768 /usr/lib/python2.6/lib-dynload/cStringIO.so
wicd-clie 1358 a mem REG 7,6 4420 3774 /usr/lib/python2.6/lib-dynload/_weakref.so
wicd-clie 1358 a mem REG 7,6 15892 3742 /usr/lib/python2.6/lib-dynload/time.so
wicd-clie 1358 a mem REG 7,6 225344 3084 /usr/lib/python2.6/site-packages/gtk-2.0/atk.so
wicd-clie 1358 a mem REG 7,6 125928 3032 /usr/lib/python2.6/site-packages/gtk-2.0/pango.so
wicd-clie 1358 a mem REG 7,6 299132 3076 /usr/lib/python2.6/site-packages/gtk-2.0/gio/_gio.so
wicd-clie 1358 a mem REG 7,6 15096 3030 /usr/lib/python2.6/site-packages/gtk-2.0/pangocairo.so
wicd-clie 1358 a mem REG 7,6 21184 3074 /usr/lib/python2.6/site-packages/gtk-2.0/gio/unix.so
wicd-clie 1358 a mem REG 7,6 78344 3285 /usr/lib/python2.6/site-packages/cairo/_cairo.so
wicd-clie 1358 a mem REG 7,6 2111840 3050 /usr/lib/python2.6/site-packages/gtk-2.0/gtk/_gtk.so
wicd-clie 1358 a mem REG 7,6 118604 3061 /usr/lib/python2.6/site-packages/gtk-2.0/gobject/_gobject.so
wicd-clie 1358 a mem REG 7,6 29768 3777 /usr/lib/python2.6/lib-dynload/_struct.so
wicd-clie 1358 a mem REG 7,6 26088 3753 /usr/lib/python2.6/lib-dynload/operator.so
wicd-clie 1358 a mem REG 7,6 58220 3069 /usr/lib/python2.6/site-packages/gtk-2.0/glib/_glib.so
wicd-clie 1358 a mem REG 8,1 1525472 190341 /usr/lib/libpython2.6.so.1.0
wicd-clie 1358 a mem REG 7,6 15672 3785 /usr/lib/python2.6/lib-dynload/_locale.so
wicd-clie 1358 a mem REG 7,6 7980 3790 /usr/lib/python2.6/lib-dynload/_functools.so
wicd-clie 1358 a mem REG 7,6 21220 3745 /usr/lib/python2.6/lib-dynload/strop.so
wicd-clie 1358 a mem REG 8,1 12328 190339 /usr/lib/libpyglib-2.0-python.so.0.0.0
root[lib]#

Akkor milyen kérdés maradt? Azt, hogy ki fogja az fs-t, megválaszoltad magadnak. A wicd (a wikipedia szerint Wireless Interface Connection Daemon, amelyet python-ban írtak) fut. A python processz(ek)nek van egy csomó csak olvasható, futtatható lapja, amelyek háttértára a squashfs-en található (a fő bináris és a rengeteg .so, amelyre vagy maga a python bináris hivatkozik, vagy kézi dlopen() --> mmap() útján lettek dinamikusan benyalva). Ezek a lapok memóriahiány esetén kihajíthatók (regular file backed + read only), szükség esetén a rendszer újra belapozza. Ezért nem lehet lecsatolni az fs-t. Az mmap() által létrehozott file-referencia file-referenciának számít.

Igazad volt, megoldottam.

Íme a kimountoló scriptemből a kritikus sor, ami kilövi a teljes pythont, magával rántva a wicd-t a démonjaival, zombijaival:

#!/bin/bash
dialog --backtitle "Mount vagy umount" \
--radiolist "Mi kell?" 10 40 2 \
"mount " "mount" on \
"umount " "umount" of 2>/tmp/sqshvalasz.temp

feladat=` cat /tmp/sqshvalasz.temp`
if [ $feladat -eq ""]; then
echo Mégsem
exit 0
fi

if [ $feladat -eq "umount"]
then
killall /usr/bin/python
fi
$feladat /usr/lib/python2.6

#...és jöb a többi feladatvégrehajtás a többi sorban
exit 0

----------

Érdekes, hogy a
if [ $feladat -eq "umount"]
sorokban, ahol az if-et kezdem, hobát jelez a script, bár mindent rendesen végrehajt.
Azt hiszem valami tájszólás lehet, csupán szépséghiba

Az -eq egészek összehasonlítására való. Volt itt panasz, hogy minek idézek mindig szabványokból, úgyhogy nézd meg valamelyik "manuálban".

(Csak óvatosan jelzem: nem panasz volt, csodálat.)

(offtopic)

nem panasz volt

Akkor bocs, túlreagáltam. Sok az idegeskedés a napokban.

Igen, arra.
De kínomban hagytam benne, mert az = jelre is hiba van jelezve, de megjegyzem, mindkét esetben lefut a script.

Tájszólások a bashban: basht nem linuxon tanultam, hanem BeOS-en. Ott kissé más a helyzet bizonyos téren, sokszor keveredek.

---
--- A gond akkor van, ha látszólag minden működik. ---
---

Idézet:
/tmp/sqshvalasz.temp

vigyázz! igaz a /tmp általában ragadós, tahát míg beleírod a kontrollfájlba a dialog kimentét, és míg beolvasod, nem írja át más.
viszont - és ezt nem ellenõrzöd - ha már létezett az a fájl és nem írod fölül, akkor nem várt eredményre futsz.

ez természetesen csak elméleti fejtegetés, valószínũleg a tárgyalt környezetben nem kell tartani ilyesmitõl. csak bashológiailag mondom :)

én egyébként a legritkább esetekben használok tempfájlt (akkor is trap "rm -v \"$tempfile\"" INT QUIT HUP ...)
általában minden megoldható processzhelyettesítéssel, vagy pipe-pal.

itt pl.
feladat=$(dialog --stdout ...)

sõt:

case "$(dialog --stdout ...)" in
mount) ... ;;
umount) ... ;;
*) ... ;;
esac

~~~~~~~~
http://www.youtube.com/watch?v=VbUVqODL1nE

Igazad van, case szerkezettel is megoldhattam volna.
A case használata nálam ritkább, nem szoktatam még rá magam, ez annak köszönhető, hogy a sinclair zx spectrum még bennem van.

A /tmp nálam fstabbal van csatolgatva:

tmpfs /dev/shm tmpfs defaults,size=1300M 0 0

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0

tmpfs /tmp/mc-root tmpfs defaults,noatime,mode=1777 0 0
tmpfs /tmp/mc-a tmpfs defaults,noatime,mode=1777 0 0

Tudom, barbár dolog, de ezzel arra gondoltam, hogy az ssd lemezt kímélem. 2GB RAM-mal megtehető, azt agyonírhatom.

---
--- A gond akkor van, ha látszólag minden működik. ---
---

marcsak azért is jó ramdrive-on tartani a tmp-ket, mert nekem volt olyanom, hogy annyira teleszemetelõdött (nem ismerték a trap rm -rf / ... izé ... trap rm tempfájl technikát) hogy fél óráig törölte reboot-kor a /tmp/** -ot.

~~~~~~~~
http://www.youtube.com/watch?v=VbUVqODL1nE

megnézem i is az a trap, még nem használtam.
a processzhelyettesítés meg a pipe is ismeretlen számomra, nézegetem.

Gondoltam leírom az egész folyamatot, mit műveltem, ha már valami meg is oldódott, legyen kerek.

Egy script, ami generál tömörítményeket, beírva az fstabba:

root[mnt]# cat dir2sqash.sh
#!/bin/bash

mit=`pwd $1`/$1
cucc=`echo $mit | sed "s/\//-/g"`
fajlnev=`echo /mnt/sqsh/$cucc | sed "s/\/-/\//g"`.sqsh

echo mit:
echo $mit
du -sh $mit
echo -------------
echo fajlnev:
echo $fajlnev
echo fstab:
echo "$fajlnev $mit squashfs ro,defaults 0 0 "
echo --------
echo rendben?
read rrrr

mksquashfs $mit $fajlnev

echo "$fajlnev $mit squashfs ro,defaults 0 0 " >>/etc/fstab

exit 0

-----------------
Tudom, randa, de fut.
Miután megvannak a tömörítményeim, bemásolgatom őket a /mnt/sqsh könyvtárba, mindegyiknek kiterjesztést adok .sqsh névvel, hogy tudjam, mik is ezek. Aztán törlöm a tömörítésre ítélt könyvtár teljes tartalmát, kilépek belőle, aztán mc-ben kiadom a paranncsot, pl.:
mount /usr/lib/python2.6
...és belépek megint a könyvtárba. Csoda: amit az előbb töröltem, az mind visszajött. Megpróbálok könyvtárat létrehozni, nem megy. Írásvédett, elronthatatlan piton! Ez a baba. Ha ezt minden veszélyes könyvtárammal végigviszem, egyedi lunixom van, amit még rútként is nehezen gúrok el.
Persze a csomagfrissítést kézzel végzem ugyebár, és az néha nagyobb figyelmet igényel, mindent ramdrájvosítani ideiglenesen stb.

Az fstab minden rendszerindításnál beolvassa a tömörítményeket, rendszerlassulást nem észleltem.

Ha teljes rendszermentést végzek, az sqsh-tömörítmények is rendesen olvasódnak' a tar-ral, mintha nem tömörítmények lennének, tehát nagy lesz az archivált rendszer.
De ha kimountolom a tömörített meghajtókat, mesés lesz a rendszervisszaállítás is.
A kimountolást és visszacsatolást az alábbi cucc végzi:

root[mnt]# cat mount-sqsh.sh
#!/bin/bash
#feladat="mount"

dialog --backtitle "Mount or umount" \
--radiolist "What...?" 10 40 2 \
"mount " "mount" on \
"umount " "umount" of 2>/tmp/sqshvalasz.temp

feladat=` cat /tmp/sqshvalasz.temp`
if [ $feladat -eq ""]; then
echo Mégsem
exit 0
fi

echo Megdolgozás...

echo $feladat ...

# kulonlegesek
$feladat /mnt/sdb1/Maps/gshhs && du -sh /mnt/sdb1/Maps/gshhs
$feladat /usr/local/share/McIDAS && du -sh /usr/local/share/McIDAS
$feladat /mnt/gib_iso && du -sh /mnt/gib_iso
#

$feladat /bin/grads-1.8sl11 && du -sh /bin/grads-1.8sl11
$feladat /home/a/Maps/mdr && du -sh /home/a/Maps/mdr
$feladat /home/a/Maps/navit/maps/sqsh && du -sh /home/a/Maps/navit/maps/sqsh
$feladat /home/a/Maps/wvs && du -sh /home/a/Maps/wvs
$feladat /opt/google && du -sh /opt/google
$feladat /opt/rkhunter-1.3.8 && du -sh /opt/rkhunter-1.3.8
$feladat /usr/doc && du -sh /usr/doc
$feladat /usr/info && du -sh /usr/info
$feladat /usr/lib/X11/xfig && du -sh /usr/lib/X11/xfig
$feladat /usr/lib/cinelerra && du -sh /usr/lib/cinelerra
$feladat /usr/lib/firefox-9.0.1 && du -sh /usr/lib/firefox-9.0.1
$feladat /usr/lib/flashplugin && du -sh /usr/lib/flashplugin
$feladat /usr/lib/gcc && du -sh /usr/lib/gcc
$feladat /usr/lib/gstreamer-0.10 && du -sh /usr/lib/gstreamer-0.10
$feladat /usr/lib/jre1.7.0_04 && du -sh /usr/lib/jre1.7.0_04
$feladat /usr/lib/kompozer && du -sh /usr/lib/kompozer
$feladat /usr/lib/libwireshark && du -sh /usr/lib/libwireshark
$feladat /usr/lib/locale && du -sh /usr/lib/locale
$feladat /usr/lib/mysql-workbench && du -sh /usr/lib/mysql-workbench
$feladat /usr/lib/mysql && du -sh /usr/lib/mysql
$feladat /usr/lib/perl5 && du -sh /usr/lib/perl5

if [ $feladat -eq "umount"]
then
killall /usr/bin/python
fi
$feladat /usr/lib/python2.6 && du -sh /usr/lib/python2.6

$feladat /usr/lib/qt && du -sh /usr/lib/qt
$feladat /usr/lib/sane && du -sh /usr/lib/sane
$feladat /usr/lib/vlc && du -sh /usr/lib/vlc
$feladat /usr/libexec/gcc && du -sh /usr/libexec/gcc
$feladat /usr/local/bin/inkscape-bin && du -sh /usr/local/bin/inkscape-bin
$feladat /usr/local/lib/navit && du -sh /usr/local/lib/navit
$feladat /usr/local/lib/opera && du -sh /usr/local/lib/opera
$feladat /usr/local/lib/qgis && du -sh /usr/local/lib/qgis
$feladat /usr/local/lib/qgis-libs && du -sh /usr/local/lib/qgis-libs
$feladat /usr/local/lib/wine && du -sh /usr/local/lib/wine
$feladat /usr/local/share/navit && du -sh /usr/local/share/navit
$feladat /usr/local/share/opera && du -sh /usr/local/share/opera
$feladat /usr/local/share/povray-3.6 && du -sh /usr/local/share/povray-3.6
$feladat /usr/local/share/qgis && du -sh /usr/local/share/qgis
$feladat /usr/local/share/qlandkartegt && du -sh /usr/local/share/qlandkartegt
$feladat /usr/local/share/wine && du -sh /usr/local/share/wine
$feladat /usr/local/share/zyGrib && du -sh /usr/local/share/zyGrib
$feladat /usr/man && du -sh /usr/man
$feladat /usr/share/MobileMediaConverter && du -sh /usr/share/MobileMediaConverter
$feladat /usr/share/cups && du -sh /usr/share/cups
$feladat /usr/share/festival && du -sh /usr/share/festival
$feladat /usr/share/frostwire-4.21.2 && du -sh /usr/share/frostwire-4.21.2
$feladat /usr/share/gimp && du -sh /usr/share/gimp
#$feladat /usr/share/inkscape && du -sh /usr/share/inkscape
$feladat /usr/share/kompozer && du -sh /usr/share/kompozer
$feladat /usr/share/speech_tools && du -sh /usr/share/speech_tools
$feladat /usr/share/stellarium && du -sh /usr/share/stellarium
$feladat /usr/share/texmf-var && du -sh /usr/share/texmf-var
$feladat /usr/share/texmf && du -sh /usr/share/texmf

exit 0

Ezzel elértem, hogy 3.2 GB SSD-n 5.8 GB program- és adatmennyiség van, miközben 290-310 MB szabad területem is pörög. Böngésző- és egyéb ideiglenes fájl-tárolások ramdrájvon vannak, mint jelen esetben is...