Bisakah saya menetapkan pengguna default di lightdm?

12

Saya telah bermain dengan Ubuntu Oneiric di netbook saya (di mana kerusakan tidak terlalu menjadi perhatian); Saya suka layar masuk lightdm baru, tetapi memiliki satu gangguan kecil: selain akun pengguna saya sendiri, ada akun lain untuk sesekali digunakan oleh pacar saya, dan akun penggunanya adalah yang selalu fokus (mungkin karena itu pertama menurut abjad) .

Saya tahu cara memperbaikinya dalam gdm tetapi belum menemukan solusi untuk lightdm . Adakah yang tahu cara mengaturnya sehingga akun saya disorot secara default?

Sean Fitzpatrick
sumber

Jawaban:

5

Di /etc/lightdm/lightdm.conf

Turunkan file sampai Anda mendapatkan:

# greeter-hide-users=false

Hapus komentar, pastikan nilainya salah.

Lizardx
sumber
2
Saya mendapat kesan bahwa opsi dan nilai yang dikomentari di /etc/lightdm/lightdm.conf menunjukkan nilai default tapi bukan itu masalahnya. Jadi, tidak mengomentari kalimat bisa berpengaruh. Juga beberapa opsi tampaknya berpengaruh pada logout / login, namun opsi ini tampaknya mengharuskan reboot untuk berlaku.
PiersyP
Ada tiga level untuk ini, dengan file konfigurasi sedang dibaca dalam urutan ini (yaitu terakhir ditimpa sebelumnya): file dalam /usr/share/lightdm/lightdm.conf.d, file dalam /etc/lightdm.conf.ddan /etc/lightdm.confitu sendiri. Default mungkin ditimpa sebelumnya dan perlu diatur ulang nanti.
Fiximan
Itu klarifikasi yang bermanfaat, terima kasih.
Lizardx
4

jawaban hackerb9 melakukannya untuk saya, tetapi daripada membuat skrip, itu jauh lebih mudah untuk hanya "membekukan" file konfigurasi. Inilah yang harus dilakukan:

  • Buka file konfigurasi untuk diedit (perhatikan bahwa tergantung pada rasa Ubuntu yang Anda gunakan, folder di dalamnya .cachemungkin disebut sesuatu yang lain)
    sudo nano /var/lib/lightdm/.cache/lightdm-gtk-greeter/state
  • Edit baris berikut untuk mencerminkan nama akun pengguna default
    last-user=[DEFAULT-USER]
  • Mungkin akan baik juga menambahkan komentar ke file yang menyatakan bahwa itu terkunci dan bagaimana caranya
  • Jalankan perintah berikut untuk "membekukan" file sehingga tidak dapat diubah oleh lightdm
    sudo chattr +i /var/lib/lightdm/.cache/lightdm-gtk-greeter/state

Sekarang lightdm tidak akan dapat memperbarui file ini ketika pengguna yang berbeda login untuk memastikan bahwa pengguna default Anda akan selalu terdaftar ketika layar login dimuat.

Jika ini cocok untuk Anda, dan Anda memutuskan untuk memilih, silakan up-vote posting hackerb9 dan ini merupakan turunan dengan metode terpisah.

b_laoshi
sumber
1
Sangat bagus, @b_laoshi. Saya suka bahwa Anda tidak bergantung pada skrip shell. Saya sarankan meletakkan komentar di file negara sehingga sysadmin masa depan (atau diri Anda sendiri) akan tahu mengapa itu tidak dapat diubah. Saya pikir ini adalah solusi yang baik pada satu mesin, tetapi saya harus menyebutkan mungkin ada kerugian bagi orang yang mencobanya dalam situasi lab. (1) atribut sistem file yang diperluas tidak dapat diandalkan untuk bertahan pada cadangan. (2) demikian juga, jika Anda memiliki lab komputer yang disalin dari master jaringan, atribut fs bisa hilang. (3) / var / lib tidak dijamin akan dipertahankan, misalnya pada peningkatan.
hackerb9
3

Edit file /etc/lightdm/lightdm.conf ( gksu gedit /etc/lightdm/lightdm.conf) dan tambahkan baris seperti ini di sana:

default-user=sean_fitzpatrick
desgua
sumber
Terima kasih, tapi sejauh ini saya tidak beruntung - apakah ini berhasil untuk Anda? Saya sudah mencoba variasi yang berbeda, misalnya default-user = sean (nama login saya), default-user = 1000 (UID saya), dll tetapi sejauh ini, tidak ada perubahan.
Sean Fitzpatrick
Saya sudah membacanya di suatu tempat, tidak ingat di mana. Saya belum menggunakan lightdm. Saya akan meneliti lebih lanjut.
desgua
Oke, ini tampaknya berfungsi sekarang - dengan pembaruan terbaru, pengguna yang benar dipilih secara default. Tidak yakin apakah ini karena saya menambahkan baris pengguna-default, atau jika sekarang mengingat login terakhir. (Saya kira saya bisa mencoba menghapus garis pengguna-default dan melihat apa yang terjadi - tetapi setidaknya itu berfungsi sekarang!)
Sean Fitzpatrick
2
Sebagai catatan singkat bagi siapa saja yang membaca ini dan menggunakan 12.04, pengaturan ini tidak lagi memiliki efek dan tidak ada dalam contoh file conf lagi. Saya percaya bahwa mulai 12,04 default akan menjadi pengguna login terakhir.
mfisch
3

Opsi "pengguna-default" telah dihapus dari lightdm. Mengapa? Tidak ada yang tahu. Sudah lima tahun sejak pertanyaan ini awalnya diajukan dan masih rusak. Lightdm sekarang menyimpan status siapa yang terakhir kali masuk dalam file tersembunyi di sini:

/var/lib/lightdm/.cache/lightdm-gtk-greeter/state

Jadi, inilah solusi tiga langkah:

  1. Buat skrip shell bernama /usr/local/bin/lightdm-default-userdengan konten berikut:

    #!/bin/sh
    
    # LightDM removed the default-user option.
    # The only recourse now is an ugly kludge. 
    
    # Note that if you want to default to the "Guest Session",
    # you need to specify the last user as "*guest".
    
    /bin/echo -e '[greeter]\nlast-user=*guest' > /var/lib/lightdm/.cache/lightdm-gtk-greeter/state
    
  2. Jadikan itu dapat dieksekusi: chmod 755 /usr/local/bin/lightdm-default-user

  3. Apakah lightdm secara otomatis menjalankan skrip saat memulai dengan mengedit /etc/lightdm/lightdm.confdan menambahkan baris di [SeatDefaults]bagian:

    [SeatDefaults]
    greeter-setup-script=/usr/local/bin/lightdm-default-user
    

Ini sangat jelek tetapi sayangnya, ini adalah solusi terbaik saat ini.

hackerb9
sumber
Saya menduga itu dilakukan karena alasan keamanan (yaitu, nama pengguna dianggap informasi sensitif).
Scott Smith
Inilah yang saya butuhkan. Saya mengambil pendekatan yang sedikit berbeda. Script shell sebenarnya tidak perlu. Lihat jawaban saya untuk penjelasan tentang "pembekuan" statefile.
b_laoshi