Próbując zmienić konto na moje nowo utworzone konto, pojawia się czarny ekran, a następnie po wprowadzeniu prawidłowego hasła wraca do głównego ekranu logowania.
Po zalogowaniu się na moje dotychczasowe konto otrzymuję:
"System Program Problem Detected"
Details:
Executable path /usr/bin/Xorg
Package: xserver-xorg-core 2:1.11.4-0ubuntu10.1
Details: Crash
... (tons more, but no way to copy paste or save)
Kiedy próbuję su
su -l penner
Dostaję:
No directory, logging in with HOME=/
Ręcznie utworzyłem katalog domowy i ten błąd znika, ale nadal nie mam szczęścia przy logowaniu. Wydaje się, że coś poszło nie tak podczas tworzenia użytkownika? Jak mogę to naprawić?
useradd
switch-user
penner
źródło
źródło
Odpowiedzi:
Jeśli utworzyłeś konto użytkownika
useradd
, musisz skonfigurować wszystko dla niego ręcznie. Dlatego podczas tworzenia kont użytkowników z wiersza polecenia zaleca się stosowanieadduser
w Ubuntu (i Debianie oraz innych systemach opartych na Debianie). Możesz po prostu usunąć użytkownika za pomocąuserdel
lubdeluser
i ponownie go utworzyćadduser
. Inaczej...Naprawianie lokalizacji katalogu domowego
Jeśli chcesz zachować konto użytkownika i rozwiązać problem, musisz spojrzeć na:
Muszą być dokładnie takie same. Otrzymany komunikat o błędzie
su -l penner
mówi, że nie są one takie same.Aby sprawdzić katalog domowy, dla którego konto użytkownika jest faktycznie skonfigurowane, uruchom to polecenie (zobacz
man 5 passwd
iman grep
więcej informacji):Powinieneś zobaczyć taką linię:
Oznacza to, że szóste
:
oddzielne pole (po piątym:
) zawiera katalog domowy. Jeśli nie/home/penner
, to powinno być. Jeśli katalog, który utworzyłeś dla tego użytkownika, nie jest/home/penner
, to też powinien być. Jeśli dwa katalogi są takie same, ale żaden z nich nie jest/home/penner
, to teoretycznie może to działać, ale powinieneś zrobić je oba/home/penner
, ponieważ wiele programów zakłada, żeroot
katalogi domowe wszystkich użytkowników nie są ./home/username
Możesz zmienić
penner
katalog domowy na/home/penner
, uruchamiając następujące polecenie:man usermod
więcej informacji.Zapewnienie, że jest to katalog i że użytkownik ma dostęp
Jeśli (lub jeden raz) te nazwy to oba
/home/penner
, należy również upewnić się, że użytkownik ma dostęp do własnego katalogu domowego. Biegać:Powinieneś zobaczyć coś, co wygląda tak (chociaż data i godzina będą inne):
Jeśli zamiast tego
drwxr-xr-x
masz coś, co zaczyna się-
odd
, a następnie utworzyłeś plik, a nie katalog. Usuń plik i utwórz w nim katalog.Jeśli zamiast pierwszego
penner
masz coś innego, użytkownik nie jest właścicielem swojego katalogu domowego, więc spraw, aby był właścicielem:man chown
więcej informacji.Jeśli zamiast
drwxr-xr-x
następnych trzech znaków po znaku są myślnikid
, użytkownik nie ma tam pełnego dostępu. Napraw to w następujący sposób:man chmod
więcej informacji.(
penner
jest w stanie uruchomić to polecenie, jeśli są właścicielami własnego katalogu domowego, więc jeśli wolisz, możesz uruchomić to jakosudo -u penner u+rwx /home/penner
:)Zapewnienie innym użytkownikom dostępu do ogólnego zapisu
Jeśli zamiast
drwxr-xr-x
, w ostatnich sześciu literach są literyw
s zamiast-
s, to oprócz tego użytkownicypenner
mogą mieć dostęp do zapisu dopenner
katalogu domowego. Jest to niebezpieczne (chyba że naprawdę wiesz, co robisz i chcesz tego w ten sposób i skonfigurowałeś rzeczy, aby nie stanowiło to problemu). Naprawić to:Inne domyślne
Istnieje kilka innych zmian, które możesz chcieć wprowadzić. Domyślnie w Ubuntu (to znaczy, jeśli tworzysz konto użytkownika za pomocą
adduser
lub za pomocą narzędzia graficznego, czego nie zrobiłeś):Katalogi domowe mają uprawnienia do odczytu i zapisu dla wszystkich, nie tylko dla użytkownika, który jest ich właścicielem. Użytkownicy mogą to zmienić dla całego katalogu domowego lub dowolnych plików i podkatalogów w nim zawartych. Ale jeśli chcesz, to ustawienie domyślne, a nie masz drugi i trzeci
r
ix
wdrwxr-xr-x
uruchom:(
penner
jest w stanie uruchomić to polecenie, jeśli są właścicielami własnego katalogu domowego, więc jeśli wolisz, możesz uruchomić to jakosudo -u penner chmod 755 /home/penner
:)Każdy użytkownik ma swoją własną grupę o tej samej nazwie co użytkownik i jest to podstawowa grupa użytkownika. Ich katalog domowy jest własnością tej grupy. To jest znaczenie drugiego
penner
wdrwxr-xr-x 43 penner penner 4096 2012-07-03 06:41 /home/penner
. Można zerwać z tym ustawieniem domyślnym, jeśli wiesz, co robisz . Ale jeśli nie masz zamiaru robić różnych rzeczy, powinieneś upewnić się, żepenner
jest skonfigurowany w ten sposób, ponieważ niektóre możliwe tożsamości grupy podstawowej dla użytkownika lub właścicieli grup w katalogu osobistym użytkownika mogą prowadzić do problemów z bezpieczeństwem.Uruchom
groups penner
. (Zobaczman groups
więcej informacji.) Powinieneś zobaczyć coś takiego:Nie martw się, jeśli tak nie jest. Niedługo do tego dojdę. Zamiast tego spójrz na pierwsze słowo po
:
. To jest nazwa grupy podstawowej użytkownika. Zakładając, że chcesz, żeby tak byłopenner
, upewnij się, że tak jest. Jeśli nie, zmień:Jeśli pojawi się błąd informujący, że grupa
penner
nie istnieje, musisz ją utworzyć za pomocą tego polecenia (a następnie ponownie uruchomić powyższe polecenie):man addgroup
więcej informacji. (Jeśli wolisz, możesz alternatywnie użyćgroupadd
polecenia, aby utworzyć grupy).Gdy biegałeś
groups penner
, być może lista grup była znacznie krótsza niż mojapenner : penner adm dialout cdrom plugdev lpadmin sambashare
. Dla użytkowników komputerów stacjonarnych, Theadm
,dialout
,cdrom
,plugdev
,lpadmin
, isambashare
zapewnienie możliwości, że użytkownicy stacjonarnych powinny zasadniczo mieć. Dlatego, chyba że masz powód, aby postąpić inaczej,penner
powinieneś należeć do tych grup. Nie są to jednak grupy podstawowe, więc są ustawione inaczej. Załóżmy, żepenner
nie ma w żadnej z tych grup i chceszpenner
być we wszystkich, uruchom to polecenie:Jeśli jesteś zainteresowany, oto, co oznaczają wszystkie te grupy:
adm
użytkownicy mogą przeglądać większość plików dziennika systemu/var/log
.dialout
użytkownicy mogą korzystać z modemów telefonicznych.plugdev
użytkownicy mogą montować i używać zewnętrznych urządzeń pamięci masowej.lpadmin
użytkownicy mogą konfigurować drukarki i zarządzać nimi .sambashare
użytkownicy mogą udostępniać pliki (przez Sambę ) innym komputerom przez sieć.(Źródło: uprawnienia , na wiki dokumentacji Ubuntu.)
Uczynienie użytkownika administratorem
Jeśli nie chcesz
penner
być administratorem, prawdopodobnie nie musisz robić nic więcej. Możesz sprawdzić, czypenner
jest administratoremgroups penner
. Jeśli aniadmin
niesudo
ma na liście,penner
to nie jest administratorem.Jeśli chcesz
penner
być administratorem, dodajpenner
do dowolnej z tych grup. (Równie dobrze możesz dodaćpenner
do obu, jeśli oba istnieją.) Możesz to zrobić, uruchamiając osobno te dwie komendy - jeśli jedno z nich się powiedzie, utworzyłeśpenner
administratora:admin
grupie. Począwszy od Ubuntu 12.04 LTS, administratorzy są wsudo
grupie. Ale jeśli twój system LTS 12.04 zostanie zaktualizowany z poprzedniej wersji (i powinno to mieć zastosowanie do późniejszych wersji Ubuntu, takich jak 12.10, kiedy wyjdzie, które są uaktualnione z Ubuntu 11.10 lub wcześniejszej), to w celu zachowania kompatybilności wstecznej administratorzy są członkami obusudo
aadmin
. Zasadniczo, jeśli jedna z tych grup nie przyznaje zdolności administracyjnych, po prostu nie istnieje, więc uruchomienie obu powyższych poleceń (osobno, a nie jakosudo usermod -a -G admin,sudo penner
) jest ogólnie bezpiecznym i skutecznym sposobem na utworzeniepenner
administratora.źródło
sudo chmod u+a /home/penner
daje błąd na Ubuntu 16.04 (Xenial). Czysudo chmod u+rw /home/penner
to właściwy zamiennik?useradd
? trzymanie losowego zepsutego koduuseradd
powoduje problemy w Ubuntu, których nie powoduje w innych systemach. W moim systemie 16.04/etc/default/useradd
ma (jako jedyną niepomocowaną linię)SHELL=/bin/sh
, a useradd (8) wydaje się mówić, żeSHELL
wartość jest używana, jeśli nie podano flagi-s
/--shell
, ale w moim systemie 16.04 to się nie zdarza. Myliłem się, mówiąc tak pochopnie, że Ubuntuuseradd
nie jest zepsute. Teraz nie jestem tego taki pewien. Może istnieje dobry powód tej różnicy między Fedorą a Debianem (i Ubuntu) ... ale usunąłem swój komentarz, aby nie wprowadzać w błąd ludzi.Dzieje się tak głównie wtedy, gdy użytkownik tworzy się bez tworzenia katalogu domowego dla użytkownika. Można to rozwiązać za pomocą tego polecenia podczas tworzenia użytkownika
Flaga -m jest tym, co tworzy katalog domowy użytkownika. Po utworzeniu użytkownika sprawdź, czy dla tego użytkownika istnieje katalog domowy
Jeśli widzisz tam nazwę użytkownika, ostatnią rzeczą do zrobienia jest przypisanie hasła do tego użytkownika
Możesz teraz zalogować się przy użyciu tej nazwy użytkownika i hasła
źródło
ctrl + alt + f1 i zaloguj się tam i uruchom
sudo chown -R $ USER: $ USER $ HOME
następnie naciśnij ctrl + alt + f7 i spróbuj się zalogować
To będzie działać
źródło