Skype

提供: ArchWiki
移動先: 案内検索

Skype の Linux 版は公式に2つ存在します:

ウェブ版をラッパーで囲ったものになります。ボイスチャットは使えますが、ビデオチャットはまだ出来ません。
  • 旧 Skype (最終リリースは2014年6月): #Legacy Skype を参照。

また、ウェブ版は web.skype.com から使えます。Chromium/Chrome ではボイスチャットも動作します。最新版の Firefox ではボイスチャットやビデオチャットが可能です。

目次

Skype for Linux Alpha

新しい Skype for Linux Alpha は、Skype ウェブ版の web.skype.com をラッピングしたソフトウェアです。テキスト・ボイスチャット(とグループチャット)が利用できます (バージョン 1.10 現在、ビデオチャットは Linux クライアント間でしか利用できません)。

skypeforlinux-binAUR パッケージでインストールしてください。

Legacy Skype

インストール

skypeAURインストールしてください。

Skype の実行は簡単です。ターミナルに skype と入力するかデスクトップや DE のアプリケーションメニューから Skype アイコンをダブルクリックするだけです。

Skype の音声

バージョン 4.3 から、Skype はボイスチャットやサウンドに PulseAudio を必要とするようになりました。ALSA はもうサポートされません。設定方法は PulseAudio を見て下さい。テキストチャットでは PulseAudio がなくても Skype を使うことができます。

または、PulseAudio を使いたくない場合、PulseAudio をエミュレートする apulseAUR (x86_64 ユーザーの場合は lib32-apulseAUR が必要) を AUR からインストールすることもできます。インストールしたら次のコマンドで Skype を実行します:

$ apulse skype

もしくは x86_64 の場合:

$ apulse32 skype

マイクが使えない場合は Advanced Linux Sound Architecture/トラブルシューティング#デフォルトのマイク・キャプチャデバイスの設定 を見て下さい。

ちゃんと動作するようでしたら、/usr/share/applications/skype.desktopデスクトップエントリを編集して Exec 行を以下のように変更します:

Exec=/usr/bin/apulse32 /usr/bin/skype  %U

Skype のセキュア化

Skype のコンピュータへのアクセスを制限したくなる理由は複数考えられます:

  • skype バイナリは逆コンパイルできないようになっており、誰もバイナリが実際に何をやっているのか再現するのが不可能になっています。
  • Skype をアクティブに使用していない時でも Skype は暗号化された通信を行っています。

詳しくは [1] を見て下さい。

systemd-nspawn

警告: systemd-nspawn は簡単にアプリケーションを隔離環境で動作させることができますが、完全にセキュアとは 考えてないで下さい

以下のスクリプトは /mnt/stor/vm/skype にコンテナを作成して、Skype をコンテナから起動します。64ビット環境では multilib を有効にしたデフォルトの pacman 設定が必要です。カスタムリポジトリを有効にしている場合は注意してください。この方法では音声・動画チャットができません。

 #!/bin/bash
 set -e
 DEST=/mnt/stor/vm/skype
 if [ ! -d "$DEST" ];then
     sudo mkdir -p "$DEST/var/lib/pacman/";
     sudo mkdir -p "$DEST/etc/"
     sudo curl https://projects.archlinux.org/svntogit/packages.git/plain/trunk/pacman.conf.i686?h=packages/pacman -o "$DEST/etc/pacman.conf"
     echo sudo skype | sudo pacman --arch i686 --root "$DEST" --cachedir /var/cache/pacman/pkg --config "$DEST/etc/pacman.conf" -Sy - --noconfirm
     sudo systemd-nspawn -D "$DEST" groupadd skype
     sudo systemd-nspawn -D "$DEST" useradd -g skype skype
     sudo mkdir -p $DEST/home/skype/.config/pulse
     sudo cp ~/.config/pulse/cookie $DEST/home/skype/.config/pulse/
     sudo cp ~/.Xauthority $DEST/home/skype/
     sudo chmod 755 -R $DEST/home/skype/
     sudo chown -R 1000:1000 $DEST/home/skype/
 fi
 sudo systemd-nspawn -D "$DEST" --bind=/tmp/.X11-unix --share-system sudo -u skype env DISPLAY=:0 PULSE_SERVER=desktop skype

