如何解决ubuntu安装第三方deb出现的read unknown VMA问题(SUID sandbox配置问题)
前言
众所不周知,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配置问题)的更多相关文章
- 解决ubuntu安装软件has install-snap change in progress错误
解决ubuntu安装软件has install-snap change in progress错误 2018年05月06日 13:45:39 山间明月江上清风_ 阅读数:14316 标签: ubunt ...
- 解决ubuntu安装系统默认没有创建root用户
安装ubuntu操作系统的时候,默认没有设置root账户的步骤!!! 这样在操作系统安装完成之后,就没有root用户, 一般,当前的普通用户,如果需要执行一些命令的时候,只要在命令前边加上sudo就行 ...
- ubuntu安装chkconfig.deb系统服务管理工具
chkconfig简介:chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息. 参数用法: --add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统 ...
- 解决Ubuntu安装mysql中的一些问题
在Ubuntu中可以通过如下方式安装 sudo apt-get install mysql-server suod apt-get install mysql-client 以前的版本在安装过程中会提 ...
- 解决ubuntu安装ssh服务无法打开解析包问题
Windows下做Linux开发需要SSH强大功能的支持.安装SSH的过程会出现了很多问题,看完这篇文章可以让你少走些弯路,PS:折腾一下午的成果. Ubuntu的apt-get工具的牛逼之处简直无人 ...
- 解决Ubuntu安装openssh-server依赖问题
sudo apt-get install openssh-server 提示:openssh-server : 依赖: openssh-client (= 1:6.6p1-2ubuntu1) 解决 u ...
- Ubuntu 安装第三方工具
1. pycharm 安装(链接:https://pan.baidu.com/s/1fIp-AhBmnPvqYW40140RLw 提取码:ukkv ) 1.运行以下命令安装 sh pycha ...
- 解决Pytohn安装第三方库出现read timed out 问题
输入pip --default-timeout=100 install -U Packages 如pip --default-timeout=100 install -U Pillow
- 解决python安装第三方库超时问题
这里说明一下,配置文件中的url还可以换成下面的URL 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.u ...
- 解决pip安装第三方包编码错误:UnicodeDecodeError: 'ascii' codec can't decode byte....
.../python27/Lib/mimetypes.py 在 import之后添加下列内容 if sys.getdefaultencoding() != 'gbk': reload(sys) sys ...
随机推荐
- MySQL版本是8.0.3,数据库连接字符串都检查无误,驱动类名加不加cj都试过了,URL是否加时区、是否加useSSL都试过了,都无法正常登录进去!
我在运行library这个web程序登录时(我的MySQL版本是8.0.3,数据库连接字符串都检查无误,驱动类名加不加cj都试过了,URL是否加时区.是否加useSSL都试过了,都无法正常登录进去!) ...
- [转]IDEA2020.2.3中创建JavaWeb工程的完整步骤记录
原文链接: IDEA2020.2.3中创建JavaWeb工程的完整步骤记录
- Supermap Objects API开发中禁用默认的选择集显示风格,启用自定义的显示风格的代码
//#region 使用自定义风格设置选中状态 Selection selection = new Selection();//从该记录集获取选择集 selection.FromRecordset(r ...
- map循环如何跳出循环
今天在开发的时候遇到了一个问题.就是想在使用map的时候跳出循环无法实现,于是就在网上搜寻了一番,说map本身不能跳出循环,有一个大佬提出了抛出异常的方法,记录一下 let list=[1,2,3,4 ...
- Solution Set - “盛开无法定格的花”
目录 0.「ARC 160D」Mahjong 1.「BJOI 2017」「洛谷 P3715」魔法咒语 2.「清华集训 2017」「洛谷 P4227」我的生命已如风中残烛 3.「集训队互测 2018」「 ...
- 微服务实战系列(三)-springcloud、springboot及maven之间关系-copy
1 . 问题描述 随着springboot.springcloud的不断迭代升级,开发效率不断提升,越来越多的开发团队加入到spring的大军中,今天用通俗的语言,介绍下什么是springboot,s ...
- 在SOUI中将自定义配置信息写到布局文件中
SOUI的布局XML文件保存布局必须的信息.特定场合中,用户可能会需要在布局中指定业务需要处理的属性. 比如启程输入法的皮肤.有的皮肤支持高分屏,有的皮肤不支持.对于这个场景,比较理想的方案是直接在皮 ...
- 浅谈Redis的三种集群策略及应用场景
本文分享自天翼云开发者社区<浅谈Redis的三种集群策略及应用场景>,作者:段林 Redis提供了三种集群策略: 1.主从模式:这种模式⽐较简单,主库可以读写,并且会和从库进⾏数据同步,这 ...
- Docker部署Go+Mysql+Redis
两种方式Docker和Docker Compose部署web项目,相对于Go语言来说,不管是使用docker部署还是直接服务器部署都相当方便,比python要简单很多. 1.Dockerfile结构解 ...
- 鸿蒙页面开发 - 组件复用样式 @Styles
这篇文章介绍一个装饰器 @Styles 他的主要作用是: 当多个组件都有相同的样式,如果每个组件单独设置,会造成大量重复的代码冗余.这时我们可以使用 @Styles 将这些相同样式封装成一个方法,供这 ...