User:Ixo/Script

From OLPC
< User:Ixo
Revision as of 08:20, 13 January 2008 by IainDavidson (talk | contribs) (Various scripts I use with my XO Laptop.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


Various bash and other scripts, frequently used.

(All submitted under CC-BY-SA-NC 3.0 license)
(I know bash not python, so if you want to offer python versions, please send them my way. :)

get-xo

Summary

  • Get a local copy/backup of your XO Laptop

Description

  • From server (or any other computer), backup copy files from XO Laptop.
  • Script can ran multiple times, will only copy over files which have changed.

Benefits

  • Allows examination of files on different machine, with better local tools and resources.


#!/usr/bin/bash
#### FILE: get-xo ########
# 2008 01 12, Iain Davidson, xo AT myna DOT ws
## RELEASED under CC-BY-SA-NC 3.0 license.
 
rsync --verbose --progress --times --perms --recursive --compress --links --rsh="ssh" \
   olpc@192.168.0.12:/home /home/Downloads/OLPC-BACKUP

NOTES:

Command is one single line.
'192.168.0.12' is the IP address of the OLPC XO Laptop.
Must setup password for olpc account


log-update

Summary

  • Do an olpc-update to specific build (joyride or Update), log results.

Description

  • Log various system information during an olpc-update for later examination

Benefits

  • Creates permanent record and timing of update, for later viewing.

First script:


#!/bin/bash
## FILE: log-update
# 2008 01 10, Iain Davidson, xo AT myna DOT ws
ver="joyride-1530"
cd ~olpc
echo "-------03:20, 13 January 2008 (EST)03:20, 13 January 2008 (EST)03:20, 13 January 2008 (EST)03:20, 13 January 2008 (EST)IainD $ver -------------------------------------"
date
# Below is various system information nice to log before the update
grep -v "garbage-to-ignore" /etc/issue /boot/olpc_build
ls -Ld /versions/* /versions/contents/* /versions/pristine/*  /versions/configs/*
ls -ld /versions/running /versions/boot
#
/usr/sbin/olpc-update $ver
#
date
echo "------- ______________________ $ver"


Second script:

#!/bin/bash
## FILE: log-update-capture
# 2008 01 10, Iain Davidson, xo AT myna DOT ws
cd ~olpc
./log-update >>log-update.out 2>>log-update.out


NOTES:

Assumed that scripts are in /home/olpc , both have 'x' execute bit set.
Currently need to set manually the version number to update, future feature is passing it along, or picking from list (or latest).