Docker

警告: Docker の実行にはセキュリティ上注意すべきことがあります。詳しくは Docker の記事を読んでください。

安全な Docker コンテナの中で Skype を使うことが可能です。Docker Hub にはユーザーによって作成された Skype イメージが存在します。

テスト済みのイメージは sameersbn/skype です (Github でホストされています)。X11 と PulseAudio の unix ドメインソケットをホスト側で使用して Skype の音声・動画を利用できるようにしています。ラッパースクリプトが X11 と PulseAudio のソケットをコンテナの中でマウントします。X11 ソケットはユーザーインターフェイスをホスト側に表示させつつ、Pulseaudio ソケットはホスト側で音声出力を吐き出します。また、/dev/video0 もマウントされます。

コンテナはホスト環境の ~/.Skype~/Downloads ディレクトリにアクセスします。ラッパースクリプトは /usr/local/bin にインストールされます。

インストール方法は 上流のドキュメント を参照してください。

AppArmor

AppArmor の設定方法は AppArmor のページを見て下さい。

AppArmor のユーザーランドツールにはサンプルプロファイルのコレクションが付いていて、Skype はその中に含まれます。これを AppArmor のプロファイルが保存されているディレクトリにコピーしてください:

# cp -ip /usr/share/apparmor/extra-profiles/usr.bin.skype /etc/apparmor.d/

何らかの理由で、このプロファイルは完全ではありません。プロファイルをさらに修正すると良いでしょう。以下は Skype 4 の例です:

#include <tunables/global>

