VNC tidak bekerja dengan compiz

10

Saat ini vnc (dengan kartu nvidia gfx) tidak berfungsi dengan compiz ..

Anda akan memperbaikinya sebelum 11,04 dirilis sehingga orang dapat menggunakan vnc dengan desktop default?

Jorge Castro
sumber
Saya VNC ke desktop saya menggunakan compiz dan nvidia sepanjang waktu. Masalah apa yang kamu punya
Oli
1
Compiz sudah diaktifkan di desktop default dan telah sejak Ubuntu 7.10 (!)
8128
saya curiga ini adalah bug yang mempengaruhi saya: bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/353126 , namun, saya belum pernah melihat compiz bekerja dengan vino di salah satu mesin saya dan masih tidak (bahkan pada maverick) )
1
Anda harus menentukan -noxdamage di server x11vnc Anda jika Anda bermaksud menjalankan Compiz. Jika Anda menggunakan server Vino bawaan (sistem / preferensi / Remote Desktop), saya tidak tahu - tidak pernah menggunakannya. Vino tidak memiliki terlalu banyak fitur yang saya gunakan (penskalaan sisi-server yang utama).
Scaine
Seperti yang diminta, Jorge.
Scaine

Jawaban:

7

Server VNC saat ini di System / Preferences / Remote Desktop disebut vino-server. Saat ini tidak mendukung operasi ketika Compiz (Desktop Effects) diaktifkan.

Untuk mengatasinya, Anda harus menggunakan server vnc pengganti. Saya menggunakan x11vnc.

sudo apt-get install x11vnc

Yang terpenting, Anda harus menentukan -noxdamage ketika Anda memulai server x11vnc jika Anda bermaksud menjalankan Compiz.

Pertama, inisialisasi x11vnc dengan kata sandi:

x11vnc -usepw

dan ikuti petunjuknya. Maka inilah contoh bagaimana saya menjalankan server vnc saya:

x11vnc -usepw -setelah -noxdamage -skala 4/5 -avahi -nolookup -q

  • avahi berarti server akan mengiklankan dirinya sendiri menggunakan avahi (multicast dns)
  • skala 4/5 akan berarti bahwa layar 1900x1200 akan muat pada layar 1280x1024.
  • nolookup berarti bahwa server tidak akan mencoba mencari klien. Tidak ada jeda yang panjang.
  • q akan menekan beberapa output ke konsol. Atau gunakan -logfile sebagai gantinya.
  • noxdamage akan membuat efek compiz Anda bekerja.
  • selamanya hanya berarti bahwa server akan terus berjalan setelah klien terputus.

Jika Anda melakukan "man x11vnc", Anda akan melihat bahwa ada rakit opsi tambahan. Tetapi yang ditentukan di atas harus membuat Anda berjalan.

Jika Anda perlu menjalankan ini pada startup, saya pribadi menjalankan ini di /etc/rc.local, tapi saya yakin ada cara yang lebih baik. EDIT: Dan ada cara-cara yang lebih mudah, dirinci di situs ini: Bagaimana menjalankan skrip saat start up? . Jadi, saya kira yang termudah adalah opsi crontab -e, tetapi Anda juga bisa menyimpan perintah sebagai skrip di suatu tempat, lalu tentukan saja di aplikasi sistem / preferensi / startup.

Scaine
sumber
Apakah saya juga perlu mencegah vino-servermemulai?
HDave
Saya tidak pernah repot-repot mengubah vino-server, HDave. Juga, sejauh yang saya bisa tahu, 12,04 tidak mengirim dengan vino-server lagi. Selama PC yang Anda coba sambungkan mendengarkan dengan benar pada 5900, Anda akan baik-baik saja. Periksa dengan menjalankan netstat -nlpdan mencari garis yang mengatakan 0.0.0.0.0900 dengan kata "DENGARKAN" pada baris yang sama.
Scaine
Menjalankan 12,04 di sini, dan netstat -nlpmelaporkan vino-servermendengarkan pada port 5900. AFAIK Saya tidak melakukan apa pun untuk mewujudkannya ... lalu lagi dengan semua permainan yang telah saya lakukan .... Pastinya vino-server tidak muncul /etc/initatau konfigurasi pemula yang pernah saya lihat.
HDave
Ya, itu aneh. Saya memiliki laptop yang cukup bersih di sebelah saya yang menjalankan Ubuntu 12.04 32-bit dan tentunya tidak mendengarkan pada 5900. Anda mungkin harus mematikan vino-server sebelum mencoba x11vnc, jika tidak x11vnc mungkin tidak dapat mengikat ke port yang benar.
Scaine
2

opsi nodamage berfungsi, tetapi kecuali Anda berada di jaringan yang sangat cepat, itu adalah ide yang buruk - memaksa semuanya untuk memperbarui setiap saat walaupun tidak berubah, yang menggunakan bandwidth dalam jumlah besar.

Lukas
sumber
2

Mengoreksi @ jawaban yang bagus Scaine, itu adalah mungkin untuk menggunakan vino-serverdengan efek compiz diaktifkan.

Inilah cara menonaktifkan xdamagedi vino, dan dengan demikian membuat VNC bekerja dengan compiz:

gsettings set org.gnome.Vino disable-xdamage true

Selesai!

Sekarang Anda dapat menggunakan Ubuntu "Desktop Sharing" default menggunakan bahkan dengan Unity 3D. Tidak perlu menginstalx11vnc

Tetapi, seperti yang telah ditunjukkan oleh orang lain, menonaktifkan xdamage menyebabkan lalu lintas jaringan yang besar. Bukan masalah besar di jaringan lokal, tetapi kinerjanya mungkin terganggu jika kendali jarak jauh melalui internet.

MestreLion
sumber
Terkadang, saya bertanya-tanya apakah berbagi jarak jauh sebenarnya adalah sebuah renungan di ubuntu-land. Ini benar-benar harus berfungsi langsung dari kotak.
Antony
@Antony: baik Vino maupun Compiz tidak eksklusif untuk Ubuntu, jadi itu benar-benar bukan kesalahan mereka. Dan bug tersebut terkait dengan driver video berpemilik, yang sepenuhnya di luar
kendali
1

Jika Anda mengaktifkan efek visual desktop (disetel ke Ekstra) dengan driver nvidia eksklusif, vnc ke mesin BEKERJA tetapi layar membeku setelah Anda awalnya masuk dan Anda tidak dapat melihat apa-apa (kecuali gambar beku). Ini bekerja dengan benar dengan driver opensource (setidaknya untuk ATI).

berkilau
sumber
0

Saya menggunakan mac book pro untuk mengontrol desktop ubuntu saya. Saya menghentikan layar beku dengan masuk ke pusat AMD Catalyst Control dan kemudian di bawah opsi tampilan saya pergi ke tab "Tear Free" dan kemudian Diaktifkan Desktop Tear free untuk mengurangi air mata.

Mulai bekerja tepat setelah itu.

Brian
sumber