Opened 9 years ago

Closed 9 years ago

#7941 closed defect (fixed)

XO User Listing from XS has no listings

Reported by: kimquirk Owned by: martin.langhoff
Priority: high Milestone: 8.2.0 (was Update.2)
Component: school server Version: not specified
Keywords: blocks?:8.2.0 Cc: dsd
Blocked By: Blocking:
Deployments affected: Action Needed: diagnose
Verified: no


joyride 2263 (and 2230)

After ensuring that a laptop has successfully saved data to the schoolserver (following test cases, Tests/XS/BackupDS and Tests/XS/RestoreDS), when I go to schoolserver/ds-restore from a browser I get a page that says "User Listing", and then there are no files listed.

Change History (8)

comment:1 Changed 9 years ago by kimquirk

  • Owner changed from martin.langhoff to dsd

comment:2 Changed 9 years ago by dsd

  • Cc dsd added; martin removed
  • Owner changed from dsd to martin.langhoff

I have looked into this on the XS side. I can't figure out how it is supposed to work. There seems to be a disconnect between how /var/www/ds-backup/ds-restore.php works, and how everything is set up on the filesystem.

  • /library/users/<SN> is has <SN>:<SN> ownership and 700 permissions. ds-restore.php cannot peek inside. I temporarily fixed to 755.
  • ds-restore.php looks for /library/users/<SN>/datastore-latest but this does not exist. datastore-current is where stuff is kept.
  • when modifying it to look for -current instead of -latest, it still fails, because it expects a symlink pointing to a directory which has a parseable date.

I took a quick look in looking for code that would take datastore-current, create the -latest symlink and a by-date snapshot, but I didn't see anything.

How should this be working?

comment:3 Changed 9 years ago by martin.langhoff

Perhaps give the README that ships with ds-backup a quick read - explains most of it. In brief:

  • Make sure you have ds-backup-server-0.7 (-1 I think) on the server
  • Permission-wise we use ACLs - "apache user can read" - because mode 755 means kids can read eachothers' files via sftp/rsync.
  • There's an incrond hook - which calls and various things, including the the symlink you're missing

rpm -ql ds-backup-server should show you all the files, and how those hooks are invoked...

comment:4 Changed 9 years ago by martin.langhoff

Actually, I lie. The commit msgs are good and full of info, but the README is crap. Apologies.

Full log is your friend:;a=log;h=v0.7

comment:5 Changed 9 years ago by martin.langhoff

This is very strange. On the joyride-2270 I have here, ds-backup-client is still 0.6 but it seems that the build system should have picked it up. See these 2 links:

But the buildlog has it picking the old one:


comment:6 Changed 9 years ago by dsd

OK. First problem was the ds-backup-client on the XO too old (#7919), and second problem is that incrond is not running by default on the schoolserver. I put it in runlevels 2,3,4,5. Can you fix that for the next build?

comment:7 Changed 9 years ago by martin.langhoff

Ah! Thanks for chasing that down - chkconfig during xs-config install.

comment:8 Changed 9 years ago by martin.langhoff

  • Resolution set to fixed
  • Status changed from new to closed

This is fixed with ds-backup-server-0.8-1-olpc3.rpm -- nothing needs to happen on the XO/joyride side, the new server pkg will be in xs-0.4 .

Note: See TracTickets for help on using tickets.