Talk:Dsh

From OLPC
Jump to: navigation, search

I installed dsh on my XS 0.4 test platform, following the instructions on the dsh homepage to compile from source. I already had all the dev tools I needed except for gcc-c++, though I forget if I installed those prior. I had a slight issue with where make install put these libraries:

[root@schoolserver etc]# cd /usr/local/lib
[root@schoolserver lib]# ls
libdshconfig.a   libdshconfig.so    libdshconfig.so.1.0.0
libdshconfig.la  libdshconfig.so.1

Dsh looks for these in /usr/lib, so I just copied them all over to /usr/lib and then dsh worked. Also, it puts dsh.conf in /usr/local/etc instead of /etc/dsh. Not a big deal, just something to remember. I had to edit remoteshell= ssh instead of rsh in dsh.conf.

Additionally, I edited /etc/ssh_config on the XS to say "StrictHostKeyChecking no" to automatically approve the XOs rsa keys.

On the XOs, I had to edit sshd_config for "PubkeyAuthentication yes" It is critical to set the permissions correctly for /home/olpc/.ssh and /home/olpc/.ssh/authorized_keys, otherwise ssh and dsh won't work.

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys


Now the fun of "commanding a legion of XOs!" Here are some little things I've tried:

  • Get a list of the XOs by Buddy name:
dsh -Mac cat /home/olpc/.sugar/default config | grep nickname
  • See how much free space is on the nand:
dsh -Mac df -h | grep mtd0
  • Install an activity (this can probably be condensed into fewer commands):
dsh -Mac wget <link to activity.xo file>
dsh -Mac unzip activity.xo -d /home/olpc/Activities
dsh -Mac rm activity.xo