前言

众所不周知,ubuntu的snap有些让人无语凝噎的问题,比方说如果你在Ubuntu 24.04 LTS通过它安装vscode,恭喜你,你无法在vscode中输入中文,缘由不明,又或者对于stretchly,对不起,没有开机自动启动,即使你勾选了它,反正就有些奇奇怪怪的问题。

所以,我吃了闷亏之后,就果断地选择,宁愿从官网下载安装,也不要用这个snap。于是遇到了奇怪的问题,我安装好的draw.io和stretchly,每次试图打开就会报错,报错是一个莫名奇妙的read unknown VMA的问题。

我觉得这个问题应该是比较抽象的,查阅半天也没有得到答案,一直跟我的问题毫无关联(即使我用上英文检索)。

好的,于是秉持着看日志的良好习惯,我终于找到了合适的解法,写下这篇blog记载,以免将来又遇到问题。

Note:

  • 笔者环境为Ubuntu 24.04 LTS

目录


解决过程

图形化的查询方式是有的,比如你可以在你的ubuntu上找到一个叫Logs的app,点开它就是心心念念的日志。

既然说软件启动(比方说你现在可以尝试启动一下stretchly)出了问题,那么就可以去看看Applications

在里面关注到下面这样的信息:

[5336:0302/100901.150219:FATAL:setuid_sandbox_host.cc(163)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /opt/Stretchly/chrome-sandbox is owned by root and has mode 4755.

大意就是/opt/Stretchly/chrome-sandbox 文件的权限和所有权配置不正确。权限必须是4755以及所有者必须是root才正确,不然SUID sandbox的配置不正确就无法启动。

检查一下权限:

ls -l /opt/Stretchly/chrome-sandbox

-rwxr-xr-x 1 root root 38224 Jan 19 17:45 /opt/Stretchly/chrome-sandbox

好的,权限不对,于是我们就可以通过下面的命令搞定它:

sudo chmod 4755 /opt/Stretchly/chrome-sandbox

再检查一下权限,就可以发现正常了,尝试启动,启动成功!

tips: 4755 权限表示设置了 SUID(Set User ID)权限。当程序运行时,它会以文件所有者(这里是 root)的权限运行,而不是以启动程序的用户权限运行。这是沙箱机制的一部分,用于提高安全性。SUID 权限,是一个特殊权限,位于用户权限部分的最前面,用数字 4 表示。

当然,既然说这个沙箱那么麻烦,我们也可以选择在启动软件(用终端,或者.desktop的Exec)时给它加上一个 --no-sandbox,虽然,禁用沙箱可能会降低系统的安全性。


参考资料

None


如何解决ubuntu安装第三方deb出现的read unknown VMA问题(SUID sandbox配置问题)的更多相关文章

  1. 解决ubuntu安装软件has install-snap change in progress错误

    解决ubuntu安装软件has install-snap change in progress错误 2018年05月06日 13:45:39 山间明月江上清风_ 阅读数:14316 标签: ubunt ...

  2. 解决ubuntu安装系统默认没有创建root用户

    安装ubuntu操作系统的时候,默认没有设置root账户的步骤!!! 这样在操作系统安装完成之后,就没有root用户, 一般,当前的普通用户,如果需要执行一些命令的时候,只要在命令前边加上sudo就行 ...

  3. ubuntu安装chkconfig.deb系统服务管理工具

    chkconfig简介:chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息. 参数用法:   --add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统 ...

  4. 解决Ubuntu安装mysql中的一些问题

    在Ubuntu中可以通过如下方式安装 sudo apt-get install mysql-server suod apt-get install mysql-client 以前的版本在安装过程中会提 ...

  5. 解决ubuntu安装ssh服务无法打开解析包问题

    Windows下做Linux开发需要SSH强大功能的支持.安装SSH的过程会出现了很多问题,看完这篇文章可以让你少走些弯路,PS:折腾一下午的成果. Ubuntu的apt-get工具的牛逼之处简直无人 ...

  6. 解决Ubuntu安装openssh-server依赖问题

    sudo apt-get install openssh-server 提示:openssh-server : 依赖: openssh-client (= 1:6.6p1-2ubuntu1) 解决 u ...

  7. Ubuntu 安装第三方工具

    1. pycharm  安装(链接:https://pan.baidu.com/s/1fIp-AhBmnPvqYW40140RLw     提取码:ukkv ) 1.运行以下命令安装 sh pycha ...

  8. 解决Pytohn安装第三方库出现read timed out 问题

    输入pip --default-timeout=100 install -U Packages 如pip --default-timeout=100 install -U Pillow

  9. 解决python安装第三方库超时问题

    这里说明一下,配置文件中的url还可以换成下面的URL 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.u ...

  10. 解决pip安装第三方包编码错误:UnicodeDecodeError: 'ascii' codec can't decode byte....

    .../python27/Lib/mimetypes.py 在 import之后添加下列内容 if sys.getdefaultencoding() != 'gbk': reload(sys) sys ...

随机推荐

  1. Qt编写安防视频监控系统64-子模块8飞行轨迹

    一.前言 飞行轨迹子模块是专为无人机打造的模块,也可以作为机器人移动模块,通过传入一个经纬度值,实时更新设备的位置和绘制轨迹,模块已经内置了接口进行处理,支持不同设备不同的轨迹颜色(这个功能好). 这 ...

  2. Intellij IDEA部署Web项目到tomcat时提示:Error:Cannot build Artifact ':war exploded' because it is included into a circul

    在Idea中使用Maven创建父子工程,第一个Model的那个项目可以很好的运行,在创建一个Model运行时报这个错.原因是tomcat部署了多个Web项目,可能最开始是两个项目的配置文件混用用,最后 ...

  3. (数据科学学习手札164)在vscode中调用Deepseek进行AI辅助编程

    本文示例配置文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,最近国产大模型Deepse ...

  4. Apollo功能及原理详解

    前言 公司里面使用的配置中心是携程开源的Apollo,之前我只使用过Nacos,遂记录一下学习过程. Apollo工作原理 模块介绍 上图就是Apollo的总体设计,从下往上挨个分析: ConfigD ...

  5. 一问一答学习PyQT6,对比WxPython和PyQt6的差异

    在我的基于WxPython的跨平台框架完成后,对WxPython的灵活性以及强大功能有了很深的了解,在跨平台的桌面应用上我突然对PyQt6的开发也感兴趣,于是准备了开发环境学习PyQt 6,并对比下W ...

  6. c# 设置桌面壁纸: 只在win10 上测试了,不知道其它系统如何

    c# 设置桌面壁纸: 只在win10 上测试了,不知道其它系统如何. using System; using System.Collections.Generic; using System.Comp ...

  7. SpringMvc-初识

    ---------------------------------------------------------------- 1.环境搭建 1.1 jar包 <spring.version& ...

  8. java线程用法和区别

    从操作系统的角度讲,os会维护一个ready queue(就绪的线程队列).并且在某一时刻cpu只为ready queue中位于队列头部的线程服务.但是当前正在被服务的线程可能觉得cpu的服务质量不够 ...

  9. Event Store-其它存储

    背景 ENode是一个CQRS+Event Sourcing架构的开发框架,Event Sourcing需要持久化事件,事件可以持久化在DB,但是DB由于面向的是CRUD场景,是针对数据会不断修改或删 ...

  10. 隐私集合求交(PSI)-多方

    本文主要讲解一个多方的PSI协议,文章转载:隐私计算关键技术:多方隐私集合求交(PSI)从原理到实现以及多方隐私求交--基于OPPRF的MULTI-PARTY PSI:原论文:Practical Mu ...