PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Shuttle K45: ubuntu-server-8.04.1 (WOL usw.)



gerard
13.09.2008, 10:34
Hallo,
ich möchte gerne meine Erfahrungen mit dem Bau meines kleinen Server mit ubuntu 8.04 (server) weitergeben.

Hardware:
Gehäuse: Shuttle K45
CPU: Intel Celeron E1200 (1,6GHz 35W)
RAM: 1GB Aeneon PC2-667
HD: 750GB WD CaviarGP SATA2 (WD7500AACS)
Stromverbrauch will ich später noch messen und werde ich nachreichen (Messgerät habe ich verborgt)

Bios-Einstellungen-Änderungen:
Standard - Halt On: All, But Keyboard (wird Server ohne Tastatur)
Integrated Peripherals - IDE - PCI IDE: Disabled (keine IDE-Geräte)
Integrated Peripherals - Device - HD Audio: Disabled
Integrated Peripherals - IO - Serial und Parallel: Disabled
Power Management - ACPI: S3 (STR) (war Default glaube ich)
Power Management - Power on by Ring: Enabled (für WOL)

Ubuntu-Installation:
Installation über einen exteren USB-Brenner von LG ging ohne Probleme.
Ein paar Passwört ausdenken und gewünschte Basis installieren. Ich habe ein LVM-System mit Samba, OpenSSH und LAMP gewählt.

WOL-Aktivierung:
http://wiki.ubuntuusers.de/Wake_on_LAN
Die On-Board-Ethernetschnittstelle (eth0) habe ich mit Möglichkeit 3 (aber mit "up" anstatt "pre-down") auf "wol g" gesetzt.
Eigentlich wollte ich dass der Server bei jedem Zugriff aufwacht und nicht durch ein Magic-Paket geweckt werden muss. Mit der Option "wol p" wacht der Rechner jedoch sofort wieder auf - anscheinen gibt es immer irgendeinen Netzverkehr.
halt-script habe ich wie beschrieben angepasst: halt (oder shutdown -h now) funktioniert und Rechner wacht per Magic-Paket wieder auf.
Bem.: die Netzwerkkarte kann ich in /proc/acpi/wakeup nirgends finden.

Hibernate bzw. Suspend:
Ich wollte acpi-support mit dem Script /etc/acpi/suspend.sh bzw. hibernate.sh verwenden doch konnte ich danach den Rechner nicht mehr per WOL wecken. (bei suspend (RAM) hat das Aufwachen überhaupt nicht mehr funktioniert - Rechner ist gestartet, Power-LED hat nicht geleucht und hängt)
Auch über das hibernate-Paket und pm-utils habe ich es nicht geschafft.

Erfolg brachte das uswsusp-Paket:
http://wiki.ubuntuusers.de/uswsusp
Ich habe alles nach dieser Anleitung (ohne den HAL-Dingen) gemacht und es funktioniert!
s2disk speichert den aktuellen Zustand und mit WOL kann der Rechner wieder korrekt geweckt werden.
Weitere Info dazu auch: http://en.opensuse.org/S2disk

Jetzt möchte ich noch schaffen den Rechner automatisch schlafen zu legen wenn keine Netzaktivität über eine bestimmte Zeit war bzw. eine Möglichkeit dies aus der Ferne zu erledigen.
Zum Problem der Netzaktivität möchte ich dann folgendes Script probieren:
http://forums.slimdevices.com/showthread.php?t=48514&page=2
Ich werde weiter berichten...

Frage habt ihr die 2 letzten Dinge bereits irgendie geschafft?

gerard
15.09.2008, 12:34
Wie versprochen kommt hier der Stromverbrauch im Leerlauf: 43W
(nicht mit einem geeichten Messgerät gemessen, sollte aber ungefähr hinkommen)

Murph
16.09.2008, 12:49
Hallo

Habe so ein änliches "Problem" mit WOL.
Siehe hier http://forum.nas-portal.org/showthread.php?t=2944

