Compare commits
4 Commits
203d20bb11
...
e74ada7369
| Author | SHA1 | Date | |
|---|---|---|---|
| e74ada7369 | |||
| e8f10d4e42 | |||
| 83aa4dc018 | |||
| d70db48add |
45
functions.sh
45
functions.sh
@@ -68,8 +68,8 @@ fi
|
|||||||
#Ok if dir exists
|
#Ok if dir exists
|
||||||
# arg1: dir to check
|
# arg1: dir to check
|
||||||
function dirMustExists {
|
function dirMustExists {
|
||||||
if [ -d ${1} ] ; then echo -ne "1;"
|
if [ -d ${1} ] ; then e 1
|
||||||
else echo -ne "0;"
|
else e 0
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
# Ok if given dir DOESNOT exists
|
# Ok if given dir DOESNOT exists
|
||||||
@@ -80,6 +80,21 @@ if [ -d ${1} ] ; then echo -ne "0;"
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Ok if some files of given dir contains at least one occurence of pattern
|
||||||
|
# arg1: dir
|
||||||
|
# arg2: pattern
|
||||||
|
function dirMustContains {
|
||||||
|
dir=$1
|
||||||
|
shift
|
||||||
|
string=$@
|
||||||
|
if [ ! -d $dir ] ; then echo -ne "0;" ; return 0 ;fi
|
||||||
|
if ( grep -ri -qE "${string}" $dir ) ;
|
||||||
|
then echo -ne "1;"
|
||||||
|
else
|
||||||
|
echo -ne "0;"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Ok if file contains at least one occurence of pattern
|
# Ok if file contains at least one occurence of pattern
|
||||||
# arg1: file
|
# arg1: file
|
||||||
# arg2: pattern
|
# arg2: pattern
|
||||||
@@ -167,8 +182,16 @@ function md5 {
|
|||||||
echo -ne "${am};"
|
echo -ne "${am};"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# cleanUppkgList
|
||||||
|
# arg1: rootfs
|
||||||
|
function cleanUppkgList {
|
||||||
|
test -d ${1} || return 0
|
||||||
|
test -f ${1}/tmp/pkg.list && rm -f ${1}/tmp/pkg.list
|
||||||
|
}
|
||||||
|
|
||||||
# init pkg list
|
# init pkg list
|
||||||
function _initPkgList {
|
# arg1: rootfs
|
||||||
|
function initPkgList {
|
||||||
root="$1"
|
root="$1"
|
||||||
test -f "${1}/tmp/pkg.list" || chroot "$1" sh -c "rpm -qa > /tmp/pkg.list"
|
test -f "${1}/tmp/pkg.list" || chroot "$1" sh -c "rpm -qa > /tmp/pkg.list"
|
||||||
}
|
}
|
||||||
@@ -176,15 +199,15 @@ function _initPkgList {
|
|||||||
# Ok if given package is installed
|
# Ok if given package is installed
|
||||||
# arg1: rootfs
|
# arg1: rootfs
|
||||||
# arg2: pkg to check
|
# arg2: pkg to check
|
||||||
|
# WARNING: package list might not be up to date
|
||||||
function pkgInstalled {
|
function pkgInstalled {
|
||||||
_initPkgList $1
|
|
||||||
if (grep -qi "$2" "${1}/tmp/pkg.list" ) ; then e 1 ; else e 0 ; fi
|
if (grep -qi "$2" "${1}/tmp/pkg.list" ) ; then e 1 ; else e 0 ; fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Ok if given package is NOT installed
|
# Ok if given package is NOT installed
|
||||||
# arg1: pkg to check
|
# arg1: pkg to check
|
||||||
|
# WARNING: package list might not be up to date
|
||||||
function pkgNotInstalled {
|
function pkgNotInstalled {
|
||||||
_initPkgList $1
|
|
||||||
if (grep -qi "$2" "${1}/tmp/pkg.list" ) ; then e 0 ; else e 1 ; fi
|
if (grep -qi "$2" "${1}/tmp/pkg.list" ) ; then e 0 ; else e 1 ; fi
|
||||||
echo -ne "${?};"
|
echo -ne "${?};"
|
||||||
}
|
}
|
||||||
@@ -196,10 +219,16 @@ function processIsRunning {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#Ok if given command returns 0
|
#Ok if given command returns 0
|
||||||
# arg1: command to be run
|
# arg1: chroot dir
|
||||||
|
# arg2: command to be run
|
||||||
function commandIsWorking {
|
function commandIsWorking {
|
||||||
command=$1
|
chroot=$1
|
||||||
if ( $command &> /dev/null ) ; then echo -ne "1;" ; else echo -ne "0;" ; fi
|
shift
|
||||||
|
command="$@"
|
||||||
|
chroot ${chroot} bash -c "$command" &> /dev/null
|
||||||
|
ret=$?
|
||||||
|
if [ $ret -eq 0 ] ; then e 1 ; else e 0 ; fi
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# ok if given pattern is detected on command's stdout or stderr
|
# ok if given pattern is detected on command's stdout or stderr
|
||||||
|
|||||||
23
initPkg.sh
Normal file
23
initPkg.sh
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
#! /bin/bash
|
||||||
|
set -e
|
||||||
|
IFS=$'\n\t'
|
||||||
|
source functions.sh
|
||||||
|
echo -ne "host;name;root history;bash history;<+CHANGEME+>\n"
|
||||||
|
if [ $# -ge 1 ] ; then
|
||||||
|
hostlist=/srv/lxc/epsi/$1
|
||||||
|
else
|
||||||
|
hostlist=/srv/lxc/epsi/*
|
||||||
|
fi
|
||||||
|
for host in $hostlist ; do
|
||||||
|
root=${host}/rootfs
|
||||||
|
host=$(basename $host)
|
||||||
|
hostname=$(grep HOSTNAME ${root}/etc/sysconfig/network 2>/dev/null| cut -f2 -d=)
|
||||||
|
test -z "${hostname}" && hostname=$(cat ${root}/etc/hostname)
|
||||||
|
test -f ${root}/etc/motd && user="$(cat ${root}/etc/motd | xargs)"
|
||||||
|
echo -ne "${hostname};${user};"
|
||||||
|
unset user
|
||||||
|
initPkgList ${root}
|
||||||
|
|
||||||
|
echo
|
||||||
|
|
||||||
|
done
|
||||||
Reference in New Issue
Block a user