| View previous topic :: View next topic |
| Author |
Message |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Tue Mar 06, 2007 11:31 Post subject: |
|
|
nein, es werden keine hardware infos in die datenbank eingetragen und die paketsuche etc. funktionieren auch nicht bzw. geben kein ergbnis.
edit:
ja, es sind immer noch die 4 integrationsaufträge angezeigt (status: waiting). |
|
| Back to top |
|
 |
Hauke

Joined: 02 Mar 2003 Posts: 1072
|
Posted: Tue Mar 06, 2007 12:01 Post subject: |
|
|
Wie schaut es mit der work.php mit <br> aus? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
| Back to top |
|
 |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Tue Mar 06, 2007 12:10 Post subject: |
|
|
das ist die aktuelle work.php die der client bekommt:
| Code: |
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11
export DEBIAN_FRONTEND=noninteractive
userGroup=`find /etc/apt/sources.list -printf 'chown %u.%g /etc/apt/sources.list'`
perm=`find /etc/apt/sources.list -printf 'chmod %m /etc/apt/sources.list'`
if test `awk -v RS='pheeSheiso2sieseegaxeekeitoongei' -v SEARCH="m23.sourceforge.net" '
BEGIN { FOUND=0;}
{if (index($0, SEARCH) > 0) { FOUND++; }}
END {print(FOUND);}
' /etc/apt/sources.list` -lt 1
then
cat >> /etc/apt/sources.list << "ADDIFNOTEXISTSEOF"
deb http://m23.sourceforge.net/m23debs/ ./
ADDIFNOTEXISTSEOF
fi
mv /etc/apt/sources.list#m23 /etc/apt/sources.list
$userGroup
$perm
apt-get update
apt-get -y --force-yes install wget screen sed ssh parted gawk hwsetup hwdata-knoppix m23hwscanner dmidecode
#copy wait4go
cp /bin/wait4go /mnt/root/bin/
#fetch fsize
wget -q http://192.168.11.119/distr/debian/fsize -O /usr/bin/fsize >> /tmp/m23ClientInstall.log
chmod +x /usr/bin/fsize
cp /bin/checkdisklabel /bin/dmidecode /mnt/root/bin
rm /m23clientID 2> /dev/null
cat >> /m23clientID << "m23clientIDEOF"
319
m23clientIDEOF
<br />
<b>Warning</b>: fopen(/m23/data+scripts/packages/baseSys/ca.hash) [<a href='function.fopen'>function.fopen</a>]: failed to open stream: No such file or directory in <b>/m23/cvs/inc/distr/debian/clientConfigCommon.php</b> on line <b>1235</b><br />
<br />
<b>Warning</b>: fgets(): supplied argument is not a valid stream resource in <b>/m23/cvs/inc/distr/debian/clientConfigCommon.php</b> on line <b>1236</b><br />
<br />
<b>Warning</b>: fclose(): supplied argument is not a valid stream resource in <b>/m23/cvs/inc/distr/debian/clientConfigCommon.php</b> on line <b>1237</b><br />
mkdir -p /etc/ssl/certs
mkdir -p /usr/lib/ssl
ln -s /etc/ssl/certs /usr/lib/ssl
wget -O/etc/ssl/certs/.0 "https://192.168.11.119/packages/baseSys/ca.crt"
if test $? -gt 0
then
wget --no-check-certificate -O/etc/ssl/certs/.0 "https://192.168.11.119/packages/baseSys/ca.crt"
fi
chmod -R 755 /etc/ssl/certs /usr/lib/ssl/certs
chown -R root /etc/ssl/certs /usr/lib/ssl/certs
chgrp -R root /etc/ssl/certs /usr/lib/ssl/certs
mkdir -p /root/.ssh
chmod 700 /root/.ssh
wget -qq -O/root/.ssh/authorized_keys "https://192.168.11.119/packages/baseSys/authorized_keys"
chmod 700 /root/.ssh/authorized_keys
chown root /root/.ssh/authorized_keys
chgrp root /root/.ssh/authorized_keys
echo "m23fetchjob 192.168.11.119 " > /etc/init.d/m23fetchjob
rm /etc/rcS.d/S42m23fetchjob
ln -s ../init.d/m23fetchjob /etc/rcS.d/S42m23fetchjob
chmod +x /etc/init.d/m23fetchjob
rm /sbin/m23fetchjob
cat >> /sbin/m23fetchjob << "MFJEOF"
export PATH=/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin
cd /tmp
rm work.php*
wget -t2 -w5 https://$1/work.php
chmod +x work.php
./work.php
exit
MFJEOF
chmod 755 /sbin/m23fetchjob
echo -n "type=clientSettings&id=319&clientname=test3" > /tmp/clientSettings.post
#get DNS servers
awk -v DNR=1 -v ORS="" '/^nameserver/ {print "&dns"DNR"="$2; DNR++; if (DNR ==2) exit;}' /etc/resolv.conf >> /tmp/clientSettings.post
#get ip, netmask, network and gateway
awk -v ORS="" '/address/ {print("&ip="$2)}
/netmask/ {print("&netmask="$2)}
/gateway/ {print("&gateway="$2)}
' /etc/network/interfaces >> /tmp/clientSettings.post
#get the MAC address
LANG=C; ifconfig eth0 | tr -s "\t " | awk -v ORS="" '/HWaddr/ {
for (i=1; i < NF; i++)
if ($i == "/HWaddr/")
break;
gsub(/:/,"",$i);
$i=tolower($i);
print ("&mac="$i);
}' >> /tmp/clientSettings.post
#get the sources.list
echo -n "&sourceslist=" >> /tmp/clientSettings.post
cat /etc/apt/sources.list | sed 's/%/%25/g' | sed 's/"/%22/g' | sed 's/\\\\/%5C/g' | sed 's/&/%26/g' >> /tmp/clientSettings.post
#check if it's Debian
if test `ls /etc/debian_version | wc -l` -gt 0
then
if test -f /etc/lsb-release
then
awk -v ORS='' '/DISTRIB_ID=Ubuntu/ {print("&distr=ubuntu")}' /etc/lsb-release >> /tmp/clientSettings.post
else
echo -n "&distr=debian" >> /tmp/clientSettings.post
fi
fi
#get Debian release
echo -n "&release=" >> /tmp/clientSettings.post
cut -d'/' -f2 /etc/debian_version | awk -v ORS='' '{print}' >> /tmp/clientSettings.post
#get APT proxy settings
awk -v FS='"' -v ORS="" '/Acquire::(http|ftp)::Proxy/ {
gsub("http://","");
gsub("HTTP://","");
gsub("ftp://","");
gsub("FTP://","");
print("&aptproxy="$2); exit;
}' /etc/apt/apt.conf.d/70debconf >> /tmp/clientSettings.post
#get login
gawk -v FS=":" '(match($0,"/bin/sh") || match($0,"/bin/bash")) && $3 > 100 {print $1"_"$3"_"$4}' /etc/passwd > /tmp/users
rm /tmp/userAmount 2> /dev/null
for user in `cat /tmp/users`
do
uname=`echo $user | cut -d'_' -f1`
am=`grep $uname /etc/group | wc -l`
echo "$am?$user" >> /tmp/userAmount
done
echo -n "&login=" >> /tmp/clientSettings.post
sort -n -r /tmp/userAmount | head -1 | cut -d'?' -f2 >> /tmp/clientSettings.post
rm /tmp/userAmount /tmp/users 2> /dev/null
#kernel
dpkg --get-selections | awk -v ORS="" -v FS="\t" 'match($0,"kernel-image")&&!match($0,"deinstall") {print("&kernel="$1); exit}' >> /tmp/clientSettings.post
#LDAP
debconf-get-selections | awk -v ORS="" -v FS=" " -v NOBASEDN=1 -v NOLDAPSERVER=1 '
(match($0,"base-dn") && (match($0,"libnss-ldap") || match($0,"libpam-ldap")) && NOBASEDN) {NOBASEDN=0; gsub("=","%3D"); print("&basedn="$4)}
(match($0,"ldap-server") && (match($0,"libnss-ldap") || match($0,"libpam-ldap")) && NOLDAPSERVER) {NOLDAPSERVER=0; gsub("=","%3D"); print("&ldapserver="$4)}' >> /tmp/clientSettings.post
#Desktop
dpkg --get-selections | awk -v ORS="" '
/^kdelibs-data/ {print("&desktop=kde"); DFOUND=1; exit}
/^gnome-desktop-data/ {print("&desktop=gnome2"); DFOUND=1; exit}
/xfce/ {print("&desktop=XFce"); DFOUND=1; exit}
/libx11/ {XFOUND=1}
END {
if (XFOUND && !DFOUND)
print("&desktop=X");
if (!XFOUND && !DFOUND)
print("&desktop=Textmode")}' >> /tmp/clientSettings.post
#install & swap partition
awk -v ORS="" '
$2=="/" {print("&instPart="$1)}
$3=="swap" {print("&swapPart="$1)}
$2=="/home" {print("&homePart="$1)}
' /etc/fstab >> /tmp/clientSettings.post
ls -l /home | tr -s " " | awk -v ORS="" '/\/net\// {gsub("/net/",""); print "&homePart2="$11}' >> /tmp/clientSettings.post
wget -T5 -t0 --post-file /tmp/clientSettings.post https://192.168.11.119/postMessage.php?m23clientID=319 -O /dev/null
id=`cat /m23clientID 2> /dev/null`
if test $id
then
idvar="&m23clientID=$id"
fi
wget -qq -O/dev/null "https://192.168.11.119/packages/setStatus.php?id=2886&status=done$idvar"
id=`cat /m23clientID 2> /dev/null`
if test $id
then
idvar="&m23clientID=$id"
fi
wget -qq -O/dev/null "https://192.168.11.119/packages/setClientStatus.php?status=2$idvar"
rm /tmp/*.sh
rm /tmp/*.php
mv work.php `date +%s`.old
id=`cat /m23clientID 2> /dev/null`
if test $id
then
idvar="?m23clientID=$id"
fi
rm work.php
wget -Owork.php "https://192.168.11.119/work.php$idvar"
chmod +x work.php
./work.php
|
mit "disable HTML" sieht man auch alle <br>  |
|
| Back to top |
|
 |
Hauke

Joined: 02 Mar 2003 Posts: 1072
|
Posted: Tue Mar 06, 2007 13:06 Post subject: |
|
|
Geht es, nachdem Du
ausgeführt hast? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
| Back to top |
|
 |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Wed Mar 07, 2007 5:20 Post subject: |
|
|
jetzt bekomme ich hardware informationen. das sieht schonmal sehr gut aus
aber bei der paketsuche gibt es immer noch keine ergebnisse!
die integrationsaufträge haben jetzt folgenden status:
m23Presetup done
m23UpdateSourcesList error
m23UpdatePackageInfos error
edit:
nach einer neuen integration, sehe ich jetzt hardware infos, installierte und nicht installierte pakete.
d.h. ich bin fast am ziel
jetzt muss nur noch die installation eines paketes funktionieren, dann is alles okay. aber da gibt es wohl auch noch eine kleine schwierigkeit, aber ich muss erstmal auf fehlersuche gehen.
edit 2:
wenn ich ein paket zum installieren auswähle, dann wird der auftrag erstellt. im Menü unter Pakete -> Installieren wird der Rechner mit den Aufträgen angezeigt. wenn ich dann aber auf installieren klicke, lande ich wieder im "Pakete installieren"-Menü und kann nach Paketen suchen...
Es wird nichts installiert. |
|
| Back to top |
|
 |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Wed Mar 07, 2007 10:16 Post subject: |
|
|
die eigentliche installation wird ja (soweit ich das verstanden habe) von m23fetchjob angestossen. das skript liegt in /etc/init.d.
wenn ich es ausführe, lädt der client aber eine leere work.php herunter, obwohl es zugewiesene aufträge gibt
- dermartn |
|
| Back to top |
|
 |
Hauke

Joined: 02 Mar 2003 Posts: 1072
|
Posted: Wed Mar 07, 2007 13:22 Post subject: |
|
|
| dermartn wrote: | | wenn ich ein paket zum installieren auswähle, dann wird der auftrag erstellt. im Menü unter Pakete -> Installieren wird der Rechner mit den Aufträgen angezeigt. wenn ich dann aber auf installieren klicke, lande ich wieder im "Pakete installieren"-Menü und kann nach Paketen suchen... |
So ist auch die Funktionsweise der Oberfläche gedacht.
Hast Du den Installationsauftrag mit einem Klick auf "Vorgemerkte Pakete installieren" zugewiesen?
Steht der Installationsauftrag in der Liste?
Hat der Client eine statische IP bzw. die, die unter m23 vermerkt ist?
Steht in der Datei /m23clientID auf dem Client die richtige Clientnummer?
| dermartn wrote: | | die eigentliche installation wird ja (soweit ich das verstanden habe) von m23fetchjob angestossen. |
Über m23fetchjob wird beim Booten Kontakt zum Server aufgenommen und ggf. vorliegende Aufträge bezogen. Wenn der Client läuft und einen neuen Auftrag zugewiesen bekommt, stößt der Server die Ausführung per SSH auf dem Client an. _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
| Back to top |
|
 |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Wed Mar 07, 2007 17:42 Post subject: |
|
|
| Quote: | Hast Du den Installationsauftrag mit einem Klick auf "Vorgemerkte Pakete installieren" zugewiesen?
|
ja, hab ich.
| Quote: |
Steht der Installationsauftrag in der Liste?
|
ja, die aufträge stehen in der liste. ist es so gewollt, das nach der installation eines "kleinen" paketes ein reboot bzw. shutdown gemacht wird?
| Quote: |
Hat der Client eine statische IP bzw. die, die unter m23 vermerkt ist?
|
ja, die IP stimmt.
| Quote: |
Steht in der Datei /m23clientID auf dem Client die richtige Clientnummer?
|
das muss ich nochmal prüfen, ich meine aber ja.
| Quote: |
Über m23fetchjob wird beim Booten Kontakt zum Server aufgenommen und ggf. vorliegende Aufträge bezogen. Wenn der Client läuft und einen neuen Auftrag zugewiesen bekommt, stößt der Server die Ausführung per SSH auf dem Client an.
|
das anstoßen des auftrags per ssh scheint noch nicht zu funktionieren. geht das nur wenn am anfang der integration das root passwort gesetzt wurde, oder geht das über ein authorized key, den ich noch einrichten muss bzw. der noch nicht funktioniert? |
|
| Back to top |
|
 |
Hauke

Joined: 02 Mar 2003 Posts: 1072
|
Posted: Wed Mar 07, 2007 21:27 Post subject: |
|
|
| dermartn wrote: | | ist es so gewollt, das nach der installation eines "kleinen" paketes ein reboot bzw. shutdown gemacht wird? |
Das hat nichts mit der "Größe" der Pakete zu tun. Ist der Client durch den Server nicht per ping erreichbar, so wird der Client als ausgeschaltet angesehen. Nun versucht der Server, den Client per WOL aufzuwecken und schiebt ein Shutown-Paket nach, damit der Client nach dem Installieren wieder herunterfährt.
| dermartn wrote: | | das anstoßen des auftrags per ssh scheint noch nicht zu funktionieren. geht das nur wenn am anfang der integration das root passwort gesetzt wurde, oder geht das über ein authorized key, den ich noch einrichten muss bzw. der noch nicht funktioniert? |
Der Client sollte bei der Integration automatisch den öffentlichen SSH-Shlüssel des Servers nach /root/.ssh/authorized_keys geschrieben bekommen. Funktioniert ein SSH-Zugriff vom Server auf den Client?
Was für eine Debian-Version läuft auf dem zu integrierenden Client? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
| Back to top |
|
 |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Thu Mar 08, 2007 6:04 Post subject: |
|
|
ich habe die m23ClientID überprüft. auf dem client ist die selbe, die auf dem server für die IP eingetragen ist. also sollte das stimmen.
| Quote: | Der Client sollte bei der Integration automatisch den öffentlichen SSH-Shlüssel des Servers nach /root/.ssh/authorized_keys geschrieben bekommen. Funktioniert ein SSH-Zugriff vom Server auf den Client?
|
ja, der zugriff funktioniert, auch ohne passwort dank authorized_keys.
| Quote: |
Was für eine Debian-Version läuft auf dem zu integrierenden Client?
|
Der Client läuft mit sarge.
aber die vorgemerkten aufträge werden anscheinend nicht per ssh übertragen, und die work.php ist leer, wenn ich sie vom client aus hole.
edit:
da bei den aufträgen auch immer ein m23Shutdown auftrag dabei ist, scheint es mir so, als ob der server den client nicht "sieht". ping und ssh funktionieren aber. |
|
| Back to top |
|
 |
Hauke

Joined: 02 Mar 2003 Posts: 1072
|
Posted: Thu Mar 08, 2007 7:55 Post subject: |
|
|
| dermartn wrote: | | da bei den aufträgen auch immer ein m23Shutdown auftrag dabei ist, scheint es mir so, als ob der server den client nicht "sieht". ping und ssh funktionieren aber. |
Das ist ja höchst seltsam. Ist vielleicht das falsche "ping" installiert? Was kommt bei
| Code: | | dpkg --get-selections | grep ping |
heraus?
Funktioniert
| Code: | | wget "<serverIP>/work.php?m23clientID=<clientID>" -O work.php |
auf dem Client oder einem anderen Rechner? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
| Back to top |
|
 |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Thu Mar 08, 2007 8:26 Post subject: |
|
|
| Code: |
dpkg --get-selections | grep ping
|
ergibt auf dem server sowie auf dem client:
| Code: |
iputils-ping install
|
| Code: |
wget "<serverIP>/work.php?m23clientID=<clientID>" -O work.php
|
das funktioniert, das paket wurde installiert und alle befehle wurden ausgeführt
also liegt es nur noch am erreichen/erkennen des clients (vom server aus).
edit:
ich hab den ping befehl auch mal so ausgeführt wie er in /m23/inc/db.php steht, das funktioniert wunderbar. |
|
| Back to top |
|
 |
Hauke

Joined: 02 Mar 2003 Posts: 1072
|
Posted: Thu Mar 08, 2007 11:34 Post subject: |
|
|
Was steht in der Datei /etc/rcS.d/S42m23fetchjob auf dem Client? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
| Back to top |
|
 |
dermartn
Joined: 11 Dec 2006 Posts: 19
|
Posted: Thu Mar 08, 2007 11:46 Post subject: |
|
|
| Code: |
m23fetchjob 192.168.11.119
|
die IP ist die des Servers, sollte also richtig sein. |
|
| Back to top |
|
 |
Hauke

Joined: 02 Mar 2003 Posts: 1072
|
Posted: Thu Mar 08, 2007 13:11 Post subject: |
|
|
Die Datei /sbin/m23fetchjob existiert und ist ausführbar?
Was ist drin? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
| Back to top |
|
 |
|