Monthly Archive for October, 2012

WANdisco’s October Roundup

This month was a busy one for WANdisco and the Subversion community, with new releases of Apache Subversion, SmartSVN and uberSVN and of course, WANdisco’s very own global Subversion conference series, Subversion Live.

Subversion Live 2012 took place in San Francisco; Greenwich Connecticut, and London, bringing attendees sessions covering everything from Subversion’s future, expert-led best practice workshops focused on getting the most out of Subversion and a unique ‘Roundtable with the Committers’ session. Attendees had the opportunity to meet and put their questions to the core Subversion committers, in addition to networking with their fellow Subversion users.

We’ve had fantastic feedback from the community; here’s just some of the comments we’ve received about Subversion Live 2012:

  • Thanks for running the conference. It was really helpful. The SVN folks I met were great. A lot more approachable than the typical geek gathering!
  • Thank you very much for the information you passed to me over the Subversion conference, I have now installed uberSVN on my laptop and have started to play with it. I have also signed up for a few webinars in November to kick off some internal training. I really enjoyed the conference, it was very well put together. You and your staff are a very friendly and helpful team which made the event a pleasure to attend.
  • I look forward to attending next year’s event, with a bit more experience under my belt I hope to have some challenging questions for your developers.

See what else attendees have been saying, at our Subversion Live 2012 feedback blog. You can also find out more about the different Subversion Live sessions by reading our recaps of Day One and Day Two, and an in-depth look at the Subversion Live Keynote, and the What’s Coming in 1.8: Overview session.

The Apache Subversion community released another update to the SVN 1.7 series this month, with the release of Apache Subversion 1.7.7. This featured even more fixes and enhancements, including:

  • A fix for a memory read bug
  • Unknown password stores in configuration files no longer cause errors
  • “All tests successful” is now printed at the end of ‘make check’
  • Fixes for issues that could occur when applying Git patch files
  • Status no longer descends into dir externals following upgrade

A full list of what’s new can be found in the Apache Subversion Changes file. As ever, the latest binaries are available to download from the WANdisco website.

Subversion 1.7.7 binaries are also available through uberSVN, the free-to-download, free-to-use, open ALM platform, which was also updated this month. uberSVN ‘Chimney House’ Release 7 is the final release in uberSVN’s ‘Chimney House’ series, and features a new license comparison tool, in addition to a list of fixes and enhancements. The license comparison tool ensures that users are fully aware of license changes, through a pop-up that displays the current license information and compares it to the incoming license prior to installation.

Other updates include:

  • A navigation warning that alerts the user if they attempt to navigate away from the LDAP locations page without saving.
  • The ability to perform other actions in the uberSVN UI whilst update packages are being downloaded (admins only.)
  • Apache Subversion 1.6.19 and 1.7.7 binaries shipped with all new downloads.
  • Removing LDAP locations now presents a warning and option to remove the associated users.

More information on all the changes included in uberSVN ‘Chimney House’ Release 7 is available at the Release Notes.

We were particularly excited to announce the first SmartSVN release since we acquired the popular graphical client last month. SmartSVN 7.0.7 brings some useful enhancements and fixes to the SmartSVN community, more information is available at the SmartSVN 7.0.7 blog post.

If you have any comments or suggestions for upcoming releases, you can post your ideas directly to the SmartSVN team at our dedicated SmartSVN Suggestions forum.

There’s been lots of exciting press activity this month, including articles in MoneyWeek and Investors Chronicle. WANdisco was also featured in Talk Business, which welcomed WANdisco CEO and co-founder David Richards as their latest technology columnist in residence this month. In his first article for the publication, ‘Our Man in the Valley,’ David dishes the dirt on life as a tech company in Silicon Valley. David Richards also shared his top three ways to reduce software development costs at the WANdisco blog, covering:

  • Continuous Integration/Continuous Delivery
  • Highly Available Source Code
  • Software Development without Geographic Constraints

