Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Boot-CD bzw. -Stick mit Linux zum Schnelltesten der Hardware

Frage Linux Linux Tools

Mitglied: Codehunter

Codehunter (Level 2) - Jetzt verbinden

01.05.2009, aktualisiert 21:07 Uhr, 6092 Aufrufe, 9 Kommentare

Hallo alle zusammen,

ich suche ein Mini-Linux das von CD oder USB-Stick booten kann und die vorgefundene Hardware in einer Art Bericht in der Konsole bzw. noch besser auf ttyS0 ausgibt.

Ich möchte damit einen Schnelltest für PCs realisieren. Ziel soll es sein, daß man in kurzer Zeit mehrere Rechner auswerten kann ohne daß man viel auf dem Tastenkasten rumhacken muss. Am besten so, daß nur der Prüfling per Nullmodemkabel mit dem Auswerterechner verbunden wird, Boot-CD rein und ab die Post. Auf dem Auswerterechner hab ich ein Windowsprogramm laufen das alles mitschneidet was auf COM1 rein kommt. Also z.B. den Schnelltest-Report vom Test-Linux.

Ihr müsst euch das so vorstellen, daß ich palettenweise gebrauchte Rechner habe. Nach einer kurzen Sichtprüfung (alles was älter als Pentium 4 ist wird geshreddert) müssen die übrig gebliebenen Rechner mit ihrer Ausstattung erfasst werden. Die ermittelten Daten sollen in einer Datenbank gesammelt werden, deshalb der Auswerterechner auf dem ein selbstentwickeltes Datenbank-Frontend läuft.

Ich benötige folgende Daten des Prüflings:

Prozessor (ID, Vendor, Stepping, Takt, Multiplikator etc.)
Mainboard (BIOS-Vendor, Vendor, System-ID etc.)
Chipsatz (Vendor etc.)
RAM-Größe und Anzahl der Module (evtl. ein paar SPD-Daten, Durchsatz etc.)
Graka (Vendor, Speicher etc.)
HDD-Controller (IDE/SATA/SCSI, RAID etc.)
Festplattentyp und -größe (evtl. U/min, Durchsatz etc.)
Art des optischen Laufwerks (CD-RW/-ROM DVD-RW/-ROM, Bluray-RW/-ROM etc.)
USB (1.0, 1.1, 2.0)
Firewire vorhanden
Sound (Vendor etc.)
Parallele Schnittstelle vorhanden
Serielle Schnittstelle vorhanden
Netzwerk (10/100/1000 MBit
Vendor etc.)
Bluetooth
WLAN

und was es sonst noch an interessanten Schnittstellen gibt.

Im Prinzip gibt es ja diverse Linux-Progs die solche Infos ausgeben können (cpuid, hdparm z.B.) darum denke ich könnte man das meiste mit einem Script erledigen. Vielleicht hat ja schon mal jemand sowas gebastelt, man muss ja nicht das Rad neu erfinden. Da ich aber bei weitem kein Linux-Experte bin könnte ich ein paar Tips gebrauchen.

Grüße
Cody
Mitglied: 75823
01.05.2009 um 23:17 Uhr
Hmmm... diese Problem hatte ich nie, dies wegen kann ich dir mit vertilgen Tool oder Script nicht helfen. Ein paar Vorschläge für den Script vielleicht mache ich doch:

Prozessor (ID, Vendor, Stepping, Takt, Multiplikator etc.)

cat /proc/cpuinfo

Mainboard (BIOS-Vendor, Vendor, System-ID etc.)

dmidecode

Chipsatz (Vendor etc.)

lspci

RAM-Größe und Anzahl der Module (evtl. ein paar SPD-Daten, Durchsatz etc.)

dmidecode und/oder free -m

Graka (Vendor, Speicher etc.)

lspci und grep -i VideoRam /var/log/Xorg.0.log

HDD-Controller (IDE/SATA/SCSI, RAID etc.)

lspci

Festplattentyp und -größe (evtl. U/min, Durchsatz etc.)

hdparm -i /dev/sg[0-4]

Art des optischen Laufwerks (CD-RW/-ROM DVD-RW/-ROM, Bluray-RW/-ROM etc.)

