Jusko Napisano Grudzień 2, 2009 Zgłoszenie Share Napisano Grudzień 2, 2009 Witam. Dla mnie przydatna informacja. Używając aptitude strasznie podobało mi się przy ściąganiu programu takie coś:" Do pobrania X MB pakietów. Po instalacji zostanie użyte Xyz MB na dysku". W Yum widzę tylko, ile MB ważą paczki a nie ile miejsca zajmie mi np. k3b za zainstalowaniu. Czy jest plugin pokazujący ile prócz MB paczek do pobrania, zajmie program? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
dj_oko Napisano Grudzień 11, 2009 Zgłoszenie Share Napisano Grudzień 11, 2009 Pakiet RPM nie przechowuje takiej informacji. Panuje bowiem(nie do końca nieuzasadnine) przekonanie techniczne, że rozmiar zainstalowanego programu może być zmienny. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Jusko Napisano Grudzień 12, 2009 Autor Zgłoszenie Share Napisano Grudzień 12, 2009 Mhmm...teraz wszystko jest jasne co do pokazywania ilości MB po zainstalowaniu. Troszeczkę szkoda, ponieważ nie wiadomo nawet, ile dany program zajmuje. Wprawdzie przy obecnych dyskach to nie problem, ale fakt faktem, że nie wiadomo ile program zajmuje jest nieco...dziwne. Pamiętam, jak w 1999 roku udało się kupić dysk 8GB, a trzy lata później musiałem już liczyć MB, ile program mi zajmie i tym podobne operacje, by po prostu jakoś to pomieścić na tym dysku. Dlatego do dziś wolę wiedzieć co i ile mi zajmuje - lubię mieć zwyczajnie kontrolę nad niektórymi rzeczami. Teraz wiem, że w tym przypadku nic z tego - dzięki za info. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
daf Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 Pakiet RPM nie przechowuje takiej informacji. Panuje bowiem(nie do końca nieuzasadnine) przekonanie techniczne, że rozmiar zainstalowanego programu może być zmienny. no nie wiem. zypper w openSUSE pokazuje rozmiar pakietu i ile zajmuje on po instalacji, a to w koncu tez RPM. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 [...] rozmiar zainstalowanego programu może być zmienny.Hmmm... Jakoś nie bardzo w to wierzę. Przecież zawartość paczki RPM jest stała, gotowa binarka czy skrypt tylko rozpakowywana. Do tego ew. wykonywane są dodatkowe czynności/skrypty nie mające jak sądzę wpływu na wielkość instalacji (a nawet jeśli tak, to ten wpływ znaczący raczej nie jest). Sprawa oczywiście trochę się komplikuje przy DRPM, chociaż paczka wynikowa też powinna być niezmienna, bo inaczej nie zgodziłby się skrót SHA1 czy SHA256 czy jak tam to jest liczone. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
thof Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 Może zmienny w tym sensie, że zależny od systemu plików (od wielkości bloku sektorów)? Chociaż w przypadku pakietów powyżej 1MB różnica jest i tak niezauważalna dla użytkownika. Poza tym kompresja jest mała na poziomie 10% i każdy może sobie oszacować na podstawie rozmiaru pakietu ile będzie zajmował po instalacji. Jak dla mnie zbędna informacja. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 * Jakby się uparł, to ilość zajmowanego miejsca zależy od systemu plików i szczegółów ustawień partycji, ale to jakby nie patrzeć detal * Trzeba by stworzyć nie tylko plugin do yum, ale też umieścić więcej informacji w samym repozytorium. Dzwoń do developerów, że suse ma a my nie. * Jakimś rozwiązaniem było by włamywanie się na inne komputery z fedorą i sprawdzanie ile tam te paczki zajmują Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 A czy ogólnej zajętości po rozpakowaniu nie pokazuje taki plik siedzący w RPM w INFO/SIZE (tak jak to widać z MC) lub po prostu wartość "Size:" w pliku HEADER? Albo tak bardziej ogólnie nie jest to wartość → rpm -qa --qf %{SIZE} <paczka> sprawdziłem sobie na paczce "brasero". Instalowanie: brasero x86_64 2.26.3-1.fc11 updates 3.4 M Usuwanie: brasero x86_64 2.26.3-1.fc11 installed 9.3 M [root@F11 ~]# rpm -qa --qf %{SIZE}"\n" brasero 9781344 [root@F11 ~]# bc -l 9781344/1024/1024 9.32821655273437500000 Czyli właśnie owe 9,3MB które yum widzi przy usuwaniu. BTW jak widać kompresja nie zawsze jest ok.10% Podsumowując wyciągnięcie tej wartości z paczki jest wg mnie możliwe. Użyteczność tej informacji to już inna sprawa, ale jak ktoś ma mało placu na partycji / czy /usr, to może to być istotne. [EDIT] Widzę, że te wartości siedzą w pliku bazy danych yuma w /var/cache/yum/updates (mówię ciągle o przykładowym "brasero") [waldo@F11 updates]$ ls -l *sqlite -rw-r--r-- 1 root root 25930752 12-10 12:52 cc40360885d45a01963957cc95448325d58be0e14707ced20846ff3d8fe073ea-primary.sqlite [waldo@F11 updates]$ sqlite3 *.sqlite SQLite version 3.6.12 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> select name, size_installed from packages where name = 'brasero'; brasero|9781344 Czyli jak ktoś umie programować a w szczególności robić wtyczki do yuma, to chyba dałby sobie radę z problemem Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 Twoje modły zostały wysłuchane Podziękuj WalDo, że dostrzegł te dane. Poskładałem to w prościutki skrypt yum-size-of wystarczy podać nazwę paczki jako argument. yum-size-of firefox Skrypt jest prosty, więc błędów nie obsługuje #!/bin/bash # yum-size-of - skrypt pokazuje miejsce zajmowane przez paczkę podaną jako argument # np. # yum-size-of kadu paczka=${1:-gimp} mydb="/var/cache/yum/updates/*primary.sqlite" query(){ echo "SELECT name, size_package, size_installed, size_archive FROM packages WHERE name = '$1'; " } sqlite_select(){ sqlite3 $mydb "$(query $paczka)" } SQLITE_SELECT=$(sqlite_select) SIZE_PACKAGE=$( echo $SQLITE_SELECT | cut -d\| -f2 ) SIZE_PACKAGE_MB=$( echo "scale=3; $SIZE_PACKAGE/1024/1024" | bc -l ) SIZE_INSTALLED=$( echo $SQLITE_SELECT | cut -d\| -f3 ) SIZE_INSTALLED_MB=$( echo "scale=3; $SIZE_INSTALLED/1024/1024" | bc -l ) SIZE_ARCHIVE=$( echo $SQLITE_SELECT | cut -d\| -f3 ) SIZE_ARCHIVE_MB=$( echo "scale=3; $SIZE_ARCHIVE/1024/1024" | bc -l ) # wyświetl ładne wyniki echo -e "yum-size-of - skrypt pokazuje miejsce zajmowane przez paczkę podaną jako argument" echo -e "name \t\t= \t" ${SQLITE_SELECT%%|*} echo -e "size_package \t= \t" $SIZE_PACKAGE_MB MB echo -e "size_installed \t= \t" $SIZE_INSTALLED_MB MB echo -e "size_archive \t= \t" $SIZE_ARCHIVE_MB MB [EDIT] właściwie to może być całkiem przydatne, może to gdzieś na wiki wrzucić ? [EDIT] właściwie to zapomniałem, że to jest tylko dla jednego repozytorium ustawione aaaaaaaaaaaaaaaaaaaaaaa!!! Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 Nie chciałem Cię podpuszczać, ale tak czułem, że jak podrzucę trochę materiału, to jakiś skrypt/program wysmażysz Rozwiń, żeby korzystało z dowolnego repo z /etc/yum.repos.d i zasłużysz na Aleję Chwały na wiki.fedora.pl Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
borzole Napisano Grudzień 12, 2009 Zgłoszenie Share Napisano Grudzień 12, 2009 w sumie to już mam tylko mi się kolumienki rozjeżdżają, ale tego nie przeskoczę byle czym wersja 2 - sprawdza każde repo #!/bin/bash # yum-size-of - skrypt pokazuje miejsce zajmowane przez paczkę podaną jako argument paczka=${1:-gimp} query(){ echo "SELECT name, size_package, size_installed, size_archive, version, release, arch FROM packages WHERE name = '$1'; " } sqlite_select(){ sqlite3 "$mydb" "$(query $paczka)" } show_result(){ REPO=${mydb##/var/cache/yum/} VERSION="$( echo $SQLITE_SELECT | cut -d\| -f5 )" VERSION+=".$( echo $SQLITE_SELECT | cut -d\| -f6 )" VERSION+=".$( echo $SQLITE_SELECT | cut -d\| -f7 )" SIZE_PACKAGE=$( echo $SQLITE_SELECT | cut -d\| -f2 ) SIZE_PACKAGE_MB=$( echo "scale=3; $SIZE_PACKAGE/1024/1024" | bc -l ) SIZE_INSTALLED=$( echo $SQLITE_SELECT | cut -d\| -f3 ) SIZE_INSTALLED_MB=$( echo "scale=3; $SIZE_INSTALLED/1024/1024" | bc -l ) SIZE_ARCHIVE=$( echo $SQLITE_SELECT | cut -d\| -f4 ) SIZE_ARCHIVE_MB=$( echo "scale=3; $SIZE_ARCHIVE/1024/1024" | bc -l ) # wyświetl ładne wyniki echo -e " $SIZE_PACKAGE_MB MB \t| $SIZE_INSTALLED_MB MB \t| $SIZE_ARCHIVE_MB MB \t| ${VERSION} \t( ${REPO%%/*} )" } # rezultaty echo -e "yum-size-of \e[1;31m$paczka\e[0m" echo -e "--------------------------------------------------------------------------------" echo -e " size_package \t| size_installed | size_archive | version ( repo )" echo -e "--------------------------------------------------------------------------------" for mydb in $( find /var/cache/yum/ -type f -name \*primary\*.sqlite ); do SQLITE_SELECT=$(sqlite_select) if [ "$SQLITE_SELECT" != "" ]; then show_result fi done a na wiki wrzucę za parę dni, jak błędy wyłapie [EDIT] - korekta w skrypcie (size_archive było równe size_installed ) Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Jusko Napisano Grudzień 13, 2009 Autor Zgłoszenie Share Napisano Grudzień 13, 2009 Coraz bardziej podoba mi się to forum Fedora w sumie też - nie mam problemów - przynajmniej jeśli chodzi o to wydanie, kto wie co stanie się po upgrade do F13 Może robię coś nie tak. Czego nie chcę sprawdzić, otrzymuję tylko wynik: yum-size-of yum-size-of -------------------------------------------------------------------------------- size_package | size_installed | size_archive | version ( repo ) -------------------------------------------------------------------------------- I to wszystko. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
hello_world Napisano Grudzień 13, 2009 Zgłoszenie Share Napisano Grudzień 13, 2009 Bardzo mi się podoba @Jusko prawdopodobnie podales nazwe paczki, ktorej nie ma lub nazywa sie inaczej Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Jusko Napisano Grudzień 13, 2009 Autor Zgłoszenie Share Napisano Grudzień 13, 2009 Frazy gimp czy firefox zwracają to samo. Chyba, że trzeba podawać dokładną nazwę paczki - nazwę z repo. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
hello_world Napisano Grudzień 13, 2009 Zgłoszenie Share Napisano Grudzień 13, 2009 a takie rzeczy jak chmod u+x yum-size-of wykonałeś Potem mozesz dodac cp -f yum-size-of /usr/bin @borzole Jeżeli mozesz to jeszcze pewnie jakis warunek do obliczania MB bo jak paczka mniej niz 1MB to trochę tak nie ladnie wygląda. wierze że tobie to zajmie 10 min, a mi miesiąc Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się