Prowadzę Ubuntu 12.04.1 LTS. I nie mogę uzyskać informacji o kolejności / priorytecie ładowania plików profilu. Kiedy uruchamiam system i loguję się za pomocą GUI, który plik jest ładowany? I dlaczego? Co się stanie, jeśli uruchomisz powłokę logowania? Czy to będzie tak samo? W tej chwili nie mogę zrozumieć, dlaczego ~/.profile
nie ładuje się, gdy system się uruchamia, ponieważ widzę, że powinien:
13
Odpowiedzi:
Możesz zdefiniować zmienną w każdym pliku:
odpowiednio
i wykonaj
aby zobaczyć, co było zaangażowane i w jakiej kolejności. Oczywiście nie powie ci to, czy przegapiłeś różne skrypty.
Więc jeśli zobaczysz wspomniane jedno źródło, przeczytaj ten skrypt, aby sprawdzić, czy jeden skrypt pozyskuje inne, i dołącz je również.
Przychodzą mi na myśl /etc/bash.bashrc i ~ / .bashrc i ~ / .bash_login, a także rzeczy z / etc / default.
źródło
Wszystko zależy od tego, z którym użytkownikiem próbujesz się zalogować. Plik globalny
/etc/profile
jest ładowany dla każdego użytkownika , a~/.profile
tylko dla użytkownika.~
wskazuje katalog domowy bieżącego użytkownika. Jeśli więc umieścisz go/home/user-a/.profile
i zalogujesz jakouser-a
, zarówno globalny, jak i plik specyficzny dla użytkownika zostaną załadowane (w tej kolejności), natomiast jeśli zalogujesz sięuser-b
bez.profile
pliku, załaduje tylko globalny.źródło
Oba powinny zostać załadowane, a ~ / .profile powinien zostać załadowany na końcu (co oznacza, że ma priorytet).
źródło
To moja wina. W moim ~ / .profile było [[some_test]] i działa dobrze w bash, ale myślę, że dash uruchamia niektóre komendy pre_session_creation / post_session_creation na początku sesji i dash nie wiem [[słowo kluczowe. Więc wszystko zostało załadowane, ale zatrzymało się na błędzie.
źródło