hdparm -i /dev/sg[0-4]

USB (1.0, 1.1, 2.0)

lspci

Firewire vorhanden

lspci

Sound (Vendor etc.)

lspci

Parallele Schnittstelle vorhanden

k.a.

Serielle Schnittstelle vorhanden

k.a.

Netzwerk (10/100/1000 MBit Vendor etc.)

lspci

Bluetooth

lsusb ? oder dmesg | grep "Bluetooth: HCI device and connection manager initialized"

WLAN

lspci

Fast die Hälfte kann man mit den dmesg rausfiltern.
Bitte warten ..
Mitglied: Codehunter
03.05.2009 um 00:28 Uhr
Danke! Basierend darauf hab ich mal nach fertigen Scripten gesucht und bin letztendlich bei lshw hängen geblieben. Das ist zwar kein Script sondern ein Programm, macht aber alles was ich brauche und kann den Kram sogar als XML ausgeben. Per Umleitung landet das dann auf ttyS0 und in meinem Windows-Proggi. Gefunden habe ich das Tool auf der Debian-Rescue-Live-CD. Das einzige was mich da stört ist die sehr lange Bootzeit bis man mal dahin kommt lshw zu starten. Außerdem die Eigenheit von Debian, beim Booten in einer Endlosschleife zu landen wenn kein Netzwerk bzw. kein DHCP verfügbar ist. Da werde ich wohl oder übel noch ein wenig an den Init-Scripten feilen müssen.
Bitte warten ..
Mitglied: 75823
03.05.2009 um 10:17 Uhr
Du kannst folgendes machen:
Installiere Bootloader syslinux auf ein USB-Stick
Nimm ein Kerenl von debian oder ubuntu zusammen mit initrd.
Entpake initrd und ändere den init script.
Nimm statisch kompilierte lshw. (fals du schaffst nicht selbst es zu kompilieren kann ich dir schicken).
Packe wieder initrd zusammen mit lshw.
Dann hasst du dein eigenes minidistro, ungefähr 10MB groß mit Startzeit 10 Sekunden.

Klingt nach kleines Abenteuer ;)
Bitte warten ..
Mitglied: Codehunter
03.05.2009 um 15:32 Uhr
Das wäre ja suuuuper Ich denke mal, wenn das bootfähig aufm Stick ist dann ist der Weg zu einem bootfähigen ISO-Image auch nicht mehr weit. Ist glaub ich doch alles irgendwo eine Floppy-Emulation. Denn ich denke ich werd alle drei Bootmedien brauchen denn nicht jeder Rechner hat bootfähiges USB oder ein CD-ROM-Laufwerk. Aber eine von den drei Möglichkeiten ist eigentlich immer vorhanden.

Ich bin wie gesagt kein Linux-Experte. Vor Jahren habe ich mal einen Kernel bei Suse 5.irgendwas streng nach Handbuch kompiliert um den Soundblaster zum Laufen zu kriegen. Der blieb danach zwar weiterhin stumm aber dafür war der Tintenspucker auf einmal inkontinent und hat seine Tinte ins Druckerinnere laufen lassen. Ab da hab ich die Finger vom Kompilieren unter Linux gelassen ^^

Also ich sag mal so: Ich hab keine Hemmungen sowas selbst zu basteln. Allerdings fehlen mir bei Linux die Grundlagen, wie da was zusammenhängt. Darum bräuchte ich ein kleines Tutorial wie man das anstellt was du vorgeschlagen hast.

Was ich mich noch frage: lshw bedient sich ja diverser externer Tools wie lspci, hdparm usw. Wieviel vom normalen Debian-Bootablauf kann man da wegrationalisieren ohne daß lshw an Funktionalität verliert (Stichwort Treiber etc.)?
Bitte warten ..
Mitglied: 75823
03.05.2009 um 16:27 Uhr
Ich bin gerade unter dem Studiendruck, dies wegen werde ich wahrscheinlich nur gelegentlich antworten. Meistens musst selbst machen, ich gebe nur die Stichworts oder Links... ich will doch das du auch selbst was lernst :D

Du brauchst ein Distro damit du arbeiten kannst. Ich nutze Ubuntu dies wegen schlage ich dir das selbe vor.