If you’re looking to run leaner, meaner and drive IT costs down, be sure to read David’s  ‘Three Unconventional Ways to Manage IT Costs’ post.

Subversion Live 2012: Your Feedback

Thank you to everyone who participated in Subversion Live 2012, and who helped to make this global series of conferences for the Apache Subversion community such a resounding success.

We’ve received fantastic feedback so far, here’s just some of the comments we’ve received about Subversion Live 2012:

What You’ve Been Emailing

  • Thanks for running the conference. It was really helpful. The SVN folks I met were great. A lot more approachable than the typical geek gathering!
  • Thank you very much for the information you passed to me over the Subversion conference, I have now installed uberSVN on my laptop and have started to play with it. I have also signed up for a few webinars in November to kick off some internal training. I really enjoyed the conference, it was very well put together.  You and your staff are a very friendly and helpful team which made the event a pleasure to attend.
  • I look forward to attending next year’s event, with a bit more experience under my belt I hope to have some challenging questions for your developers.

What The Subversion Live Feedback Forms Have To Say……

  • Fantastic, even better than last year!
  • Good to meet more WANdisco staff
  • I would definitely attend next year’s event
  • My team hope to meet the WANdisco staff again

We also asked attendees what they find the most beneficial about Subversion Live, here’s some of the things that kept coming up:

  • Meeting the committers
  • Merge topics
  • Meeting WANdisco and other company employees
  • Apache Subversion 1.8 overview
  • The opportunity to speak to technical experts
  • The networking aspect
  • Breakout sessions
  • Finding out about new best practices
  • Chance to talk to SVN committers and the power users, and the WANdisco execs
  • Knowledge and advice on merging practices and tricks to speeding up transactions
  • Branching best practices
  • Hook scripts
  • Committer discussions
If you attended the event and have yet to provide feedback, you can either comment on this post, tweet us, or Contact Us directly. We’re already planning the next event, and your feedback is invaluable in helping us continue to make future Subversion Live events even better.

 

Subversion Live: What’s Coming in SVN 1.8?

Apache Subversion 1.8 is currently scheduled for release later this year, so it’s no surprise that Subversion Live London’s ‘What’s Coming in 1.8: Overview’ session drew a large crowd, especially as the session was conducted by core Subversion committers Julian Foad, Stefan Fuhrmann, Ben Reser and Philip Martin.

First, the committers covered what the community can expect from the 1.8 release process, and stressed the importance of community testing during the Release Candidate stage. “The Release Candidates are your opportunity to tell us about the bugs that really hurt you,” said Stefan.

The session then moved onto the new functionality that’s planned for this release, with an in-depth explanation of the following:

  • EV2 – a new framework for Subversion 1.8
  • Deltification improvements – the committers stressed that this will be particularly useful for people working on large repositories
  • A new benchmarking tool for identifying server and performance bottlenecks
  • Support for –include -externals in SVN Commit
  • SVN Merge improvements – users will no longer have to distinguish between a reintegrate merge and a sync merge
  • svn mergeinfo will include a summary diagram as the default output
  • revprop handling – improved handling during backup
  • A more interactive SVN Resolve command

  • Three new options for SVN Diff (–ignore-properties, –properties-only, and –patch-compatible)
  • A new password agent on UNIX
  • svnadmin freeze – this command will delay commits while other operations are performed on the repository. Throughout this process, the repository remains live. The committers revealed that this new feature was inspired by a conversation with an attendee at Subversion Live 2011.

Unsurprisingly, many attendees used the Q and A time at the end of the presentation to quiz the core committers on the finer details of the upcoming 1.8 release, especially the changes to inherited properties, pristine copies, reintegrate merges, and even Subversion’s bindings. The bindings question led to an invitation for the audience members to become Subversion committers themselves: “If the bindings are important to your business, send us a patch,” said Philip Martin.

Another topic of conversation during the Q and A section, was whether upgrading the working copy to 1.8 should be a manual or an automatic process. The general consensus among Subversion Live attendees seemed to be that it should be manual.

