Nxl67002 - AndLinux - Files: Difference between revisions
(11 intermediate revisions by one other user not shown) | |||
Line 18: | Line 18: | ||
cofs0=C:\ |
cofs0=C:\ |
||
cofs1=D:\ |
cofs1=D:\ |
||
</pre> |
|||
}} |
|||
=== hosts === |
|||
{{hiddenSourceFile|c:\windows\system32\drivers\etc\|hosts|<pre class="hosts"> |
|||
# Copyright (c) 1993-1999 Microsoft Corp. |
|||
# |
|||
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows. |
|||
# |
|||
# This file contains the mappings of IP addresses to host names. Each |
|||
# entry should be kept on an individual line. The IP address should |
|||
# be placed in the first column followed by the corresponding host name. |
|||
# The IP address and the host name should be separated by at least one |
|||
# space. |
|||
# |
|||
# Additionally, comments (such as these) may be inserted on individual |
|||
# lines or following the machine name denoted by a '#' symbol. |
|||
# |
|||
# For example: |
|||
# |
|||
# 102.54.94.97 rhino.acme.com # source server |
|||
# 38.25.63.10 x.acme.com # x client host |
|||
127.0.0.1 localhost |
|||
192.168.11.150 andlinux |
|||
</pre> |
</pre> |
||
}} |
}} |
||
== AndLinux files == |
== AndLinux files == |
||
<small>Generated with script '''/home/beq06659/bin/generate_wiki_config_file_page.sh''' on host '''andLinux'''</small> |
|||
=== Directory /etc === |
=== Directory /etc === |
||
'''fstab''' |
|||
{{hiddenSourceFile|/etc/|fstab|<pre class="fstab"> |
|||
{{pl2|{{hiddenSourceFile|/etc/|fstab|<source lang=text class="fstab"> |
|||
# /etc/fstab: static file system information. |
# /etc/fstab: static file system information. |
||
# |
# |
||
Line 35: | Line 63: | ||
0 /mnt/winc cofs defaults,gid=samba,dmask=0775,fmask=0775 0 0 |
0 /mnt/winc cofs defaults,gid=samba,dmask=0775,fmask=0775 0 0 |
||
1 /mnt/wind cofs defaults,gid=samba,dmask=0775,fmask=0775 0 0 |
1 /mnt/wind cofs defaults,gid=samba,dmask=0775,fmask=0775 0 0 |
||
</pre> |
|||
}} |
|||
</source> |
|||
}} }} |
|||
=== Directory /etc/privoxy === |
|||
'''set-network-config''' - This file must be '''chmod 755'''. Also the following line must be added to <tt>/etc/sudoers</tt>: |
|||
:<code> ALL ALL=(ALL) NOPASSWD: /etc/privoxy/set-network-config </code> |
|||
{{pl2|{{hiddenSourceFile|/etc/privoxy/|set-network-config|<source lang=bash class="set-network-config"> |
|||
#! /bin/bash |
|||
# Exit if no network name given or if no corresponding configuration file |
|||
[ -n "$1" ] || exit 1 |
|||
TARGET_FILE="config-$1" |
|||
[ -a "/etc/privoxy/$TARGET_FILE" ] || exit 1 |
|||
ln -sf "$TARGET_FILE" /etc/privoxy/config |
|||
/etc/init.d/privoxy restart |
|||
</source> |
|||
}} }} |
|||
'''config-home.patch''' |
|||
{{pl2|{{hiddenSourceFile|/etc/privoxy/|config-home.patch|<source lang=diff class="config-home.patch"> |
|||
--- config.original 2009-11-15 00:50:28.000000000 +0100 |
|||
+++ config-home 2009-11-17 00:01:48.000000000 +0100 |
|||
@@ -761,7 +761,7 @@ |
|||
# listen-address 192.168.0.1:8118 |
|||
# |
|||
# |
|||
-listen-address 127.0.0.1:8118 |
|||
+listen-address :8118 |
|||
# |
|||
# |
|||
# 4.2. toggle |
|||
</source> |
|||
}} }} |
|||
'''config-nxp.patch''' |
|||
{{pl2|{{hiddenSourceFile|/etc/privoxy/|config-nxp.patch|<source lang=diff class="config-nxp.patch"> |
|||
--- config-home 2009-11-17 00:01:48.000000000 +0100 |
|||
+++ config-nxp 2009-11-15 02:34:20.000000000 +0100 |
|||
@@ -1250,6 +1250,13 @@ |
|||
# that look like this: |
|||
# |
|||
# forward localhost/ . |
|||
+# nxp only: |
|||
+forward-socks5 / localhost:1080 . |
|||
+forward 192.168.*.*/ . |
|||
+forward 10.*.*.*/ . |
|||
+forward 127.*.*.*/ . |
|||
+forward 172.19.*.*/ . |
|||
+forward 134.27.*.* . |
|||
# |
|||
# |
|||
# |
|||
</source> |
|||
}} }} |
|||
'''config-nxp_auth''' - symlinked to <tt>config-nxp</tt> |
|||
'''config-nxp_direct.patch''' |
|||
{{pl2|{{hiddenSourceFile|/etc/privoxy/|config-nxp_direct.patch|<source lang=diff class="config-nxp_direct.patch"> |
|||
--- config-nxp 2009-11-15 02:34:20.000000000 +0100 |
|||
+++ config-nxp_direct 2009-11-16 16:14:23.000000000 +0100 |
|||
@@ -1251,7 +1251,7 @@ |
|||
# |
|||
# forward localhost/ . |
|||
# nxp only: |
|||
-forward-socks5 / localhost:1080 . |
|||
+forward / emea.nics.nxp.com:8080 |
|||
forward 192.168.*.*/ . |
|||
forward 10.*.*.*/ . |
|||
forward 127.*.*.*/ . |
|||
</source> |
|||
}} }} |
|||
=== Directory /usr/local/bin === |
=== Directory /usr/local/bin === |
||
'''be''' - This script would ideally require to add the following line to <tt>/etc/sudoers</tt>: |
'''be''' - This script would ideally require to add the following line to <tt>/etc/sudoers</tt>: |
||
:<code>ALL ALL=(ALL) NOPASSWD: /bin/loadkeys</code> |
:<code>ALL ALL=(ALL) NOPASSWD: /bin/loadkeys</code> |
||
{{pl2|{{hiddenSourceFile|/usr/local/bin/|be|<source lang=bash class="be"> |
|||
{{hiddenSourceFile|/usr/local/bin/|be|<source lang="bash" class="be"> |
|||
#!/bin/bash |
#!/bin/bash |
||
sudo loadkeys /usr/share/keymaps/i386/azerty/be2-latin1.kmap.gz |
sudo loadkeys /usr/share/keymaps/i386/azerty/be2-latin1.kmap.gz |
||
</source> |
</source> |
||
}} |
}} }} |
||
'''ssh-agent-refresh.sh''' |
|||
{{hiddenSourceFile|/usr/local/bin/|ssh-agent-refresh.sh|<source lang= |
{{pl2|{{hiddenSourceFile|/usr/local/bin/|ssh-agent-refresh.sh|<source lang=bash class="ssh-agent-refresh.sh"> |
||
#!/bin/bash |
#!/bin/bash |
||
# |
# |
||
Line 127: | Line 225: | ||
exit 0 |
exit 0 |
||
</source> |
</source> |
||
}} |
}} }} |
||
=== Directory /home/beq06659 === |
|||
=== directory ~ === |
|||
'''.bashrc''' - Everything before <tt>#### CUSTOMIZATION</tt> is the original file. |
'''.bashrc''' - Everything before <tt>#### CUSTOMIZATION</tt> is the original file. |
||
{{hiddenSourceFile| |
{{pl2|{{hiddenSourceFile|/home/beq06659/|.bashrc|<source lang=bash class=".bashrc"> |
||
# ~/.bashrc: executed by bash(1) for non-login shells. |
# ~/.bashrc: executed by bash(1) for non-login shells. |
||
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) |
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) |
||
Line 334: | Line 432: | ||
PS1='\[\e]0;\w\a\]\n\[\e[0m\e[35m\]\u@\h \[\e[0m\e[33m\]\w\[\e[0m\]\n\$ ' |
PS1='\[\e]0;\w\a\]\n\[\e[0m\e[35m\]\u@\h \[\e[0m\e[33m\]\w\[\e[0m\]\n\$ ' |
||
export PS1 |
export PS1 |
||
</source> |
</source> |
||
}} |
}} }} |
||
'''.dircolors.cfg''' |
|||
{{hiddenSourceFile| |
{{pl2|{{hiddenSourceFile|/home/beq06659/|.dircolors.cfg|<source lang=text class=".dircolors.cfg"> |
||
# Configuration file for dircolors, a utility to help you set the |
# Configuration file for dircolors, a utility to help you set the |
||
# LS_COLORS environment variable used by GNU ls with the --color option. |
# LS_COLORS environment variable used by GNU ls with the --color option. |
||
# Copyright (C) 1996, 1999-2008 |
|||
# Free Software Foundation, Inc. |
|||
# Copying and distribution of this file, with or without modification, |
|||
# are permitted provided the copyright notice and this notice are preserved. |
|||
# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the |
# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the |
||
# slackware version of dircolors) are recognized but ignored. |
# slackware version of dircolors) are recognized but ignored. |
||
# Below, there should be one TERM entry for each termtype that is colorizable |
# Below, there should be one TERM entry for each termtype that is colorizable |
||
TERM |
TERM Eterm |
||
TERM |
TERM ansi |
||
TERM |
TERM color-xterm |
||
TERM console |
|||
TERM con132x25 |
TERM con132x25 |
||
TERM con132x30 |
TERM con132x30 |
||
Line 357: | Line 459: | ||
TERM con80x50 |
TERM con80x50 |
||
TERM con80x60 |
TERM con80x60 |
||
TERM cons25 |
|||
TERM console |
|||
TERM cygwin |
TERM cygwin |
||
TERM dtterm |
TERM dtterm |
||
TERM eterm-color |
|||
TERM gnome |
|||
TERM gnome-256color |
|||
TERM konsole |
|||
TERM kterm |
|||
TERM linux |
|||
TERM linux-c |
|||
TERM mach-color |
|||
TERM mlterm |
TERM mlterm |
||
TERM putty |
TERM putty |
||
TERM xterm |
|||
TERM xterm-color |
|||
TERM xterm-debian |
|||
TERM rxvt |
TERM rxvt |
||
TERM rxvt-cygwin |
|||
TERM rxvt-cygwin-native |
|||
TERM rxvt-unicode |
TERM rxvt-unicode |
||
TERM screen |
TERM screen |
||
TERM screen-256color |
|||
TERM screen-bce |
TERM screen-bce |
||
TERM screen-w |
TERM screen-w |
||
TERM screen.linux |
|||
TERM vt100 |
TERM vt100 |
||
TERM |
TERM xterm |
||
TERM xterm-16color |
|||
TERM xterm-256color |
|||
TERM xterm-88color |
|||
TERM xterm-color |
|||
TERM xterm-debian |
|||
# Below are the color init strings for the basic file types. A color init |
# Below are the color init strings for the basic file types. A color init |
||
# string consists of one or more of the following numeric codes: |
# string consists of one or more of the following numeric codes: |
||
Line 389: | Line 507: | ||
BLK 40;33;01 # block device driver |
BLK 40;33;01 # block device driver |
||
CHR 40;33;01 # character device driver |
CHR 40;33;01 # character device driver |
||
ORPHAN 40;31;01 # symlink to nonexistent file |
ORPHAN 40;31;01 # symlink to nonexistent file, or non-stat'able file |
||
SETUID 37;41 # file that is setuid (u+s) |
SETUID 37;41 # file that is setuid (u+s) |
||
SETGID 30;43 # file that is setgid (g+s) |
SETGID 30;43 # file that is setgid (g+s) |
||
STICKY_OTHER_WRITABLE |
STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w) |
||
OTHER_WRITABLE |
OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky |
||
STICKY |
STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable |
||
# This is for files with execute permission: |
# This is for files with execute permission: |
||
EXEC 32 |
EXEC 32;04 |
||
# List any file extensions like '.gz' or '.tar' that you would like ls |
# List any file extensions like '.gz' or '.tar' that you would like ls |
||
# to colorize below. Put the extension, a space, and the color init string. |
# to colorize below. Put the extension, a space, and the color init string. |
||
# (and any comments you want to add after a '#') |
# (and any comments you want to add after a '#') |
||
# If you use DOS-style suffixes, you may want to uncomment the following: |
# If you use DOS-style suffixes, you may want to uncomment the following: |
||
#.cmd 32 # executables (bright green) |
#.cmd 01;32 # executables (bright green) |
||
#.exe 32 |
#.exe 01;32 |
||
#.com 32 |
#.com 01;32 |
||
#.btm 32 |
#.btm 01;32 |
||
#.bat 32 |
#.bat 01;32 |
||
# Or if you want to colorize scripts even if they do not have the |
|||
.tar 01;31 # archives or compressed (bright red) |
|||
# executable bit actually set. |
|||
#.sh 01;32 |
|||
#.csh 01;32 |
|||
# archives or compressed (bright red) |
|||
.tar 01;31 |
|||
.tgz 01;31 |
.tgz 01;31 |
||
.svgz 01;31 |
|||
.arj 01;31 |
.arj 01;31 |
||
.taz 01;31 |
.taz 01;31 |
||
.lzh 01;31 |
.lzh 01;31 |
||
.lzma 01;31 |
|||
.zip 01;31 |
.zip 01;31 |
||
.z 01;31 |
.z 01;31 |
||
.Z 01;31 |
.Z 01;31 |
||
.dz 01;31 |
|||
.gz 01;31 |
.gz 01;31 |
||
.bz2 01;31 |
.bz2 01;31 |
||
.bz 01;31 |
|||
.tbz2 01;31 |
|||
.tz 01;31 |
|||
.deb 01;31 |
.deb 01;31 |
||
.rpm 01;31 |
.rpm 01;31 |
||
.jar 01;31 |
.jar 01;31 |
||
.rar 01;31 |
|||
.ace 01;31 |
|||
.zoo 01;31 |
|||
.cpio 01;31 |
|||
.7z 01;31 |
|||
.rz 01;31 |
|||
# image formats |
# image formats |
||
.jpg 35 |
.jpg 35 |
||
Line 433: | Line 568: | ||
.tiff 35 |
.tiff 35 |
||
.png 35 |
.png 35 |
||
.svg 35 |
|||
.mng 35 |
|||
.pcx 35 |
|||
.mov 35 |
.mov 35 |
||
.mpg 35 |
.mpg 35 |
||
.mpeg 35 |
.mpeg 35 |
||
.m2v 35 |
|||
.mkv 35 |
|||
.ogm 35 |
|||
.mp4 35 |
|||
.m4v 35 |
|||
.mp4v 35 |
|||
.vob 35 |
|||
.qt 35 |
|||
.nuv 35 |
|||
.wmv 35 |
|||
.asf 35 |
|||
.rm 35 |
|||
.rmvb 35 |
|||
.flc 35 |
|||
.avi 35 |
.avi 35 |
||
.fli 35 |
.fli 35 |
||
Line 442: | Line 594: | ||
.xcf 35 |
.xcf 35 |
||
.xwd 35 |
.xwd 35 |
||
.yuv 35 |
|||
# audio formats |
# audio formats |
||
.aac 00;36 |
|||
.flac 35 |
|||
.au 00;36 |
|||
.mp3 35 |
|||
.flac 00;36 |
|||
.mpc 35 |
|||
.mid 00;36 |
|||
.ogg 35 |
|||
.midi 00;36 |
|||
.wav 35 |
|||
.mka 00;36 |
|||
</pre> |
|||
.mp3 00;36 |
|||
}} |
|||
.mpc 00;36 |
|||
.ogg 00;36 |
|||
{{hiddenSourceFile|~/|.inputrc|<source lang="bash" class=".inputrc"> |
|||
.ra 00;36 |
|||
.wav 00;36 |
|||
</source> |
|||
}} }} |
|||
'''.inputrc''' |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/|.inputrc|<source lang=bash class=".inputrc"> |
|||
# |
# |
||
# MIP CUSTOM BINDING STARTS HERE |
# MIP CUSTOM BINDING STARTS HERE |
||
Line 504: | Line 663: | ||
"\e ":dynamic-complete-history #Esc-space |
"\e ":dynamic-complete-history #Esc-space |
||
</source> |
</source> |
||
}} |
}} }} |
||
'''.profile''' |
|||
{{hiddenSourceFile| |
{{pl2|{{hiddenSourceFile|/home/beq06659/|.profile|<source lang=bash class=".profile"> |
||
# ~/.profile: executed by the command interpreter for login shells. |
# ~/.profile: executed by the command interpreter for login shells. |
||
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login |
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login |
||
Line 533: | Line 692: | ||
############## |
############## |
||
eval `ssh-agent-refresh.sh` >/dev/null |
eval `ssh-agent-refresh.sh` >/dev/null |
||
</source> |
</source> |
||
}} |
}} }} |
||
'''.vimrc''' |
|||
{{hiddenSourceFile| |
{{pl2|{{hiddenSourceFile|/home/beq06659/|.vimrc|<source lang=text class=".vimrc"> |
||
syntax enable |
syntax enable |
||
set bg=light |
set bg=light |
||
Line 552: | Line 712: | ||
vnoremap h m |
vnoremap h m |
||
set tabstop=4 softtabstop=4 shiftwidth=4 noexpandtab |
set tabstop=4 softtabstop=4 shiftwidth=4 noexpandtab |
||
set autoindent |
|||
set smartindent |
"set smartindent |
||
"set cindent |
"set cindent |
||
"set cinkeys=0{,0},:,0#,!,!^F |
"set cinkeys=0{,0},:,0#,!,!^F |
||
</source> |
|||
}} |
|||
inoremap <expr> <C-L> pumvisible() \|\| &omnifunc == '' ? |
|||
=== Directory ~/.ssh === |
|||
\ "\<lt>C-n>" : |
|||
{{hiddenSourceFile|~/.ssh/|config-home|<pre class="config-home"> |
|||
\ "\<lt>C-x>\<lt>C-o><c-r>=pumvisible() ?" . |
|||
\ "\"\\<lt>c-n>\\<lt>c-p>\\<lt>c-n>\" :" . |
|||
\ "\" \\<lt>bs>\\<lt>C-n>\"\<CR>" |
|||
"Press Ctrl-Space instead of ESC (because Shift-Space only work in GUI). |
|||
"See http://vim.wikia.com/wiki/Avoid_the_escape_key |
|||
"- nnoremap causes Ctrl-Space to cancel any prefix keys |
|||
nnoremap <nul> <Esc> |
|||
"- vnoremap causes Ctrl-Space to cancel any selection (gV is required to prevent automatic reselection) |
|||
vnoremap <nul> <Esc>gV |
|||
"- onoremap causes Ctrl-Space to cancel any operator pending commands (like y) |
|||
onoremap <nul> <Esc> |
|||
"- inoremap causes Ctrl-Space to exit insert mode and `^ restore cursor position (cursor does not move left) |
|||
inoremap <nul> <Esc>`^ |
|||
" function! CleverTab() |
|||
" if pumvisible() |
|||
" return "\<C-N>" |
|||
" endif |
|||
" let line=strpart( getline('.'), 0, col('.')-1 ) |
|||
" if !(line =~ '^.*[a-zA-Z0-1_]$') "completion only if last char is a word char |
|||
" return "\<Tab>" |
|||
" elseif exists('&omnifunc') && &omnifunc != '' |
|||
" return "\<C-X>\<C-O>" |
|||
" else |
|||
" return "\<C-N>" |
|||
" endif |
|||
" endfunction |
|||
" inoremap <expr> <Tab> CleverTab() |
|||
</source> |
|||
}} }} |
|||
=== Directory /home/beq06659/.ssh === |
|||
'''config-home''' |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/.ssh/|config-home|<source lang=text class="config-home"> |
|||
# ~/.ssh/config-home |
# ~/.ssh/config-home |
||
Line 586: | Line 778: | ||
ProxyCommand none |
ProxyCommand none |
||
ServerAliveInterval 15 |
ServerAliveInterval 15 |
||
</pre> |
|||
}} |
|||
</source> |
|||
{{hiddenSourceFile|~/.ssh/|config-nxp|<pre class="config-nxp"> |
|||
}} }} |
|||
'''config-nxp''' |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/.ssh/|config-nxp|<source lang=text class="config-nxp"> |
|||
# ~/.ssh/config-nxp |
# ~/.ssh/config-nxp |
||
Line 615: | Line 808: | ||
ProxyCommand /usr/local/bin/ssh-tunnel.pl -q - - %h %p |
ProxyCommand /usr/local/bin/ssh-tunnel.pl -q - - %h %p |
||
ServerAliveInterval 15 |
ServerAliveInterval 15 |
||
</pre> |
|||
}} |
|||
</source> |
|||
{{hiddenSourceFile|~/.ssh/|proxy.conf-default|<pre class="proxy.conf-default"> |
|||
}} }} |
|||
'''config-nxp_auth''' - symlinked to <tt>config-nxp</tt> |
|||
'''config-nxp_direct''' - symlinked to <tt>config-nxp</tt> |
|||
'''proxy.conf-default''' |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/.ssh/|proxy.conf-default|<source lang=text class="proxy.conf-default"> |
|||
# SSH Tunnel configuration file. |
# SSH Tunnel configuration file. |
||
Line 645: | Line 843: | ||
#proxy is a synonym - but not portable because it might only work at Leuven... |
#proxy is a synonym - but not portable because it might only work at Leuven... |
||
10.0.2.2/32 emea.nics.nxp.com:8080 -C ~/.ssh/clbanner.txt |
10.0.2.2/32 emea.nics.nxp.com:8080 -C ~/.ssh/clbanner.txt |
||
</pre> |
|||
}} |
|||
</source> |
|||
{{hiddenSourceFile|~/.ssh/|proxy.conf-nxp_auth|<pre class="proxy.conf-nxp_auth"> |
|||
}} }} |
|||
'''proxy.conf-home''' - symlinked to <tt>proxy.conf-default</tt> |
|||
'''proxy.conf-nxp''' - symlinked to <tt>proxy.conf-default</tt> |
|||
'''proxy.conf-nxp_auth''' |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/.ssh/|proxy.conf-nxp_auth|<source lang=text class="proxy.conf-nxp_auth"> |
|||
# SSH Tunnel configuration file. |
# SSH Tunnel configuration file. |
||
Line 675: | Line 878: | ||
#proxy is a synonym - but not portable because it might only work at Leuven... |
#proxy is a synonym - but not portable because it might only work at Leuven... |
||
10.0.2.2/32 emea.nics.nxp.com:8080 -C ~/.ssh/clbanner.txt -u=beq06659 -p=**************** |
10.0.2.2/32 emea.nics.nxp.com:8080 -C ~/.ssh/clbanner.txt -u=beq06659 -p=**************** |
||
</pre> |
|||
}} |
|||
=== Directory ~/etc === |
|||
'''crontab''' - Install this file with <source lang="bash">crontab -u beq06659 ~/etc/crontab</source> |
|||
{{hiddenSourceFile|~/etc/|crontab|<source lang="bash" class="crontab"> |
|||
# usr /bin/bash to run commands, instead of the default /bin/sh |
|||
SHELL=/bin/bash |
|||
# mail any output to 'beq06659', no matter whose crontab this is |
|||
MAILTO=beq0665 |
|||
# |
|||
# |
|||
# m h dom mon dow command (dow=0|7 is sunday) |
|||
15 12 * * * ~beq06659/bin/backup_noekeon |
|||
</source> |
</source> |
||
}} |
}} }} |
||
'''config-home-nxp_direct''' - symlinked to <tt>config-default</tt> |
|||
=== Directory |
=== Directory /home/beq06659/bin === |
||
''' |
'''backup_main''' - This file must be '''chmod 700'''. |
||
{{hiddenSourceFile| |
{{pl2|{{hiddenSourceFile|/home/beq06659/bin/|backup_main|<source lang=bash class="backup_main"> |
||
#! /bin/bash |
#! /bin/bash |
||
# This script will create a backup of the miki wiki database on noekeon.org |
# This script will create a backup of the miki wiki database on noekeon.org |
||
# Backup will be saved in ~/backup |
|||
# Helper functions |
|||
# Some environment variable |
|||
# |
|||
BACKUPDIR=~/backup |
|||
# These functions assume that the following env. variables are defined: |
|||
WIKINAME=www.noekeon.org_miki |
|||
# |
|||
FSQLNAMEBASE=$BACKUPDIR/wiki-$WIKINAME-$(date '+%Y%m%d') |
|||
# THISDAY |
|||
FFILENAMEBASE=$BACKUPDIR/wiki-$WIKINAME-$(date '+%Y%m%d') |
|||
# THISWEEK |
|||
FSQLNAME=${FSQLNAMEBASE}.sql.gz |
|||
# THISMONTH |
|||
FFILENAME=${FFILENAMEBASE}.tar.gz |
|||
# THISYEAR |
|||
MAXBACKUPCOUNT=3 |
|||
# NEXTDAILY |
|||
BACKUPRC=~/.mybackuprc |
|||
# NEXTWEEKLY |
|||
THISWEEK=$(date '+%Y%V') |
|||
# NEXTMONTHLY |
|||
THISMONTH=$(date '+%Y%m') |
|||
# NEXTYEARLY |
|||
THISYEAR=$(date '+%Y') |
|||
# BACKUPPREFIX |
|||
# BACKUPID |
|||
# BACKUPEXT |
|||
# BACKUPCMD |
|||
# BACKUPDIR |
|||
if [ -n "$1" ]; then |
|||
#Read our resource file if it exists, or create a new one... |
|||
BACKUP_DEF_FILE=$1 |
|||
if [ -a $BACKUPRC ] |
|||
then |
|||
# ! HOMEDIR must be chmod 755 at most, and $BACKUPRC chmod 644 at most |
|||
. $BACKUPRC |
|||
else |
else |
||
echo "Usage: $0 backup-definition-file" |
|||
NEXTWEEKLY=$THISWEEK # Next weekly is this week by default |
|||
echo |
|||
NEXTMONTHLY=$THISMONTH # Next monthly is this month by default |
|||
echo "Format of backup-definition-file: one or more entry as follows, separated by empty lines." |
|||
NEXTYEARLY=$THISYEAR # Next yearly is this year by default |
|||
echo |
|||
echo " BACKUPPREFIX=prefix_of_all_backup_files_for_this_entry" |
|||
echo " BACKUPID=some_id_used_to_generate_backup_file_name" |
|||
echo " BACKUPEXT=sql.gz" |
|||
echo " BACKUPCMD=\"... some command generating the backup data to standard output ... \"" |
|||
exit 1 |
|||
fi |
fi |
||
if [ "$2" == "--force" ]; then |
|||
#Create backup parent directory |
|||
FORCE_DAILY=1 |
|||
mkdir -p $BACKUPDIR |
|||
fi |
|||
function makedaily() |
|||
{ |
|||
local FSQLNAMENEW=${FSQLNAMEBASE}.daily.sql.gz |
|||
echo "Creating backup file ${FSQLNAMENEW}..." |
|||
mv $FSQLNAME ${FSQLNAMENEW} # We rename the file! |
|||
local FFILENAMENEW=${FFILENAMEBASE}.daily.tar.gz |
|||
echo "Creating backup file ${FFILENAMENEW}..." |
|||
mv $FFILENAME ${FFILENAMENEW} # We rename the file! |
|||
} |
|||
function makeweekly() |
function makeweekly() |
||
{ |
{ |
||
local FNAMENEW=${FNAMEBASE}.weekly.${BACKUPEXT} |
|||
echo "Creating backup file '${FNAMENEW}'..." |
|||
cp $FNAMEDAILY ${FNAMENEW} |
|||
NEXTWEEKLY=$((THISWEEK+1)) # This will overflow but 201001 > 200954 so it's ok |
|||
local FFILENAMENEW=${FFILENAMEBASE}.weekly.tar.gz |
|||
echo "Creating backup file ${FFILENAMENEW}..." |
|||
cp $FFILENAME ${FFILENAMENEW} |
|||
NEXTWEEKLY=$((NEXTWEEKLY+1)) # This will overflow but 201001 > 200954 so it's ok |
|||
} |
} |
||
function makemonthly() |
function makemonthly() |
||
{ |
{ |
||
local FNAMENEW=${FNAMEBASE}.monthly.${BACKUPEXT} |
|||
echo "Creating backup file '${FNAMENEW}'..." |
|||
cp $FNAMEDAILY ${FNAMENEW} |
|||
NEXTMONTHLY=$((THISMONTH+1)) # This will overflow but 201001 > 200913 so it's ok |
|||
local FFILENAMENEW=${FFILENAMEBASE}.monthly.tar.gz |
|||
echo "Creating backup file ${FFILENAMENEW}..." |
|||
cp $FFILENAME ${FFILENAMENEW} |
|||
NEXTMONTHLY=$((NEXTMONTHLY+1)) # This will overflow but 201001 > 200913 so it's ok |
|||
} |
} |
||
function makeyearly() |
function makeyearly() |
||
{ |
{ |
||
local FNAMENEW=${FNAMEBASE}.yearly.${BACKUPEXT} |
|||
echo "Creating backup file '${FNAMENEW}'..." |
|||
cp $FNAMEDAILY ${FNAMENEW} |
|||
NEXTYEARLY=$((THISYEAR+1)) |
|||
local FFILENAMENEW=${FFILENAMEBASE}.yearly.tar.gz |
|||
echo "Creating backup file ${FFILENAMENEW}..." |
|||
cp $FFILENAME ${FFILENAMENEW} |
|||
NEXTYEARLY=$((NEXTYEARLY+1)) |
|||
} |
} |
||
function rmoldest() |
|||
{ |
|||
local SUFFIX=$1 |
|||
local NBR=$2 |
|||
#Count files |
|||
file_count=$(ls ${BACKUPDIR}/*${SUFFIX}| wc -l) |
|||
#Delete files while we have more than $NBR |
|||
while [ $file_count -gt $NBR ] |
|||
do |
|||
#Delete alphabetically oldest file (ls sort by name is default) |
|||
rm $(ls ${BACKUPDIR}/*${SUFFIX} | head -n 1) |
|||
#Count files again |
|||
file_count=$(ls ${BACKUPDIR}/*${SUFFIX}| wc -l) |
|||
done |
|||
} |
|||
function create-backups() |
|||
{ |
|||
# Some environment variables |
|||
BACKUPDIR=~/backup |
|||
BACKUPRC=~/.backup-${BACKUPID}.${BACKUPEXT}.rc |
|||
THISDAY=$(date '+%Y%j') |
|||
THISWEEK=$(date '+%Y%V') |
|||
THISMONTH=$(date '+%Y%m') |
|||
THISYEAR=$(date '+%Y') |
|||
#======================================================== |
|||
# Read resource file |
|||
#======================================================== |
|||
if [ -a $BACKUPRC ] |
|||
then |
|||
# ! HOMEDIR must be chmod 755 at most, and $BACKUPRC chmod 644 at most |
|||
. $BACKUPRC |
|||
else |
|||
# Resource file doesn't exist, let's use default value |
|||
NEXTDAILY=$THISDAY # Next daily is this day by default |
|||
NEXTWEEKLY=$THISWEEK # Next weekly is this week by default |
|||
NEXTMONTHLY=$THISMONTH # Next monthly is this month by default |
|||
NEXTYEARLY=$THISYEAR # Next yearly is this year by default |
|||
fi |
|||
#We exit immediately if script was already run today... |
|||
[ $THISDAY -ge $NEXTDAILY -o -n "$FORCE_DAILY" ] || return 0 |
|||
#======================================================== |
|||
# DAILY backup |
|||
#======================================================== |
|||
echo "Creating backup for:" |
|||
echo " BACKUPPREFIX=$BACKUPPREFIX" |
|||
echo " BACKUPID=$BACKUPID" |
|||
echo " BACKUPEXT=$BACKUPEXT" |
|||
echo " BACKUPCMD=$BACKUPCMD" |
|||
# Some environment variables |
|||
FNAMEBASE=${BACKUPDIR}/${BACKUPPREFIX}-$(date '+%Y%m%d')-${BACKUPID} |
|||
FNAMEDAILY=${FNAMEBASE}.daily.${BACKUPEXT} |
|||
#First we need to restore the ssh-agent context, if any |
|||
eval $(/usr/local/bin/ssh-agent-refresh.sh) > /dev/null |
|||
#Create backup parent directory |
|||
mkdir -p $BACKUPDIR |
|||
#We create the daily backup file |
|||
echo "Creating the daily backup file '$FNAMEDAILY'..." |
|||
eval $BACKUPCMD > "$FNAMEDAILY" |
|||
if ! [ $? -eq 0 -a -s "$FNAMEDAILY" ]; then |
|||
echo "... Backup failed! Exiting..." |
|||
rm "$FNAMEDAILY" |
|||
return 1 |
|||
fi |
|||
NEXTDAILY=$((THISDAY+1)) # This will overflow but 2010001 > 2009367 so it's ok |
|||
#======================================================== |
|||
# WEEKLY / MONTHLY / YEARLY backups |
|||
#======================================================== |
|||
#Now, depending on current date, we'll create weekly, monthly or yearly backups... |
|||
[ $THISWEEK -ge $NEXTWEEKLY ] && makeweekly |
|||
[ $THISMONTH -ge $NEXTMONTHLY ] && makemonthly |
|||
[ $THISYEAR -ge $NEXTYEARLY ] && makeyearly |
|||
#Now let's delete the oldest backups |
|||
rmoldest "-${BACKUPID}.daily.${BACKUPEXT}" "3" |
|||
rmoldest "-${BACKUPID}.weekly.${BACKUPEXT}" "3" |
|||
rmoldest "-${BACKUPID}.monthly.${BACKUPEXT}" "3" |
|||
rmoldest "-${BACKUPID}.yearly.${BACKUPEXT}" "3" |
|||
#Finally we update our resource file |
|||
umask 022 |
|||
echo "NEXTDAILY=${NEXTDAILY}" >$BACKUPRC |
|||
echo "NEXTWEEKLY=${NEXTWEEKLY}" >>$BACKUPRC |
|||
echo "NEXTMONTHLY=${NEXTMONTHLY}" >>$BACKUPRC |
|||
echo "NEXTYEARLY=${NEXTYEARLY}" >>$BACKUPRC |
|||
} |
|||
#Creates the backup for each entry in the backup definition file |
|||
while read -u 3 LINE; do |
|||
if [ -z "$LINE" ]; then |
|||
BACKUPPREFIX= |
|||
BACKUPID= |
|||
BACKUPEXT= |
|||
BACKUPCMD= |
|||
else |
|||
eval $LINE |
|||
[ -n "$BACKUPPREFIX" ] && [ -n "$BACKUPID" ] && [ -n "$BACKUPEXT" ] && [ -n "$BACKUPCMD" ] && create-backups |
|||
fi |
|||
done 3< $BACKUP_DEF_FILE |
|||
</source> |
|||
}} }} |
|||
'''generate_wiki_config_file_page.sh''' - This file must be '''chmod 700'''. |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/bin/|generate_wiki_config_file_page.sh|<source lang=bash class="generate_wiki_config_file_page.sh"> |
|||
#! /bin/bash |
|||
function wikify_directory() |
|||
{ |
|||
DIRECTORY="$1" |
|||
cd $DIRECTORY |
|||
echo "=== Directory $DIRECTORY ===" |
|||
} |
|||
function wikify_config_stdin() |
|||
{ |
|||
local FILE="$1" |
|||
local TAGTYPE=source |
|||
local LANG="$2" |
|||
local DESCRIPTION="$3" |
|||
if [ -n "$DESCRIPTION" ]; then |
|||
echo -e "'''$FILE''' - $DESCRIPTION" |
|||
else |
|||
echo "'''$FILE'''" |
|||
fi |
|||
if [ -n "$LANG" ]; then |
|||
echo "{{pl2|{{hiddenSourceFile|$DIRECTORY/|$FILE|<$TAGTYPE lang="$LANG" class=\"$FILE\">" |
|||
else |
|||
echo "{{pl2|{{hiddenSourceFile|$DIRECTORY/|$FILE|<$TAGTYPE class=\"$FILE\">" |
|||
fi |
|||
cat |
|||
echo "</$TAGTYPE>" |
|||
echo "}} }}" |
|||
} |
|||
function wikify_config_file() |
|||
{ |
|||
cat $DIRECTORY/"$1" | wikify_config_stdin "$1" "$2" "$3" |
|||
} |
|||
echo "== AndLinux files ==" |
|||
#echo "<small>Last generated on '''$(date)''' with script '''$0''' on host '''$HOSTNAME'''</small>" |
|||
echo "<small>Generated with script '''$0''' on host '''$HOSTNAME'''</small>" |
|||
echo |
|||
wikify_directory /etc |
|||
wikify_config_file fstab text |
|||
wikify_directory /etc/privoxy |
|||
wikify_config_file set-network-config bash "This file must be '''chmod 755'''. Also the following line must be added to <tt>/etc/sudoers</tt>: |
|||
:<code> ALL ALL=(ALL) NOPASSWD: /etc/privoxy/set-network-config </code>" |
|||
diff -u config.original config-home | wikify_config_stdin config-home.patch diff |
|||
diff -u config-home config-nxp | wikify_config_stdin config-nxp.patch diff |
|||
echo "'''config-nxp_auth''' - symlinked to <tt>config-nxp</tt>" |
|||
echo |
|||
diff -u config-nxp config-nxp_direct | wikify_config_stdin config-nxp_direct.patch diff |
|||
wikify_directory /usr/local/bin |
|||
wikify_config_file be bash "This script would ideally require to add the following line to <tt>/etc/sudoers</tt>: |
|||
:<code>ALL ALL=(ALL) NOPASSWD: /bin/loadkeys</code>" |
|||
wikify_config_file ssh-agent-refresh.sh bash |
|||
wikify_directory ~ |
|||
wikify_config_file .bashrc bash "Everything before <tt>#### CUSTOMIZATION</tt> is the original file." |
|||
wikify_config_file .dircolors.cfg text |
|||
wikify_config_file .inputrc bash |
|||
wikify_config_file .profile bash |
|||
wikify_config_file .vimrc text |
|||
wikify_directory ~/.ssh |
|||
wikify_config_file config-home text |
|||
wikify_config_file config-nxp text |
|||
echo "'''config-nxp_auth''' - symlinked to <tt>config-nxp</tt>" |
|||
echo |
|||
echo "'''config-nxp_direct''' - symlinked to <tt>config-nxp</tt>" |
|||
echo |
|||
wikify_config_file proxy.conf-default text |
|||
echo "'''proxy.conf-home''' - symlinked to <tt>proxy.conf-default</tt>" |
|||
echo |
|||
echo "'''proxy.conf-nxp''' - symlinked to <tt>proxy.conf-default</tt>" |
|||
echo |
|||
wikify_config_file proxy.conf-nxp_auth text |
|||
echo "'''config-home-nxp_direct''' - symlinked to <tt>config-default</tt>" |
|||
echo |
|||
wikify_directory ~/bin |
|||
wikify_config_file backup_main bash "This file must be '''chmod 700'''." |
|||
wikify_config_file generate_wiki_config_file_page.sh bash "This file must be '''chmod 700'''." |
|||
wikify_config_file restore_wiki.sh bash "This file must be '''chmod 700'''." |
|||
wikify_config_file set-network.sh bash "This file must be '''chmod 700'''." |
|||
wikify_config_file sshproxy bash "This file must be '''chmod 700'''." |
|||
wikify_config_file startup.sh bash "This file must be '''chmod 700'''." |
|||
wikify_directory ~/etc |
|||
wikify_config_file backup_definition text |
|||
wikify_config_file crontab bash "Install this file with |
|||
:<code>crontab -u beq06659 ~/etc/crontab</code>" |
|||
</source> |
|||
}} }} |
|||
'''restore_wiki.sh''' - This file must be '''chmod 700'''. |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/bin/|restore_wiki.sh|<source lang=bash class="restore_wiki.sh"> |
|||
#! /bin/bash |
|||
function restore_wiki() |
|||
{ |
|||
WIKI_DIR=$1 |
|||
# |
|||
# Restore the wiki backup locally - miki |
|||
# |
|||
HTML_ROOT=/data/www |
|||
SQL_BACKUP=$(ls ~/backup/*-www.noekeon.org_$WIKI_DIR.daily.sql.gz | tail -n 1) |
|||
TAR_BACKUP=$(ls ~/backup/*-www.noekeon.org_$WIKI_DIR.daily.tar.gz | tail -n 1) |
|||
WIKI_SETTINGS_FNAME="$HTML_ROOT/$WIKI_DIR/LocalSettings.php" |
|||
[ -a "$SQL_BACKUP" ] || return 1 |
|||
[ -a "$TAR_BACKUP" ] || return 1 |
|||
echo "Restoring TAR backup $TAR_BACKUP..." |
|||
echo |
|||
sudo rm -r "$HTML_ROOT/$WIKI_DIR" |
|||
cd "$HTML_ROOT" |
|||
sudo tar -xvzf "$TAR_BACKUP" >/dev/null |
|||
sudo chown $USER "$HTML_ROOT/$WIKI_DIR" |
|||
sudo chown $USER $WIKI_SETTINGS_FNAME |
|||
sed -i -r 's/(wgDBserver.*").*(")/\1localhost\2/' $WIKI_SETTINGS_FNAME |
|||
wgDBname=$(<"$WIKI_SETTINGS_FNAME" perl -lne 'print for /wgDBname.*"(.*)"/') |
|||
wgDBuser=$(<"$WIKI_SETTINGS_FNAME" perl -lne 'print for /wgDBuser.*"(.*)"/') |
|||
wgDBpassword=$(<"$WIKI_SETTINGS_FNAME" perl -lne 'print for /wgDBpassword.*"(.*)"/') |
|||
echo "Restoring SQL backup $SQL_BACKUP..." |
|||
echo |
|||
gunzip < "$SQL_BACKUP" | mysql -u "$wgDBuser" -p"$wgDBpassword" "$wgDBname" |
|||
sudo chown -R www-data "$WIKI_DIR" |
|||
sudo chgrp -R www-data "$WIKI_DIR" |
|||
} |
|||
restore_wiki miki |
|||
restore_wiki crypto |
|||
</source> |
|||
}} }} |
|||
'''set-network.sh''' - This file must be '''chmod 700'''. |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/bin/|set-network.sh|<source lang=bash class="set-network.sh"> |
|||
#! /bin/bash |
|||
# Exit if no network name given or if no corresponding configuration file |
|||
NETWORK=$1 |
|||
[ -n "$NETWORK" ] || exit 1 |
|||
# Some logging... |
|||
echo -e "\t[$HOSTNAME] Running $(basename $0) '$NETWORK'..." 1>&2 |
|||
# Checked all needed files are present... |
|||
SSH_CONFIG_FILE=~/".ssh/config-$NETWORK" |
|||
if ! [ -a $SSH_CONFIG_FILE -a -a /etc/privoxy/config-$NETWORK ]; then |
|||
echo "ERROR! I don't know how to reconfigure network '$NETWORK'" 1>&2 |
|||
exit 255 |
|||
fi |
|||
#First we need to restore the ssh-agent context, if any |
#First we need to restore the ssh-agent context, if any |
||
eval $(/usr/local/bin/ssh-agent-refresh.sh) > /dev/null |
eval $(/usr/local/bin/ssh-agent-refresh.sh) > /dev/null |
||
# Now let's reconfigure as needed... |
|||
#We create the SQL backup file |
|||
if [ $NETWORK = "nxp_auth" ]; then |
|||
echo "Backing up the MySQL database to '$FSQLNAME'..." |
|||
echo -e "\t!!! UPDATE PASSWORD AT ~/.ssh/proxy.conf AND RE-RUN THIS COMMAND !!!" |
|||
ssh noekeon '~daemenj/private/backup_wiki ~daemenj/kiwi.noekeon.org/miki/LocalSettings.php' > "$FSQLNAME" |
|||
fi |
|||
~/bin/sshproxy stop |
|||
#We create the wiki directory backup file |
|||
sleep 1 |
|||
echo "Backing up the files & extensions to '$FFILENAME'..." |
|||
ln -sf $SSH_CONFIG_FILE ~/.ssh/config |
|||
ssh noekeon 'cd ~daemenj/kiwi.noekeon.org; /usr/bin/nice -n 19 tar -cz miki/' > "$FFILENAME" |
|||
sudo /etc/privoxy/set-network-config "$NETWORK" |
|||
~/bin/sshproxy start |
|||
</source> |
|||
}} }} |
|||
'''sshproxy''' - This file must be '''chmod 700'''. |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/bin/|sshproxy|<source lang=bash class="sshproxy"> |
|||
#! /bin/sh |
|||
# |
|||
# sshproxy Setup ssh port forwarding (imap) and SOCKS 5 proxy |
|||
# ssh connection is made persistent thanks to autossh |
|||
# |
|||
# Author: Michaël Peeters |
|||
# |
|||
# Prerequisite: ssh-agent must be running in background (autossh won't ask for password) |
|||
# |
|||
# chkconfig: 235 70 40 |
|||
# description: sshproxy startup script. |
|||
SUBSYS=sshproxy |
|||
#Now, depending on current date, we'll create daily, weekly, monthly or yearly backups... |
|||
TARGET=/usr/bin/autossh |
|||
[ $THISWEEK -ge $NEXTWEEKLY ] && makeweekly |
|||
BINDADDRESS=0.0.0.0 #0.0.0.0 external connection allowed; 127.0.0.1 only connection from localhost allowed |
|||
[ $THISMONTH -ge $NEXTMONTHLY ] && makemonthly |
|||
[ $THISYEAR -ge $NEXTYEARLY ] && makeyearly |
|||
makedaily |
|||
# Source function library. |
|||
#. /etc/rc.d/init.d/functions |
|||
# Some macros to make the below more readable |
|||
#Now let's delete the oldest backups |
|||
#PID_FILE=/var/run/$SUBSYS.pid |
|||
#LOCK_FILE=/var/lock/subsys/$SUBSYS |
|||
PID_FILE=~/.$SUBSYS.pid |
|||
LOCK_FILE=~/.$SUBSYS.lock |
|||
echo_success() |
|||
function rmoldest() |
|||
{ |
{ |
||
echo "\t\t[OK ]" |
|||
local EXT=$1 |
|||
} |
|||
local TYPE=$2 |
|||
local NBR=$3 |
|||
echo_failure() |
|||
#Count files |
|||
{ |
|||
file_count=$(ls $BACKUPDIR/*.${TYPE}${EXT}| wc -l) |
|||
echo "\t\t[FAILED]" |
|||
} |
|||
#Delete files while we have more than $NBR |
|||
start() |
|||
while [ $file_count -gt $NBR ] |
|||
{ |
|||
do |
|||
echo -n "Starting $SUBSYS:" |
|||
#Delete alphabetically oldest file (ls sort by name is default) |
|||
rm $(ls $BACKUPDIR/*.${TYPE}${EXT} | head -n 1) |
|||
if [ -f $LOCK_FILE ]; then |
|||
#Count files again |
|||
RETVAL=1 |
|||
file_count=$(ls $BACKUPDIR/*.${TYPE}${EXT}| wc -l) |
|||
else |
|||
done |
|||
export AUTOSSH_PIDFILE=$PID_FILE |
|||
export AUTOSSH_POLL=300 |
|||
/usr/bin/autossh -M 0 -f -N -n -q -L ${BINDADDRESS}:9025:smtp.priorweb.be:25 -L ${BINDADDRESS}:9143:mail.priorweb.be:143 -L ${BINDADDRESS}:9026:mail.altranweb.be:25 -L ${BINDADDRESS}:9144:mail.altranweb.be:143 -D ${BINDADDRESS}:1080 noekeon |
|||
RETVAL=$? |
|||
fi |
|||
if [ $RETVAL -eq 0 ]; then |
|||
touch $LOCK_FILE |
|||
echo_success |
|||
else |
|||
echo_failure |
|||
fi |
|||
} |
} |
||
stop() |
|||
rmoldest ".sql.gz" "daily" "3" |
|||
{ |
|||
rmoldest ".tar.gz" "daily" "3" |
|||
# don't delete lock file while pid file not deleted |
|||
rmoldest ".sql.gz" "weekly" "3" |
|||
# don't delete pidfile while process is running |
|||
rmoldest ".tar.gz" "weekly" "3" |
|||
rmoldest ".sql.gz" "monthly" "3" |
|||
echo -n "Stopping $SUBSYS:" |
|||
rmoldest ".tar.gz" "monthly" "3" |
|||
rmoldest ".sql.gz" "yearly" "3" |
|||
status |
|||
rmoldest ".tar.gz" "yearly" "3" |
|||
case "$RETVAL" in |
|||
0) |
|||
( kill -TERM $pid || kill -KILL $pid ) >/dev/null |
|||
RETVAL=$? |
|||
;; |
|||
1) RETVAL=0;; |
|||
2) RETVAL=0;; |
|||
*) ;; |
|||
esac |
|||
if [ $RETVAL -eq 0 ]; then |
|||
rm -f $LOCK_FILE |
|||
rm -f $PID_FILE |
|||
echo_success |
|||
else |
|||
echo_failure |
|||
fi |
|||
} |
|||
status() |
|||
{ |
|||
# no lockfile --> (3) Not started. |
|||
# lockfile present, no pidfile --> (2) Started, but terminated |
|||
# lockfile & pidfile present, no process --> (1) Started, but killed |
|||
# lockfile, pidfile & process present --> (0) Started. |
|||
# -- note this is opposite order compared to status function, but support multiple autossh running concurrently |
|||
unset pid |
|||
read pid 2>/dev/null < $PID_FILE |
|||
if [ ! -f $LOCK_FILE ]; then |
|||
# /var/lock/subsys/$SUBSYS doesn't exist |
|||
RETVAL=3 |
|||
elif [ "$pid" = "" ] ; then |
|||
# lock file exists, but file "/var/run/*.pid" doesn't exist |
|||
RETVAL=2 |
|||
elif ( ! ps -p $pid | grep -q $pid ) ; then |
|||
# Both files exist but process is not running anymore... |
|||
RETVAL=1 |
|||
else |
|||
# Everything is fine |
|||
RETVAL=0 |
|||
fi |
|||
} |
|||
reload() |
|||
{ |
|||
read pid 2>/dev/null < $PID_FILE |
|||
kill -HUP $pid |
|||
RETVAL=$? |
|||
} |
|||
# See how we were called. |
|||
case "$1" in |
|||
start) |
|||
start |
|||
;; |
|||
stop) |
|||
stop |
|||
;; |
|||
status) |
|||
status |
|||
case "$RETVAL" in |
|||
0) |
|||
echo -n "$SUBSYS (pid $pid) is running" |
|||
if ( ps -fu $USER | grep -q " $pid .*/ssh " ) ; then echo " and connection is alive..."; else echo " but connection is dead..."; fi |
|||
;; |
|||
1) |
|||
echo "$SUBSYS dead but pid file exists" |
|||
;; |
|||
2) |
|||
echo "$SUBSYS dead but subsys locked..." |
|||
;; |
|||
3) |
|||
echo "$SUBSYS is stopped" |
|||
;; |
|||
esac |
|||
;; |
|||
reload) |
|||
reload |
|||
;; |
|||
restart) |
|||
stop |
|||
start |
|||
;; |
|||
*) |
|||
echo "Usage: $0 {start|stop|status|reload|restart}" |
|||
RETVAL=1 |
|||
esac |
|||
exit $RETVAL |
|||
#Finally we update our resource file |
|||
umask 022 |
|||
echo "NEXTWEEKLY=${NEXTWEEKLY}" >$BACKUPRC |
|||
echo "NEXTMONTHLY=${NEXTMONTHLY}" >>$BACKUPRC |
|||
echo "NEXTYEARLY=${NEXTYEARLY}" >>$BACKUPRC |
|||
</source> |
</source> |
||
}} |
}} }} |
||
'''startup.sh''' - This file must be '''chmod 700'''. |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/bin/|startup.sh|<source lang=bash class="startup.sh"> |
|||
#! /bin/bash |
|||
# Start ssh-agent and add key |
|||
############################## |
|||
eval `ssh-agent-refresh.sh` >/dev/null |
|||
if ( ! ( ssh-add -L | grep -q $USER ) ); then ssh-add; fi |
|||
# Start ssh-proxy - USELESS - ALWAYS FOLLOWED BY A CALL TO ~/bin/network-* which restarts sshproxy anyway |
|||
############################## |
|||
#~/bin/sshproxy stop >/dev/null |
|||
#~/bin/sshproxy start |
|||
</source> |
|||
}} }} |
|||
=== Directory /home/beq06659/etc === |
|||
'''backup_definition''' |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/etc/|backup_definition|<source lang=text class="backup_definition"> |
|||
BACKUPPREFIX=wiki |
|||
BACKUPID=www.noekeon.org_miki |
|||
BACKUPEXT=sql.gz |
|||
BACKUPCMD="ssh noekeon '~daemenj/private/backup_wiki ~daemenj/kiwi.noekeon.org/miki/LocalSettings.php'" |
|||
BACKUPPREFIX=wiki |
|||
BACKUPID=www.noekeon.org_miki |
|||
BACKUPEXT=tar.gz |
|||
BACKUPCMD="ssh noekeon 'cd ~daemenj/kiwi.noekeon.org; /usr/bin/nice -n 19 tar -cz miki/'" |
|||
BACKUPPREFIX=wiki |
|||
BACKUPID=www.noekeon.org_crypto |
|||
BACKUPEXT=sql.gz |
|||
BACKUPCMD="ssh noekeon '~daemenj/private/backup_wiki ~daemenj/kiwi.noekeon.org/crypto/LocalSettings.php'" |
|||
BACKUPPREFIX=wiki |
|||
BACKUPID=www.noekeon.org_crypto |
|||
BACKUPEXT=tar.gz |
|||
BACKUPCMD="ssh noekeon 'cd ~daemenj/kiwi.noekeon.org; /usr/bin/nice -n 19 tar -cz crypto/'" |
|||
</source> |
|||
}} }} |
|||
'''crontab''' - Install this file with |
|||
:<code>crontab -u beq06659 ~/etc/crontab</code> |
|||
{{pl2|{{hiddenSourceFile|/home/beq06659/etc/|crontab|<source lang=bash class="crontab"> |
|||
# Crontab for user beq06659 |
|||
# |
|||
# Install this crontab with |
|||
# |
|||
# crontab -u beq06659 crontab |
|||
# |
|||
# Use /bin/bash to run commands, instead of the default /bin/sh |
|||
SHELL=/bin/bash |
|||
# Define variable USER because we need it in our job scripts |
|||
USER=beq06659 |
|||
# Mail any output to 'beq06659', no matter whose crontab this is |
|||
MAILTO=beq06659 |
|||
# |
|||
# |
|||
# m h dom mon dow command (dow=0|7 is sunday) |
|||
37 * * * * ~beq06659/bin/backup_main ~beq06659/etc/backup_definition |
|||
</source> |
|||
}} }} |
Latest revision as of 11:21, 26 April 2013
These are the configuration files on Configuration NXP Dell Latitude D620 - AndLinux.
Windows Host files
settings.txt
{{{content}}}
hosts
{{{content}}}
AndLinux files
Generated with script /home/beq06659/bin/generate_wiki_config_file_page.sh on host andLinux
Directory /etc
fstab
{{{content}}}
Directory /etc/privoxy
set-network-config - This file must be chmod 755. Also the following line must be added to /etc/sudoers:
ALL ALL=(ALL) NOPASSWD: /etc/privoxy/set-network-config
{{{content}}}
config-home.patch
{{{content}}}
config-nxp.patch
{{{content}}}
config-nxp_auth - symlinked to config-nxp
config-nxp_direct.patch
{{{content}}}
Directory /usr/local/bin
be - This script would ideally require to add the following line to /etc/sudoers:
ALL ALL=(ALL) NOPASSWD: /bin/loadkeys
{{{content}}}
ssh-agent-refresh.sh
{{{content}}}
Directory /home/beq06659
.bashrc - Everything before #### CUSTOMIZATION is the original file.
{{{content}}}
.dircolors.cfg
{{{content}}}
.inputrc
{{{content}}}
.profile
{{{content}}}
.vimrc
{{{content}}}
Directory /home/beq06659/.ssh
config-home
{{{content}}}
config-nxp
{{{content}}}
config-nxp_auth - symlinked to config-nxp
config-nxp_direct - symlinked to config-nxp
proxy.conf-default
{{{content}}}
proxy.conf-home - symlinked to proxy.conf-default
proxy.conf-nxp - symlinked to proxy.conf-default
proxy.conf-nxp_auth
{{{content}}}
config-home-nxp_direct - symlinked to config-default
Directory /home/beq06659/bin
backup_main - This file must be chmod 700.
{{{content}}}
generate_wiki_config_file_page.sh - This file must be chmod 700.
{{{content}}}
restore_wiki.sh - This file must be chmod 700.
{{{content}}}
set-network.sh - This file must be chmod 700.
{{{content}}}
sshproxy - This file must be chmod 700.
{{{content}}}
startup.sh - This file must be chmod 700.
{{{content}}}
Directory /home/beq06659/etc
backup_definition
{{{content}}}
crontab - Install this file with
crontab -u beq06659 ~/etc/crontab
{{{content}}}