Makine başsız olduğunda, kullanıcı artık ayrıcalıklı değildir


12

Temel sorun şudur: HERHANGİ bir gnome oturumu, gerçek bir fiziksel / yerel ekranın üzerinde oturmuyor - veya bu ekranın gölgelenmesi (örn. NXserver'ın gölge modu) - hatalı ayrıcalıklara sahip. Kök olarak çalıştırıldığında bile!

VNC / gölge olmayan NX oturumları için sorunlu davranışı düzeltmenin bir yolu hakkında yorumlarınız var mı?


Ev Ubuntu başsız sunucumu uzun bir süre sonra yükseltiyorum ve önceki Ubuntu sürümlerinde var olduğunu hatırlamadığım birçok sorun yaşıyorum.

Bazı detaylar:

  • Ubuntu-11.04-server-amd64.iso ile başladım ve üstüne ubuntu-desktop yükledim.
  • uname -a: Linux MiddleEarth 2.6.38-8-sunucu # 42-Ubuntu SMP Pzt 11 Nis 03:49:04 UTC 2011 x86_64 x86_64 x86_64 GNU / Linux
  • Donanım Intel D920, 2GB Ram, gfx bazı fansız nvidia 6600, 3xGigabit, 1x100mbit, monitör yok, klavye, fare bağlı.

1. Tur

Bir monitör takılıyken test / kurulum yaparken , her ikisi de o monitörün önünde otururken ve masaüstü makinemden (vino'ya) VNCing yaparken çok şefkatliydi.

Monitör olmadan sorunlar ortaya çıkar:

[Çözülmemiş / Bırakılan]

Çok ilk sorun vino oldu inatçı ve GDM sırasında / önce yüklenmesi hoşuna gitmedi. Ama bu başsız bir sistem olduğundan, varsayılan olarak X ile başlamak için gerçekten ihtiyacım yok (yani başlangıç ​​seviyesini değiştirmek), bu yüzden bu biraz tartışma. Ancak, daha eski bir ubuntu sürümünde (v9.04 sanırım) bunu yapmak çok kolay olduğunu açıkça hatırlıyorum . Ve iyi çalıştı; ama artık değil !? ... her neyse, bu fikri tamamen bıraktım.

[Çözülmüş]

Daha sonra Birlik / efektler VNC'yi karıştırdı ( Hile yaparak çözüldü ).

[Çözülmemiş]

Başlangıçta NXserver'a geçtim, belki aşağıdaki sorunların sıkıvnc veya vino sorunları olduğunu umuyordum, ancak böyle bir şans yok. (Not: 2. turu okuyun)

VNC (veya NXserver) aracılığıyla uzaktan erişim yaparken kullanıcı hesabım HDD'leri bağlama / bağlantısını kesme yeteneğini kaybediyor.

Ekran görüntüsü: 750GB_RAID1 bağlanılamıyor

VNC (veya NXserver) aracılığıyla uzaktan erişim yaparken kullanıcı hesabım bazı ayrıcalıklı yapılandırma seçeneklerine erişemiyor,
bazı örnekler:

  • "Sistem -> Yönetim -> Kullanıcılar ve Gruplar" öğesinde hiçbir şey yapamaz (ör. 'kullanıcı ekle' veya 'gelişmiş ayarlar').
  • "Sistem -> Yönetim -> Giriş Ekranı" nda "kilit açma" özelliğini kullanamazsınız.
  • gparted dosya sistemleri hakkında bilgi alamıyor.
  • vb. (diğer çeşitli yönetici / yapılandırma iletişim kutuları da düzgün çalışmıyor)

Sadece bunun gerçek bir fiziksel monitör cihazı bağlı olmadığında kullanıcı ayrıcalıklarının düzgün şekilde atanmamasıyla ilgili bir şey olduğunu tahmin edebilirim.
'NEDEN' nedeni, başsız olduğunda ubuntu 11.04'te olur, kaçar; Ubuntu'nun önceki sürümlerinde bu davranışı hatırlamıyorum.

HDD montaj sorununun dahili / statik hdds için bir sorun olmadığını unutmayın (yine de statik oldukları için onları fstab'a ekliyorum). Ama çıkarılabilir usb medya için gerçekten büyük bir acı.

Geri kalan sorunlar, nasıl düzeltebileceğimi
anlamadım ... Ne düşündüğünüzü biliyorum ... ssh, sudo su'ya giriş yapın ve vncserver'ı kök altında tamamen çalıştırın?

Ekran görüntüsü: (root olarak) gparted fs bilgilerini bulamıyor

Sürpriz sürpriz! root'un gui'si de bozuldu: gparted bilgi alamıyor, kullanıcı ve gruplar tamamen gri görünüyor (bu benim normal kullanıcımdan farklı bir davranış). Garip bir şekilde Giriş ekranı yönetim proggy iyi çalışıyor gibi görünüyor.


2. devre

(NOT: Bunun sonuçta bir fark yaratıp yaratmadığını bilmiyorum. 1. ve 2. turlar arasındaki bir noktada, bu konudaki # 21 ve # 24 yazılarında belirtilen değişiklikleri uyguladım )

Düzenli tightvnc / NXServer oturumları aynı davranışa sahiptir, AMA ...

[Kısmi Çözüm / Asıl sorun hala orada]

NXClient bağlantı ayarlarında, 'gölge' modunu seçtiğimde (gölge sizi yerel ekrana bağlar, yani masaüstü gölgeleme) ...

Bu oturumda her şey mükemmel çalışıyor!

Fark ettiğim bir şey, hemen bir anahtarlık şifresi istemem ...

Ancak, normal (gölge değil) bir NX bağlantısı veya normal bir vnc ile bağlanırsam, aynı sorunlara geri dönüyor.

PS Ben round1 ve round2 (ben yerel olarak bir txt dosyasında tutuyordu) yazdı zaman inbettween birkaç gün vardı. Neyin işe yarayacağını görmek için çeşitli önerileri test ediyordum, bu yüzden bu xorg.conf VNC cihazının düzenlemesinin mi yoksa nomodeset ayarının bir fark yaratıp yaratmadığından emin değilim.

[DÜZEN 2011-06-10]

NXServer ve GDM

Yazma sırasında sistemi otomatik girişe ayarladım, bu yüzden gölge bağlantısı basitçe çalıştı. Daha sonra bunu devre dışı bırakıp sistemi yeniden başlattığımda, NX bir hata verdi, ancak biraz Google ile bu iş parçacığını buldum

Bunlar /usr/NX/etc/server.cfg üzerinde yaptığım rahatsız edici ve değişiklikler:

EnableAdministratorLogin = "1"
EnableSessionShadowing = "1"
EnableInteractiveSessionShadowing = "1"
EnableSessionShadowingAuthorization = "0"
EnableDesktopSharing = "1"
EnableInteractiveDesktopSharing = "1"
EnableFullDesktopSharing = "1"
EnableAdministratorDesktopSharing = "1"
EnableDesktopSharingAuthorization = "0"
EnableSystemDesktopSharingAuthorization = "0"

(Daha kamuya açık bir ağ olsaydı, yani üniversite / büyük ofis olsaydı, muhtemelen biraz daha katı ayarlar kullanardım, ama bunlar bana uygun.

Yeniden başlattıktan sonra nxclient ile masaüstü 'shadow' (yerel ekran) ayarına giriş yaptım ve GDM aldım! : D

Ne yazık ki pano 'gölge' oturumunda çalışmıyor (Diğer / normal olanlarda iyi çalışıyor)

[EDIT 2011-06-11] Xvfb
üzerinde tökezledi, ancak böyle kullanıldığında aynı sorunlara sahip:

Xvfb :2 -ac -screen 0 1280x1024x32 -pixdepths 8 24  2>&1 >/dev/null &
export DISPLAY=:2
gnome-session --session=2d-gnome 2>&1 >/dev/null &
x11vnc --display :2 --passwd blahblah

Yanıtlar:


5

Suçluyu buldum.
Yeni bir kurulumda test edildi, bunun bir hata olduğunu doğruladı.

Hata raporu gönderdim

Kısacası sorun şudur: Polkit kimlik doğrulama diyalogu, VNC / NX oturumunun bulunduğu DISPLAY: 1 yerine DISPLAY: 0'da görünecektir.

Geçici bir çözüm , oturum açıldığında otomatik olarak kimlik doğrulaması yapmak için libpam anahtarlığını kullanmak olabilir .
ya ... çizik muhtemelen yapmazdım, o, 'evet' 'auth_admin' sadece tüm ilke kiti ayarları için bir değişiklik muhtemelen ... ve tabii ki tamamen policykit tartışmalı hale edeceğini, sorunu düzeltmek istiyorum iç çekiş


1
Görüntüyü kaldırmak için Xorg.conf dosyanızı değiştirebilir misiniz: 0. X'in orada koşması için bile bir neden göremiyorum. Bu şekilde VNC / NX DISPLAY: 0 alabilir?
user606723

2

Bunun doğru PolicyKit davranışı olduğunu düşünüyorum.

Etkin , Etkin Değil ve Diğer herhangi bir kullanıcı için politika farklıdır, bu nedenle NX aracılığıyla bağlandığınızda Etkin (yerel konsollarda etkin oturumlardaki istemciler) veya Etkin değil (yerel konsollarda etkin olmayan oturumlardaki istemciler ) olmazsınız , ancak Herhangi bir kullanıcı.

Komutu olan farklı kullanıcı türleri için ilke denetimi altında Eylem için varsayılan ilkeyi görebilirsiniz

pkaction --verbose

Gördüğünüz gibi, Any türündeki kullanıcı, Etkin kullanıcılarla karşılaştırıldığında sınırlıdır.

Düzeltmek için varsayılan politikayı değiştirebilirsiniz. Aşağıda, doğru konuma yerleştirilecek bir ilke seti dosyası oluşturmak için bir awk komut dosyası önerin. Bu senaryo:

#!/usr/bin/awk -f

/^[^ ]/ {
  action = substr($0, 1, length($0) - 1)
}
/^ / {
  if ($1 == "description:") {
    $1 = ""
    description = substr($0, 2)
    if (description == "")
      description = action
  } else if ($1 == "implicit") {
    if ($2 == "any:")
      any = $3
    else if ($2 == "inactive:")
      inactive = $3
    else if ($2 == "active:") {
      active = $3
      print ""
      print "[" description "]"
      print "Identity=unix-group:admin"
      print "Action=" action
      print "ResultActive="   active
      print "ResultInactive=" active
      print "ResultAny="      active
    }
  }
}

Diyelim ki çağırıyorsunuz create-policy. Yürütülebilir hale getirin, komut dosyasını yürütün

pkaction --verbose | ./create-policy > local.pkla 

sonra elde edilen dosyayı taşıyın:

sudo mv local.pkla /var/lib/polkit-1/localauthority/50-local.d/

Artık yerel oturum kullanıcısıyla aynı haklara sahip olmalısınız.


0

NX ile benzer bir sorunla karşılaşıyordum ve aşağıdaki iş parçacığını buldum:

NX kullanırken neden Klasik yerine Unity alıyorum?

Windows NX istemcimi düzenledim, böylece masaüstü Unix & Custom olarak ayarlandı, sonra aşağıdaki komutu çalıştıracak şekilde ayarladım:

gnome-session --session=classic-gnome

Ve seçilen Yeni Sanal Masaüstü .
Ondan sonra gitmeye iyiydim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.