Skype for Linux启动的问题

mJ0IpT.jpg

今天打开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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 权限简介 Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行...
    遇见鬼阅读 14,824评论 0 8
  • 权限简介 Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行...
    遇酒无缘阅读 514评论 1 3
  • 内容概要 为什么要进行权限管理? 在生产服务器上,所有用户都用管理员权限登录吗?显然这是不可以也是不可能的。 因此...
    若兮缘阅读 988评论 1 9
  • 进入带空格的文件或者文件夹 Linux文件权限详解 文件和目录权限概述 在linux中的每一个文件或目录都包含有访...
    annkee阅读 2,727评论 0 4
  • Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cat命令 cat是linux的基本文本...
    摩羯座的鱼阅读 1,041评论 0 0