ดังนั้นฉันต้องการทราบว่าเป็นรุ่น OpenGL ของฉันหรือไม่ ฉันสามารถเข้าถึง Ubuntu ผ่าน SSH ฉันจะใช้คำสั่งใด
ดังนั้นฉันต้องการทราบว่าเป็นรุ่น OpenGL ของฉันหรือไม่ ฉันสามารถเข้าถึง Ubuntu ผ่าน SSH ฉันจะใช้คำสั่งใด
คำตอบ:
ในการตรวจสอบเวอร์ชั่น OpenGL
glxinfo | grep "OpenGL version"
คุณจะได้รับผลลัพธ์ดังนี้
glxinfo | grep "OpenGL version"
OpenGL version string: 1.4 (2.1 Mesa 7.7.1)
แก้ไข:
คุณอาจโชคดีขึ้นด้วย OpenGL สมัยใหม่เพียงแค่ grepping สำหรับ "version" แทนที่จะเป็น "OpenGL version" ที่ให้ความแตกต่างระหว่างคอร์และโปรไฟล์ที่เข้ากันได้รวมถึง GLSL และ GLES รุ่นต่างๆ:
glxinfo | grep 'version'
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
Max core profile version: 4.1
Max compat profile version: 3.0
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL core profile version string: 4.1 (Core Profile) Mesa 11.1.2
OpenGL core profile shading language version string: 4.10
OpenGL version string: 3.0 Mesa 11.1.2
OpenGL shading language version string: 1.30
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.1.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
โปรดสังเกตว่าเวอร์ชันจริงจะแสดงโดย "โปรไฟล์โปรไฟล์หลัก" (4.1) ในขณะที่ "รุ่น OpenGL" แสดงเป็น 3.0
glxinfo
จะไม่สามารถใช้งานได้ตามค่าเริ่มต้น เพื่อให้สามารถใช้งานได้คุณจะต้องติดตั้งmesa-utils
แพคเกจ
ขึ้นอยู่กับสิ่งที่คุณกำลังมองหา:
การใช้งาน Open GL
คุณสามารถใช้ glxinfo จากแพ็คเกจ mesa-utils:
sudo apt-get install mesa-utils
glxinfo | grep "OpenGL version"
ห้องสมุดพัฒนา
สิ่งนี้ขึ้นอยู่กับ
dpkg -s [package name]
จะแจ้งข้อมูลเวอร์ชั่น ฯลฯ ของแพ็คเกจใด ๆ
แต่คุณจะต้องรู้ว่าส่วนใด / การใช้งานเฉพาะของ opengl ที่คุณสนใจฉันสงสัยว่าสำหรับคุณมันจะเป็น:
dpkg -s libglu1-mesa
หมายเหตุ:ฉันได้เพิ่มคำตอบนี้ในภายหลังเพราะไม่มีคำตอบที่มีอยู่ในด้านที่สำคัญเกี่ยวกับ ssh และจะให้ค่าทำให้เข้าใจผิดแก่ผู้ที่ทำตามคำแนะนำข้างต้น
ใช้ X-forwardingเมื่อ ssh-ing ssh -X
นี้จะเปิดใช้งานด้วย
โดยไม่ต้องส่งต่อ x:
$ ssh MYCOMP
$ glxinfo
Error: unable to open display
ด้วยการส่งต่อ x:
$ ssh -X MYCOMP
$ glxinfo | grep -i opengl
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce 8800 GT/PCIe/SSE2
OpenGL version string: 2.1.2 NVIDIA 310.44
OpenGL shading language version string: 1.20 NVIDIA via Cg compiler
OpenGL extensions:
ฉันควรทราบที่นี่ที่ว่านี้เป็นทั้งกราฟิกการ์ดที่ไม่ถูกต้องและหมายเลขรุ่นที่ไม่ถูกต้อง ('ผิด' ในแง่ของสิ่งที่คุณคาดหวัง)
ตั้งค่าDISPLAY
ตัวแปรเป็น:0
เพื่ออนุญาตการเข้าถึงไดร์เวอร์ของการ์ดกราฟิกจากเซสชันระยะไกล
$ ssh -X MYCOMP
$ DISPLAY=:0
$ glxinfo | grep -i opengl
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 550 Ti/PCIe/SSE2
OpenGL version string: 4.3.0 NVIDIA 310.14
OpenGL shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL extensions:
รายการนี้แสดงการ์ดกราฟิกที่ถูกต้อง (การ์ดหนึ่งบนคอมพิวเตอร์ระยะไกล) รวมถึงหมายเลขรุ่นที่ถูกต้อง
localhost:10.0
X Error of failed request: GLXBadContext
สำหรับผู้ที่ต้องการเพียงหมายเลขรุ่นเท่านั้นตัวอย่างเช่นเพื่อให้ในข้อโต้แย้งของโปรแกรมคุณสามารถใช้
$ glxinfo | awk '/OpenGL version/ {print $4}'
3.0
หมายเหตุ: optirun glxinfo | awk '/OpenGL version/ {print $4}'
หากคุณใช้ภมร
คุณสามารถรับข้อมูลโดยใช้คำสั่งต่อไปนี้:
DISPLAY=:0 glxgears -info | grep GL_VERSION
echos นี้คล้ายกับ:
GL_VERSION = 3.3.0 NVIDIA 340.93
ลองโดยไม่ใช้DISPLAY=:0
ในกรณีที่มีปัญหา คำสั่งglxgears
อยู่ในmesa-utils
แพ็คเกจซึ่งสามารถติดตั้งได้กับ:
sudo apt-get install mesa-utils
หากคุณมีสิทธิ์เข้าถึงรูทไปยังคอมพิวเตอร์ระยะไกลที่ใช้ Ubuntu 16.04 คุณสามารถเรียกใช้ได้
user@local_computer:~$ ssh root@remote.example.com
root@remote:~# export DISPLAY=:0
root@remote:~# export XAUTHORITY=/var/lib/lightdm/.Xauthority
root@remote:~# glxinfo | grep -i "OpenGL version"
OpenGL version string: 3.0 Mesa 11.2.0
Ubuntu 17.10, open terminal และ type;
glxinfo | grep "OpenGL version"
คุณจะได้รับสิ่งนี้
OpenGL version string: 3.0 Mesa 17.2.2
หากคุณได้รับข้อผิดพลาดว่าโปรแกรม glxinfo ไม่พร้อมใช้งานคุณจะต้องป้อนคำสั่ง
sudo apt install mesa-utils