Używam Ubuntu 12.10 z Gnome-Classic. Ten błąd pojawia się często i prawie we wszystkich programach, dużych i małych. Kiedy próbuję je otworzyć, nie uruchamiają się, a zamiast tego pojawia się komunikat o błędzie Could not launch 'Program' - Failed to fork child process (Cannot allocate memory)
. To nie był problem, dopóki w ciągu ostatnich kilku tygodni.
Nie widzę podobieństwa między programami, które powodują ten błąd. Wydaje się, że to bardziej kwestia czasu. Po pewnym czasie działania komputera, od jednego dnia do kilku dni, nie mogę uruchomić żadnych nowych programów.
Jedynym sposobem, jaki znam, aby zapobiec temu błędowi, jest ponowne uruchomienie komputera.
Dlaczego dostaję ten błąd i co mam zrobić, aby go nie dopuścić?
Uruchomiłem memtest dostępny z menu GRUB i nie zgłasza on żadnych błędów, więc nie sądzę, aby była to awaria sprzętowa.
Uruchomiłem też sudo apt-get check
i nie znaleziono błędów.
Oto niektóre dane wyjściowe wiersza polecenia:
$ free -m
total used free shared buffers cached
Mem: 3945 3753 191 0 181 475
-/+ buffers/cache: 3096 848
Swap: 3813 60 3753
$ swapon -s
Filename Type Size Used Priority
/dev/sda6 partition 3905532 61648 -1
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 31421
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 31421
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
To jest wynik ps --sort -rss -eo rss,pid,command | head
po pojawieniu się błędu:
$ ps --sort -rss -eo rss,pid,command | head
RSS PID COMMAND
1963400 2953 gnome-panel
155496 4029 banshee /usr/lib/banshee/Banshee.exe --redirect-log --play-enqueued
104944 15765 /opt/google/chrome/chrome --type=renderer --lang=en-US --force-fieldtrials=ForceCompositingMode/disable/GlobalSdch/global_enable_sdch/InfiniteCache/No/OmniboxDisallowInlineHQP/Standard/OmniboxHUPCreateShorterMatch/Standard/OmniboxHUPCullRedirects/Standard/OmniboxSearchSuggestTrialStarted2012Q4/2/OneClickSignIn/Standard/Prerender/PrerenderEnabled/SBInterstitial/V2/SpdyCwnd/cwndMin10/SpeculativePrefetching/Disabled/Test0PercentDefault/group_01/UMA-Dynamic-Binary-Uniformity-Trial/default/UMA-Session-Randomized-Uniformity-Trial-5-Percent/default/UMA-Uniformity-Trial-1-Percent/group_09/UMA-Uniformity-Trial-10-Percent/group_08/UMA-Uniformity-Trial-20-Percent/group_03/UMA-Uniformity-Trial-5-Percent/group_06/UMA-Uniformity-Trial-50-Percent/group_01/WarmSocketImpact/last_accessed_socket/ --enable-crash-reporter=ECE9000094D279FD3B14B35A74BF72CC,Ubuntu 12.10 --renderer-print-preview --disable-accelerated-2d-canvas --disable-accelerated-video-decode --channel=15654.5.89177240
78164 15654 /opt/google/chrome/chrome
74912 19890 /usr/bin/python /usr/share/oneconf/oneconf-service
65476 12419 /usr/bin/perl /usr/bin/shutter
61096 19626 /usr/bin/python3.2 /usr/sbin/aptd
57832 15708 /opt/google/chrome/chrome --type=renderer --lang=en-US --force-fieldtrials=ForceCompositingMode/disable/GlobalSdch/global_enable_sdch/InfiniteCache/No/OmniboxDisallowInlineHQP/Standard/OmniboxHUPCreateShorterMatch/Standard/OmniboxHUPCullRedirects/Standard/OmniboxSearchSuggestTrialStarted2012Q4/2/OneClickSignIn/Standard/Prerender/PrerenderEnabled/SBInterstitial/V2/SpdyCwnd/cwndMin10/SpeculativePrefetching/Disabled/Test0PercentDefault/group_01/UMA-Dynamic-Binary-Uniformity-Trial/default/UMA-Session-Randomized-Uniformity-Trial-5-Percent/default/UMA-Uniformity-Trial-1-Percent/group_09/UMA-Uniformity-Trial-10-Percent/group_08/UMA-Uniformity-Trial-20-Percent/group_03/UMA-Uniformity-Trial-5-Percent/group_06/UMA-Uniformity-Trial-50-Percent/group_01/WarmSocketImpact/last_accessed_socket/ --enable-crash-reporter=ECE9000094D279FD3B14B35A74BF72CC,Ubuntu 12.10 --extension-process --renderer-print-preview --disable-accelerated-2d-canvas --disable-accelerated-video-decode --channel=15654.2.1555888673
42108 3030 /var/lib/dropbox/.dropbox-dist/dropbox
Na podstawie sugestii w komentarzach i odpowiedziach wydaje się, że problem może dotyczyć panelu Gnome lub jego apletów. Oto aplety, które mam uruchomione:
Aplety są Indicator Applet 12.10.1
, System Monitor 3.5.92
i „powiadomienie Area”. oraz „data i godzina”, dla których nie mam dostępu do numeru wersji.
Oto kilka bardziej pożądanych danych wyjściowych z wiersza poleceń:
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 19G 12G 6.4G 64% /
udev 2.0G 4.0K 2.0G 1% /dev
tmpfs 790M 1.1M 789M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 2.0G 84K 2.0G 1% /run/shm
none 100M 0 100M 0% /run/user
/dev/sda7 384G 306G 59G 84% /home
[email protected]:/home/mythbuntu 437G 360G 55G 87% /home/dave/Mythbuntu
$ sudo du -csh /var/log
15M /var/log
15M total
źródło
memtest
? Błędy często pojawiają się tylko w późniejszych testach.memtest
uruchomić, dopóki na dole ekranu nie pojawił się komunikat, że wszystkie testy zostały zakończone.Odpowiedzi:
Niektóre procesy przeciekają pamięć. Aby dowiedzieć się, jaki to może być proces, uruchom
źródło
Sugeruję rozpoczęcie procesu rozwiązywania problemów od przetestowania pamięci RAM za pomocą wbudowanego narzędzia dostępnego w menu rozruchowym GRUB i wyeliminowania „złej pamięci RAM” jako źródła problemu.
Test pamięci
Memtest86 +
Następnie sprawdź system pod kątem przerwanych zależności z terminala za pomocą sudo apt-get check, a jeśli wystąpią błędy, uruchom ponownie polecenie sudo apt-get check -f, aby spróbować je poprawić.
Jeśli chcesz, wypróbuj te kroki i zgłoś tutaj wszelkie wyniki.
Leland
Cześć dave,
Ok, więc - wykluczyliśmy sprzęt jako źródło problemu.
Następnie sprawdźmy użycie pamięci i ustawienia procesów na twoim komputerze; uruchom następujące polecenia z wiersza polecenia:
Wyświetla ilość wolnej i zużytej pamięci
wolny -m
Wyświetl podsumowanie użycia wymiany
swapon -s
Wyświetl limity zasobów procesu użytkownika
ulimit -a
Poniższy zrzut ekranu pochodzi z czystej instalacji 10.04LTS. Dane szczegółowe, które należy zanotować z pierwszego i drugiego żółtego okręgu, znajdują się w kolumnie „używane”, która wyświetla pamięć i przestrzeń wymiany dostępną dla systemu operacyjnego, tzn. Nie wszystkie są zużyte.
Dolny żółty element w kółku nie wyświetla żadnych ograniczeń liczby procesów użytkownika, np. GFTP lub innej aplikacji, na przykład, że system operacyjny pozwoli użytkownikowi na uruchomienie.
Jeśli chcesz, wypróbuj te kroki i zgłoś tutaj wszelkie wyniki.
Leland
Cześć dave,
Wyniki zwrócone z ps --sort -rss -eo rss, pid, command | głowa, którą napisałeś, pokazuje proces panelu gnome z wykorzystaniem około 1,8 GB pamięci, co wydaje się trochę niezwykłe - wydaje się, że jest to dużo pamięci dla środowiska Desktop.
Możesz uzyskać podział pamięci, z którego korzysta proces panelu gnome, uruchamiając kółko na poniższym zrzucie ekranu i sprawdzając, dokąd to wszystko zmierza - co może ujawnić coś, co się wyróżnia.
Dla porównania, proces panelu gnome na mojej maszynie wirtualnej zużywa 48 MB pamięci RAM - oczywiście, maszyna 10.04 na tych zrzutach ekranu jest maszyną wirtualną, której używam tylko do testów, a nie na własnym pulpicie.
Biorąc to pod uwagę, przedstawię następny krok, aby wyizolować problem z „czymś” w środowisku graficznym Gnome.
Aby to przetestować, spróbuj zainstalować obszar roboczy plazmy KDE, który znajdziesz w Centrum oprogramowania Ubuntu.
Po zainstalowaniu uruchom ponownie komputer i zaloguj się za pomocą sesji KDE zamiast Gnome, uruchom aplikacje najlepiej, jak potrafisz (pulpit jest zupełnie inny), aby sprawdzić, czy błąd „Nie można przydzielić pamięci” powtarza się tutaj.
Mówiąc wprost, będziesz w stanie uruchomić te same „testy” CLI w środowisku KDE, jak w środowisku Gnome, i będziesz w stanie porównać wyniki w badaniu zachowania komputera między nimi.
W KDE aplikacją konsolową, której szukasz, jest xterm, który możesz znaleźć w oknie dialogowym Szukaj w menu głównym.
Zamierzam tu dodać trochę pewności siebie i powiedzieć, że myślę, że wspólnie jesteśmy na dobrej drodze do izolacji problemu.
Leland
źródło
apt-get
polecenia, które zasugerowałeś, i oba nie zgłosiły błędów. Zaktualizowałem odpowiednio moje pytanie.max user processes
tym nie mówi sięunlimited
tak , jak twoje. Mój ma numer31421
.pmap
polecenie i opublikuję to wyjście tutaj. Przeszukałem też trochę i odkryłem, że w panelu gnome są wzmianki o wyciekach pamięci, więc wydaje się, że to podejrzane.Po eksperymentach z włączaniem i wyłączaniem w ciągu ostatnich kilku dni, jestem pewny, że teraz mówię, że problemem był wyciek pamięci w części pogodowej apletu czasu i daty. Gdy wyświetla się pogoda, zużycie pamięci wzrasta z czasem. Gdy pogoda nie wyświetla się, pamięć się nie zwiększa.
Sądzę, że to błąd związany ze wskaźnikiem pogody, który powinien zostać zgłoszony, ale zgłaszanie błędów na Launchpadzie jest dla mnie zbyt skomplikowanym procesem.
źródło
Jeśli masz problem z korzystaniem z Ruby on Rails z Digital Ocean , prawdopodobnie jest tak, ponieważ masz za mało pamięci RAM. Spróbuj zwiększyć ilość pamięci RAM z 512 MB na 1 GB , co mnie naprawiło.
źródło