Statischgelinkte lshw brauch nichts außer kernel, aber für eine normale minisystem brauchst du busybox. Busybox wird auch bei initrd benutzt. Wie man initrd entpackt kannst du überall finden z.B. hier:

http://wiki.openvz.org/Modifying_initrd_image
Bitte warten ..
Mitglied: 75823
04.05.2009 um 09:41 Uhr
Ein Prototyp habe gerade gemacht. Das init von ubuntu initrd habe ich gekürzt und ein paar Zeilen eingefügt:

01.
 
02.
#!/bin/sh 
03.
 
04.
echo "Loading, please wait..." 
05.
 
06.
[ -d /dev ] || mkdir -m 0755 /dev 
07.
[ -d /root ] || mkdir -m 0700 /root 
08.
[ -d /sys ] || mkdir /sys 
09.
[ -d /proc ] || mkdir /proc 
10.
[ -d /tmp ] || mkdir /tmp 
11.
mkdir -p /var/lock 
12.
echo "mounting sysfs and procfs" 
13.
mount -t sysfs -o nodev,noexec,nosuid none /sys 
14.
mount -t proc -o nodev,noexec,nosuid none /proc 
15.
 
16.
# Note that this only becomes /dev on the real filesystem if udev's scripts 
17.
# are used; which they will be, but it's worth pointing out 
18.
mount -t tmpfs -o mode=0755 udev /dev 
19.
[ -e /dev/console ] || mknod -m 0600 /dev/console c 5 1 
20.
[ -e /dev/null ] || mknod /dev/null c 1 3 
21.
> /dev/.initramfs-tools 
22.
mkdir /dev/.initramfs 
23.
echo "creating nodes" 
24.
mknod /dev/mem c 1 1 
25.
mknod /dev/ttyS0 c 4 64 
26.
mknod /dev/ttyS1 c 4 65 
27.
 
28.
echo "lshw" 
29.
/bin/lshw > /dev/ttyS0 
30.
 
es braucht noch Bearbeitung aber es funktioniert. Ich habe unter qemu getestet.
Bitte warten ..
Mitglied: Codehunter
06.05.2009 um 11:39 Uhr
Entschuldige daß ich mich erst jetzt wieder melde, hatte ne Menge um die Ohren...

Ich habe erstmal eine frische Kubuntu 9.04 aufgesetzt. Erstens weil ich die neue eh mal ausprobieren wollte und zweitens weil sich das ja in dem Zusammenhang anbietet.

Busybox kenne ich von den ganzen Embedded-Kisten (WLAN etc.)

Ich habe hier eine schöne Anleitung gefunden zu dem Thema: http://wiki.unixboard.de/index.php/Bootable_USB_Key Kannst du da mal drüberschauen ob ich das so anwenden kann mit deinem init-Script oder ob in der Anleitung was enthalten ist das mit meinem Projekt kollidiert.

Was ich noch ergänzen möchte: Ich hätte auf dem Stick gern einen schreibbaren Bereich (eigene Partition z.B.) oder ist das Boot-File-System auf dem Stick generell writable?

Lieben Dank!
Bitte warten ..
Mitglied: 75823
06.05.2009 um 12:34 Uhr
Mit diesen Anleitung kannst du ein bootloader auf Usbstick installieren und eine fertige kernel mit initrd nutzen. Aber es ist schon mal gut für den Anfang, Wen du das schaffst dann kann man nur initrd korrigieren.
Bitte warten ..
Mitglied: Codehunter
06.05.2009 um 13:30 Uhr
Gudi, ich meld mich dann wieder wenn ich mir nen neuen Stick besorgt habe (mein Testsubjekt will nimmer) und ich das Ding bootfähig bekommen habe.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows Installation
PXE Boot-Von CD Starten (2)

Frage von STITDK zum Thema Windows Installation ...

Speicherkarten
USB-Stick laut Windows und Linux belegt, aber kein Inhalt zu sehen (5)

Frage von Pago159 zum Thema Speicherkarten ...

Hardware
gelöst CD-Funktion von USB-Stick entfernen (6)

Frage von honeybee zum Thema Hardware ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...