# RAC Attack - Oracle Cluster Database at Home/Create Full Book

This entire wikibook can be printed as a physical book for classes or events. Many participants greatly appreciate this since they can write notes in the book directly and perhaps keep the book.
Download the current RAC Attack Print-Ready PDF here: File:Racattack.pdf
The process is entirely automated and uses LaTeX behind the scenes so the typography looks very professional. (Of course proofreading is always required since the wiki pages can be updated at any time!) In the United States, Fedex/Kinkos has printed and bound handbooks in the past for around US$30 to US$40 each (about 120 pages double-sided, black and white).
This PDF is a final print-ready document. You can certainly just download this PDF and send it to the printer - however it does not get automatically updated when wiki pages are updated. We recommend that you generate a fresh PDF yourself so that your printed books include the latest fixes and updates to the labs. You can then email one of the RAC Attack project organizers and they can update this wikibook with your newly generated PDF!

## Copyright Problems

This section is not written by a lawyer. This is not legal advice. Please consult with a lawyer who understands the relevant laws in your jurisdiction.
Screenshots of proprietary software and websites are copyrighted. It is impossible to create public domain or free screenshots of proprietary software or websites. This book is being written to teach beginners how to use specific proprietary computer software. It is basically impossible to teach this without illustrations - i.e. screenshots. For all practical purposes, this educational book requires the use of screenshots. As a result, this RAC Attack wikibook includes many images under "fair use".
* Printing a book for your personal use: there shouldn't be any problem at all.
* Delivering internal training at your business, the company prints textbooks for its employees: should be ok.
* Teaching a class for which enrollment is open to the public and you print a textbook for each enrollee: I doubt anyone will make trouble for you - unless you're obviously stealing a lot of "education/class" business from a copyright owner.
* Printing books and selling them online or selling them at a bookstore in your country: you might get in trouble for this; it is not recommended.
You should be aware that the legal situation surrounding print books with "fair use" images is complicated and varies from country to country. Some countries don't even have a fair use copyright law - this might mean that the book can't legally be printed in those countries. Even in countries that have these laws, printed copies of this RAC Attack handbook may have restrictions placed upon them. For example, there may be restrictions upon commercial sale of the book (for profit or not). Please be aware of the laws in your own country surrounding "fair use" of copyrighted software or websites in screenshots.
Note that the printed edition of this book includes a full index showing the authors and licensing of every single image in the book.

## Generating the Print PDF

To create a new PDF yourself from current wiki content, follow the instructions below. It is entirely scripted. These instructions for have been tested on an Amazon EC2 instance running Ubuntu 12.10 i386 (32-bit).

### Setup Build Environment

* Verify that RAC_Attack_12c/Print_Book looks correct - it's including the right chapters and the content looks good. Don't worry about the navigation boxes and links that show up, they will be stripped from the book.
* Quick start an EC2 instance of ubuntu 12.10 32-bit (ami-7339b41a) on m1.small (doesn't work on "tiny" instances).
* ssh ubuntu@amazon-server-name
* wget https://raw.github.com/ardentperf/racattack/master/makebook/setup.sh
* screen -L -d -m sh setup.sh # setup the build environment; could take an hour or more
* watch 'ps axf|tail -30' # monitor the process
* mv screenlog.0 setup.log # don't erase this but move it after every run!

### Build RAC Attack Print Book

* ssh ubuntu@amazon-server-name
* screen -L -d -m sh make-racattack-book.sh # build book; could take 20 minutes or more
* watch 'ps axf|tail -30' # monitor the process
* mv screenlog.0 make-racattack-book.log # don't erase this but move it after every run!
If the build is successful then the file racattack.pdf will be created in the home dir when it finishes
If you want to see how to manually build, just read the build script - it's pretty simple actually.

## Typesetting To-Do

If you're interested in helping improve the typesetting and if you know (or want to learn) anything about LaTeX, here are a few outstanding tasks that could be done:
TODO in LaTeX:
* continued item numbering in lab 1 (so printed book numbering matches web numbering)
* nobreak before images in lab 1.4 (setup virt storage) step 3 (browser warnings)
* nobreak inside tables in lab 1 & lab "create DB"
* nobreak inside info boxes (e.g. lab "rolling patches")
* link to kevin closson's blog doesn't wrap correctly; goes into right margin
* make a fancy cover, perhaps including the image from the wikibook home page?
* rewrite current awk script items as new wb2pdf patches (instead of awk)
* submit appropriate racattack wb2pdf patches upstream to wb2pdf project
Note that I want to keep everything fully automated. This means that the best solution is to patch the wb2pdf source code (for example on continued item numbering). The wb2pdf source code is written in Python and Haskell. If that's not feasible then we may fallback onto the awk script which post-processes the racattack tex file (embedded in make-racattack-book.sh)
The supplemental source code can be found at https://github.com/ardentperf/racattack/tree/master/makebook

## Update To-Do

Book creation script no longer works due to very old version of wb2pdf (9-dec-2012) which relied on toolserver account that's now disabled. We should update the scripts to use 14.04 and the mediawiki2latex package in universe repositories. Initial POC shows that mediawiki2latex package is functional and able to generate PDF from racattack print book page; next step is to get it working with formatting tweaks, update the scripts in github and update this page with 14.04 ami and link.