Attendees were also able to get advice from the committers on how to leverage Subversion 1.8’s features for their own individual use cases. In fact, there were so many questions that the next session was due to start before all the attendees’ questions were answered. Thankfully, all of the core committers were at Subversion Live throughout the last day (and were also available for more questioning during the Committer Roundtable session) giving attendees plenty of time to find out more about Subversion 1.8.

Read all about Subversion Live 2012, with our recaps of Day One and Day Two, and an in-depth look at the Subversion Live Keynote.

Subversion Tip of the Week

Locking Files from the Subversion Command Line

Apache Subversion is built around the ‘copy-modify-merge’ model, but you can enforce a ‘lock-modify-unlock’ model if necessary. This can be useful when you’re editing files that cannot be easily merged, for example image files or large binary files.

Creating a Lock

To create a lock, use the ‘svn lock’ command followed by the location and name of the file you wish to lock:

svn lock (working-copy-path/filename)

Keep your colleagues in the loop by adding a log message explaining why you have locked the file. Log messages can be added using the -m switch:

svn lock (working-copy-path/filename) -m “log message”

In this example, we are locking an image file called ‘Logo’ with the log message “Working on logo.”

You can now make changes to the file on your local machine, confident that no one else is committing changes to the repository. Once you have finished modifying the file, you can unlock it using the ‘svn unlock’ command:

svn unlock (working-copy-path/filename)

In this example, we are unlocking the ‘Logo’ file from earlier:

Tip: when you commit back to the repository all locks are automatically released as part of the commit transaction. If you wish to commit without releasing any locks you can use the ‘–no-unlock’ switch to explicitly tell Subversion to maintain the locks:

svn commit –no-unlock (working-copy-path) -m “log message”

In this example we are committing to the repository without lifting the lock, and with the log message “initial draft of logo.”

Subversion Live 2012 – A resounding success

Subversion Live 2012 was a resounding success. The talks were largely very well-received, the questions from attendees were great, the participants were a friendly, engaging bunch and we all had a great time. The majority of the attendees said they’d be happy to come back next year and recommend us to others, which to us is a sure-sign that we’re on the right track.

No time to rest on our laurels though, work is already underway to plan next year’s event and make it even bigger and better than this one. We’ve taken all of your feedback on board from this year’s events and will be making sure we add the stuff that you all want.

I hope you’ll join us for what we’re sure will be an informative and valuable couple of days.

If you couldn’t make it this year and want to see what you missed, or even if you did make it but want to see a particular session again, you can find the slides in full here:  Subversion Live 2012 – the slides (PDF file)

If there’s anything you’d like to see at next year’s event let us know in the comments.

Subversion Live London 2012 – Day 2 recap

After a fun and very interesting first day at Subversion Live I was really looking forward to the second day as there were more talks and chances to get fairly exclusive looks at the future of Subversion.

8:30am – Continental Breakfast

Breakfast was a sedate affair after the previous evenings jollities. A few of my co-workers didn’t even make it down in time 😉

 

9:00am – Keynote – Greg Stein, Vice President of Subversion at the Apache Software Foundation

This was a speech I was excited to see, I’d chatted to Greg a little the evening before, and I’d listened to his podcast prior to Subversion Live about what he would be discussing. As I said in yesterday’s recap, I’m fairly new to Subversion, so Greg giving an overview of why Subversion got started and some of the pivotal choices along the way were enlightening, and helped me to understand the ethos of the project and its contributors. Greg also touched upon what’s planned for the future of the project, and why Subversion is still as relevant as it was when they started.

For a more detailed look at what Greg covered, check out the blog post here.

 

10:00am Stefan Furhmann – What’s coming in 1.8 Overview

