User:Tanner
m (init) |
(restore script) |
||
Line 7: | Line 7: | ||
== Reflashing & Restore == | == Reflashing & Restore == | ||
+ | |||
+ | |||
+ | #!/bin/sh | ||
+ | # N900 restore script | ||
+ | # © 2010 by Thomas Tanner <tanner@maemory.com> | ||
+ | # licensed under GPLv3 | ||
+ | |||
+ | set -x | ||
+ | # script and data must be in /home/backup | ||
+ | cd /home/backup | ||
+ | # remove old opt | ||
+ | rm -rf /home/opt | ||
+ | mkdir /home/opt | ||
+ | # copy /root backup | ||
+ | rm -rf /root | ||
+ | cp -a root / | ||
+ | # copy modifed files for /etc | ||
+ | cp -a etc/* /etc | ||
+ | |||
+ | # enable user ssh login with ~/.ssh/authorized_keys | ||
+ | sed 's/^user:!/user:\*/' /etc/passwd > /etc/passwd.tmp | ||
+ | cp /etc/passwd.tmp /etc/passwd # mv | ||
+ | |||
+ | # move root stuff to /home | ||
+ | dirs="usr/share/icons usr/share/nokia-maps usr/share/themes usr/share/fonts usr/share/locale usr/lib/locale var/lib/apt" | ||
+ | #optional: var/lib/dpkg | ||
+ | if test -d /home/var/cache/apt; then | ||
+ | # keep existing apt cache | ||
+ | rm -rf /var/cache/apt | ||
+ | ln -s /home/var/cache/apt /var/cache/apt | ||
+ | else | ||
+ | dirs="$dirs var/cache/apt" | ||
+ | fi | ||
+ | (cd / && du -sc $dirs) | ||
+ | for d in $dirs; do | ||
+ | test -L /$d && continue | ||
+ | echo moving /$d | ||
+ | rm -rf /home/$d | ||
+ | mkdir -p /home/$d | ||
+ | cp -a /$d /home/$d/.. | ||
+ | rm -rf /$d | ||
+ | ln -s /home/$d /$d | ||
+ | done | ||
+ | |||
+ | mount /home/user/MyDocs # non-standard partition layout | ||
+ | apt-get update | ||
+ | apt-get -y install mc python-support openssh-server | ||
+ | |||
+ | # install my standard set of packages | ||
+ | apt-get -y install `cat minimal` |
Revision as of 20:22, 1 February 2010
Tips and tricks:
Repartitioning
Reflashing & Restore
#!/bin/sh # N900 restore script # © 2010 by Thomas Tanner <tanner@maemory.com> # licensed under GPLv3 set -x # script and data must be in /home/backup cd /home/backup # remove old opt rm -rf /home/opt mkdir /home/opt # copy /root backup rm -rf /root cp -a root / # copy modifed files for /etc cp -a etc/* /etc # enable user ssh login with ~/.ssh/authorized_keys sed 's/^user:!/user:\*/' /etc/passwd > /etc/passwd.tmp cp /etc/passwd.tmp /etc/passwd # mv # move root stuff to /home dirs="usr/share/icons usr/share/nokia-maps usr/share/themes usr/share/fonts usr/share/locale usr/lib/locale var/lib/apt" #optional: var/lib/dpkg if test -d /home/var/cache/apt; then # keep existing apt cache rm -rf /var/cache/apt ln -s /home/var/cache/apt /var/cache/apt else dirs="$dirs var/cache/apt" fi (cd / && du -sc $dirs) for d in $dirs; do test -L /$d && continue echo moving /$d rm -rf /home/$d mkdir -p /home/$d cp -a /$d /home/$d/.. rm -rf /$d ln -s /home/$d /$d done mount /home/user/MyDocs # non-standard partition layout apt-get update apt-get -y install mc python-support openssh-server # install my standard set of packages apt-get -y install `cat minimal`