[+] Polecenia mount, fsck, nie dzia

Tematy związane z oprogramowaniem, instalacją, konfiguracją
grzesmlodzian
Posty: 33
Rejestracja: 09 marca 2011, 14:47

[+] Polecenia mount, fsck, nie działają po instalacji util-linux

Post autor: grzesmlodzian »

Ostatnio instalowałem util-linux ze źródeł. Zrobiłem to gdyż chyba w repozytoriach jest stara wersja a potrzebowałem polecenia, które występuje w nowszych wersjach. I chyba źle to zrobiłem (kompletnie nie mam w tym doświadczenia). Przy takich poleceniach jak mount, fsck wyrzuca błąd (gwiazdka moja):

Kod: Zaznacz cały

mount: /lib/i386-linux-gnu/libmount.so.1: version `MOUNT_2.2*' not found (required by mount)
Chyba przez to system plików montuje się w trybie tylko do odczytu.
Jak to teraz naprawić? Mam dostęp do trybu ratunkowego. Proszę pomóżcie.
Awatar użytkownika
Yampress
Administrator
Posty: 6400
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

Napisz, jak kompilowałeś?
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Jaką masz wersje systemu i co to za komenda której nie było wcześniej?
grzesmlodzian
Posty: 33
Rejestracja: 09 marca 2011, 14:47

Post autor: grzesmlodzian »

Najpierw ściągnąłem plik za pomocą wget ze strony http://www.kernel.org/pub/linux/utils/util-linux/v2.23/

A potem:

Kod: Zaznacz cały

mv util-linux-2.23.1.tar.bz2  /usr/local/src
cd /usr/local/src
tar -jxvf util-linux-2.23.1.tar.bz2
cd util-linux-2.23.1
./configure
./configure --without-ncurses
make
make install 
Wersja Debiana Squeeze 7.1, Wczoraj robiłem:

Kod: Zaznacz cały

apt-get upgrade
Chodziło mi o polecenie 'prlimit'. Od kilku dni próbuję ograniczyć aplikacji lub użytkownikowi "Resident set size", niestety z miernym skutkiem.

Póki nie restartowałem systemu normalnie działał. Nie wiem czy to normalne ale w apt-cache pokazuje starą wersję util-linux.
Awatar użytkownika
Yampress
Administrator
Posty: 6400
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

Kod: Zaznacz cały

./configure --without-ncurses
I uważasz, że to wystarczy? Jakie są inne flagi dostępne?

I teraz masz dwie wersje w systemie? Systemową z paczki i skompilowane. Spróbuj to usunąć

Kod: Zaznacz cały

cd util-linux-2.23.1
make deinstall
jeśli się nie usunie to wszystkie pliki skompilowane zainstalował w strukturze /usr/local (jeśli nie podasz ścieżki w ,,configure'' gdzie ma je instalować). Jeśli nie masz nic więcej kompilowanego to możesz wszystko tam usunąć i zainstalować z paczki util-linux, a jeszcze wcześniej sprawdzić czy nie jest już zainstalowana.

Dodam, że Squeeze 6.0 aktualnie jest starą wersją stabilną i należałoby już przejść na aktualną wersję stabilną Wheezy (7.1). Dobrze tu napisałeś bo może się w czymś pomyliłeś?

Narobiłeś sobie syfu w systemie. Nigdy tak nie rób.

wczoraj robiłem:

Kod: Zaznacz cały

apt-get upgrade
To nic nie daje. to tylko aktualizuje wersje paczek w bazie. Zapomniałeś jeszcze o:

Kod: Zaznacz cały

apt-get dist-upgrade
grzesmlodzian
Posty: 33
Rejestracja: 09 marca 2011, 14:47

Post autor: grzesmlodzian »

Yampress pisze:I uważasz że to wystarczy? Jakie są inne flagi dostępne?
Ja się na tym zbytnio nie znam. Kiedy wpisałem:

Kod: Zaznacz cały

./configure
bez opcji wyświetliła się informacja, że czegoś tam brakuje i jeżeli chcę zainstalować bez tego to mam to wykonać, nawet nie wiem, czy w dobrym miejscu to wpisałem.
Yampress pisze:I teraz masz dwie wersje w systemie? Systemową z paczki i skompilowane. Spróbuj to usunąć...
Rzeczywiście, niegłupi pomysł. Nie wiem czy zwróciłeś uwagę, że żeby to zrobić chyba muszę użyć systemu ratunkowego, a tam główną partycję montuję do /mnt, więc pewnie jakieś dodatkowe opcje by się przydały.
Yampress pisze:jeśli się nie usunie to wszystkie pliki skompilowane zainstalował w strukturze /usr/local (jeśli nie podasz ścieżki w configure gdzie ma je instalować). Jeśli nie masz nic więcej kompilowanego to możesz wszystko tam usunąć i zainstalować z paczki util-linux, a jeszcze wcześniej sprawdzić, czy nie jest już zainstalowana.
Nic innego nie kompilowałem. Za chwilę spróbuję.
Yampress pisze:Dodam, że Squeeze 6.0 aktualnie jest starą wersją stabilną i należałoby już przejść na aktualną wersję stabilną Wheezy (7.1). Dobrze tu napisałeś bo może się w czymś pomyliłeś?
Masz racje - pomyłka :) Dokładnie to jest tak:

Kod: Zaznacz cały

Distributor ID: Debian
Description:    Debian GNU/Linux 7.1 (wheezy)
Release:        7.1
Codename:       wheezy
Yampress pisze:Narobiłeś sobie syfu w systemie. Nigdy tak nie rób.
To na przyszłość powinienem usunąć ulti-linux z pomocą apt-get, a dopiero potem instalować ze źródeł?
Yampress pisze:To nic nie daje. To tylko aktualizuje wersje paczek w bazie. Zapomniałeś jeszcze o...
Racja. Ale jako ciekawostkę powiem, że mimo że tym poleceniem też wywołałem to wtedy nie widziałem między nimi różnicy.

Dodane:
Poczytałem o środowisku chroot i go użyłem.

Wyczyściłem wszystko /usr/local, dodatkowo jeszcze raz ściągnąłem i wypakowałem archiwum z util-linux i użyłem make uninstall, za pomocą apt-get usunąłem util-linux, a potem go ponownie zainstalowałem. Nadal nie działa.

Edycja: Pomyłka - jak po usunięciu zainstaluję przez źródła, to jest ten sam błąd. Jak przez apt-get to w ogóle nie znajduję polecenia ,,mount'' oraz innych jak np. ,,reboot''.
Awatar użytkownika
Yampress
Administrator
Posty: 6400
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

W środowisku chroot normalnie robisz i powinno się zainstalować

Kod: Zaznacz cały

aptitude install util-linux 

Ewentualnie ściągasz paczkę i instalujesz lokalnie ręcznie.

Kod: Zaznacz cały

dpkg -i  util-linux*.deb

Jeśli chcesz kompilować to tak powinieneś odinstalować tą paczkę util-linux z systemu. Nie radzę jednak tego robić tzn. kompilować (gdyż od razu widać, że nie wiesz jak) - nie znasz wszystkich flag, które powinny być oraz nie wiesz jakie pliki developerskie są potrzebne do poprawnego skompilowania paczki aby dobrze to wyszło. I potem coś nie działa.

Proponuję ściągnąć tę paczkę z Sida lub Jessie, odinstalować starą i zainstalować nowszą bez resetu komputera. Wiesz strategicznych paczek systemowych się nie rusza.
grzesmlodzian
Posty: 33
Rejestracja: 09 marca 2011, 14:47

Post autor: grzesmlodzian »

Na pewno ta paczka odpowiada za montowanie i te inne rzeczy, które mi nie działają? Bo w liście plików tej paczki nie ma ,,mount'' i chyba teraz jest już dobrze zainstalowana (za pomocą dpkg).
Nie mogło być tak, że instalując ten pakiet util-linux ze źródeł jakieś paczki się usunęły?
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Reinstaluj jeszcze pakiety:

Kod: Zaznacz cały

mount
libmount1
grzesmlodzian
Posty: 33
Rejestracja: 09 marca 2011, 14:47

Post autor: grzesmlodzian »

Może trochę głupie pytanie - jak to zrobić? Bo jak chce je usunąć za pomocą apt-get to wyświetla błąd:

Kod: Zaznacz cały

The following packages have unmet dependencies:
 apache2.2-common : Depends: procps but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
ODPOWIEDZ