User:Ixo/Script: Difference between revisions

From OLPC
Jump to navigation Jump to search
m (User:Ixo/Scripts moved to User:Ixo/Script: Split into new hierarchy structure.)
m (re-org cleanup)
Line 1: Line 1:
{{RightTOC}}
{{RightTOC}}


Various bash and other scripts, frequently used.
=== Various bash 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. :)


; Notes:
== xo-info ==
* After creating the script, the 'x' execute bit must be set, 'chmod x+a FILENAME'.
Summary
* All submitted under CC-BY-SA-NC 3.0 license.
* Quickly display various useful troubleshooting information about the XO Laptop
* I know bash not python, so if you want to offer python versions, please send them my way. :)


; Suggestions:
Description
* Put all scripts in /home/olpc/bin directory
* Duickly display various useful troubleshooting information about the XO Laptop
* add directory to your search path. In .bashrc put ' set path="/home/olpc/bin:$PATH" '
* Shows current os version: /etc/issue /boot/olpc_build
* Shows available os versions /versions/pristine/*/boot/olpc_build
* Show available os hash info
** /versions/running /versions/boot
** /versions/* /versions/contents/* /versions/pristine/* /versions/configs/*


== [[/ixo-info|ixo-info]] ==
Benefits
{{/ixo-info}}
* Show both versions (current and alt-boot) of OS installed on the system


== [[/get-ixo|get-ixo]] ==
{{/get-ixo}}


== [[/ixo-update|ixo-update]] ==
#!/usr/bin/bash
{{/ixo-update}}
#### FILE: xo-info ########
# 2008 01 12, Iain Davidson, xo AT myna DOT ws
## RELEASED under CC-BY-SA-NC 3.0 license.
grep -v "garbage-to-ignore" /etc/issue /boot/olpc_build /versions/pristine/*/boot/olpc_build
ls -Ld /versions/* /versions/contents/* /versions/pristine/* /versions/configs/*
ls -ld /versions/running /versions/boot


== [[/ixo-update-log|ixo-update-log]] ==
{{/ixo-update-log}}


== get-xo ==
== get-xo ==
Line 37: Line 30:
Description
Description


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



Revision as of 01:03, 10 February 2008


Various bash scripts, frequently used.

Notes
  • After creating the script, the 'x' execute bit must be set, 'chmod x+a FILENAME'.
  • 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. :)
Suggestions
  • Put all scripts in /home/olpc/bin directory
  • add directory to your search path. In .bashrc put ' set path="/home/olpc/bin:$PATH" '

ixo-info

  • xo-sysinfo: Quickly display various useful troubleshooting build information about the XO Laptop


get-ixo

  • get-xo: Get a local copy/backup of your XO Laptop /home/olpc directory.


ixo-update

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


ixo-update-log

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


get-xo

Summary

  • Get a local copy/backup of your XO Laptop

Description

  • From server (or any othe-ixor 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.
  • run between operations on the XO, to see files created or updated.
#!/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
## RELEASED under CC-BY-SA-NC 3.0 license.
ver="update.1-681"
cd ~olpc
echo "------- $ver -------------------------------------"
date
# Below is various system information nice to log before the update 
# (aka xo-info)
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 12, Iain Davidson, xo AT myna DOT ws
## RELEASED under CC-BY-SA-NC 3.0 license.
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).