Following on from the keynote, Stefan Furhmann and the other Subversion committers present were back to talk about Subversion 1.8 and what’s changing. In short, there’s a whole bunch of goodies coming your way. Notable aspects included merge improvements (see more on that later), deltification improvements, a benchmarking tool (Stefan covered this in detail in the Subversion Server Tuning session yesterday and it looks extremely useful from a diagnostics point of view), log search and client details in commit hooks. All of these things are going to make day-to-day usage of Subversion a much smoother experience. We can’t wait.

 

11:15am – AM breakouts

For the first breakout session I took the only opportunity to see the talk from our Product team (Rob and Rich) about Bloodhound. If you haven’t heard about it yet, Bloodhound is an Open Source issue tracker and ALM solution, meaning you can set milestones and record bugs, then track your teams’ progress against these. You can find out more about it here.

We’re very excited about Bloodhound here at WANdisco, as the most commonly requested feature for uberSVN is defect tracking and we’re planning to fully integrate Bloodhound and uberSVN next year.

The talk covered the progress of the project so far, why it’s an improvement over Trac (namely multi-project support, a user-centric design and an easy to install and setup solution), what’s in the plan over the next year, and an overview of the SCM solution when you combine uberSVN with Bloodhound and Jenkins for a completely integrated management tool.

 12:15pm – Lunch

From attending previous industry seminars and conferences before my time at WANdisco I was not expecting much from the food to be honest, but the team did us proud and lots of attendees commented on how nice the food was. It was a good opportunity to catch up with people after a busy morning, and it was great to hear that everyone I spoke to was having a good time and learning a lot.

1:30pm PM Breakout 1

For the first afternoon breakout session I went along to hear Julian Foad talk about Merge and Performance improvements. When we talk about Subversion in the wider software development world we hear a lot of gripes about merging, some of which are justified and a lot of which aren’t. As my role is almost entirely dealing with the Subversion community I was glad to hear that the committers were working on merge improvements and was keen to hear how the progress was going.

The big thing to take away from this speech was that you will no longer have to choose between a sync or a reintegrate merge from 1.8 onwards. You just tell Subversion to merge and it will make it happen. This is a massive improvement for the average user, or even a non-average user who’d like to keep their hair and sanity intact!

We’ll be doing a more in-depth blog around this talk, with more of the upcoming improvements and some examples of commands and such like. Watch out for that over the next few days.

2:45pm – PM Breakout 2

I skipped the presentations this time around, and chose to spend some time at our table outside the conference rooms, chatting to customers and attendees who were between sessions or milling around. I’d been in the presentations for the rest of the two days, which was very valuable, but I wanted to get some more social interactions in too. I’m told the Branching and Merging Best Practices session by Mike Lester was very useful though and Stefan Furhmann’s talk about new features in SVN clients looked interesting.

 

4:00pm Committer roundtable 

This was another opportunity to ask questions of the Subversion committers, this time in a more informal setting. A great way to end the event, and leave everyone energised about Subversion and it’s future.

Then there was nothing left to do but collect feedback forms and give out the awesome event t-shirts, modelled here by my 11 year old 🙂

Overall the event was a great success, and I had a lot of fun whilst learning a lot. Now I’m excited about making next year’s event bigger and even better!

Subversion Live 2012:Keynote

After a first day that covered hook scripts, Subversion server tuning and best practices, and still found time for a Birds of a Feather Open Session, there was even more good stuff to come at the second day of Subversion Live London.

Day two featured an afternoon of breakout sessions that took in the new Apache Bloodhound project, branching and merging, move tracking, continuous delivery, and more.

The day kicked off bright and early, with a keynote delivered by Greg Stein, the Vice President of Apache Subversion at the ASF.

Despite the early hour, Greg delivered his ‘Why Subversion Still Matters’ keynote to a full room. Over the course of an hour, he covered the entire history of the world’s most popular version control system, from the initial “Inversion” filesystem design, to the first Milestone releases, and finally onto Subversion 1.7 as we know it today, complete with enterprise features that are seeing SVN gain increasing adoption within enterprise environments.

