arch-wiki-md-repo
Version:
All arch-wiki articles in markdown format, updated every two days.
252 lines (176 loc) • 4.99 kB
Markdown
This page provides an overview of the Arch Linux services that require backed up.
## Contents
* [1 BBS](#BBS)
* [2 Wiki](#Wiki)
* [3 Flyspray](#Flyspray)
* [4 Mailman](#Mailman)
* [5 ArchWeb](#ArchWeb)
* [6 Git](#Git)
* [7 SVN](#SVN)
* [7.1 Core/Extra Repos](#Core.2FExtra_Repos)
* [7.2 Community Repos](#Community_Repos)
* [8 System files](#System_files)
* [8.1 Gerolde](#Gerolde)
* [8.2 Gudrun](#Gudrun)
* [8.3 Sigurd](#Sigurd)
* [9 AUR](#AUR)
## BBS
* Server: gudrun
* Backup commands:
```
mysqldump -uXXX -pXXX fluxbb \
--no-data \
| gzip -c > bbs-schema.sql.gz
mysqldump -uXXX -pXXX --hex-blob fluxbb \
--no-create-info \
--single-transaction --quick \
--ignore-table=fluxbb.online --ignore-table=fluxbb.search_cache \
--ignore-table=fluxbb.search_matches --ignore-table=fluxbb.search_words \
| gzip -c > bbs-data.sql.gz
tar -czf bbs-htdocs.tar.gz /srv/http/vhosts/bbs.archlinux.org/
```
* Space needed: 200MB
## Wiki
* Server: gudrun
* Backup commands:
```
mysqldump -uXXX -pXXX archwiki \
--no-data \
| gzip -c > archwiki-schema.sql.gz
mysqldump -uXXX -pXXX --hex-blob archwiki \
--no-create-info \
--single-transaction --quick \
--ignore-table=archwiki.hitcounter --ignore-table=archwiki.searchindex \
--ignore-table=archwiki.l10n_cache --ignore-table=archwiki.objectcache \
--ignore-table=archwiki.querycache --ignore-table=archwiki.querycachetwo \
--ignore-table=archwiki.querycache_info --ignore-table=archwiki.transcache \
| gzip -c > archwiki-data.sql.gz
tar -czf wiki-htdocs.tar.gz /srv/http/vhosts/wiki.archlinux.org
```
* Space needed: 570MB
## Flyspray
* Server: gudrun
* Backup commands:
```
mysqldump -uflyspray -pxxx flyspray \
--no-data \
| gzip -c > bugs-schema.sql.gz
mysqldump -uflyspray -pxxx --hex-blob flyspray \
--no-create-info \
--single-transaction --quick \
--ignore-table=flyspray.flyspray_cache \
| gzip -c > bugs-data.sql.gz
tar czf bugs-htdocs.tar.gz /srv/http/vhosts/bugs.archlinux.org/
```
* Space needed: 160MB
## Mailman
* Server: gudrun
* Backup commands:
```
tar czf mailman.tar.gz /srv/mailman
```
* Space needed: 400MB
## ArchWeb
* Server: gudrun
* Backup commands:
```
mysqldump -uxxx -pxxx archweb \
--no-data \
| gzip -c > archweb-schema.sql.gz
mysqldump -uxxx -pxxx --hex-blob archweb \
--no-create-info \
--single-transaction --quick \
| gzip -c > archweb-data.sql.gz
tar czf archweb-htdocs.tar.gz /srv/http/archweb/
```
* Space needed: 32MB
## Git
* Server: gerolde
* Backup commands:
```
repos=(archiso
netcfg
pacman
vhosts/repos.archlinux.org
vhosts/bbs.archlinux.org
vhosts/bugs.archlinux.org
vhosts/wiki.archlinux.org
mkinitcpio
dbscripts
devtools
abs
initscripts
archboot
archweb
aur
server-misc
mkinitcpio-nfs-utils
srcpac
namcap
kde-build
aif
linux-2.6-ARCH
wpa_actiond)
for r in ${repos[@]}; do
git clone -q --mirror /srv/projects/git/${r}.git ${r}.git
tar czf ${r}.git.tar.gz ${r}.git
rm -rf ${r}.git
done
```
* Space needed: 120MB
## SVN
**Note:** should probably do a full backup monthly followed by incremental backups daily.
### Core/Extra Repos
* Server: gerolde
* Backup commands:
```
svnadmin hotcopy /srv/svn-packages/ svn-packages --clean-logs
svnadmin verify --quiet svn-packages
tar -czf svn-packages.tar.gz svn-packages
rm -rf svn-packages
```
* Size needed: 4GB (estimated)
### Community Repos
* Server: sigurd (could be done using rsync copy on gerolde)
* Backup commands:
```
svnadmin hotcopy /srv/svn-packages/ svn-community --clean-logs
svnadmin verify --quiet svn-community
tar -czf svn-packages.tar.gz svn-community
rm -rf svn-community
```
* Size needed: 1.1GB
## System files
### Gerolde
* Server: gerolde
* Backup commands:
```
tar czf system-gerolde.tar.gz /etc /var/log /var/lib/pacman/local
```
* Size needed: 170MB
### Gudrun
* Server: gudrun
* Backup commands:
```
tar -cz --exclude=/var/log/httpd/*access* -f system-gudrun.tar.gz /etc /var/log /var/lib/pacman/local
```
* Size needed: 20MB
### Sigurd
* Server: sigurd
* Backup commands:
```
tar -cz --exclude=/var/log/lighttpd/aur-access* -f system-sigurd.tar.gz /etc /var/log /var/lib/pacman/local
```
* Size needed: 11M
## AUR
For now:
* Server: sigurd
* Backup commands:
```
time=`date +%Y%m%d-%H%M`
mysqldump -uaur -pxxx aur | gzip -c > aur-$time.sql.gz
/srv/http/aur.archlinux.org/aur/scripts/cleanup /srv/http/aur.archlinux.org/aur/web
tar czf aur-files-$time.tar.gz /srv/http/aur.archlinux.org
```
I'd like to make a script for dumping the DB which will grab the DB/username/passwd from the AUR config file, so we do not have those things spread all over the place.
* Space needed: 250M (as of 06 Dec 2010)