Xvfb
Typ | Visa server |
---|---|
Hemsida |
Xvfb eller X virtual framebuffer är en bildskärmsserver som implementerar X11- skärmserverprotokollet. Till skillnad från andra displayservrar utför Xvfb alla grafiska operationer i virtuellt minne utan att visa någon skärmutdata. klientens synvinkel fungerar den precis som vilken annan X-displayserver som helst , den betjänar förfrågningar och skickar händelser och fel efter behov. Ingen utdata visas dock. Denna virtuella server kräver inte att datorn den körs på har någon form av grafikadapter , en skärm eller någon inmatningsenhet . Endast ett nätverkslager behövs.
Användningsscenarier
Xvfb används främst för att testa:
- Eftersom den delar kod med den riktiga X-servern kan den användas för att testa de delar av koden som inte är relaterade till den specifika hårdvaran.
- Den kan användas för att testa klienter under olika förhållanden som annars skulle kräva en rad olika hårdvara; till exempel kan den användas för att testa om klienter fungerar korrekt på djup eller skärmstorlekar som sällan stöds av hårdvara.
- Bakgrundsdrift av kunder. ( Xwd- programmet eller ett liknande program för att ta en skärmdump kan användas för att faktiskt se resultatet)
- Köra program som kräver att en X-server är aktiv även när de inte använder den. (t.ex. Clover HTML-rapporter)
Användningsexempel
Exempel på skärmdump
Som ett exempel kör följande kommandosekvens en virtuell framebuffer X-server som display :1 , kör ett program på den och fångar den virtuella skärmen i filen image.png med hjälp av importkommandot från ImageMagick :
Xvfb :1 & xv -display :1 & import -display :1 -window root image.png
Resultatet kan visas genom att köra visningsprogrammet ImageMagick ( display image.png
) eller xv ( xv image.png )
. Programmet xvfb-run används ofta för att automatisera processen att hitta en tillgänglig skärm och hantera autentisering.
xvfb-run-kommandot
Fjärrkontroll över SSH
Xvfb används även för fjärrkontroll. VNC över SSH är något [ vagt ] snabbare än X11 över SSH. I det här fallet kombineras Xvfb ofta med en lättviktig fönsterhanterare (som Fluxbox eller Openbox ) och en VNC-server som X11vnc . En möjlig sekvens av kommandon för att starta detta på servern är:
0 export DISPLAY = :1 Xvfb " $DISPLAY " -skärm 1024x768x24 & fluxbox & x11vnc -display " $DISPLAY " -bg -nopw -lyssna localhost -xkb
Nästa steg är att starta en SSH-klient som PuTTY med tunnling till localhost-port 5900 aktiverad. En vncviewer kan sedan ansluta till localhost för att få fjärrkontroll över servern.
ssh -N -T -L 5900 :localhost:5900 användare@remotehost & vncviewer -kodningar 'copyrect tight zrle hextile' localhost:5900
x11vncs man-sida innehåller också instruktioner.
Xvnc (inte att förväxla med x11vnc) är väldigt lik Xvfb.
Se även
externa länkar
- Xvfb manualsida
- Xvfb + Firefox – gör automatiska skärmdumpar av webbsidor med Xvfb och Mozilla Firefox
- Xdummy ett alternativ till Xvfb med en vanlig X11-server med dummy-drivrutiner