Hi,
Short story:
I have a USB hard drive. When I plug it into my server machine while I'm
logged into it, two Thunar windows open showing me the contents of its two
partitions and two hard-disk icons appear on the desktop.
When I plug the same USB hard drive into my client machine, though, neither
windows nor icons appear. In effect, nothing happens. When I open Thunar, the
hard-disk(s) are nowhere to be found.
The same goes for a separate USB memory stick: automounts when I plug it into
the server; nothing perceptible happens when I plug it into the client.
In contrast, when I plug in an SD memory card in the client machine's SD memory
card slot, I can then navigate through it directories and files without taking
any further steps, just as I can when plugging it into the server machine's SD
card slot.
Long story:
Before I explain what I've tried, some info about my system:
# ltsp-info
server information:No LSB modules are available.Distributor ID:
DebianDescription: Debian GNU/Linux testing (jessie)Release:
testingCodename: jessie
server packages:un ldm-server <none>un ltsp-client-core <none>un ltsp-docs
<none>ii ltsp-server 5.5.1-1un ltsp-utils <none>ii ltspfs 1.3-1
packages in chroot: /opt/ltsp/i386ii ldm 2:2.2.13-1ii ldm-themes 12.07.1ii
ltsp-client 5.5.1-1ii ltsp-client-core 5.5.1-1ii ltspfsd 1.3-1ii ltspfsd-core
1.3-1
found: /var/lib/tftpboot/ltsp/i386/lts.conf
found image: /opt/ltsp/images/i386.img
Here's what I've tried:
First, for comparison with happens on the client, after plugging the USB
hard-disk into the *server machine*, I can, as root, run
# fdisk -l /dev/sdb
Disk /dev/sdb: 250.1 GB, 250059350016 bytes255 heads, 63 sectors/track, 30401
cylinders, total 488397168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector
size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512
bytes / 512 bytesDisk identifier: 0x8h790mk45
Device Boot Start End Blocks Id System/dev/sdb1
63 488392064 244196001 5 Extended/dev/sdb5 126
369221894 184610884+ 83 Linux/dev/sdb6 369221958 488392064
59585053+ 7 HPFS/NTFS/exFAT
and
# mount -l | grep sdb/dev/sdb6 on /media/larry/058DL9484H9L3A27 type fuseblk
(rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096)/dev/sdb5
on /media/larry/df187dkc-e123-4f8e-a12b-3bd852ac953c type ext4
(rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
Now for what I've tried:
Following suggestions at https://wiki.ubuntu.com/DebugLocalDev, I confirmed
that the user account (which I named "abba") that I was using to log into the
client machine was in the fuse group. Logged into the cient machine, I ran:
$ whoami | iduid=1002(abba) gid=1000(humbleusers)
groups=1000(humbleusers),122(fuse)
Per https://wiki.ubuntu.com/EnableLTSP5LocalDevices, on the client image, I
found that ltspfsd was in place
# chroot /opt/ltsp/i386 dpkg -l ltspfsd|grep ^iiii ltspfsd 1.3-1
all Fuse based remote filesystem hooks for LTSP thin clients
I found that on my server machine (although I earlier installed LTSP on it) did
not have lstpfs installed, and so I installed it.
# dpkg -l ltspfs | grep ^iiii ltspfs 1.3-1 amd64 Fuse
based remote filesystem for LTSP thin clients
Also, the fuse module is installed.
# lsmod | grep fusefuse 67503 3
And I found that /dev/fuse already existed:
# ls -la /dev/fusecrw-rw-rw- 1 root root 10, 229 May 1 19:05 /dev/fuse
To match its permissions with those described for it on
https://wiki.ubuntu.com/DebugLocalDev, I did this
# chown root:fuse /dev/fuse# chmod o-rw /dev/fuse# ls -la /dev/fusecrw-rw---- 1
root fuse 10, 229 May 1 19:05 /dev/fuse
And, out of desperation, in spite of the out-of-the-box lts.conf file saying
"things like sound and local device support are auto-enabled if the
corresponding packages are installed, there is no need to manually set these
options anymore", I added
LOCALDEV=TrueLOCALDEV_DENY_USB = falseLOCAL_STORAGE=True
to the bottom of it. Ie, it now looks like this:
# This is the default lts.conf file for ltsp 5. For more information about#
valid options please see lts.conf(5) man page, available in the ltsp-docs#
package.## Note that things like sound and local device support are
auto-enabled if the# corresponding packages are installed, there is no need to
manually set these# options anymore.
[default] LTSP_CONFIG=True #SOUND=False #LOCALDEV=False
#CONFIGURE_X=False
LOCALDEV=TrueLOCALDEV_DENY_USB = falseLOCAL_STORAGE=True
And, because http://wiki.ltsp.org/wiki/Configuration#Client says "By default
the lts.conf should be located out of the chroot and into the TFTP directory",
I complied:
# mv /opt/ltsp/i386/etc/lts.conf /var/lib/tftpboot/ltsp/i386/
To monitor dmesg on the client upon plugging in the USB hard drive, I created a
root user account for it
# chroot /opt/ltsp/i386 passwd<entered password twice>
Then, to top it all off, not knowing what needs to be re-built or re-started
for any of these changes to take effect, I ran
# ltsp-update-image
When that process was complete, I booted up the client machine, went to
Ctrl-Alt-F1, logged in as the root user and ran
# tail -f /var/log/dmesg
When I plugged in the USB hard drive, I saw there only
[ 117.358566] sd 2:0:0:0: [sdb] No Caching mode page found[ 117.368929] sd
2:0:0:0: [sdb] Assuming drive cache: write through[ 117.382536] sd 2:0:0:0:
[sdb] No Caching mode page found[ 117.388813] sd 2:0:0:0: [sdb] Assuming drive
cache: write through[ 117.488100] sd 2:0:0:0: [sdb] No Caching mode page found[
117.494115] sd 2:0:0:0: [sdb] Assuming drive cache: write through
I ran
# fdisk -l /dev/sdbDisk /dev/sdb: 250.1 GB, 250059350016 bytes255 heads, 63
sectors/track, 30401 cylinders, total 488397168 sectorsUnits = sectors of 1 *
512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size
(minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x8h790mk45
Device Boot Start End Blocks Id System/dev/sdb1
63 488392064 244196001 5 Extended/dev/sdb5 126
369221894 184610884+ 83 Linux/dev/sdb6 369221958 488392064
59585053+ 7 HPFS/NTFS/exFAT
. . . the same as when I run that command with the USB hard drive plugged into
the server machine.
Given, though, the absence of what is shown in "Step 2: Does the client
recognize the plug event" of https://wiki.ubuntu.com/DebugLocalDev (ie,
"Initializing USB Mass Storage driver..." etc in dmesg), that page tells me
that this means "the kernel on the thin client either doesn't see your usb
port, or doesn't like your usb device".
But this conclusion doesn't seem consistent with the results of running fdisk
-l /dev/sdb on the client machine, which successfully shows the partitions - so
seemingly nothing wrong with the USB port.
Moreover the server machine has no problem automouting the USB hard drive's two
partitions - so seemingly nothing wrong with the USB device.
Is there still another configuration change that I'm missing? Something else
that I need to stop and reset or re-start? Or are LTSP clients not built to
hand USB hard drives with more than one partition? Or . . . ?
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos. Get
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_____________________________________________________________________
Ltsp-discuss mailing list. To un-subscribe, or change prefs, goto:
https://lists.sourceforge.net/lists/listinfo/ltsp-discuss
For additional LTSP help, try #ltsp channel on irc.freenode.net