Hast Du mal versucht die Netzwerkkarte auf Unicast- bzw. Multicasttraffic
wol p|u|m|b|a|g|s|d...
Set Wake-on-LAN options. Not all devices support this. The
argument to this option is a string of characters specifying
which options to enable.
p Wake on phy activity
u Wake on unicast messages
m Wake on multicast messages
b Wake on broadcast messages
a Wake on ARP
g Wake on MagicPacket(tm)
s Enable SecureOn(tm) password for MagicPacket(tm)
d Disable (wake on nothing). This option clears all previous
options.
reagieren zu lassen?
Wenn ein Streamingclient per unicast oder multicast zugreift müsste dieser doch irgendwas schicken,in Form einer Anfrage oder so......:nixweiss: oder sehe ich das falsch?
Ich hätte halt auch gerne das mein server auf Netzerktrafiic reagiert und suche deshalb nach einer Lösung.

Bist Du mit dem script um an der nic zu lauschen weiter gekommen?
Habe leider überhaupt keine Ahnung von scripts schreiben :frown:

pico78
16.09.2008, 13:15
was denn da an anfragen kommt, sowas müsstest du ja per tcpdump oder sowas mal mitloggen...

Murph
16.09.2008, 22:37
Da waren sie wieder,meine drei Probleme.:mad:
Merkwürdigerweiße kommen keine Magic Pakete bei meinem server an!
Ich kann mich über die Konsole einloggen und machen und tun aber WOL will nicht!!!!!

Hier mal mein Netzwerk:
Router - FritzBox 7170 mit Freetz 29.04.57
Ubuntu Server 8.04.01 - static IP 192 168 1 100
Ubuntu Desktop 8.04 - static IP 192.168.1.222
XBOX - static IP 192.168.1.50
Mythtv - static IP 192.168.1.70

Hier noch die Ausgabe meiner NIC vom Ubuntu server:

Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pg
Wake-on: g
Current message level: 0x000000c5 (197)
Link detected: yesDachte erst es liegt an der FritzBox,kann aber eigentlich nicht,da ja WOL von der XBOX zum Mythtv-Rechner funktioniert!

Wie gesagt,ich habe tcpdump lauschen lassen,es kommt nix an.
Nur wenn ich irgenwas über ssh eingebe passiert auch was!

Seltsam,seltsam.Jemand eine Idee?

gmeyer
16.09.2008, 22:42
von wo nach wo schickst die Pakete ?
WOL-Broadcasts werden nicht geroutet, d.h. nur im gleichen Subnetz weitergleitet.

Murph
17.09.2008, 09:49
Eben,das ist es ja was mir nicht klar ist warum wol nicht funktioniert.
In diesem Fall schicke ich das Magic Paket von meienm Ubuntu Desktop System auf den Server der im gleichen Subnetz (255.255.255.1) hängt!

Wie gesagt von der XBOX zum Mythtv,auch im gleichen Subnetz,geht´s.:nixweiss:

Müsste heute Abend ev. mal ausprobieren ob´s klappt wenn ich von der XBOX aus das Päckchen schicke.:confused:
Wär dann schon ein Ding!!!!

Da fällt mir noch ein,wenn´s am Subnetz hängen sollte dürfte ich doch auch nicht mit ssh zugreifen können oder?
Korrigiert mich bitte wenn ich falsch liege!

gmeyer
17.09.2008, 19:58
Was meinst du mit Netzmaske 255.255.255.1 ?
Das geht nicht. Die Bits müssen zusammenhängen, also 255.255.255.0, 255.255.255.128 ...
Zwei Rechner sind dann im gleichen Subnetz, wenn ihre IP (als long-Zahl) verundet mit der Netzmaske den gleichen Wert ergibt.

pico78
17.09.2008, 20:55
soooo... jetzt nur kurz zur aufklärung bevor ihr weiter über zwei verschiedene sachen redet:

Ip-Adressraum, dein Nas hat laut deiner liste oben folgende IP:192.168.1.100

