PS2 Internal HDD Setup (2021-09) version 0x01 -- @sairukau =============================================================================== Changelog =============================================================================== v0x01 Initial document =============================================================================== Expected Use cases =============================================================================== - Run a PS2 Internal HDD =============================================================================== Hardware =============================================================================== PS2 - FAT PS2 Model Drive - 500GB IDE Drive Networking - LAN - Static IP Software - OPL Latest with NBD Server Optional - PFSshell - hdl_dump =============================================================================== Primer =============================================================================== New OPL build moved from HDL Server to NBD Server NBD or Network Block Device is a means of forwanding a block device from one machine1 to machine2 and have it present as local storage on machine2 =============================================================================== Assumptions =============================================================================== it is assumed you can already - exec unsigned code on your ps2 - you have an internal hdd in your ps2 - opl is setup - your ps2 is networked =============================================================================== Config =============================================================================== PS2 Install a version of OPL that supports the new NBD server, enable write function in the OPL settings Linux Install nbd-client and enable the module {{{ # apt-get install nbd-client # modprobe nbd }}} =============================================================================== Block Device =============================================================================== PS2 Start the server in OPL Linux Attach the block device with nbd-client {{{ # nbd-client 192.168.0.114 /dev/nbd Connected /dev/nbd0 }}} Detach a block device with ndb-client {{{ # nbd-client -d /dev/nbd0 }}} =============================================================================== hdl_dump =============================================================================== Project https://github.com/AKuHAK/hdl-dump.git Build git pull https://github.com/AKuHAK/hdl-dump.git cd hdl-dump make release=yes Example with nbd0 $ ./hdl_dump map /dev/nbd0 0GB: MMMMMMMM MMMMMMMM MMMMMMss ssssssss ssssssss sssssMss ssssssss ssssssss 8GB: ssssssss sssssssM ssssssss sssssssM ssssssss ssssssss ssssssss ssssssss $ ./hdl_dump hdl_toc /dev/nbd0 type size flags dma startup name DVD 3084128KB 0 "SLUS_210.08 Katamari Darmacy =============================================================================== pfsshell =============================================================================== Project https://github.com/ps2homebrew/pfsshell.git Build (with pfsfuse) git clone https://github.com/ps2homebrew/pfsshell.git cd pfsshell mkdir build cd build meson -Denable_pfsfuse=true .. ninja Examples TBA =============================================================================== Troubleshooting =============================================================================== Permission denied in hdl_dump or other apps trying to access the block device {{{ # ls -la /dev/nbd0 brw-rw---- 1 root disk 43, 0 Sep 18 23:26 /dev/nbd0 }}} To fix this, either add the user trying to run hdl_dump to the disk group or add other perms to the block device node {{{ chmod o+rw /dev/nbd0 }}} =============================================================================== References =============================================================================== https://github.com/AKuHAK/hdl-dump.git https://github.com/ps2homebrew/pfsshell https://github.com/ps2homebrew/Open-PS2-Loader