Using a Sony PRS-T2N e-reader with FreeBSD
This article describes how to mount and transfer files to a Sony PRS-T2N.
In an earlier article I reviewed the Sony PRS-T2N. It seems this model has now been replaced by the PRS-T3, and Sony has stopped making E-readers.
Nevertheless I want to document how to mount it and transfer files to it. This howto is written for FreeBSD, but the commands for other BSD variants and Linux will be similar.
In this howto I will not be covering ebook software, even though that might have functionality to transfer ebooks.
Many booksellers will sell e-books these days. Unfortunately some of those still come with cumbersome restrictions (DRM). Avoid them if you can.
A great source of free e-books is Project Gutenberg.
The PRS-T2 represents itself on my system as three direct-access (disk-like) devices.
> dmesg ugen4.2: <Sony> at usbus4 umass0: <Mass Storage> on usbus4 umass0: SCSI over Bulk-Only; quirks = 0x4000 umass0:3:0:-1: Attached to scbus3 da0 at umass-sim0 bus 0 scbus3 target 0 lun 0 da0: <Sony PRS-T2N 2031> Removable Direct Access SCSI-2 device da0: 40.000MB/s transfers da0: Attempt to query device size failed: NOT READY, Medium not present da0: quirks=0x2<NO_6_BYTE> da1 at umass-sim0 bus 0 scbus3 target 0 lun 1 da1: <Sony PRS-T2N SD 2031> Removable Direct Access SCSI-2 device da1: 40.000MB/s transfers da1: Attempt to query device size failed: NOT READY, Medium not present da1: quirks=0x2<NO_6_BYTE> da2 at umass-sim0 bus 0 scbus3 target 0 lun 2 da2: <Sony PRS-T2N Setup 2031> Removable Direct Access SCSI-2 device da2: 40.000MB/s transfers da2: Attempt to query device size failed: NOT READY, Medium not present da2: quirks=0x2<NO_6_BYTE>
Furthermore I used the
file command to look at these devices.
> file -s /dev/da* /dev/da0: DOS/MBR boot sector, code offset 0x58+2, OEM-ID "mkdosfs", sectors/cluster 8, reserved sectors 38, Media descriptor 0xf8, sectors/track 16, heads 4, sectors 2844288 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 2773, serial number 0x4f03984c, label: "READER " /dev/da1: ERROR: cannot read `/dev/da1' (Device not configured) /dev/da2: DOS/MBR boot sector, code offset 0x3c+2, OEM-ID "mkdosfs", sectors/cluster 4, root entries 512, sectors 20480 (volumes <=32 MB) , Media descriptor 0xf8, sectors/FAT 20, sectors/track 32, heads 64, serial number 0x510115d3, label: "SETUP ", FAT (16 bit)
Looking at the descriptions, we can notice that;
setupand is a MSDOS filesystem, probably containing the device’s system software.
SDwhich probably stands for the micro-SD card that can be added. I don’t have one in my reader, hence the “not configured”.
da0contains a MSDOS filesystem and is probably the internal storage. This is the device we want to mount.
My automounter doesn’t recognize these devices because they don’t have
a partition table, but that is not a big problem. To mount the
I use the following command.
> mount_msdosfs -u rsmith -g rsmith -m 644 -M 755 /dev/da0 /mnt/rsmith
You should replace
rsmith with your username and
a directory that belongs to you.
The built-in storage is approximately 1380 MiB.
> df -m /mnt/rsmith Filesystem 1M-blocks Used Avail Capacity Mounted on /dev/da0 1386 39 1346 3% /mnt/rsmith
The PRS-T2 stores e-books in the sub-directory
When it is mounted this becomes in my case
/mnt/rsmith/Sony_Reader/media/books/. This is where you can copy your
ebooks to. On the built-in “bookshelf” of the device, the
epub files show
their built-in titles, not the filename. Nevertheless I like to rename the
epub files to something that resembles their title for better browsing of the
Currently, I have around 50 e-books on this device, using around 39 MiB. So I won’t be running out of space anytime soon!
Transferring files to the e-reader
As a backup and for convenience, I keep all my e-books in a directory on my workstation. When I find an interesting e-book, I put it there. And usually if I plug my e-header in via USB to charge it, I use the opportunity to transfer e-books to the reader.
My favorite tool for transferring files is the rsync program, because it can check on its own which files are missing in the target directory. It is used like this.
> rsync -av archive/epub/ /mnt/rsmith/Sony_Reader/media/books
Note that the source (first) directory should end with a slash, but the target should not.
For comments, please send me an e-mail.