Baru-baru ini, saya beralih dari Ubuntu ke Arch Linux. Saya telah menginstal X11 sebagai Sistem Jendela dan KDE sebagai Lingkungan Desktop saya. Saya sudah partisi terpisah untuk /home
, /var
, /
dan /boot
dan mereka semua me-mount pada saat boot. Ketika saya menjalankan startx
, pesan berikut ini akan ditampilkan.
xauth:timeout in locking authority file /home/hello/.Xauthority
Secara tidak sengaja, saya telah menghapus file itu. Jadi, saya menyalinnya dari /root
. Saya telah mengubah otoritas menggunakan kode di bawah ini:
# chown hello:users ~/.Xauthority
Bahkan setelah ini, saya tidak dapat berjalan startx
kecuali saya menggunakan akun root.
startx
lagi. Apakah itu bekerja? Jika tidak, apa pesan kesalahan sebenarnya?Jawaban:
Pertama klarifikasi,
X
adalah tidak seorang window manager , itu adalah sistem windowing .Sekarang,
~/.Xauthority
file hanyalah tempat kredensial identifikasi untukX
sesi pengguna saat ini disimpan, itu adalah file yang dibaca ketika sistem perlu menentukan apakah Anda memiliki hak untuk menggunakanX
sesi saat ini .Anda tidak boleh menyalin yang sudah ada dari akun lain, file harus selalu milik pengguna yang sedang berjalan
X
dan dibuat secara otomatis saat Anda memulaiX
sesi baru . Jadi, hapus saja yang Anda miliki, lalu jalankanstartx
lagi, semuanya akan berfungsi seperti biasa:sumber
startx
lagi.df -h
dan pastikan masalah ini masih ada setelah dimulai ulang.Saya pikir masalahnya adalah orang-orang masuk sebagai root, kemudian beralih menggunakan pengguna
su -l username
, yang membuat / menumbuhkan subproses di bawah root yang dimiliki oleh "nama pengguna". X akan menggunakan.Xauthority
proses paling atas (dalam hal ini root), yang mana "nama pengguna" tidak memiliki izin untuk digunakan.Kesalahan akan ditampilkan:
Untuk mengatasinya, jalankan saja
login
alih-alihsu
memulai shell baru sebagai proses teratas.sumber
Saya menemukan ini di Lenovo IdeaPad dengan dua kartu grafis, satu dari Intel yang lain dari Nvidia.
Kesalahan yang dihasilkan dari
startx
termasuk baris ini:Ini solusinya:
/etc/mkinitcpio.conf
dengan menambahkanMODULES=(nouveau)
sudo mkinitcpio -p linux
sumber