X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=fai-redep;h=6552fe3a207e4f4c1dc28cc15b87e2172e68d38b;hb=0a2a4d11ef323da19d0cebe2f5ec7b1be7bd15bc;hp=29f4d158c5e832597e599db83cf97b408a0bbe12;hpb=81e0e0b826ebffdee7d809ee4dff1338af7692e1;p=automated-distro-installer diff --git a/fai-redep b/fai-redep index 29f4d15..6552fe3 100755 --- a/fai-redep +++ b/fai-redep @@ -1,4 +1,19 @@ #!/bin/bash -l +# Copyright (C) 2016 Ian Kelling + +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. set -x # Deploy fai configuration to faiserver, @@ -10,55 +25,43 @@ trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR cd $(dirname $(readlink -f "$BASH_SOURCE")) -faiserver_host=faiserver # i use faiserver as a dns alias, but ssh key is associated with # a canonical hostname and we will have ssh warning spam unless we -# use it, so look it up. -if addr=$(host faiserver); then - addr=${addr##* } - if h=$(host $addr); then - h=${h##* } - faiserver_host=${h%%.*} - else - echo "$0: warning: host \$addr($addr) failed" - fi -else - echo "$0: warning: host faiserver failed" -fi - - -ssh root@$faiserver_host rm -rf /srv/fai/config -scp -r fai/config root@$faiserver_host:/srv/fai -# fai example pass: fai -#ROOTPW='$1$kBnWcO.E$djxB128U7dMkrltJHPf6d1' +# use it, so look it up just to avoid the warning spam. +faiserver_host=$(chost faiserver) || faiserver_host=faiserver -# generating a hashed password: -# under debian, you can do -# echo "yoursecrectpassword" | mkpasswd -m sha-512 -s -# On arch, best seems to be copy your shadow file to a temp location, -# then passwd, get out the new pass, then copy the shadow file back. +shopt -s extglob +ssh root@$faiserver_host rm -rf /srv/fai/config/!(basefiles) +scp -qr fai/config root@$faiserver_host:/srv/fai -f=/q/root/shadow/standard -if s test -e $f; then - ssh root@$faiserver_host tee -a /srv/fai/config/class/DEFAULT.var <