如何在Sony Playstation 3安裝Fedora9

火星人 @ 2014-03-09 , reply:0


  Sony 於 2006年底發售的遊戲主機包含了各種高科技的玩意: Cell BE 處理器、藍光光碟機、HDMI介面、藍牙/802.11g網路…… 一反常態,Sony 在發布前就宣布 PS3 支持 Linux 系統.下面就跟我以 Fedora 9 為例,一步一步地讓憨態可掬的 Tux 企鵝「坐」在 PS3 上.
 
  必要工具
 
  Sony Playstation3 任意地區任意版本皆可.本人使用的是新 40G 歐版.
 
  一個 PS3 支持的顯示設備,比如電視機或者顯示器,至少用色差分量.
 
  光碟刻錄機及空白光碟剩餘空間不少於300M的U盤一個(FAT32文件系統,NTFS 不可)
 
  USB 介面的鍵盤滑鼠,或者免驅動的無線鍵盤滑鼠.
 
  第一步:準備
 
   PS3 的中央處理器是 PowerPC(以下簡稱PPC) 而不是通常的 x86 或 x86_64 架構的,只能選擇支持 PPC 架構的 Linux 發行版.像 Ubuntu 8.04, ArchLinux 等僅有 i386 和 x86_64 的發行版是不行的.現在支持PPC的主流發行版是 Fedora 和 openSUSE,下載相應的 PPC 版本光碟鏡像,強烈建議校驗數據完整性.然後用你順手的刻錄軟體刻錄到光碟即可.注意,推薦下載 DVD 版本,有些 PS3 專屬的配置軟體並沒有包含在 CD 版本的光碟鏡像里.本文以 Fedora 9 PPC DVD 版本為例.
 
  在 PS3 上安裝 Linux 操作系統要求 PS3 系統固件版本在 1.80 以上.當前最新的系統固件版本是 2.41,可以通過用 PS3 網路升級或用 PC下載 好再用U盤傳遞到 PS3 的方式實現.
 
  安裝引導程序.PS3自己並不能從光碟上啟動相應的安裝程序,於是我們需要一個引導程序.該引導程序將安裝在 PS3 系統 Flash 部分,一旦安裝將不可刪除,但可以被其他引導程序覆蓋,固件升級、格式化、或更換硬碟不會影響.因此,對你玩 PS3 遊戲看藍光電影等在 Sony 官方系統下的行為沒有任何影響,可以放心大膽的嘗試.目前有兩種可用的引導程序,kboot 和 petitboot,後者在前者的基礎上提供了圖形化的引導界面(僅僅是引導,與是否圖形化安裝沒關係),本文以 kboot 為例.下載好之後,放在你U盤的 PS3/otheros/目錄下,並重命名為 otheros.bld(大小寫敏感).插入U盤到 PS3,選擇"設定"-"主機設定"-"安裝其他系統",按提示操作安裝.其實這裡所謂的「引導程序」本身就是一個小型的 Linux 系統,用「安裝其他系統」的選項,不過這裡我們只用它來引導安裝光碟.
 
  格式化硬碟.如果你的 PS3 已經使用了一段時間,上面一定有遊戲存檔之類的東西,用你的U盤或者FAT32格式的移動硬碟備份!備份之後,在 PS3 中選擇"設定"-「主機設定」-「格式化硬碟」.很顯然,"保留10Gb給遊戲系統「是不夠用的,選擇」保留10Gb給其他系統「或者」自定義「.這裡選擇」保留10Gb給其他系統「,10Gb已經足夠 Linux 用了.之後等待格式化完成.


 
  第二步:開始安裝
 
  放入刻錄好的安裝DVD,插上你的滑鼠鍵盤,在「設定」-「主機設定」-「優先啟動系統」中選擇「其他系統」,之後選擇「是」,PS3將重新啟動.
 
  如果你看到兩個小企鵝出現,那麼代表引導程序 kboot 運行成功.等待 kboot 提示符出現后,輸入 linux64 video=ps3fb:mode:0 引導光碟.這裡的 0 代表自動檢測顯示輸出模式.如果你清楚你的電視或顯示器的輸出模式,強烈建議按照下表將 0 替換成相應數值.
 

  YUV 60Hz 1: 480i 2: 480p 3: 720p 4: 1080i 5: 1080p YUV 50Hz 6: 576i 7: 576p 8: 720p 9: 1080i 10: 1080p RGB 60Hz 33: 480i 34: 480p 35: 720p 36: 1080i 37: 1080p RGB 50Hz 38: 576i 39: 576p 40: 720p 41: 1080i 42: 1080p VESA 11: WXGA 12: SXGA 13: WUXGA在以上數值上增加 128 啟動全屏模式,增加打開抖動修正 2048.註:6是中國大陸地區普通電視PAL制式,我打開想抖動修正,於是該處的最終值為 6+2048=2054.我輸入的是 linux64 video=ps3fb:mode:2054 本人沒有高清電視,殘念…… 如果實在不清楚該用什麼,就用 0 自動探測吧.
 
  之後的安裝過程和通常的安裝過程無兩樣.分區時你會被提示磁碟未初始化,放心選擇「是」.所謂「整個磁碟」只是你在「第一步:格式化」中選擇的給「保留給其他系統」的那部分,完全不影響遊戲系統系統,用「刪除全部分區並創建默認分區結構」是可以的,推薦使用LVM.
 
  注意儘管 Fedora 9 PPC 光碟的可選軟體包中有 XFCE 桌面環境,但實際上並沒有包含到光碟裡面,我選擇的是 GNOME,並去掉了一部分不用的GNOME功能和Openoffice,最終有907個包需要安裝,用時1小時.安裝結束后光碟會自動彈出,記得取走,之後會自動重新啟動.
 
  會看到兩隻大的Tux,之後會再次看到 kboot 提示符,什麼都不做,稍等一會兒,如果能再看到兩隻大的Tux(代表Cell BE里雙核的PPE)和六隻小的Tux(代表Cell BE里可供使用的六個SPE),表示找到 Fedoara 內核所在位置並開始載入.觀察屏幕上的輸出的話會發現在內核載入前有類似啟動虛擬機的設備映射過程,的確,PS3 的 Linux 是運行於由 Sony 提供的硬體抽象層上的,以一種類似虛擬機的方式訪問硬體設備,而 Cell BE 里的第七個 SPE 就被保留負責設備映射.
 第三步:優化配置

