Restoring from backup script failed [Resolved]

This forum is for all other ARMv5 devices

Restoring from backup script failed [Resolved]

Postby chat1410 » Tue Dec 18, 2012 8:18 am

I have a B01 PogoPlug. I pulled a backup script off of these forums somewhere and created a cronjob to run this script weekly. Since no backup solution can be trusted until it's tested and I want to move my installation away from a 4 GB flash drive I decided to put my backup to the test.

This is my backup script:
$this->bbcode_second_pass_code('', '#! /bin/bash
# script to create a tar backup file
# of the pogo plug device

# directory to place backups
BACKUPDIR=/media/WD_HDD/backups

# file name YYYY-MM-DDHH:MM:SS.tgz
BACKUPNAME=`date +%F_%T`.tgz

# remove dashes and colons from file name
BACKUPNAME=${BACKUPNAME//[-|:]/}

# root directory for the backup
SOURCE=/

# number of sets to keep
NUMSETS=5

# perform the backup
tar -cvpzf $BACKUPDIR/$BACKUPNAME \
--exclude=/proc --exclude=/mnt --exclude=/sys \
--exclude=/dev --exclude=/lost+found \
--exclude=/media $SOURCE

# delete older files greater than $NUMSET
cd $BACKUPDIR
LINS=$((NUMSETS + 1))
if [[ $(ls $BACKUPDIR | wc -l) > $NUMSETS ]]
then
stat -c "%Y %n" * | sort -rn | tail -n +"$LINS" | \
cut -d ' ' -f 1 --complement | xargs -d '\n' rm
fi
')

I untarred a backup I had just created to the root of a freshly formatted external hard drive.

$this->bbcode_second_pass_code('', 'drwxr-xr-x 2 root root 4096 Nov 30 11:42 bin
drwxr-xr-x 2 root root 4096 Dec 12 22:58 boot
drwxrwxrwx 5 root users 4096 Nov 8 13:20 builds
drwxr-xr-x 4 root root 4096 Dec 31 1969 dev
drwxr-xr-x 59 root root 4096 Dec 15 23:54 etc
drwxr-xr-x 4 root root 4096 Nov 5 09:40 home
-rw-r--r-- 1 root root 4139 Nov 20 2011 ledcontrol.tgz
lrwxrwxrwx 1 root root 7 Nov 6 09:23 lib -> usr/lib
drwx------ 2 root root 16384 Dec 18 01:18 lost+found
drwxr-xr-x 3 root root 4096 Oct 4 20:41 opt
drwxr-x--- 4 root root 4096 Dec 11 21:38 root
drwxr-xr-x 23 root root 4096 Dec 15 23:52 run
drwxr-xr-x 2 root root 4096 Dec 9 14:37 sbin
drwxr-xr-x 4 root root 4096 Dec 8 18:30 srv
drwxrwxrwt 9 root root 4096 Dec 17 04:00 tmp
drwxr-xr-x 9 root root 4096 Dec 8 18:30 usr
drwxr-xr-x 14 root root 4096 Dec 8 18:30 var')

I shut down the PogoPlug, removed all external media except this hard drive and attempted to boot. I get a steady green light but I can't ping the static IP and my router hasn't issued a new IP.

Here's the relevant serial output:

$this->bbcode_second_pass_code('', '[ 6.970000] scsi2 : SCSI emulation for USB Mass Storage devices
[ 11.970000] scsi 2:0:0:0: Direct-Access Seagate FreeAgent Go 102D PQ
: 0 ANSI: 4
[ 13.790000] sd 2:0:0:0: [sda] 488397168 512-byte logical blocks: (250 GB/232
GiB)
[ 13.800000] sd 2:0:0:0: [sda] Write Protect is off
[ 13.800000] sd 2:0:0:0: [sda] Assuming drive cache: write through
[ 13.810000] sd 2:0:0:0: [sda] Assuming drive cache: write through
[ 13.820000] sda: sda1
[ 13.860000] sd 2:0:0:0: [sda] Assuming drive cache: write through
[ 13.870000] sd 2:0:0:0: [sda] Attached SCSI disk
[ 13.970000] kjournald starting. Commit interval 5 seconds
[ 13.970000] EXT3 FS on sda1, internal journal
[ 13.970000] EXT3-fs: mounted filesystem with writeback data mode.
[ 13.970000] VFS: Mounted root (ext3 filesystem) on device 8:1.
[ 14.030000] devtmpfs: mounted
[ 14.030000] Freeing init memory: 144K
INIT: version 2.88 booting
HOSTNAME= is deprecated. See rc.conf(5) and hostname(5) for details.

> Arch Linux ARM

> http://archlinuxarm.org/

:: Mounting root read-only [BUSY] mount: /: mount failed: No such file or directory
[FAIL]
:: Setting hostname: PogoPlug [BUSY] /etc/rc.sysinit: line 48: /proc/sys/kernel/hostname: No such file or directory
[FAIL]
HARDWARECLOCK= is deprecated. See rc.conf(5) and hwclock(8) for details.
:: Adjusting system time and setting kernel time zone [BUSY] TIMEZONE= is deprecated. See rc.conf(5) for details.
[DONE]
:: Starting udev daemon [BUSY]
[ 16.550000] <30>systemd-udevd[395]: starting version 196
[DONE]
:: Triggering udev uevents [DONE]
:: Loading user-specified modules [BUSY] MODULES= is deprecated. See rc.conf(5) and modules-load.d(5) for details.
Failed to read /proc/cmdline, ignoring: No such file or directory
[ 17.070000] Probing for Synopsis GMAC, unit 0
[ 17.080000] eth0: Tuning GMAC 0 RGMII timings
[ 17.080000] eth0: PHY is Realtek RTL8211D, type 0x001cc914
[ 17.090000] eth0: GMAC ver = 53, vendor ver = 18 at 0xed400000, IRQ 40
[ 17.100000] eth0: Found PHY at address 3, type 0x001cc914 -> 10/100/1000
[ 17.100000] eth0: Ethernet addr: 00:30:e0:00:00:00
[ 17.110000] probe() eth0: Leon x2 clock
[DONE]
:: Waiting for udev uevents to be processed [DONE]
:: Configuring virtual consoles [BUSY] Failed to enable UTF-8: No such file or directory
[DONE]
:: Checking filesystems [BUSY] /etc/rc.sysinit: line 120: /dev/stdout: No such file or directory
[DONE]
:: Remounting root and API filesystems [BUSY]
mount: /: mount failed: No such file or directory
[FAIL]
:: Mounting local filesystems [DONE]
:: Activating swap [DONE]
:: Configuring time zone [DONE]
:: Initializing random seed [DONE]
:: Removing leftover files [DONE]
:: Saving dmesg log [BUSY]
install: cannot stat ‘/dev/fd/63’: No such file or directory

NIT: Entering runlevel: 3
mount: mount point /proc/sys/fs/binfmt_misc does not exist
:: Setting MAC address [BUSY]
[ 19.080000] Turning off blinking LED.
ORANGE
AMBER
[ 19.570000] NET: Registered protocol family 3
[ 19.660000] NET: Registered protocol family 6
[ 19.760000] NET: Registered protocol family 11
[ 19.930000] NET: Registered protocol family 4
[ 20.000000] NET: Registered protocol family 5
GREEN
[ 20.260000] eth0: PHY is Realtek RTL8211D, type 0x001cc914
[ 20.270000] CoPro offload is active on eth0
[ 20.270000] Alloc'ing ARM descs 8192 bytes
[ 20.280000] Alloc'ing CoPro parameters 36 bytes
[ 20.280000] gmac gmac.0: firmware: requesting gmac_copro_firmware
[ 80.290000] open() eth0: Failed to load CoPro firmware
')

In reading over this wiki entry regarding using rsync to make a backup, I'm suspecting the boot failed because it couldn't mount the various folders required (since they weren't there). I just read that article in preparation for this post. As I've already connected everything to the PogoPlug, I'll make the folders and try again tomorrow.

In theory all I'll have to do is create the folders I'm missing and it should boot up right? Could those missing folders be why the kernel failed to mount / ?
Last edited by chat1410 on Wed Dec 19, 2012 2:08 am, edited 1 time in total.
chat1410
 
Posts: 28
Joined: Thu Nov 01, 2012 5:55 pm

Re: Restoring from backup script failed

Postby chat1410 » Wed Dec 19, 2012 2:08 am

Adding creating those directories I excluded post-restore, pre-boot did it. Hooray more storage!

Does anyone know how I can have those five (blank) directories created within the backup script?
chat1410
 
Posts: 28
Joined: Thu Nov 01, 2012 5:55 pm

Re: Restoring from backup script failed

Postby Geoff » Wed Dec 19, 2012 3:11 am

$this->bbcode_second_pass_quote('chat1410', 'D')oes anyone know how I can have those five (blank) directories created within the backup script?

It's a bit dicey to backup a rootfs that's booted up at the time. Otherwise, you probably wouldn't need to bother about excluding those directories. Anyway, the rsync flags that I use for backup are "-aAHXx" ... the "-H" flag is important for preserving hard links, and the "-x" flag avoids crossing over mount points. Those two flags are not mentioned in the wiki article that you referenced, although I think they should be. The "-X" flag is ineffective with the 2.6 kernel, as far as I can tell.
Geoff
 
Posts: 231
Joined: Wed Mar 09, 2011 5:14 pm


Return to Community Supported

Who is online

Users browsing this forum: No registered users and 45 guests