Ubuntu18 远程桌面 VNC-Server 配置[亲测]

①安装vino
sudo apt update
sudo apt install vino

②设Enable VNC 服务

sudo ln -s ../vino-server.service   /usr/lib/systemd/user/graphical-session.target.wants
gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false
sudo  nano  /usr/share/glib-2.0/schemas/org.gnome.Vino.gschema.xml

结尾处加入下面这段内容:

<key name='enabled' type='b'>
   <summary>Enable remote access to the desktop</summary>
   <description>
        If true, allows remote access to the desktop via the RFB
        protocol. Users on remote machines may then connect to the
        desktop using a VNC viewer.
   </description>
   <default>false</default>
</key>

③设置为Gnome编译模式
sudo glib-compile-schemas /usr/share/glib-2.0/schemas
在这里插入图片描述
在这里插入图片描述
sudo gedit ~/openvino

#!/bin/bash
export DISPLAY=:0
gsettings set org.gnome.Vino enabled true
gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false
xrandr --fb 1280x1024
/usr/lib/vino/vino-server &

sudo chmod +x ~/openvino

./openvino
在这里插入图片描述
如果这样则
sudo apt-get install dconf-editor
运行里输入dc
打开dcconf 关闭下面的选项就可以了
在这里插入图片描述
记得打开5900端口
apt install ufw
ufw enable
ufw allow 5900

分辨率

gedit /etc/X11/xorg.conf

Section "Screen"
   Identifier    "Default Screen"
   Monitor       "Configured Monitor"
   Device        "Tegra0"
   SubSection "Display"
       Depth    24
       Virtual 1280 800 # 改为自己需要的分辨率
   EndSubSection
EndSection
### 嵌入式 Tomcat 无法启动的原因与解决方案 嵌入式 Tomcat 的启动失败可能由多种因素引起,以下是常见的原因及其对应的解决方案: #### 背景描述 在开发基于 Spring Boot 或其他框架的应用程序时,如果使用了嵌入式的 Tomcat 容器作为应用服务器,在某些情况下可能会遇到 `Unable to start embedded Tomcat` 错误。这种错误通常会阻止应用程序正常运行。 --- #### 可能的原因及对应解决方案 1. **Spring Boot 版本不兼容** 如果使用的 Spring Boot 和其依赖库之间的版本存在冲突,则可能导致容器初始化失败。例如,Nacos 配置中心或其他组件可能存在版本适配问题[^1]。 - 确认当前项目的 Spring Boot 版本与其他依赖项(如 Nacos、Tomcat)的版本是否匹配。 - 更新到最新稳定版或查阅官方文档推荐的组合配置。 2. **JDK 版本不适配** JDK 不同版本之间可能存在 API 差异或者安全策略调整,这会影响嵌入式 Tomcat 的加载过程[^2]。 - 检查项目所用的 JDK 是否满足最低支持要求。 - 推荐使用 LTS 版本(如 Java 8 或 Java 11),并确保环境变量设置正确。 3. **静态资源路径配置错误** 若项目中的静态文件路径未按约定命名或缺少必要的前缀字符(如 `/`),则可能导致类加载器找不到指定目录下的资源文件[^3]。 - 修改相关配置文件(通常是 application.properties 或 application.yml),确认如下属性无误: ```properties spring.resources.static-locations=classpath:/static/,classpath:/public/ ``` 4. **端口被占用** 默认情况下,Spring Boot 应用尝试绑定默认 HTTP 端口 (8080),但如果该端口已被其他服务占据,则会导致启动失败。 - 更改应用监听端口号至可用范围内的数值: ```yaml server: port: 9090 ``` 5. **外部依赖缺失或网络连接受限** 当项目依赖于远程注册表(如 Eureka Server)完成实例发现操作时,一旦目标地址不可达便会抛出异常提示 “Cannot execute request on any known server”。 - 核实所有必需的服务均已部署完毕且处于可访问状态; - 对于本地调试场景建议启用 mock 数据模拟真实交互逻辑减少对外部系统的依赖程度。 6. **日志级别过高掩盖实际问题** 过滤掉部分警告信息使得开发者难以定位根本原因所在。 - 将 logging level 设置得更加细致以便捕捉更多细节线索辅助排查工作开展: ```yaml logging: level: org.springframework.boot.web.embedded.tomcat: DEBUG ``` 7. **自定义 Bean 初始化顺序不当引发循环注入等问题** 复杂业务场景下容易出现此类隐患需特别留意处理方式的选择以免造成不必要的麻烦发生。 --- ### 示例代码片段 以下是一个简单的 Spring Boot 配置示例,用于验证上述提到的一些常见问题是否存在: ```java @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } @Bean public EmbeddedServletContainerCustomizer containerCustomizer() { return (container -> { if (container instanceof TomcatEmbeddedServletContainerFactory) { ((TomcatEmbeddedServletContainerFactory) container).addConnectorCustomizers(connector -> { connector.setPort(9090); // 自定义端口 }); } }); } } ``` --- ### 总结 通过以上分析可以看出,“Unable to start embedded Tomcat”的具体成因多样复杂,因此需要针对具体情况逐一排除干扰因素直至找到症结所在为止。同时也要注意保持良好的编码习惯以及合理规划架构设计从而降低潜在风险发生的概率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值