Nästa Föregående Innehållsförteckning

6. Tips & Trick

6.1 Att köra X och GL versionerna utan setuid

Om du endast kör X och GL versionerna av Quake, QuakeWolrd eller Quake II, behöver du inte köra dem med rooträttigheter. SVGA är det enda läget som måste köras som root. X versionerna behöver endast tillgång till /dev/dsp, ljudenheten. GL versionerna behöver tillgång till både 3Dfx kortet och /dev/dsp.

/dev/dsp måste vara läs och skrivbar av Quake. De flesta distributioner ger den rättigheterna 662 (rw-rw--w- /dev/dsp. På de flesta system är möjligheten att läsa från ljudenheten inget allvarligt säkerhetsproblem. Om den här lösningen inte är acceptabel för ditt system, skapa en grupp som äger /dev/dsp och låt dina Quakespelare tillhöra den gruppen.

Du behöver drivrutinen för /dev/3dfx som kan hämtas från Daryll Strauss' glide sida ( http://glide.xxedgexx.com/3DfxRPMS.html) för att köra glide applicationer (som GLQuake) utan rooträttigheter. Ladda ner Device3Dfx.xxx.rpm paketet och installera enligt instruktionerna på webbsidan. Efter att du installerat drivrutinen, se till att /dev/3dfx har rättigheterna 666 (chmod 666 /dev/3dfx).

När /dev/dsp och /dev/3dfx är korrekt konfigurerade, kan du ta bort setuidbitten från dina Quake/QW/Q2 binärer. Ge bara (som root) kommandot chmod 0755 XXXXX, där XXXXX antingen är glquake, quake.x11, eller quake2.

Om du har spelat som root innan du gjort dessa ändringar, kommer många av dina Quakefiler (t.ex. sparade spel) vara ägda av root och inte vara åtkomliga för vanliga användare, så kom ihåg att ändra filernas ägare innan du försöker spela utan att vara root.

6.2 Att köra SVGA och GL spel från X **

GLX Quakeworld och Quake II klienterna är rena X applikationer, men eftersom den använder Mesa istället för 3Dfx mini-drivrutinen, är de långsammare än lib3dfxgl.so versionerna. Därför kanske du föredrar att starta så här från X istället för att använda GLX klienterna.

Följande är baserat på ett "2 cent tip" av Joey Hess ( joey@kite.ml.org) från Linux Gazette. Originalet finns på http://www.ssc.com/lg/issue20/lg_tips20.html#squake

Ja, det är möjligt att köra Quake spelen från X om du är root, men sådant beteende är styggt, och du riskerar att krasha Quake och tappa konsolen. Med lite arbete kan du göra det möjligt för en vanlig användare att köra SVGA och GL Quake från X OCH automatiskt växla tillbaka till X när programmet avslutas, vare sig det avslutas normalt eller ej.

Notis: när jag säger "Quake" i texten nedan, menar jag egentligen "quake, glquake, squake, qwcl, glqwcl, qwcl.x11 eller quake2".

6.3 Att hålla musen innanför fönstret i X

Från readme.linux filen i Quake II:

Musen kommer inte automatiskt att 'knytas' till Quake2 fönstret. För att få Quake2 att fånga musen, välj 'Windowed Mouse' från video menyn, eller skriv '_windowed_mouse 0' vid konsolen. För att göra motsatsen, släppa musen, kan du binda tangenterna till att fånga och släppa musen i konsolen så här: bind i "_windowed_mouse 1" bind o "_windowed_mouse 0" Sen kommer "i" att fånga musen och "o" kommer att släppa den.

6.4 3Dfx "tweak" inställningar fungerar även under Linux

Du kanske har sett eller hört talas om olika sätt att "tweaka" Quakes OpenGL beteende genom att sätta olika omgivningsvariabler. Dessa variabler fungerar lika bra under Linux. Du måste bara sätta dem en aning annorlunda. Om en Dos/Windows "tweak" guide säger:

     SET SST_GRXCLK=59
     

Får du göra så här under Linux:

     export SST_GRXCLK=59
     

6.5 Fattig Mans Server Bläddrare

Joe S. ( jszabo@eden.rutgers.edu) föreslår:

     ett trick jag använder med qstat:
     Jag skapar en fil med mina favorit servrar, sedan skriver jag
     qstat -f /C/quake2/file.txt | less
     

tryck Ctrl-z för att suspendera, kopiera sedan ip adressen eller värdnamnet med gpm till en kommandorad så här:

     ./quake2 +connect expert.eqclans.com
     
Sen kan jag använda fg för att gå tillbaka till listan senare...

6.6 Att använda lib3dfxgl.so med Quake I **

Du kan använda 3Dfx mini-drivrutinen (lib3dfxgl.so) från Quakeworld eller Quake II även med glquake. Kopiera bara glqwcl.3dfxgl eller quake2.3dfxgl skripten till en ny fil, låt säga glquake.3dfxgl. Editera sedan glquake.3dfxgl skriptet so det kör glquake istället för glqwcl. Samma restriktioner för att köra som root gäller här, liksom skillnaderna mellan att köra under glibc och libc5. Se Quakeworld eller Quake II sektionerna för mera information om lib3dfxgl.so.


Nästa Föregående Innehållsförteckning