Chciałbym ustawić tapetę na ekranie logowania (Unity Greeter), jak to zrobić?
Chciałbym ustawić tapetę na ekranie logowania (Unity Greeter), jak to zrobić?
Odpowiedzi:
Ubuntu 12.04 Unity greeter wprowadził dynamiczne tło wybranego użytkownika, co oznacza, że po wybraniu użytkownika z listy dostępnych użytkowników tło zmieni się, odzwierciedlając tło pulpitu wybranego użytkownika.
Domyślnie lightdm ustawi się /usr/share/backgrounds/warty-final-ubuntu.png
jako domyślne tło i opcję włączenia dynamicznego tła.
Otwórz terminal i uzyskaj root
sudo -i
( Wpisz hasło sudo )
Pozwól użytkownikowi lightdm utworzyć połączenie z serwerem X.
xhost +SI:localuser:lightdm
Przełącz użytkownika na lightdm
su lightdm -s /bin/bash
Wyłącz dynamiczne przełączanie tła
gsettings set com.canonical.unity-greeter draw-user-backgrounds 'false'
Jeśli chcesz zresetować to ustawienie do domyślnych po zmianie, wykonaj wszystkie kroki aż do powyższego polecenia i zamiast tego użyj
gsettings reset com.canonical.unity-greeter draw-user-backgrounds
Po zakończeniu ustawiania lub przywracania domyślnej funkcji dynamicznego tła możesz zamknąć terminal lub wpisać 2x exit
, po pierwsze, aby przywrócić root i po drugie, aby usunąć uprawnienia roota i powrócić do normalnego użytkownika.
(zobaczysz to tylko, jeśli użytkownik nie ustawił obrazu tła pulpitu lub jeśli ustawienie dynamiczne jest ustawione na false )
Otwórz terminal i uzyskaj root
sudo -i
( Wpisz hasło sudo )
Pozwól użytkownikowi lightdm utworzyć połączenie z serwerem X.
xhost +SI:localuser:lightdm
Przełącz użytkownika na lightdm
su lightdm -s /bin/bash
Zmień domyślne tło na wybrane zdjęcie
gsettings set com.canonical.unity-greeter background '/foo/wallpaper.png'
(Uwaga: plik tapety nie może znajdować się w zaszyfrowanym domu użytkownika, są one montowane dopiero po zalogowaniu się na swoim koncie.)
Jeśli chcesz przywrócić to domyślne tło, wykonaj wszystkie kroki aż do powyższego polecenia, ale zamiast tego wpisz
gsettings reset com.canonical.unity-greeter background
Po zakończeniu zmiany domyślnej funkcji tła lub powrotu do domyślnej możesz zamknąć terminal lub wpisać 2x exit
, po pierwsze, aby przywrócić root, a po drugie, aby usunąć uprawnienia roota i wrócić do normalnego użytkownika.
Uruchom to polecenie w terminalu ( Ctrl+ Alt+ T)
gksu gedit /etc/lightdm/unity-greeter.conf
Zobaczysz gedit (aplikacja do edycji tekstu) z tym tekstem:
Po prostu edytuj wiersz BACKGROUND=...
z absolutną ścieżką do obrazu tła twojego pragnienia.
Następnie kliknij przycisk Zapisz lub Ctrl+ Si zamknij okno. Gotowe.
Wyloguj się, aby zobaczyć, jak działa.
Ubuntu 12.04 , 14.04 i 16.04
Odpowiedź Bruno Pereiry działała dla mnie, ale nie mogła być użyta w kontekście bez X11. Oto inny sposób na zrobienie tego samego ... bez potrzeby X11 (i łatwe do skryptowania):
Edytuj następujący plik:
sudoedit /usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override
[com.canonical.unity-greeter]
draw-user-backgrounds=false
background='/foo/wallpaper.png'
Zastosuj nowe ustawienia:
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
sudo ./script /path/to/image
. Można go znaleźć na mojej stronie github . Został przetestowany w Ubuntu 14.04 LTS i 15.10.
Przedsiębiorczy programista stworzył prosty aplet, który zmieni tapetę:
żeby zainstalować
sudo apt-add-repository ppa:claudiocn/slm
sudo apt-get update
sudo apt-get install simple-lightdm-manager
Sugeruję użycie Ubuntu Tweak . Możesz odpowiednio skonfigurować to, co logo i obraz w tle, bez bałagania przy użyciu plików konfiguracyjnych:
Ten zrzut ekranu został zrobiony 10.10 Maverick, jeśli ktoś może łatwo sprawdzić, czy działa on również z najnowszymi wersjami Ubuntu, edycja tej odpowiedzi jest mile widziana!
Ubuntu 12.10
Podejście to wykorzystuje raczej edytor dconf niż gsettings. Zmiany w unity-greeter muszą być wykonane jako użytkownik lightdm. Kroki są następujące:
Zmień na użytkownika root.
sudo -i
Daj użytkownikom lightdm dostęp do serwera X.
xhost +SI:localuser:lightdm
Zmień na użytkownika lightdm.
su lightdm -s /bin/bash
Uruchom edytor dconf.
dconf-editor
Wybierz / com / canonical / unity-greeter i zmień właściwości.
dbus-launch dconf-editor
jest wymagane(?).
Główna odpowiedź nie działa dla mnie, ponieważ nie używam programu witającego jedność. Mój lightdm jest skonfigurowany do używania lightdm-gtk-greeter.
Znalazłem rozwiązanie, przeglądając kod źródłowy lightdm. Pyta DBus, aby znaleźć właściwość BackgroundFile dla użytkownika. Możesz to zmienić za pomocą programu d-feet (lub narzędzia wiersza poleceń).
Przejdź do tego punktu na d-stopach:
Kliknij dwukrotnie funkcję „SetBackgroundFile”. W oknie, które zostanie otwarte, wpisz nazwę pliku tapety (z podwójnymi cudzysłowami). Kliknij przycisk Wykonaj. Jeśli wszystko jest w porządku, zobaczysz komunikat „Ta funkcja nic nie zwróciła”.
Następnym razem lightdm uruchomi nową tapetę, którą wybrałeś.
Wszystkie wersje
1) Pobierz Ubuntu Tweak:
Pobierz dla Ubuntu 12.04 Precise Pangolin
Pobierz dla Ubuntu 11.10 Oneiric Ocelot
Jeśli używasz 12.04 Precise: aby zmienić tapetę logowania, po prostu zmień tapetę pulpitu , dzięki Ubuntu Tweak możesz zmienić tylko logo.
Jeśli używasz 11.10 Oneiric, możesz użyć Ubuntu Tweak, aby zmienić tapetę i logo logowania.
2) Otwórz pobrany pakiet i zainstaluj go
3) Uruchom Ubuntu Tweak.
Przejdź do Tweaks> Ustawienia logowania. Kliknij Odblokuj i kliknij obraz, który chcesz zmienić.
Jeśli używasz 12.04 Precise: aby zmienić tapetę logowania, po prostu zmień tapetę pulpitu, dzięki Ubuntu Tweak możesz zmienić logo.
Jest to obejście dla 12.04 i bieżącej wersji unity-greeter (domyślny „motyw”). W przypadku innych Greeterów, takich jak lightdm-gtk-greeter, zwykle działa edycja pliku conf /etc/lightdm/
. Ale unity-greeter nie patrzy już na unity-greeter.conf i nie jest jasne, jak go skonfigurować.
Zrobiłem to: znalazłem obraz, który upiera się przy jedności. Dla mnie było /usr/share/backgrounds
. Przenieś / usuń / zmień nazwę. Teraz unity-greeter powróci do domyślnego tła, którym jest /usr/share/backgrounds/warty-final-ubuntu.png
. Przenieś / usuń / zmień nazwę tego. Teraz musisz umieścić w tym miejscu inny obraz o tej nazwie. I nie, to nie musi być png (tak naprawdę warty-final-ubuntu.png to jpg z powodów, dla których nie będę tu wchodził). Uważam, że zamiennikiem musi być jpg (ktoś mnie poprawi, jeśli się mylę). Bądź bardzo ostrożny tutaj. Myślę, że jeśli lightdm nie może wrócić do domyślnego tła, może się zdarzyć coś strasznego: - / (może pokaże tylko kolorowe tło ... i tak bądź ostrożny!).
W moim przypadku właśnie utworzyłem dowiązanie symboliczne z innego tła w tej lokalizacji:
sudo ln -s Bird_by_Magnus.jpg warty-final-ubuntu.png
uruchom to polecenie, gdy jesteś w /usr/share/backgrounds/
(lub odpowiednio dostosuj polecenie). Oczywiście zastąp jpg tym, co jest dostępne i pożądane.
Pamiętaj, że jeśli zamierzasz używać tła w domu, musisz upewnić się, że dom nie jest zaszyfrowany, ponieważ lightdm nie będzie w stanie odczytać tego pliku, dopóki się nie zalogujesz. Upewnij się także, że masz odpowiednie uprawnienia do pliku. Jeśli nie wiesz, co to oznacza, trzymaj się tapety, która już jest w środku /usr/share/backgrounds/
. (Losowa wskazówka: możesz uzyskać więcej tapet z wcześniejszych wersji Ubuntu zainstalowanych poprawnie w tym katalogu przez sudo apt-get install ubuntu-wallpapers-oneiric
, zamień „oneiric” na „natty” itp.)
To działało dla mnie. Przez nautilus zmieniłem nazwę oryginalnego /usr/share/backgrounds/warty-final-ubuntu.png
pliku obrazu w środku, następnie wkleiłem mój ulubiony obraz jako tapetę logowania i zmieniłem nazwę na warty-final-ubuntu.png, a następnie zastosowałem te same właściwości pliku, co w przypadku oryginalnego.
To rozwiązanie jest wariantem tego samb . Zaletami tego rozwiązania jest to, że wszystkie dostosowania są wykonywane /etc
i że należy skompilować tylko jeden plik.
mkdir /etc/dconf/db/local.d
sudo edit /etc/dconf/db/local.d/10-unity-greeter
Zmień ustawienia zgodnie z własnymi preferencjami:
[com/canonical/unity-greeter]
draw-user-backgrounds=false
background='/usr/share/backgrounds/Haukland_Beach_view_by_Michele_Agostini.jpg'
Utwórz skompilowany plik dla tych ustawień:
sudo dconf compile /etc/dconf/db/local /etc/dconf/db/local.d
Edytuj profil użytkownika:
sudo edit /etc/dconf/profile/user
Uwzględnij lokalne dostosowanie poprzez system-db
wpis:
user-db:user
system-db:local
Może być konieczne ponowne uruchomienie lightdm, aby zmiany pokazały się:
if dialog --defaultno --yesno "Restart lightdm?\n\nThis will terminate all desktop sessions!" 10 30; then sudo service lightdm restart; fi
Et voila, niestandardowe tło powitania jedności.
12.04
W Ubuntu 12.04 nie musisz już wykonywać tych wszystkich edycji wiersza poleceń. Wystarczy zmienić tapetę i voilá , LightDM użyje jej jako tła (:
Niestety wydaje się, że nie jest jeszcze w pełni zaimplementowany, ponieważ po uruchomieniu komputera przez kilka sekund widzisz domyślną tapetę Ubuntu, zanim zmieni się ona w tapetę. Ale ponieważ mówimy o wersji beta ( Ubuntu 12.04 jest teraz w wersji Beta 2 ), należy się tego spodziewać.
Mam nadzieję, że odpowiedział na twoje pytanie (:
Ubuntu 12.04
Wystarczy umieścić pożądane tło lightdm w domyślnym folderze zdjęć Ubuntu (nie w podfolderze), a następnie ustawić jako tapetę.
Po użyciu Nautilus do nawigacji i przeglądania odpowiedniego pliku .png lub .jpg, który może służyć jako ekran logowania i tapeta ekranu blokady, Nautilus może ustawić to dla Ciebie za pomocą skryptu:
Uwaga: W Ubuntu 18.04 zmienia się tylko tapeta ekranu blokady. Do zmiany tapety logowania wymagana będzie inna technika.
Aby utworzyć skrypt, użyj:
cd ~/.local/share/nautilus/scripts/
gedit set-login-wallpaper
Wklej w tych wierszach:
#!/bin/bash
## Set login wallpaper
# strip new line char passed by Nautilus
FILENAME=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed -e 's/\r//g')
# Multiple files can't be selected.
LINE_COUNT=$(wc -l <<< "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")
LINE_COUNT=$((LINE_COUNT-1))
if [[ $LINE_COUNT > 1 ]] ; then
zenity --error --text "Ony one file can be selected at a time! "
exit 1
fi
# Object type must be "file..." (ie no directories, etc.)
if [ -d "${FILENAME}" ] ; then
zenity --error --text "$FILENAME is a directory!";
exit 1
else
if [ -f "${FILENAME}" ]; then
: # Bash noop
else
zenity --error --text "${FILENAME} is not a file!";
exit 2
fi
fi
# Build working file in /tmp
echo "[com.canonical.unity-greeter]" > /tmp/set-login-wallpaper.tmp
echo "draw-user-backgrounds=false" >> /tmp/set-login-wallpaper.tmp
echo "background='$FILENAME'" >> /tmp/set-login-wallpaper.tmp
# Must run as sudo
if [ "$EUID" -ne 0 ] ; then
# Get sudo password
PASSWORD=$(zenity --password --title="Set Login Wallpaper" --timeout=20)
# copy working file to real file using sudo
echo $PASSWORD | sudo -S cp /tmp/set-login-wallpaper.tmp \
/usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override
# compile using sudo
echo $PASSWORD | sudo -S glib-compile-schemas /usr/share/glib-2.0/schemas
else
# Already sudo so simply copy and compile
# copy working file to real file
cp /tmp/set-login-wallpaper.tmp \
/usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override
# compile
glib-compile-schemas /usr/share/glib-2.0/schemas
fi
exit 0
Zapisz plik i zamknij gedit
edytor.
Teraz zaznacz skrypt jako wykonywalny, używając:
chmod +x set-login-wallpaper
Otwórz Nautilus i przejdź do katalogu z obrazami tapet. Znajdź odpowiedni obraz i kliknij go prawym przyciskiem myszy. Pojawi się to menu rozwijane:
Kliknij trzecią opcję Scripts
. Pojawi się kolejne menu rozwijane ze wszystkimi twoimi skryptami:
Wybierz set-login-wallpaper
.
Po uruchomieniu skryptu konieczne będzie podanie sudo
hasła.
Uruchom ponownie i ciesz się nową tapetą logowania.
Odwiedź Podręcznik Ubuntu, aby uzyskać pełne instrukcje tego przeglądu:
/usr/share/backgrounds
css
plik, który definiuje tło logowania do GDMresource:///org/gnome/shell/theme/noise-texture.png
swój obrazZobacz także te istniejące odpowiedzi w Ask Ubuntu :
To jest moje rozwiązanie dla tych, którzy nie są w stanie zmienić tła ekranu logowania.
Miałem ten problem, kiedy zmieniłem tapetę, ale otrzymywałem domyślne tło logowania do Ubuntu. Więc zlokalizowałem wallpaper.jpg
plik w terminalu i zmieniłem jego uprawnienia na, powiedzmy:
chmod 777 walpaper.jpg
Coś, co daje pełny dostęp i teraz możemy zobaczyć efekt. Tapeta, którą wybiorę na pulpicie, jest również widoczna jako tło ekranu logowania. Dotyczy to wszystkich użytkowników.