Skip to content

Commit

Permalink
Update NBD server usage documentation (#1101)
Browse files Browse the repository at this point in the history
* Readme: Update notes on using NBD

* Readme: NBD updates v2

* Readme: Lint the NBD bullet points
  • Loading branch information
nroach44 committed Mar 16, 2024
1 parent bd6f5b7 commit 7542b3c
Showing 1 changed file with 24 additions and 18 deletions.
42 changes: 24 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,24 +123,30 @@ that contains the preferred partition name (for example `__common`).
<summary> <b> NBD Server </b> </summary>
<p>

A [NBD](https://en.wikipedia.org/wiki/Network_block_device) server replaced HDL server.
NBD is [formally documented](https://github.com/NetworkBlockDevice/nbd/blob/master/doc/proto.md)
and developed as a collaborative open standard.
The current implementation of the server is based on [lwNBD](https://github.com/bignaux/lwNBD),
go there to contribute.
The main advantage of using NBD is that the client will simulate a similar
interface to the OS as if the device was plugged directly into your machine.
All your favorite software that worked with the device directly connected to your
machine, will work with the device accessible through the network.

Currently, only export for HDD is supported by the server.
You can use hdl-dump, pfs-shell, or even directly edit disk in some hex editor.
Example, how to install HDL game to the HDD:
Connect with your choosen client, then `hdl_dump inject_dvd ps2/nbd "Test Game" ./TEST.ISO`
and when you're done, disconnect the client.

So you need a NBD client.
Here we list some known compatible clients and how to use them.
OPL now uses an [NBD](https://en.wikipedia.org/wiki/Network_block_device) server to share the internal hard drive, instead of HDL server.
NBD is [formally documented](https://github.com/NetworkBlockDevice/nbd/blob/master/doc/proto.md) and developed as a collaborative open standard.

The current implementation of the server is based on [lwNBD](https://github.com/bignaux/lwNBD), go there to contribute on the NBD code itself.

The main advantage of using NBD is that the client will expose the drive to your operating system in a similar way as a directly attached drive.
This means that any utility that worked with the drive when it was directly attached should work the same way with NBD.

OPL currently only supports exporting (sharing out) the PS2's drive.

You can use `hdl-dump`, `pfs-shell`, or even directly edit the disk in a hex editor.

For example, to use `hdl_dump` to install a game to the HDD:

* Connect with your choosen client (OS specific)
* Run `hdl_dump inject_dvd ps2/nbd "Test Game" ./TEST.ISO`
* Disconnect the client.

To use the NBD server in OPL:

* Grab the latest beta version (OPL 1.1.0 (current stable) has some bugs in the NBD server) - go to the [Releases](https://github.com/ps2homebrew/Open-PS2-Loader/releases) section and grab the one at the top.
* Ensure OPL is configured with an IP address (either static or DHCP).
* Open the menu and select "Start NBD server". Once it's ready, it should update the screen to say "NBD Server running..."
* Now you can connect with any of the following NBD clients.

### nbd-client

Expand Down

0 comments on commit 7542b3c

Please sign in to comment.