1. 程式人生 > >Ubuntu安裝adobe flash player外掛(PPAPI和NPAPI)

Ubuntu安裝adobe flash player外掛(PPAPI和NPAPI)

Platform Browser Player
Windows Internet Explorer ActiveX
Windows Internet Explorer (embedded - Windows 8.1) ActiveX
Windows Edge (embedded - Windows 10) ActiveX
Windows Firefox NPAPI
Windows Chrome (embedded) PPAPI
Windows Opera, Chromium-based browsers PPAPI
Macintosh OS X Firefox, Safari NPAPI
Macintosh OS X Chrome (embedded) PPAPI
Macintosh OS X Opera, Chromium-based browsers PPAPI
Linux Firefox NPAPI
Linux Chrome (embedded) PPAPI
Linux Opera, Chromium-based browsers PPAPI
ChromeOS ChromeOS PPAPI

1 問題

1.1 Linux下的Flash Player

Flash Player For Linux11.2 起已經停止更新, 目前 Linux 平臺下面的 Flash Player 只能依靠 Google ChromePPAPI(Pepper Flash Player) 進行更新 (Chrome Only) Adobe 僅維護這個版本, 其它瀏覽器包括 Chromium 都只能使用 Flash Player 11.2

但由於 Chromium 宣佈將拋棄舊的標準(NPAPI),導致原本的 Flash Player 將無法在 Chromium 執行,所以決定在 Chromium 中使用 Pepper Flash Player ,這個Pepper Flash Player 是通過下載 Google Chrome 然後提取出來給 Chromium 使用的。

1.2 NPAPI 和 PPAPI

NPAPI 是當今最流行的外掛架構, 由網景開發, 後 Mozilla 維護, 幾乎所有瀏覽器都支援, 不過存在很大的安全隱患, 外掛可以竊取系統底層許可權, 發起惡意攻擊.

2010年, Google在原有網景 NPAPI(Netscape Plugin API) 基礎上開發了新的 PPAPI(Pepper Plugin API), 將外掛外掛全部放到沙盒裡執行, 2012Windows、Mac 版本的 Chrome 瀏覽器先後升級了 PPAPI Flash Player, 隨後徹底淘汰了 NPAPI.

PPAPIflash 相較於 NPAPI 來講, 記憶體佔用更大, 因為全在沙盒裡面執行, 順便一提 flash 每次更新基本上都是修補安全漏洞.

2 安裝PPAPI

2.1 源中安裝PPAPI

早期源中使用包 adobe-flashplugin 來安裝 PPAPI. 但是後來此包廢棄, 取而代之的是 pepperflashplugin-nonfree, 但目前測試的過程中, 此包也有問題

目前這個安裝器已經收錄於 Ubuntu 14.04 官方源(從 Debian源中匯入)

Ubuntu 14.04 使用者可以通過以下命令安裝 Pepper Flash Player For Chromium :

sudo apt-get install pepperflashplugin-nonfree
sudo update-pepperflashplugin-nonfree --install

如果你想使用 Beta 版的 Google Chrome 中的 Pepper Flash Player, 那麼可以把第二個命令改為 :

sudo update-pepperflashplugin-nonfree --install --beta --unverified

如果想使用非穩定版的 Google Chrome 中的 Pepper Flash Player, 那麼可以把第二個命令改為 :

sudo update-pepperflashplugin-nonfree --install --unstable --unverified

如果你想解除安裝這個 Flash Player, 那麼請執行以下命令 :

sudo update-pepperflashplugin-nonfree --uninstall

如果安裝成功, 會將 PPAPI 安裝到 /usr/lib/pepperflashplugin-nonfree/

如果安裝過程中提示出錯

ERROR: failed to retrieve status information from google : W: There is no public key available for the following key IDs:
1397BC53640DB551
gpg --keyserver pgp.mit.edu --recv-keys 1397BC53640DB551
gpg --export --armor 1397BC53640DB551 | sudo sh -c 'cat >> /usr/lib/pepperflashplugin-nonfree/pubkey-google.txt'

2.2 用二進位制包安裝

如果提示無法下載和安裝, 則我們需要自己下載二進位制包, 完成安裝.

2.2.1 下載Adobe Falsh Player for Chromium(PPAPI)

選擇對應的版本

其他 rpm 包均可下載安裝

我們目前的環境是 Ubuntu, 官方沒有提供 deb 包, 而 apt 的源也已經失效, 因此我們只能下載 tar.gz 格式的二進位制包.

  • NPAPI
#NPAPI
wget https://fpdownload.adobe.com/get/flashplayer/pdc/24.0.0.221/flash_player_npapi_linux.x86_64.tar.gz
  • PPAPI
wget https://fpdownload.adobe.com/pub/flashplayer/pdc/24.0.0.221/flash_player_ppapi_linux.x86_64.tar.gz
tar -zxvf flash_player_ppapi_linux.x86_64.tar.gz

flashplayer的軟體包

主要是一個名為libpepflashplayer.so 的連結庫.

2.2.2 安裝PPAPI

安裝 PPAPI 其實就是將 flashplayer 的連結庫系統或個人的連結庫目錄, 或者安裝到 瀏覽器 的連結庫目錄

為了相容軟體包 pdate-pepperflashplugin-nonfree

現在將 libpepflashplayer.so 檔案從下載資料夾移動到 /usr/lib/pepperflashplugin-nonfree 目錄.

你可以通過命令︰

sudo mv ~/Downloads/flash_player_ppapi_*/libpepflashplayer.so /usr/lib/pepperflashplugin-nonfree /

安裝PPAPI

3 安裝NPAPI

3.1 源中安裝

NPAPI 在源中由 flashplugin-installer 提供

sudo apt-get install flashplugin-installer

安裝過程中會下載 flash_player_npapi_linux.tar.gz 的包, 並自動安裝到 /usr/lib/flashplugin-installer/

3.2 二進位制包安裝

3.2.1 下載Adobe Falsh Player for Firefox(NPAPI)

採用與 PPAPI 同樣的方法安裝

或者直接下載

#NPAPI
wget https://fpdownload.adobe.com/get/flashplayer/pdc/24.0.0.221/flash_player_npapi_linux.x86_64.tar.gz

3.2.2 安裝

同樣將二進位制包中的連結庫拷貝到 /usr/lib/flashplugin-installer/, 或者瀏覽器可以找到的其他目錄即可

cp flash_player_npapi_linux/* /usr/lib/flashplugin-installer/

4 驗證

或者開啟其他帶 flash 的網頁即可

5 參照

參照