Ubuntu16.04 下的網易雲出現網路異常、無法播放,介面無響應等問題的統一解決
能夠在Linux系統下體驗到原生介面的網易雲音樂是件不錯的事情,但是它總是經常性的出現網路異常,介面無響應的問題
我為了聽歌,進行深入探究:
首先通過終端啟用網易雲音樂:sudo netease-cloud-music
會得到網易雲音樂執行時的資訊,比如一些出錯的資訊
其實我已經解決了首要的問題(QSslSocket錯誤),因此圖中沒有出現最重要的問題錯誤資訊,至於域名解析暫時失敗的原因,會在後面的段落中提到並提供解決的建議
假設你在終端中看到 qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method 的錯誤提示
那麼這篇文章可幫助你解決!否則,此文僅僅是作為參考
原因:
由於SSLv2的某些漏洞導致的不安全原因所導致的,因此你會在終端看見此錯誤: qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
解決步驟:
重新編譯openssl並加上SSLv2的支援
1.下載所需編譯的原始碼:
git clone https://github.com/openssl/openssl.git
2. 編譯
首先CD到你所下載的專案位置(openssl資料夾),然後執行
./config enable-shared make depend make -j4
執行以下步驟請關閉網易雲音樂的後臺
3.複製
編譯完成後,你應該得到最新版本的四個檔案:
libcrypto.so libssl.so libcrypto.so.x.x libssl.so.x.x
X為版本號
通常應該複製到QT的安裝目錄下,並替換原有的(或刪除原有的),但是假設你不知道它在哪,那麼檔案管理器可以幫助你進行檢索:
好了,得到位置!但是似乎發現了很多個,我的系統已經進行替換,我做了備份,後輟名為 .matrix
也就是說我替換了兩個檔案,原有的是1.0.0版本,我替換了新編譯的 1.1 版本
一個資料夾是 /lib/i386-linux-gnu,另一個是 /lib/x86_64-linux-gnu
加上我剛剛編譯的檔案,剛好三個
進行替換:
cp libssl.so.1.1 /lib/x86_64-linux-gnu/ sudo cp libcrypto.so.1.1 /lib/x86_64-linux-gnu/
將原有的1.0.0版本進行備份(或者刪除)
sudo mv /lib/x86_64-linux-gnu/libssl.so.1.0.0 /lib/x86_64-linux-gnu/libssl.so.1.0.0.matrix sudo mv /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0.matrix
然後再將編譯出的so檔案(沒有版本號的兩個)放入:
sudo cp libcrypto.so libssl.so /lib/x86_64-linux-gnu/
依法炮製,也將 /lib/x86_64-linux-gnu目錄的檔案進行替換
至此,這個錯誤解決
之後,啟動雲音樂,之前遇到的網路問題已經消失了
而介面無響應則是此錯誤導致的(也許有其它原因)
當然,雲音樂執行時還是有其它錯誤,這些錯誤有時也會導致雲音樂出現異常
但是還沒有影響到正常使用,因此這些問題以後再解決,錯誤如圖:
當然,儘管解決以上的錯誤,仍然還是有一些歌曲無法播放,原因來自....域名解析暫時失敗
域名:m7c.music.126.net 無法解析,當然有時候會有其它的域名,如:xx.music.126.net 或 xxx.music.126.net 格式的網址
這個時候,我們幫助它解析就好了,最好的辦法是修改hosts檔案:
你不知道該域名的IP嗎?ping一下
我已經整理了一小部分常用的ip,你只需要將其複製到 hosts 檔案中即可...
#NetEase Cloud Music
120.198.197.240 m8.music.126.net
183.232.133.96 m7c.music.126.net
221.179.46.194 music.126.net
123.58.180.105 m6.music.126.net
123.58.180.106 m1.music.126.net
183.232.139.174 m3.music.126.net
117.135.252.131 m7.music.126.net
183.232.234.97 m8c.music.126.net
可惜了,,有些歌曲因為無法播放就是因為這個...它快取在特定的伺服器,因此域名不同,IP不同,假設解析失敗
那就換下一首吧,或者新增到 hosts 檔案
至此,問題解決。
謝謝你看到了這裡
墨泉 Chongsaid
轉載需說明來處 - Chongsaid