Hi Brian,
On Sep 2, 2010, at 7:40 PM, bredgeo1@netscape.net wrote:
> Hey Adrian,
>
> Went and followed the Wiki in German... But I still get the usb error.
Before I help you, would please mind two things before we continue?
First, you should take care to reply both to me (or anyone else whom you're
replying to) _and_ the mailing list. This can be achieved by clicking "Reply
All"
in your mail client when on the mailing list. This way, everyone will
be able to see your messages to the mailing list.
And, second, please set your mail client to use text only format on the
mailing list if possible. If you use HTML or any other RichText format,
other users might not be able to read your messages.
Thanks!
And now for your problem. I will explain it in detail so you can figure out
how to fix it yourself.
On Linux (and most Unix-type operating systems), all devices are represented
as files. That is, if your computer has a serial connector (RS-232), for
example,
you could simply write data over that serial connector by copying the data
to the corresponding device file.
For example:
echo "Hello World!" > /dev/ttyS0
Will write "Hello World!" to the device associated with the device file
/dev/ttyS0.
Likewise, other devices like your hard disks, mice, USB devices, SCSI devices
and so on have their own device files. Like all files on a Linux machine, device
files have permissions associated to them which control which user may access
the respective device. Without any special configuration, these permissions are
set that only root may fully access the devices. Thus, the permissions are set
to:
crwx------
in this case of a character device (hence the "c" at the beginning). You can see
these patterns when listings files in a terminal with "ls -l".
Since you are advised to work with normal user privileges instead with "root"
privileges, you will have to adjust the permissions to be able to fully access
your devices as a non-root user. One way to achieve this would be manually
setting the permissions of the appropriate device file each time after you have
connected a device to your computer.
Since this would be very tedious and annoying, any recent Linux distributions
provide a system daemon running in background called "udev" (the process
name is actually "udevd"). This daemon is monitoring all device activity and
takes care of adjusting the permissions of device files (among other things,
udev can actually do more) when connecting a new device. For this, udev
uses pattern matching to classify a device according to it's PCI or USB IDs
which are unique to any device model. Once a device has been classified,
the device file permissions for this device are set according to rules which
have been previously defined. As a user, you usually don't have to care about
these rules since your distribution vendor (e.g. Ubuntu) has taken care of
that for you, so that most common devices like CD-ROM drives, scanners,
printers and so on are correctly classified and the permissions are set
properly.
Since NetMD and HiMD devices aren't that common nowadays anymore, there
are no distribution vendors I know of who have defined udev rules for these
such that the permissions are set correctly upon connecting a MiniDisc
device to your Linux box. Thus, you will have to define these rules yourself.
Don't worry, this just involves pasting one line into a special configuration
file. As I posted earlier, some German Ubuntu user has described this
mechanism on the German Ubuntu wiki [1] and you should be able
to perform the required steps for your case. To conclude the steps
again:
1) Connect your NetMD device to your computer and make sure it's powered on
2) Open a terminal console on your Linux machine and type:
lsusb
You will get something like:
glaubitz@burns:~> lsusb
Bus 002 Device 003: ID 046d:c03e Logitech, Inc. Premium Optical Wheel Mouse
(M-BT58)
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
glaubitz@burns:~>
Look for a line which contains your NetMD device, usually it contains the
words
"Sony" and "Walkman" in the case of a Sony Walkman. Then write down the
4-digit hexadecimal numbers which are separated by a colon, e.g.: 046d:c03e
like in the above example for the Logitech mouse. The first hex number
specifies the USB vendor ID (in this case 046d means Logitech) and the
second hex number specifies the device ID (in this case c03e, meaning
"Premium Optical Wheel Mouse (M-BT58)"). Sony devices usually have
a vendor ID starting with 054c, see also [2].
3) Then, as root user, create a file called "/etc/udev/rules.d/netmd.rules"
and add the following line:
ATTRS{idVendor}=="ABCD", ATTRS{idProduct}=="EFGH", MODE="0664",
GROUP="plugdev"
Replace ABCD and EFGH with the appropriate IDs for vendor and device
which you wrote down in 2) earlier. Then save the file. This will set
the owning group of the device file for your NetMD to "plugdev" (all
users logging in locally via gdm are usually in the group plugdev)
the permissions to "0664" which corresponds to "-rw-rw-r--" in terms
of the scheme mentioned above from the "ls -l" command.
4) Unplug and re-plug your NetMD Walkman. The netmd_dump script should
work now.
If you are still having problems, please paste your error messages as well
as the output of "lsusb".
Hope that helps,
Adrian
[1] http://wiki.ubuntuusers.de/Baustelle/NetMD
[2] https://wiki.physik.fu-berlin.de/linux-minidisc/doku.php?id=mdusbids=