Zu jeder IP gehört noch eine Subnet-Maske, diese muss erstmal gleich sein solange du keinen Managebaren Router hast z.B.: 255.255.255.1

wenn du einen Router hast der ne weiterleitung in andere Subnetze erlaubt, dann hat man zumeist eine DMZ- Funktion im Router... dieser würde dann aber zwingend einen zweiten Router erfordern... (glaub ich :) )


also das einfachste szenario ist doch dieses:


Ein Router, und an diesem hängen alle Clients und dein Server

alle haben eine Static IP

hast du in deiner aufgebohrten fritz-box-software mal geschaut ob du da spezielle routing-optionen einstellen kannst, bzw. eingestellt hast??

achja, btw. deine Netzwerkkarte unterstützt nur 2 arten von WOL, p + g, alles andere brauchste garnicht erst testen

Murph
18.09.2008, 09:49
Das wäre meine nächste Frage gewesen wegen der Funktionen der nic.
Wenn ethtool eth0 p+g ausgiebt dann unterstüzt der Anschluss das auch oder?

Soooo
Wegen subnetz, habe gestern abend nochmal bei allen Rechnern nachgeschaut sind alle im selben subnetz!
Haben alle eine statische IP nach dem Motto 192.168.1.xxx,Broadcast 192.168.1.255,Subnet 255.255.255.0(hab gestern versehendlich xxx.1 geschrieben)sogar die DNS Server sind gleich eingetragen.

Hab gestern Abend auch nochmal probiert von der XBOX aus den Rechner aufzuwecken was aber auch nicht ging!
Wie gesagt der Mythtv Rechner lässt sich wecken!

Ich überlege gerade ob ich mal die NIC aus dem Mythtv in den Ubuntu Server stecke und es dann mal probiere.

Ev. stimmt sowieso irgendwas nicht mit dem Ding,gestern konnte ich auch nicht auf die shares zugreifen :mad:

Sehr mysteriös das ganze.

Achja,in der Frizbox ist nichts geroutet und ja alle Clients hängen am gleichen Router.
Halt,ich hab noch ein switch dazwischen weil ich ertsten Stock nur 2 Anschlüsse hab!
Und i.M. brauch ich eben 3,wegen dem Server.

F3i3rFly0r
29.01.2009, 23:21
Hi,
um auf deine ursprüngliche Frage zurückzukommen, ich mache den shutdown so:


#!/bin/bash
#Anzahl Versuche
Versuche=3
#Datei
Datei="/tmp/shutdowntool-status"
lockdatei="/tmp/lock.datei"
#Pruefen ob Datei besteht, ggf anlegen
if [ ! -f "$Datei" ] ; then
echo "Status=$Versuche" > $Datei
fi
# Pruefen wieviele Verbindungen bestehen
Verbindung=`netstat -t | grep -c tcp`
# Wenn 0 Verbindungen bestehen:
date +%Y-%m-%d_%H.%M
# echo $Verbindungen
if [ $Verbindung -eq 0 ] ; then
echo "Derzeit kein Netzwerkzugriff"
. $Datei
let Status=$Status-1
if [ $Status -eq 0 ] ; then
echo "Going Down"
rm $Datei
. $lockdatei
if [ $Lock -eq 0 ] ; then /sbin/shutdown -h now
else
echo "NFS Filesysteme gemountet, breche ab."
fi
else
echo "Noch $Status Versuche bis zum Shutdown"
echo "Status=$Status" > $Datei
fi
else
echo "Derzeit besteht Netzwerkzugriff"
rm $Datei
fi

Das Skript wird alkle zehn minuten ausgeführt, und überprüft ob netzwerkzugriff besteht, wenn nicht zählt es von 3 bis 1 also 3 versuche lang, bis es den rechner herunterfährt. Wenn die Clients die Freigaben (über NFSv4) mounten erhöht das mountscript auch den zähler in der Lockdatei, so daß der server nicht herunterfährt solange ein Client was gemountet hat aber keine Zugriffe stattfinden, das unmountscript zählt den zähler natürlich wieder runter...