X11转发配置运行图形化linux程序问答
1. Ubuntu到CentOS命令转换:
o 用户需要将用于检查CPU虚拟化支持和安装虚拟化软件的Ubuntu命令转换为CentOS命令。
o 用户在尝试安装libvirt-daemon-system和libvirt-clients时遇到包无法找到的问题。用户发现libvirtd服务未激活。提供了启动服务的命令sudo systemctl start libvirtd。
2. x86架构保护环和虚拟化域:
o 用户询问关于x86架构中的保护环(Ring 0-3)和虚拟化域(Domain 0)。解释了保护环的不同权限级别和虚拟化域的概念,特别是Domain 0的作用。
o 用户询问x86架构中的特权指令,以及root用户执行rm -rf /*命令的影响。解释了特权指令和用户模式下命令的区别,以及root用户执行危险命令可能导致的系统不稳定。
3. CPU指令集比较:
o 用户比较了Xeon(R) Silver 4210和Kunpeng-920 CPU的指令集。解释了不同架构CPU的指令集差异,并指出性能不能仅通过指令集数量判断。
4. ARM架构CPU虚拟化支持检查:
o 用户提供了virt-host-validate工具的输出。解释了输出中的各项检查内容,特别是关于IOMMU支持的警告。
o 在dmesg命令的输出中,CPU features: detected: Virtualization Host Extensions这句话表示系统已经检测到CPU支持虚拟化主机扩展功能。这里的“Virtualization Host Extensions”指的是CPU提供的一系列硬件特性,这些特性使得在物理机上运行虚拟机更加高效和安全。
具体来说,这些扩展功能可能包括:
%3. VT-x(Intel)或AMD-V(AMD):
• 这些是Intel和AMD分别提供的硬件辅助虚拟化技术,允许单个物理CPU上并行运行多个虚拟机。
%3. Extended Page Tables (EPT):
• 这是Intel VT-x技术的一部分,允许虚拟机有自己的页表,从而提高虚拟机内存管理的效率。
%3. Nested Virtualization:
• 允许在一个虚拟机内运行另一个虚拟机,这对于复杂的云计算环境非常有用。
%3. Direct Hardware Access:
• 虚拟机可以直接访问硬件资源,而不需要宿主机操作系统的干预。
%3. I/O MMU (Intel VT-d 或 AMD-Vi):
• 提供了一种机制,允许虚拟机直接访问I/O设备,而不需要CPU的介入,这可以提高I/O性能。
5. X11转发问题:
o 用户要运行图形化软件virt-manager来创建和管理虚拟机,在使用SSH登录进行X11转发时遇到问题。提供了启用SSH X11转发的步骤,包括在SSH客户端和服务器端的配置。
o 用户询问如何在WindTerm中配置SSH连接以启用X11转发。确保你已经在本地启动了X11服务器(如VcXsrv),并且WindTerm配置中选择了“External X display”并正确填写了VcXsrv的显示和端口信息。其实配置Internal X display会更方便。
o 用户询问在选择X11认证协议时应该选择MIT-MAGIC-COOKIE-1还是XDM-AUTHORIZATION-1。解释了两种协议的区别和适用场景。
o MIT-MAGIC-COOKIE-1:
• 这是一种基于“cookie”的简单认证机制,其中“cookie”是一个随机生成的128位密钥,存储在用户的~/.Xauthority文件中。
• 客户端以明文方式发送这个“cookie”到服务器,如果客户端提供的“cookie”与X服务器持有的匹配,则连接被允许。
• 由于“cookie”在网络上以明文传输,存在被网络嗅探的风险,因此这种认证机制适用于网络环境相对安全的场景。
o XDM-AUTHORIZATION-1:
• 这是一种基于DES加密的认证机制,提供了比MIT-MAGIC-COOKIE-1更高的安全性。
• 它使用一个56位的DES加密密钥和64位的随机数据作为认证器,与MIT-MAGIC-COOKIE-1相比,它在客户端和服务器之间提供了更安全的数据传输。
• 由于使用了加密,XDM-AUTHORIZATION-1被认为是更安全的选择,特别是在网络环境可能存在嗅探风险的情况下。
o 用户在使用WindTerm进行SSH连接和X11转发时遇到错误。提供了解决SSH连接时“Channel request x11-req failed”错误的步骤。确保您在远程服务器上安装了xauth,这是一个用于X11转发认证的工具。
6. GNOME桌面环境安装:
o 用户询问如何在Kylin(CentOS)系统上安装GNOME桌面环境。用户打算以后尝试使用secureCRT而不是windterm,以及下载使用Xming而不使用vcxsrv,但现在在服务器上安装桌面系统gnome来解决linux图像化软件运行的问题。sudo yum groupinstall "X Window System"。安装完后还是报错:Module or Group 'GNOME Desktop' is not available.
o “带 UKUI GUI 的服务器”是指使用UKUI桌面环境的服务器版本。UKUI(Ubuntu Kylin User Interface)是由麒麟团队开发的一款轻量级Linux桌面环境,主要基于GTK和QT开发,旨在提供更简单和愉悦的用户体验。它通常被用于银河麒麟操作系统及其他Linux发行版中。sudo yum groupinstall "带 UKUI GUI 的服务器"。在安装了,大小约1.4G 。
o 用户在尝试安装桌面环境时遇到/boot分区空间不足的问题,因为桌面环境的内核比当前的版本要新一些(第三位修订版本)。建议清理旧内核和不必要的文件以释放空间。installing package kernel-core-4.19.90-89.17.v2401.ky10.aarch64 needs 7MB on the /boot filesystem
o 用户询问是否可以删除救援内核文件以释放空间。提供了删除救援内核文件的步骤,并强调了备份数据和谨慎操作的重要性。未删除。放弃继续安装桌面环境。
7. X11转发成功但遇到新问题:
o 用户成功使用X11转发配置下完成ssh登录,但遇到了.Xauthority文件不存在和OpenGL驱动加载失败的问题。这些问题并不影响用户的继续操作。
8. QEMU命令行解释:
o 用户提供了一条QEMU命令行,并请求解释其含义。这条命令实际上是使用vitual machine manager通过ISO在虚拟机里安装好了麒麟系统然后运行起来的后台命令。详细解释了命令中的各个参数,包括虚拟机的名称、调试选项、安全设置、机器类型、CPU、内存、SMP配置、UUID、监控设备、时间配置、启动和引导设置、PCI设备、USB控制器、SCSI和存储设备、光驱、网络、串行端口和控制台、输入设备、VNC和图形、气球驱动以及安全和沙箱设置。
o /usr/libexec/qemu-kvm -name guest=kylin10.0_vm1,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-1-kylin10.0_vm1/master-key.aes -machine virt-4.1,accel=kvm,usb=off,dump-guest-core=off,gic-version=3 -cpu host -drive file=/usr/share/edk2/aarch64/QEMU_EFI-pflash.raw,if=pflash,format=raw,unit=0,readonly=on -drive file=/var/lib/libvirt/qemu/nvram/kylin10.0_vm1_VARS.fd,if=pflash,format=raw,unit=1 -m 2048 -overcommit mem-lock=off -smp 2,sockets=2,cores=1,threads=1 -uuid e2b55ea4-acf7-4d96-ada7-f89eb5021522 -no-user-config -nodefaults -chardev socket,id=charmonitor,fd=31,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-reboot -boot strict=on -device pcie-root-port,port=0x8,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,addr=0x1 -device pcie-root-port,port=0x9,chassis=2,id=pci.2,bus=pcie.0,addr=0x1.0x1 -device pcie-root-port,port=0xa,chassis=3,id=pci.3,bus=pcie.0,addr=0x1.0x2 -device pcie-root-port,port=0xb,chassis=4,id=pci.4,bus=pcie.0,addr=0x1.0x3 -device pcie-root-port,port=0xc,chassis=5,id=pci.5,bus=pcie.0,addr=0x1.0x4 -device pcie-root-port,port=0xd,chassis=6,id=pci.6,bus=pcie.0,addr=0x1.0x5 -device pcie-root-port,port=0xe,chassis=7,id=pci.7,bus=pcie.0,addr=0x1.0x6 -device pcie-root-port,port=0xf,chassis=8,id=pci.8,bus=pcie.0,addr=0x1.0x7 -device qemu-xhci,p2=15,p3=15,id=usb,bus=pci.2,addr=0x0 -device virtio-scsi-pci,id=scsi0,bus=pci.3,addr=0x0 -device virtio-serial-pci,id=virtio-serial0,bus=pci.4,addr=0x0 -drive file=/var/lib/libvirt/images/kylin10.0_vm1.qcow2,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-pci,scsi=off,bus=pci.5,addr=0x0,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=2 -drive file=/root/vt/Kylin-Server-V10-SP3-2403-Release-20240426-arm64.iso,format=raw,if=none,id=drive-scsi0-0-0-0,readonly=on -device scsi-cd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,device_id=drive-scsi0-0-0-0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -netdev tap,fd=34,id=hostnet0,vhost=on,vhostfd=36 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:a8:e0:85,bus=pci.1,addr=0x0 -chardev pty,id=charserial0 -serial chardev:charserial0 -chardev socket,id=charchannel0,fd=37,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 -device usb-tablet,id=input0,bus=usb.0,port=1 -device usb-kbd,id=input1,bus=usb.0,port=2 -vnc 127.0.0.1:0 -device virtio-gpu-pci,id=video0,max_outputs=1,bus=pci.7,addr=0x0 -device virtio-balloon-pci,id=balloon0,bus=pci.6,addr=0x0 -sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny -msg timestamp=on
- 点赞
- 收藏
- 关注作者
评论(0)