Greg also shared the story of how the team assumed Subversion 0.14.0 would mark a turning point in SVN’s development, with future development being concerned only with “bugfix and minor features from now on.” This was backed up by a slide aptly titled “What Were We Thinking?!?”

Greg shared his thoughts on maintaining and managing an open source community, stressing the importance of making developers feel a part of this community by granting them committer privileges. This encourages Subversion’s long-term health – inevitably, some developers will leave the project, but there are always new committers joining.

Of course, any ‘Why Subversion Still Matters’ talk ultimately boils down to the hotly-contested question of whether SVN is still relevant, and whether the future of version control really lies with distributed systems such as Git. Greg pointed out that when you use services such as GitHub, you effectively make your distributed version control centralized again, but ultimately took a refreshingly pragmatic approach, advising that version control systems are just a tool and you should simply choose the right one for your needs.

After covering the ins-and-outs of Subversion’s past, there was just enough time to look to the future. Greg assured attendees that the committers are “always improving merging and merge conflict detection,” and that, although future releases will feature more disconnection, they will still maintain a canonical server.

Despite taking in the entire history of Subversion and looking ahead to future releases, many attendees took advantage of the opportunity to put further questions to Greg Stein after the session had ended.

Subversion Live London 2012 – Day 1 recap

Being relatively new to Subversion and WANdisco I was a bit unsure of what to expect from Subversion Live, but the people who attended last year seemed to get a lot out of it, and I definitely wanted to meet some of our customers and community members face to face.

Day one turned out to be extremely helpful, and I got to meet some really great people over a beer or several in the cocktail session. Here’s a quick recap of the day, and particularly the things I enjoyed or learnt the most from.

7.30am 

Leave WANdisco office in Sheffield. Some very bleary faces. We’re not so much morning people 😀

 

11:30am 

Arrive at venue. After refuelling with carbohydrates and caffeine we’re all raring to go. Bring on the Subversioning!

 

12:00pm – Hook Scripts

First up is our Director of Subversion Training, Mike Lester, to talk about hook scripts. Anything we do that is hook script related tends to be really popular, from webinars to ref cards to blogs so we expected this session to be a big hit.

Mike led us through an overview first of all, then picked out individual differences between the different types of hook scripts, before leading us into the how’s and why’s of implementing hook scripts.

It was a very interesting session, and I learned a few things, including that the pre-rev-prop-change is needed in order for post-rev-prop-change to run, unlike the other post- hooks, which don’t have the same dependencies (for example, you don’t have to have a pre-commit in order to have a post-commit). Hook scripts are bread and butter in Subversion, particularly when using them to police policies, and so this was a great start to the event.

I’d lay off the jokes next time though Mike! 😉

 

1.15pm – Subversion Server Tuning Demo

Next up was Stefan Fuhrmann to talk us through Subversion Server Tuning.

To my surprise this was actually my stand-out session of the day. I learned a lot of things that can be used for diagnostics when helping users with performance issues, and a whole bunch of tweaks to get a Subversion server running beautifully. As I’m not a sysadmin/Subversion admin by day this was really interesting and mostly new stuff for me to get to grips with.

Particularly interesting were the time savings you can make with the improvements to caching and tweaking compression settings. Translating those savings across large development teams would be very beneficial. Check out our Subversion HealthCheck if you want to know what it can do for you.

2.30pm – Best Practices of Large SVN Deployments in Large Customer Sites

This session, delivered by one of our Solutions Architects (Jonathan Paul) was all about the best setup and environment for enterprise level Subversion, particularly when using Apache. It was good to see some recommendations based on hands-on Subversion experience, and there were a couple of points about getting the *same* environment in testing and staging as you have in production that are probably a lot more overlooked than they should be in most dev teams. If I had a pound for every time I’ve heard the phrase ‘well that didn’t happen in staging’ in previous jobs I’d have been able to shout several rounds at the bar, even at London prices 😀

4pm – Birds of a Feather Open Session

This was scheduled time for the breakout session, which was pretty much an open invitation to fire questions at the Subversion committers.

