[Frage] Boot-Information Negiotation-Layer (BINL-Server)

MrTweek1987

Neuer User
Mitglied seit
2 Mai 2011
Beiträge
116
Punkte für Reaktionen
0
Punkte
0
Ok, ich habe seit ner weile bereits einen BINL-Server auf meiner Box am laufen und wollte fragen, ob überhaupt Interesse besteht an solch ein Freetz-Package <.< ...

Okay jetz erstmal zur frage, "WTF ist ein BINL-Server und wofür brauche ich ihn?!":

Wir wissen alle, dass man Windows XP/200X über Netzwerk installieren kann oder das Windows PE 1.5 bzw BartPE direkt laden kann. bei etwas älteren mini-schleppbüchern, hat man aber eben mal kein DVD-Laufwerk.
man kan also XP über USB installieren oder über Netzwerk Um aber das letztere zu ermöglichen ist mehr als ein DNSMASQ nötig, man benötigt zusätzlich einen BINL-Server, welcher dem Windows-Setup (Setuploader)
sagt, WELCHEN Netzwerkkarten-Treiber, das Setup am "ende vom laden der eigenen Treiber" zu laden hat, damit es auf die SMB-Freigabe und auf die Installations-dateien zugreifen kann.

jedoch ohne einen BINL_Server erhalten wir folgende Fehlermeldung und das setup wird beendet: http://diddy.boot-land.net/pxe/files/img/binl1.jpg

Da ich bereits einen BINL-Server auf der fritzbox 7270 kompiliert habe (man kann ihn problemlos mittels Freetz selber bauen), wollte ich fragen ob das evtl jemand nützlich findet,
weil dann könnte man ein Package-basteln und es als ins repo hinzufügen. allerdings gibt es 2 probleme (naja okay 1 Problem)

- man müsste ein WebIF für schreiben, wo man die Hardware-IDS einträgt, damit der BINL-Server dem Client ja sagen muss, was das Setup für Netzwerkkartentreiber laden muss, dafür muss eine Nics.txt erstellt werden.
es muss ein MAKE-File gebaut werden, was den Pfad der Nics.txt angibt bzw festlegt. die nics.txt hat folgende zeilen pro treiber:

#Vendor-ID Device-ID treiber.sys servicename

1011 0019 dc21x4.sys DC21x4
1022 2000 PCNTPCI5.sys PCnet

diese werte bekommen wir aus der inf-datei des Windows Treibers

PCI\VEN_1011&DEV_0019 - servicename.sys servicename


sowas sollte man dann auch problemlos von einer textbox mit CAT irgendwo reinschreiben können <.<

könnt ja mal kommentare ablassen ob ihr das für nötig bzw brauchbar hältet
 
Zuletzt bearbeitet:
Code:
freetz@Medice-PC:/opt/freetz$ make ris-linux-precompiled
mkdir -p packages/target-mipsel_gcc-4.6.4_uClibc-0.9.32.1/ris-linux-0.4/root
if test -d make/ris-linux/files; then tar -c -C make/ris-linux/files --exclude=.svn . | tar -x -C packages/target-mipsel_gcc-4.6.4_uClibc-0.9.32.1/ris-linux-0.4 ; fi
---> package/ris-linux: preparing... tools/gunzip -c dl/ris-linux-0.4.tar.gz | tar -C source/target-mipsel_gcc-4.6.4_uClibc-0.9.32.1 -x
set -e; shopt -s nullglob; for i in make/ris-linux/patches/*.patch; do tools/freetz_patch source/target-mipsel_gcc-4.6.4_uClibc-0.9.32.1/ris-linux-0.4 $i; done
    applying patch file make/ris-linux/patches/100-nicfiles.patch
    patching file binlsrv.c
    ----------------------------------------------------------------------
cmd() { PATH="/opt/freetz/toolchain/build/mipsel_gcc-4.6.4_uClibc-0.9.32.1/mipsel-linux-uclibc/bin:/opt/freetz/toolchain/build/mipsel_gcc-4.6.4/mipsel-unknown-linux-gnu/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" LD_RUN_PATH="/usr/lib/freetz" make -j2  "$@"  || { printf "\n\\033[33m%s\\033[m\n" "ERROR: Build failed.";  exit 1; } };        if [ -e source/.echo_item_start -a ! -e source/.echo_item_build ]; then echo -n "building... "; touch source/.echo_item_build; fi; cmd -C  \
        CC="/opt/freetz/toolchain/build/mipsel_gcc-4.6.4_uClibc-0.9.32.1/mipsel-linux-uclibc/bin/mipsel-linux-uclibc-gcc" \
        CFLAGS="-march=4kc -Os -pipe -Wa,--trap -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" \

building... make: *** CC=/opt/freetz/toolchain/build/mipsel_gcc-4.6.4_uClibc-0.9.32.1/mipsel-linux-uclibc/bin/mipsel-linux-uclibc-gcc: Datei oder Verzeichnis nicht gefunden.  Schluss.

irgendwie klappt das nicht <.< ...

ris-linux.mk

Code:
$(call PKG_INIT_BIN, 0.4)
$(PKG)_SOURCE:=ris-linux-$($(PKG)_VERSION).tar.gz
$(PKG)_SOURCE_MD5:=7315e1d02436668299f3d6aaf4efc87e
$(PKG)_SITE:=http://oss.netfarm.it/guides
$(PKG)_BINARY:=$($(PKG)_DIR)/binlsrv
$(PKG)_TARGET_BINARY:=$($(PKG)_DEST_DIR)/usr/bin/binlsrv

$(PKG_SOURCE_DOWNLOAD)
$(PKG_UNPACKED)
$(PKG_CONFIGURED_NOP)


$($(PKG)_BINARY): $($(PKG)_DIR)/.configured
	$(SUBMAKE) -C $(RIS-LINUX_DIR) \
	CC="$(TARGET_CC)" \
	CFLAGS="$(TARGET_CFLAGS)" \
	

$($(PKG)_TARGET_BINARY): $($(PKG)_BINARY)
	$(INSTALL_BINARY_STRIP)

$(pkg):

$(pkg)-precompiled: $($(PKG)_TARGET_BINARY)

$(pkg)-clean:
	-$(SUBMAKE) -C $($(PKG)_DIR) clean
	$(RM) $($(PKG)_DIR)/.configured

$(pkg)-uninstall:
	$(RM) $($(PKG)_TARGET_BINARY)

$(PKG_FINISH)

nicfiles-patch:

Code:
--- binlsrv_orig.c	2007-03-17 03:38:46.000000000 +0100
+++ binlsrv.c	2013-10-21 03:36:56.814261156 +0200
@@ -36,7 +36,7 @@
 #endif
 
 #ifndef NICFILE
-#define NICFILE "nics.txt"
+#define NICFILE "/var/tmp/nics.txt"
 #endif
 
 #ifndef __LITTLE_ENDIAN
 
Zuletzt bearbeitet:
Bei den groß geschriebenen Variablen Namen wird das Minus in Unterstrich umgewandelt, es muss also heißen RIS_LINUX_DIR, nicht RIS-LINUX_DIR.

Die Datei nics.txt könnte man als Konstante vorgeben, es gibt nicht so viele gängige Netzwerkkarten.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.