skypeforlinux启动的问题

Alita
今天打开skype发现有新的版本可以更新,于是更新了新版,然后重启发现出现问题,没有任何界面显示,于是开始了问题的排查和解决。

查找日志

系统为manjaro ,Skype的启动文件位于usr/bin/skypeforlinux

打开文件

#!/bin/sh

SCRIPT=$(readlink -f "$0")
USR_DIRECTORY=$(readlink -f $(dirname $SCRIPT)/..)

SKYPE_PATH="$USR_DIRECTORY/share/skypeforlinux/skypeforlinux"
SKYPE_LOGS="$HOME/.config/skypeforlinux/logs"

mkdir -p $SKYPE_LOGS

nohup "$SKYPE_PATH" --executed-from="$(pwd)" --pid=$$ "$@" > "$SKYPE_LOGS/skype-startup.log" 2>&1 &

日志位于$HOME/.config/skypeforlinux/logs

查看日志

[20127:0820/153946.982187:FATAL:setuid_sandbox_host.cc(157)] 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 /usr/share/skypeforlinux/chrome-sandbox is owned by root and has
  mode 4755.

这里可以看出主要问题是chrome-sandbox的权限问题

修改权限

文件位于/usr/share/skypeforlinux/chrome-sandbox

sudo chmod 4755 chrome-sandbox #注意该文件的位置

这里说明一下4755权限问题

chmod 4755与chmod 755对比多了附加权限值4,这个4表示其他用户执行文件时,具有与所有者同样的权限(设置了SUID)。

为什么要设置4755 而不是 755?
假设netlogin是root用户创建的一个上网认证程序,如果其他用户要上网也要用到这个程序,那就需要root用户运行chmod 755 netlogin命令使其他用户也能运行netlogin。但假如netlogin执行时需要访问一些只有root用户才有权访问的文件,那么其他用户执行netlogin时可能因为权限不够还是不能上网。这种情况下,就可以用 chmod 4755 netlogin 设置其他用户在执行netlogin也有root用户的权限,从而顺利上网。
————————————————
版权声明:本文为CSDN博主「林20」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u013197629/article/details/73608613

再次启动skype

skypeforlinux

mJ00tP.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值