There was a very interesting presentation from Blue Optima though, which centred around performance metrics for a development team (or several). This is a subject I’ve seen and heard many questions about before, and it’s always descending into arguments between developers and/or development managers as to what actually makes a developer ‘good’ or why x way of coding is better than y. This presentation didn’t answer that question categorically, but the solution offered allows you to measure KPI’s objectively, based on a whole range of metrics measured against a particular codebase and group of people. I’m going to have a play with their solution, but it seems pretty neat. You can check it out here. You can also let us know what YOU think the best measures of good developers are in the comments below.

There were some interesting questions for the committers too, particularly around removing some files/entire revisions from Subversion, and the plan for an ‘obliterate’ feature in the future.

 

6pm – Cocktail Reception

Food, drinks, chatting, and some dubious pool playing on the tiniest pool table I’ve seen in a long time were the order of the evening. For the first time I got to actually talk, laugh and debate face-to-face with the Subversion committers, customers, and people I work with from other offices/countries. This is what makes events like this especially valuable, and I’m really looking forward to day two.

 

TL:DR

Subversion Live was awesome, I learned a lot.

You could too, if you didn’t come make sure you rectify that next year!

Drinking and chatting with people who have worked on Subversion for a long time, or are currently doing great things using Subversion, is what makes my job cool.

 

So, if you didn’t make it, sort that out for 12 months time and we’ll see you there. If you did, thanks for coming, and it was great to meet you. See you in a year!

Also, I could see planes from my window!

Subversion Tip of the Week

The ‘SVN Diff’ Command

‘SVN Diff’ is a command for highlighting the differences between two paths. This is useful in a number of common scenarios:

1) Comparing versions of the same file, in different locations

Your project may contain different versions of the same file, for example one version in the trunk and one in a branch. To flag up the differences between the two versions, use the following command:

svn diff (repository-URL/trunk/filename) (repository-URL/branches/filename)

In this example, we are comparing a file called ‘Admin Guide’ that appears in both the trunk and in a branch called ‘Admin Text.’

This will list information such as the revision the file is at in both the trunk and the branch, alongside a print-out of the differences.

Tip. If you see the following error message when entering the ‘svn diff’ command:

OPTIONS of (repository URL) 200 OK (repository URL)

It usually means you entered the repository URL incorrectly – go back and check for typos!

2) Comparing your project/files at different revisions

As Apache Subversion remembers every change committed to the repository, it is possible to compare specific files, or even your whole project, at different revisions.

To compare two revisions of your project, the following command can be used:

svn diff (repository-URL) -r(Revision):(Revision)

In this example, we are comparing revision 5 of our repository with the head revision.

If you want to compare the differences between two revisions of a specific file, you simply add the location of the file and the filename to your command:

svn diff (repository-URL/file-path/filename) -r(Revision):(Revision)

In this example, we’re comparing revisions 8 and 10 of a text file named ‘Notes,’ which is located in the trunk:

Tip. The ‘SVN Diff’ command ignores the ancestry of files by default, to alter this add the ‘–notice-ancestry’ switch.

Setting up Amanda to backup a linux box to Amazon S3

Here is my experience with compiling and configuring amanda to backup to the cloud (S3).

First compiling and installing amanda

  1. Create a user ‘amanda’ in group ‘backup’. Login as this user
  2. Download amanda-3.3.2.tar.gz, unzip
  3. As user amanda, run ‘./configure –enable-s3-device’ and ‘make’
  4. As user root, run ‘make install’
  5. Now this next instruction is basically a hack to workaround some packaging bugs in amanda:
    • chgrp backup /usr/local/sbin/am*

Next, creating a backup configuration called ‘MyConfig’ for backing up /etc to a virtual tape in the directory /amanda

  1. As root, create a directory /amanda, and chown it to amanda:backup
  2. Run the following commands as user amanda:
    • mkdir -p /amanda/vtapes/slot{1,2,3,4}
    • mkdir -p /amanda/holding
    • mkdir -p /amanda/state/{curinfo,log,index}
  3. As root, create a directory ‘/usr/local/etc/amanda/MyConfig’, and chown it to amanda:backup.
  4. As user amanda, create a file /usr/local/etc/amanda/MyConfig/amanda.conf with the following contents:

 

