User Tools

Site Tools


usersguide:osdataexchange

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

usersguide:osdataexchange [2014/11/11 14:52]
usersguide:osdataexchange [2014/11/11 14:52] (current)
Line 1: Line 1:
 +The original documentation on this topic can be found [[http://​www.minix3.org/​doc/​datxchng.html|on this html doc page on the site]].
 +
 +====== Exchanging files with USB sticks ======
 +
 +USB mass storage support will be mainline soon for the Beaglebones. Not for the beagleboard or x86 targets for the foreseeable future.
 +
 +The next section describe preparing a stick to exchange files between Minix and Linux. In the first example, the stick is prepared on Minix. In the second example, the stick is prepared on Linux.
 +
 +"In both cases a new partition table is written onto it, thereby destroying all data previously on it."
 +
 +===== From Minix to Linux =====
 +
 +To prepare a USB stick on Minix to be read on Linux, we can use the Minix filesystem. We will show you in this example.
 +
 +Insert the USB stick in the Minix target and clear its partition table. Then start part. You will see something like this:
 +
 +<​code>​
 +Started driver /​service/​usb_storage with label usb_disk8 for device 8.
 +New USB disk at /​dev/​usb_disk8.
 +
 +# dd if=/​dev/​zero of=/​dev/​usb_disk8 count=1
 +1+0 records in
 +1+0 records out
 +# part /​dev/​usb_disk8
 +</​code>​
 +
 +The part screen then looks like:
 +
 +<​code>​
 +# part /​dev/​usb_disk8
 +
 +  Size in kilobytes ​  ​----first---- ​ --geolast-- ​ ------sectors-----
 +    Device ​            Cyl Head Sec   Cyl Head Sec      Base      Size        Kb
 +    /​dev/​usb_disk8 ​                         64  32
 +                         ​0 ​   0   ​0 ​  ​979 ​  ​63 ​ 30         ​0 ​  ​2007039 ​  ​1003519
 +Num Sort   Type
 + ​0* ​ p0  81 MINIX        0    1   ​0 ​  ​978 ​  ​63 ​ 31        32   ​2004960 M:1002480
 + ​1 ​  ​p1 ​ 00 None         ​0 ​   0   ​0 ​    ​0 ​   0  -1         ​0 ​        ​0 ​        0
 + ​2 ​  ​p2 ​ 00 None         ​0 ​   0   ​0 ​    ​0 ​   0  -1         ​0 ​        ​0 ​        0
 + ​3 ​  ​p3 ​ 00 None         ​0 ​   0   ​0 ​    ​0 ​   0  -1         ​0 ​        ​0 ​        0
 +
 +Type '​+'​ or '​-'​ to change, '​r'​ to read, '?'​ for more help, '​q'​ to exit
 +
 +</​code>​
 +
 +Move the cursor to where the M: is written (I put it there just to specify the location) and press the '​m'​ key, for '​magic.'​ This will 'do the right thing' in most cases in part. In this case it will make a new partition for you in the desired slot with the MINIX type with the right offset and size to fill the whole stick.
 +
 +Then press '​w'​ to write the new table. ​
 +
 +You don't really need this partition for Minix, but other operating systems may be surprised to find just a single filesystem on a device without a partition table.
 +
 +The new device is addressed by /​dev/​usb_disk8p0.
 +
 +Then write a filesystem on it and create a file there:
 +
 +<​code>​
 +# mkfs.mfs /​dev/​usb_disk8p0
 +# mount /​dev/​usb_disk8p0 /mnt
 +# echo hello world >/​mnt/​hello.txt
 +# umount /​dev/​usb_disk8p0
 +</​code>​
 +
 +Done! Now stick the stick into a Linux computer and mount it there:
 +
 +<​code>​
 +# mount /dev/sdb1 /mnt
 +# cat /​mnt/​hello.txt
 +hello world
 +# umount /dev/sdb1
 +</​code>​
 +
 +Success!
 +
 +===== From Linux to Minix =====
 +
 +This example will do the same thing but initialize the USB stick from Linux and use an ext2 filesystem.
 +
 +Again, first wipe the stick clean. We will use /dev/sdb as an example.
 +
 +"​Please be CAREFUL to replace /dev/sdb in the following with the stick device name, as it will be destroyed"​
 +
 +<​code>​
 +# dd if=/​dev/​zero of=/dev/sdb count=1
 +</​code>​
 +
 +Partition the stick using gparted.
 +
 +<​code>​
 +# gparted /dev/sdb
 +</​code>​
 +
 +In parted, create a partition table by choosing the '​device'​ menu, '​create partition table,'​ select the '​msdos'​ partition type, then '​apply.'​
 +
 +Then press '​+'​ to create a partition.
 +
 +Select the ext2 filesystem type; ok, add it.
 +
 +Then click the checkmark in gparted to commit these operations.
 +
 +gparted will create the partition and format it with an ext2 filesystem.
 +
 +Mount it:
 +<​code>​
 +# mount /dev/sdb1 /mnt
 +# echo hello world >/​mnt/​hello.txt
 +# umount /dev/sdb1
 +</​code>​
 +
 +Done!
 +
 +Now, insert the stick in Minix. And mount the partition using ext2. You will see something like:
 +
 +<​code>​
 +Started driver /​service/​usb_storage with label usb_disk2 for device 2.
 +New USB disk at /​dev/​usb_disk2.
 +
 +# mount /​dev/​usb_disk2p0 /mnt
 +/​dev/​usb_disk2p0 is mounted on /mnt
 +# ls -al /mnt
 +total 56
 +drwxr-xr-x ​  3 root  operator ​  4096 Aug 25  2014 .
 +drwxr-xr-x ​ 18 root  operator ​  1408 Jan  1 00:22 ..
 +-rw-r--r-- ​  1 root  operator ​    12 Aug 25  2014 hello.txt
 +drwx------ ​  2 root  operator ​ 16384 Aug 25  2014 lost+found
 +
 +# cat /​mnt/​hello.txt
 +hello world
 +</​code>​
 +
 +There we go! 
  
usersguide/osdataexchange.txt · Last modified: 2014/11/11 14:52 (external edit)