/usr/bin/skype {
  #include <abstractions/audio>
  #include <abstractions/consoles>
  #include <abstractions/dbus-session>
  #include <abstractions/gnome>
  #include <abstractions/kde>
  #include <abstractions/nameservice>
  #include <abstractions/video>

  # Executables
  /usr/bin/skype ixmr,
  /usr/lib{,32}/skype/skype ixmr,
  /usr/bin/xdg-open PUxmr,
  /usr/bin/kde4-config PUxmr,

  # Configuration files
  owner @{HOME}/.Skype/ rw,
  owner @{HOME}/.Skype/** krw,
  owner @{HOME}/.config/Skype/ rw,
  owner @{HOME}/.config/Skype/** krw,

  # Downloads/uploads directory
  owner @{HOME}/Public/ rw,
  owner @{HOME}/Public/** krw,

  # Libraries
  /usr/lib{,32}/libv4l/v4l2convert.so mr,
  /usr/share/skype/lib/libQtWebKit.so.4 mr,

  # Shared data
  /usr/share/skype/ r,
  /usr/share/skype/** r,

  # Devices
  /dev/ r,
  /dev/video[0-9]* mrw,

  # System information
  /etc/machine-id r,
  @{PROC}/sys/kernel/{ostype,osrelease} r,
  @{PROC}/sys/vm/overcommit_memory r,
  @{PROC}/[0-9]*/net/arp r,
  owner @{PROC}/[0-9]*/cmdline r,
  owner @{PROC}/[0-9]*/status r,
  owner @{PROC}/[0-9]*/task/ r,
  owner @{PROC}/[0-9]*/task/[0-9]*/stat r,
  owner @{PROC}/[0-9]*/fd/ r,
  /sys/devices/system/cpu/ r,
  /sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_{cur_freq,max_freq} r,
  /sys/devices/pci*/*/usb[0-9]*/*/*/modalias r,
  /sys/devices/pci*/*/usb[0-9]*/*/*/video4linux/video[0-9]*/dev r,
  /sys/devices/pci*/*/usb[0-9]*/*/{idVendor,idProduct,speed} r,

  # This probably should go to appropriate abstractions
  /etc/asound.conf r,
  owner @{HOME}/.config/fontconfig/fonts.conf r,
  owner @{HOME}/.config/gtk-3.0/bookmarks r,
  owner @{HOME}/.config/oxygen-gtk/argb-apps.conf rw,
  owner @{HOME}/.config/pulse/cookie krw,
  owner @{HOME}/.icons/** r,
  owner @{HOME}/.kde4/share/config/kdeglobals krw,
  owner @{HOME}/.kde4/share/config/gtkrc-2.0 r,
  owner @{HOME}/.kde4/share/config/oxygenrc r,
  /usr/share/icons/*/index.theme kr,
  /usr/share/nvidia/nvidia-application-profiles-*-rc r,

  # Denials
  deny owner @{HOME}/.mozilla/ r,
  deny owner @{HOME}/.mozilla/** r,
  deny /sys/devices/virtual/dmi/** r,
}
ノート: This example assumes that Skype is configured to save received files into ~/Public. Feel free to change it to any folder you like.

プロファイルを使うには、まず securityfs がマウントされていることを確認して:

# mount -t securityfs securityfs /sys/kernel/security

次のコマンドでプロファイルをロードしてください:

# apparmor_parser -r /etc/apparmor.d/usr.bin.skype

これで Skype を制限して実行することができます。拒否されたアクセスは messages.log に記録されます。

TOMOYO

このセクションでは TOMOYO 2.5 を使用します。インストール方法は TOMOYO_Linux#TOMOYO_Linux_2.x を見て下さい。

ノート: 忘れずに次のコマンドを実行して最初に /etc/tomoyo ディレクトリを作成してください: /usr/lib/tomoyo/init_policy
  • /etc/tomoyo/exception_policy.conf ファイルを開いて以下の行を追加してください:
path_group SKYPE_DIRS /home/\*/.Skype/
path_group SKYPE_DIRS /home/\*/.Skype/\{\*\}/
path_group SKYPE_DIRS /home/\*/.config/Skype/\{\*\}/
path_group SKYPE_DIRS /usr/share/skype/\{\*\}/
path_group SKYPE_DIRS /tmp/skype-\*/
path_group SKYPE_DIRS /tmp/skype-\*/\{\*\}/
path_group SKYPE_DIRS /home/\*/Downloads/tmp/\{\*\}/
path_group SKYPE_FILES /home/\*/.Skype/\{\*\}/\*
path_group SKYPE_FILES /home/\*/.config/Skype/\{\*\}/\*
path_group SKYPE_FILES /usr/share/skype/\{\*\}/\*
path_group SKYPE_FILES /home/\*/.Skype/\*
path_group SKYPE_FILES /home/\*/.config/Skype/\*
path_group SKYPE_FILES /usr/share/skype/\*
path_group SKYPE_FILES /tmp/skype-\*/\{\*\}/\*
path_group SKYPE_FILES /home/\*/Downloads/tmp/\{\*\}/\*
path_group SKYPE_FILES /home/\*/Downloads/tmp/\*
path_group ICONS_DIRS /usr/share/icons/\{\*\}/
path_group ICONS_FILES /usr/share/icons/\{\*\}/\*
path_group ICONS_FILES /usr/share/icons/\*
initialize_domain /usr/bin/skype from any
initialize_domain /usr/lib32/skype/skype from any

Skype が受信したファイルを保存したり送信できるのは /home/*/Downloads/tmp フォルダだけになります。

  • 次に /etc/tomoyo/domain_policy.conf を開いて以下の行を追加してください:
<kernel> /usr/bin/skype
use_profile 3
use_group 0

misc env \*
file read /bin/bash
file read /usr/bin/bash
file read/write /dev/tty
file read /usr/lib/locale/locale-archive
file read /usr/lib/gconv/gconv-modules
file read /usr/bin/skype
file read /usr/lib32/skype/skype
file execute /usr/lib32/skype/skype exec.realpath="/usr/lib32/skype/skype" exec.argv[0]="/usr/lib32/skype/skype"

<kernel> /usr/lib32/skype/skype
use_profile 3
use_group 0

file append /dev/snd/pcm\*
file chmod /home/\*/.Skype/ 0700
file create /home/\*/.cache/fontconfig/\* 0600-0666
file create /tmp/qtsingleapp-\*-lockfile 0600-0666
file create @SKYPE_FILES 0600-0666
file create /dev/shm/pulse-shm-\* 0700-0777
file execute /usr/bin/firefox
file execute /usr/bin/gnome-open
file execute /usr/bin/notify-send
file execute /usr/bin/opera
file execute /usr/bin/xdg-open
file ioctl /dev/snd/\* 0-0xFFFFFFFFFFFFFFFF
file ioctl /dev/video0 0-0xFFFFFFFFFFFFFFFF
file ioctl anon_inode:inotify 0x541B
file ioctl socket:[family=1:type=2:protocol=0] 0x8910
file ioctl socket:[family=1:type=2:protocol=0] 0x8933
file ioctl socket:[family=2:type=1:protocol=6] 0x541B
file ioctl socket:[family=2:type=2:protocol=17] 0x541B
file ioctl socket:[family=2:type=2:protocol=17] 0x8912
file ioctl socket:[family=2:type=2:protocol=17] 0x8927
file ioctl socket:[family=2:type=2:protocol=17] 0x8B01
file ioctl socket:[family=2:type=2:protocol=17] 0x8B1B
file ioctl socket:[family=2:type=2:protocol=17] 0x8B15
file ioctl socket:[family=2:type=2:protocol=17] 0x8B05
file link/rename /home/\*/.cache/fontconfig/\* /home/\*/.cache/fontconfig/\*
file mkdir /home/\*/.cache/fontconfig/\* 0600
file mkdir @SKYPE_DIRS 0700-0777
file mksock /tmp/qtsingleapp-\* 0755
file read /dev/urandom
file read/write/unlink/truncate /dev/shm/pulse-shm-\*
file read /etc/fonts/conf.avail/\*.conf
file read /etc/fonts/conf.d/\*.conf
file read /etc/fonts/fonts.conf
file read /etc/group
file read /etc/host.conf
file read /etc/hosts
file read /etc/machine-id
file read /etc/nsswitch.conf
file read /etc/resolv.conf
file read /home/\*/.ICEauthority
file read /home/\*/.XCompose
file read /home/\*/.Xauthority
file read /home/\*/.Xdefaults
file read /home/\*/.fontconfig/\*
file read /home/\*/.config/fontconfig/\*
file read /home/\*/.config/pulse/cookie
file read /usr/lib/locale/locale-archive
file read /usr/lib32/gconv/UTF-16.so
file read /usr/lib32/gconv/gconv-modules
file read /usr/lib32/libv4l/v4l2convert.so
file read /usr/lib32/libv4l/plugins/libv4l-mplane.so
file read /usr/lib32/pulseaudio/libpulsecommon-5.0.so
file read /usr/lib32/qt/plugins/bearer/libq\*bearer.so
file read /usr/lib32/qt/plugins/iconengines/libqsvgicon.so
file read /usr/lib32/qt/plugins/imageformats/libq\*.so
file read /usr/lib32/qt/plugins/inputmethods/libqimsw-multi.so
file read /usr/lib32/skype/skype
file read /usr/share/X11/locale/\*/Compose
file read /usr/share/X11/locale/\*/XLC_LOCALE
file read /usr/share/X11/locale/compose.dir
file read /usr/share/X11/locale/locale.alias
file read /usr/share/X11/locale/locale.dir
file read /usr/share/alsa/alsa.conf
file read /usr/share/alsa/cards/\*.conf
file read /usr/share/alsa/pcm/\*.conf
file read /usr/share/fonts/\*/\*/\*
file read /usr/share/locale/\*/LC_MESSAGES/\*.mo
file read /usr/share/ca-certificates/mozilla/\*.crt
file read /var/cache/fontconfig/\*.cache-4
file read @ICONS_FILES
file read proc:/sys/vm/overcommit_memory
file read /sys/devices/\*/\*/\*/\*/\*/modalias
file read /sys/devices/\*/\*/\*/\*/\*/video4linux/video0/dev
file read /sys/devices/\*/\*/\*/\*/idProduct
file read /sys/devices/\*/\*/\*/\*/idVendor
file read /sys/devices/\*/\*/\*/\*/speed
file read /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
file read /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
file read /sys/devices/system/cpu/online
file read/write /dev/snd/\*
file read/write /dev/video0
file read/write/truncate /home/\*/.config/Trolltech.conf
file read/write/unlink /home/\*/.cache/fontconfig/\*
file read/write/unlink /tmp/qtsingleapp-\*
file read/write/unlink/truncate @SKYPE_FILES
file rename @SKYPE_DIRS @SKYPE_DIRS
file rename @SKYPE_FILES @SKYPE_FILES
file rmdir @SKYPE_DIRS
misc env \*
network inet dgram bind 0.0.0.0 0-65535
network inet dgram bind 127.0.0.1 0
network inet dgram bind/send 0.0.0.0-255.255.255.255 0-65535
network inet stream bind/listen 0.0.0.0 0-65535
network inet stream connect 0.0.0.0-255.255.255.255 0-65535
network unix stream bind/listen/connect /tmp/qtsingleapp-\*
network unix stream connect /tmp/.ICE-unix/\*
network unix stream connect /var/run/dbus/system_bus_socket
network unix stream connect /var/run/nscd/socket
network unix stream connect \000/tmp/.ICE-unix/\*
network unix stream connect \000/tmp/.X11-unix/X0
network unix stream connect \000/tmp/dbus-\*
network unix stream connect /run/user/1000/pulse/native

<kernel> /usr/lib32/skype/skype /usr/bin/xdg-open
use_profile 0
use_group 0

<kernel> /usr/lib32/skype/skype /usr/bin/gnome-open
use_profile 0
use_group 0

<kernel> /usr/lib32/skype/skype /usr/bin/notify-send
use_profile 0
use_group 0
  • 編集が完了したら以下のコマンドを実行して TOMOYO の設定ファイルをリロードします:
# tomoyo-loadpolicy -df </etc/tomoyo/domain_policy.conf
# tomoyo-loadpolicy -ef </etc/tomoyo/exception_policy.conf

Voilà — これで Skype はサウンドボックス化されました。

この設定は64ビットの Arch 環境で生成したもので、あなたの ioctl やライブラリのパスは上記と異なる可能性があります。Skype にあわせて TOMOYO の設定を微調整するために tomoyo-auditd デーモンをロードして:

# systemctl start tomoyo-auditd

/var/log/tomoyo フォルダに移動して reject_003.log の監視を開始してください:

$ tail -f reject_003.log

このコマンドは Skype の拒否されたアクションを出力するので、必要に応じてそれらを domain_policy.conf ファイルに追加しましょう。

TOMOYO の設定に関する詳細なガイドは こちら にあります。

特別なユーザーで Skype を使う

警告: バージョン 1.16 から、Xorg は通常ユーザーで動作します。特別なユーザーは X にアクセスすることができません。以下の方法は Xorg で root を有効にしないと使うことができません。詳しくは Xorg#Rootless Xorg (v1.16) を参照。

別にパッケージをインストールする必要がある AppArmor や TOMOYO を使う代わりに、特別なユーザーを追加する方法もあります。通常環境で Skype を実行するためだけに使用するユーザーです。このアプローチではこの特別なユーザーのデータしか読めないようにして Skype にメインユーザーのデータを制限させます (新しく作ったユーザーは他のことには利用しません、Skype 専用です)。

別のユーザー ("_skype") で skype をクリーンに動かす AUR パッケージ skype-secureAUR が存在します。このパッケージはほとんどこのセクションの情報を基にしています。

オプションとして、skype ユーザーのデフォルトグループを最初に追加します。新しいユーザーとそのデフォルトグループは "skype" と故障します。"skype" ユーザーを別のグループにしておくセキュリティ上の利点は他のユーザーが許可されている場所のアクセスを制限できることです。

# groupadd skype

そして新しいユーザーを追加します:

# useradd -m -g skype -G audio,video -s /bin/bash skype
ノート: "skype" ユーザーを "pulse-access" や "pulse-rt" グループに追加する必要があるかもしれません。ただし基本的には "audio" と "skype" グループだけで問題なく動作します。

/home/skype/.bashrc に次の行を追加します:

export DISPLAY=":0.0"

最後にエイリアスを定義します (~/.bashrc などで):

alias skype='xhost +local: && su skype -c skype'

これでコマンドラインから skype を実行してユーザー skype のパスワードを入力するだけで新しく作成したユーザーとして Skype を起動できます。

毎回 skype ユーザーのパスワードを入力するのが面倒くさい場合は、sudo パッケージをインストールして、visudo を実行し一番下に次の行を追加してください:

%wheel ALL=(skype) NOPASSWD: /usr/bin/skype

そして次のエイリアスを使って skype を起動します:

alias skype='xhost +local: && sudo -u skype /usr/bin/skype'
ノート: xhost コマンドを忘れた場合、Skype は標準出力に "No protocol specified" エラーを吐きます。

I noticed that the newly created user is able to read some of the files in my home directory because the permissions were a+r, so I changed them manually to a-r u+r and changed umask from 022 to 066.

In order to restrict user "skype" accessing your external drive mounted in /media/data for instance, make sure first that "skype" does not belong to group "users" (if you used the default group "skype", everything should be fine), then change the accesses on the mount point:

# chown :users /media/data
# chmod o-rwx /media/data

This way, it is ensured that only the owner (normally "root") and "users" can access the specified directory tree while the others, including "skype", will be forbidden.

他のユーザーとして Skype を使うときに Pulseaudio コントロールにアクセスする

"メインユーザー"で /etc/pulse/default.pa~/.pulse/default.pa にコピーして以下を追加:

load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1

skype ユーザーで ~/.pulse/client.conf を作成して以下を追加:

default-server = 127.0.0.1
ユーザーのブラウザで URL を開く

チャットウィンドウで URL がクリックされると、skype は xdg-open を実行してそれを処理します。デフォルトでは xdg-open は skype ユーザー環境のデフォルトウェブブラウザを使うようになっています。メインユーザーのブラウザでリンクを開くようにするには以下の設定を行なって下さい。

ノート:
  • sudo を正しくインストール・設定する必要があります。
  • 例として Firefox を規定のブラウザとします。
  • your_user を適当な値にするのを忘れないで下さい。

skype ユーザーでログイン:

$ sudo su - skype

ローカル設定ディレクトリを作成:

$ mkdir -p ~/.local/share/applications

/home/skype/.local/share/applications/firefox-sudo.desktop ファイルを作成:

[Desktop Entry]
Name=Firefox
Exec=/home/skype/firefox-wrapper %u
Terminal=false
Type=Application
Categories=Network;WebBrowser;

firefox-sudo.desktop を設定して HTTP と HTTPS URL を管理:

$ xdg-mime default firefox-sudo.desktop x-scheme-handler/http
$ xdg-mime default firefox-sudo.desktop x-scheme-handler/https

(任意) FTP ハンドラを追加:

$ xdg-mime default firefox-sudo.desktop x-scheme-handler/ftp

/home/skype/firefox-wrapper スクリプトを作成 (your_user は置き換えて下さい):

#!/bin/bash
DISPLAY=:0.0 HOME=/home/your_user sudo -u your_user /usr/lib/firefox/firefox -new-tab $1

実行可能属性を付与:

$ chmod +x ~/firefox-wrapper

root ユーザーで /etc/sudoers を開く:

# visudo

skype ユーザーにユーザーのブラウザを実行する権限を与える (your_user は置き換えて下さい):

skype ALL=(your_user) NOPASSWD: /usr/lib/firefox/firefox -new-tab http*, /usr/lib/firefox/firefox -new-tab ftp*
受信したファイルにアクセスする

デフォルトで skype は受信したファイルを 600 パーミッションで保存します (所有者だけがファイルにアクセスできます)。incron を使うことでダウンロードしたときに自動でパーミッションを修正させることができます。

ノート: This example assumes that you configure skype to save received files into /home/skype/downloads

skype のホームディレクトリとダウンロードディレクトリにアクセスできるようにしてください:

# chmod 755 /home/skype /home/skype/downloads

公式リポジトリincron パッケージで incron をインストールして、systemd を使って incrond を有効化・起動してください。 root ユーザーの incrontab タブを開き:

# incrontab -e

incron ジョブを追加してください:

/home/skype/downloads IN_CREATE chmod 644 $@/$#

変更を保存して incrontab エディタを終了してください。

incron をテストするには skype のダウンロードディレクトリに移動してテストファイルを作成してください:

# cd /home/skype/downloads
# install -m 600 /dev/null test.txt
# ls -l test.txt

ファイルのパーミッションは 644 か -rw-r--r-- になっているはずです。

(任意で) skype のダウンロードディレクトリをホームディレクトリにリンクさせることができます:

$ ln -s /home/skype/downloads ~/skype_files

トラブルシューティング

別のユーザーで実行したとき Skype が空のウィンドウしか表示しない

バージョン 1.16 から、Xorg は通常ユーザーとして実行されます。そのため特別なユーザーは X にアクセスすることができません。Xorg#Rootless Xorg (v1.16) を見て Xorg の root をもういちど有効にしてください。

GUI が GTK テーマと合わない

VirtualBox や Skype などの Qt ベースのアプリケーションのテーマに関する情報は Qt と GTK アプリケーションの外観の統合を見て下さい。

通話テストが失敗する

通話テストサービスが "call failed" エラー失敗する場合、ユーザーのプロファイルが破損しています。Ubuntu のフォーラムによると解決方法はプロファイルを削除して Skype でアカウントを改めて作成することです。

 # rm ~/.Skype/ -rf

GSPCA ウェブカメラが映らない

i686 の場合、Video 4 Linux のユーザースペースツールと変換ライブラリである v4l-utils をインストールして、Skype を v4l1 互換で起動するために次のコマンドで起動してください:

LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

x86_64 の場合、[multilib] リポジトリから lib32-v4l-utils をインストールして、次のコマンドで Skype を起動してください:

LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype

DE のメニューや Skype のアップデートと独立して動かすために、エイリアスを追加することができます (例: ~/.bashrc):

alias skype='LD_PRELOAD=/usr/libxx/libv4l/v4l1compat.so skype'

libxx は適切に編集してください。

Compiz で映らない

次のように環境変数を設定して Skype を起動してみて下さい:

$ XLIB_SKIP_ARGB_VISUALS=1 skype

他の Qt アプリは GTK+ テーマを使っているのに、Skype は GTK+ テーマを使わない

最近の Skype のバージョンではオプションメニューからテーマが変えられるようになっています。しかしながら、GTK+ オプションの選択は正しく動作しないことがあります。これはおそらく32ビットのテーマエンジンをインストールしていないことが原因です。テーマが使用しているエンジンを multilib リポジトリや AUR で探してみて下さい。テーマが使用しているエンジンがわからない場合は、一番簡単な修正法は lib32-gtk-enginesAUR をインストールすることです。ただしこれには大量のパッケージが含まれているので、必要なパッケージだけを見つけてインストールする方がベストです。

ノート: lib32-gtk-enginesAUR をインストールする必要はないかもしれません。lib32-gtk2 と GTK+2 テーマだけをインストールしている場合、まずは以下の方法を試してみてください。フォーラム も参照。

インストールしても、GConf の32ビットバージョンをインストールしないと動作しません。lib32-gconf をビルド・インストールすることもできますが、もっと簡単な方法があります。最初に、~/.gtkrc-2.0 を作成・編集して次の行を含めて下さい:

$ gtk-theme-name = "My theme"

My theme by はあなたのテーマの名前に置き換えて下さい、クォートを消してはいけません。次に、以下のように Skype を起動してください:

$ export GTK2_RC_FILES="/etc/gtk-2.0/gtkrc:$HOME/.gtkrc-2.0"
$ skype

これで GTK+ テーマが正しく表示されるはずです。上記の2行を含むスクリプトから Skype を起動するか、~/.xprofile~/.xinitrc など、X を起動する方法によって異なるファイルで GTK2_RC_FILES を export することでこれを永続的にすることができます。

オプションメニューでテーマが変更できない場合は、次のコマンドで Skype を起動してください:

$ /usr/bin/skype --disable-cleanlooks -style GTK

デスクトップ環境のメニューでデフォルトで GTK+ テーマを使って Skype をロードしたい場合は、/usr/share/applications/skype.desktop の 'Exec' 行を次のように修正してください:

$ Exec=/usr/bin/skype --disable-cleanlooks -style GTK

Skype を自動起動するようにしているときは同じように ~/.config/autostart/skype.desktop を修正してください。

ビデオストリームが入ってこない

ビデオプレビューで黒四角が表示されるのに、他は (xawtv -c /dev/video0 など) はちゃんとビデオが表示される場合、Skype を次のコマンドで起動してください:

export XLIB_SKIP_ARGB_VISUALS=1 && skype

v4l1compat.so をプリロードするという方法もあります:

LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

さらに他の方法として:

cd /usr/lib/lib32/libv4l &&  LD_PRELOAD=v4l1compat.so skype;

マイクにモンスターのような低オクターブな"うなりの"歪みが生まれる

ユーザーによっては新しいカーネルで Skype の相手側の音声ストリームにモンスターのようなうなり声が聞こえることがあるようです。この問題は ~/.Skype/shared.xml を削除するかダミーの ALSA デバイスを作成することで修正できます。詳しくは https://bbs.archlinux.org/viewtopic.php?pid=819500#p819500 を見て下さい。

音声にノイズが入る (主に64ビット OS を使っているとき)

解決法 1

root 権限で、/usr/bin/skype スクリプトを編集して PULSE_LATENCY_MSEC 変数を追加してください、次の行を:

exec "$LIBDIR/skype/skype" "$@"

以下のように変更します:

PULSE_LATENCY_MSEC=60 exec "$LIBDIR/skype/skype" "$@"
解決法 2

/etc/pulse/default.pa を編集して次の行を:

load-module module-udev-detect

以下のように変更します:

load-module module-udev-detect tsched=0

参照: PulseAudio/トラブルシューティング#Glitches, skips or crackling

Skype によってメディアプレーヤーやその他の音声ソースが止まってしまう

/etc/pulse/default.pa で次のモジュールをコメントアウトしてみてください:

#load-module module-role-cork

これで直らない場合、/etc/pulse/daemon.conf で flat-volumes を no に変えてみて下さい:

flat-volumes = no

それでも直らない場合、手動でモジュールをアンロードして下さい:

$ pactl unload-module module-role-cork

4.3 にアップグレードした後 Skype が起動しない

Skype をアップグレードした後、ウェルカムスクリーンが出てから一瞬だけ連絡リストが表示され(もしくは全く表示されないで)、Skype がクラッシュすることがあります。ターミナルから Skype を実行しても、同じようにクラッシュします。違うのはクラッシュ後に 'Aborted' メッセージが表示されることだけです。

この問題は 4.3 以前のバージョンからアップグレードしたユーザーに出ていて、データベースの変更によって古いバージョンのデータベースと互換性がなくなったのが関係しています。

Skype が実行中でないことを確認して、以下を実行してください:

$ cd ~/.Skype/yourskypeusername
$ cp main.db main.db.backup
$ sqlite3 main.db
update Messages 
set body_xml=substr(body_xml,instr(body_xml,'<files'),12)||
             substr(body_xml,0,instr(body_xml,'<files'))||
             substr(body_xml,instr(body_xml,'alt=')+5) 
where type=68 and body_xml not like '<file%';
.quit

これで Skype をアップグレードすることが可能になります。 [2]

Skype 4.3 は SSE2 をサポートしているプロセッサを要件としているので注意してください。あなたの使っているプロセッサが SSE2 をサポートしていない場合 Skype は 'Aborted' メッセージでクラッシュします。その場合は代わりに skype42AUR を使って下さい。

You are already signed in on this computer

dc.lock ファイルが削除されないで Skype が終了されると、後でログインができなくなります。

これを修正するには、Skype を終了して次を実行:

$ rm ~/.Skype/shared_dynco/dc.lock

何もない白いウィンドウが表示される

Skype を起動したときに空の白いウィンドウが表示される場合、以下のように自動ログインしてみてください:

$ echo username password | skype --pipelogin

KDE Plasma 5 でシステムトレイアイコンが表示されない

システムトレイアイコンが表示されない場合、32ビット環境の場合は sni-qt を、64ビット環境の場合は lib32-sni-qt をインストールしてください ([3] を参照)。

PulseAudio をアップグレードした後に Skype から音声が出なくなる

現在、Skype では PulseAudio 9.0 の enable-memfd オプションが動作しません。/etc/pulse/daemon.conf でオプションを無効化する必要があります。

Pidgin の Skype プラグイン

Pidgin#Skype プラグインを参照。