org "MyConfig"
infofile "/amanda/state/curinfo"
logdir "/amanda/state/log"
indexdir "/amanda/state/index"
dumpuser "amanda"

tpchanger "chg-disk:/amanda/vtapes"
labelstr "MyData[0-9][0-9]"
autolabel "MyData%%" EMPTY VOLUME_ERROR
tapecycle 4
dumpcycle 3 days
amrecover_changer "changer"

tapetype "TEST-TAPE"
define tapetype TEST-TAPE {
  length 100 mbytes
  filemark 4 kbytes
}

define dumptype simple-gnutar-local {
    auth "local"
    compress none
    program "GNUTAR"
}

holdingdisk hd1 {
    directory "/amanda/holding"
    use 50 mbytes
    chunksize 1 mbyte
}
  • Create a file /usr/local/etc/amanda/MyConfig/disklist with the following contents:
localhost /etc simple-gnutar-local
  • As root make a directory /usr/local/var/amanda/gnutar-lists, and change ownership of this directory to amanda:backup
  • Next, as user amanda, run the program ‘amcheck MyConfig’. It should finish its report with ‘Client check: 1 host checked in 2.064 seconds.  0 problems found.’
  • Next, run ‘amdump MyConfig’. The program should exit with return value 0
  • Finally, run ‘amreport MyConfig’ to get the status of you backup effort!

That’s it for testing a local backup to the virtual tape /amanda. Now, on to trying this with S3 as the tape backend.

  • Create a new config directory /usr/local/etc/amanda/MyS3Config/amanda.conf with the following contents:
org "MyS3Config"
infofile "/amanda/state/curinfo"
logdir "/amanda/state/log"
indexdir "/amanda/state/index"
dumpuser "amanda"

# amazonaws S3
device_property "S3_ACCESS_KEY" "YOUR_AMAZON_KEY_ID_HERE"
device_property "S3_SECRET_KEY" "YOUR_AMAZON_SECRET_KEY_HERE"
device_property "S3_SSL" "YES"
tpchanger "chg-multi:s3:YOUR_NAME-backups/MyS3Config1/slot-{01,02,03,04,05,06,07,08,09,10}"
changerfile  "s3-statefile"

tapetype S3
define tapetype S3 {
    comment "S3 Bucket"
    length 10240 gigabytes # Bucket size 10TB
}

define dumptype simple-gnutar-local {
    auth "local"
    compress none
    program "GNUTAR"
}

holdingdisk hd1 {
    directory "/amanda/holding"
    use 50 mbytes
    chunksize 1 mbyte
}
  • Enter your S3 Account Key ID, Secret Key and change YOUR_NAME to your name in the above config example
  • Now run the command
    • amlabel MyS3Config MyS3Config-1 slot 1
  •  If this works fine, then run the following command to create 9 more slots
    • for i in 2 3 4 5 6 7 8 9 10; do amlabel MyS3Config MyS3Config-$i slot $i; done;
  • Finally run the following to verify:
    • amdevcheck MyS3Config s3:jaganes-backups/MyS3Config1/slot-10
  • Now you are ready to run a backup. Define one for the /etc directory on your machine by adding the file /usr/local/etc/amanda/MyS3Config/disklist with the following line:
    • localhost /etc simple-gnutar-local
  • Try running a backup using the command:
    • amdump MyS3Config
  • Check the return value of the command, and if that is 0, check the contents of the backup bucket on S3 using S3fox or some such tool.

That’s all folks. You have created a backup of your linux machine’s /etc directory on Amazon’s S3 cloud storage service.

It would be interesting to try this with Amazon’s glacier service, which is much cheaper than S3

avatar

About Jagane Sundar