你會注意到 Fedora 9 「首次配置」的部分比以前版本有所精簡,不再有 SELinux 和音效卡檢測了,同時你也會在硬體配置文件部分發現內存只有 191M! 知道做為「KDE控」的我為什麼之前不選擇 KDE4 了吧……
如果你顯示輸出在先前使用的是 0 自動探測的話,這裡我們可以用 ps3videomode 工具測試出來正確的數值.用Ctrl Alt F1 打開一個新的終端(該工具不可在X工作的終端使用),以root用戶的登陸,在 ps3videomode -v # 測試(#位置為上表中數值).如果一個不正確的數值導致電視黑屏了,此時用上箭頭使用 bash 的命令回溯功能調出上一條命令,然後用Backspace鍵刪去錯誤的值,再輸入上一個已知的可以工作的值.


經過上一步的嘗試,你應該已經得出了適合你的顯示設備的值了.於是用文本編輯器比如 vim 打開 /etc/yaboot.conf,找到 append="video=ps3fb:mode:# rhgb quiet"(#位置為之前在引導時所用數值),將#替換為新值.此時我們還可以在此行通過 ps3fb=#M 限制 ps3fb 所用內存,將更多的內存留給系統,根據其他人的測試,2M 足夠 480i 使用,4M 足夠 720P 使用了.於是我的該行是 append="video=ps3fb:mode:2054 ps3fb=3M rhgb quiet」.注意該行還有 root= 部分,那是代表你硬碟的UUID,切不可刪除或修改!保存退出.重新啟動後會發現可用內存已經增加到212M了. /etc/yaboot.conf 就是在 PPC 架構上 Linux 系統的引導程序 yaboot,相當於 X86 架構上的 GRUB 和 /etc/grub.conf.為什麼不用 GRUB 是它只有 i386 版本.
關閉AIGLX,避免運行一些 OpenGL 程序時的崩潰問題.用文本編輯器打開 /etc/X11/xorg.conf 文件,在其中的 Device 段中增加一行 Option "AIGLX" "0" ,保存退出.
你會發現沒有你的GNOME是沒有聲音的,需要調整下 pulseaudio 才行.用文本編輯器比如 vim 打開 /etc/pulse/default.pa,找到並取消 load-module module-oss device="/dev/dsp" sink_name=output source_name=input 的註釋,接著找到並註釋掉 load-module module-suspend-on-idle .保存退出.之後新建一個 /etc/asound.conf 文件,內容如下:
pcm.!default {
type pulse
}
ctl.!default {
type pulse
}
確認已經安裝了 pulseaudio-esound-compat (默認GNOME是安裝的),重新啟動后就能聽到聲音了.
關閉SELinux.用文本編輯器打開 /etc/sysconfig/selinux 文件,按照其中的註釋說明將 enforcing 改成 disabled 保存退出即可.
關閉不必要的服務.有些服務對於 PS3 來講是不必要的,可以關閉以節省內存.包括 auditd, httpd, ip6tables, isdn, sendmail, anacron, cpuspeed, cups, iprinit, iprdump, iprupdate, mdmonitor, nfslock, pcscd, restorecond, rpcbind, rpcgssd, rpcimapd, setroubleshoot, smartd, sshd. 用 chkconfig [service] off 或者用"設置"-"系統" -「服務」關閉.
刪除不需要的顯示驅動 rpm -e xorg-x11-drivers xorg-x11-drv-palmax xorg-x11-drv-voodoo xorg-x11-drv-trident xorg-x11-drv-wiimote libwiimote xorg-x11-drv-sisusb xorg-x11-drv-sis xorg-x11-drv-diamondtouch xorg-x11-drv-nv xorg-x11-drv-i740 xorg-x11-drv-ati xorg-x11-drv-savage xorg-x11-drv-nouveau xorg-x11-drv-i128 xorg-x11-drv-s3virge . 可以節省一定空間並降低更新量.
如何從 Linux 返回 PS3 遊戲系統?

方法一:啟動時,在 kboot 提示符處輸入 game .
方法二:進入 Linux 系統后,以 root 許可權輸入 ps3-boot-game-os .
方法三:開機時,按住前面板的開機鍵不放,直到聽到「滴」的一聲,此時 PS3 將以遊戲系統啟動,並且視頻音頻輸出設置返回出廠狀態(其他設置和硬碟內資料都不會變).


安裝 Fedora 9 PPC 相比於 Sony 推薦的 Yellowdog 6.0 各有什麼優點?

Fedora 9 包含了較新的應用軟體,比如 Firefox 3.0 和 Openoffice 2.4
Fedora 9 可以方便的獲得來自第三方資源倉庫如 livna 的軟體包.用 yum 安裝 mplayer 獲得RMVB回放支持比自己編譯要方便很多.
Fedora 9 默認安裝了 ntfs-3g,可以在 Linux 下讀寫 NTFS 格式的外置硬碟.
Fedora 9 具有更多更快的資源鏡像.
Yellowdog 6.0 包含了來自 IBM 的 Cell SDK.
Yellowdog 6.0 安裝后無需配置即可正常工作.
總而言之,如果你希望 PS3 成為你客廳里的電腦,主要上上網、看RMVB、用模擬器玩SNES或NEOGEO,那麼推薦安裝 Fedora 9;如果你僅僅需要一個 Cell BE 開發平台的話,那麼就用 Yellowdog 6.0 吧!從安裝到配置簡單的幾乎沒的可說.

嘿,我說,Ubuntu 哪裡去了?

Ubuntu 從 7.04 開始對PPC 架構的支持由官方支持轉為社區支持了,於是 PPC 版本比 X86 版本的要晚很多發布,目前可用的版本是 Ubuntu 7.10 Desktop . 社區的 Ubuntu PPC 版本存在一些問題,比如分區程序無法正確識別被映射的硬碟等.另外,很多鏡像上都沒有做 Ubuntu PPC 版本的資源倉庫,下載軟體速度也是一個問題.

PS3 上的 Linux 運行速度如何?

,目前絕大部分 Linux 程序都沒有針對 PS3 使用的 Cell BE (英文穿牆 Wikipedia )進行優化,於是實際上這些應用程序能使用的只有 Cell BE 裡面 PowerPC 架構的雙核 PPE 晶元,而六個具有超強浮點運算能力的 SPE 都處於閑置狀態.只有優化過的程序比如 PS3GRID 才能調用那六個非通用計算的 SPE .性能的差距可以這樣比喻:一個是只有兩個人拉的車,一個是兩個人指揮六匹馬拉的車. 這點理論上可以通過重新將全部源代碼針對 Cell BE 進行優化解決,不過目前連針對 X86_64 的優化都沒做完,天知道什麼時候才能輪到 Cell BE.

其次,目前 PS3 上 Nvidia 的 RSX GPU 被 Sony 屏蔽,無法用它對 Linux 下的 3D 程序進行加速,顯示輸出使用的驅動是 framebuffer 而不是 nv.這點除非破解了 Sony 的固件換用自製固件是別無他法的. 不過 GPU 被屏蔽了,顯存並沒有,目前有一些人在研究如何讓 framebuffer 使用那 GDDR3 256M 的顯存而不是系統主內存.

,為視頻遊戲設計的 PS3 只有 256M XDR 內存,可用的 Framebuffer 的原因還將更小. 對於目前的 Linux 圖形桌面使用來講,256M 以下的內存已經算捉襟見肘了,打開 Openoffice 已經比較費力了(還是用Abiword吧……),想用 GIMP ? 呃……

友情提醒:

本文假設讀者已經有一定的 Fedora 或者其他 Linux 發行版的使用經驗,並且能熟練操作PS3. 如果你是 PS3 或者 Linux 新手的話,請仔細閱讀 PS3 的用戶手冊,並閱讀各大 Linux 論壇置頂基礎知識帖.

PS: 在網上能找到一些如何在 PS3 上安裝 Linux 的中文指南,但是估計購買 PS3 的核心玩家居多,沒什麼時間研究 Linux,這些指南或多或少都有些遺憾.另外無論是中文還是英文,都沒有成形的 Fedora 9 在 PS3 上的安裝指南.希望此文能彌補這些缺失,也希望沒有讓等待的諸多朋友們失望.

部分內容吸取自 FedoraForum PPC 的帖子,來自 PS3-Hacks 的 Sony Playstation 3 詳細硬體規格

感謝來自LinuxTOY:如何在 Sony Playstation 3 安裝 Fedora 9 的稿件.




[火星人 via ] 如何在Sony Playstation 3安裝Fedora9已經有138次圍觀

http://www.coctec.com/docs/linux/show-post-55660.html