Anfängerfragen

Dieses Thema im Forum "FreeBSD - Allgemein" wurde erstellt von Midian, 9 September 2011.

  1. Midian

    Midian Member

    Registriert seit:
    24 Juni 2004
    Beiträge:
    152
    Ich habe mir vor ein paar Tagen zum ersten mal seit langem ein FreeBSD System aufgesetzt (8.2-RELEASE). Ausgangspunkt waren Probleme mit FreeNAS (http://www.bsdforen.de/showthread.php?t=26726), vielen Dank nochmal an alle die geholfen haben ;)

    Nun habe ich mein System so weit laufen, dass es das bietet, was ich brauche. Time Machine Server für meine Apple Kisten, iTunes-Server per firefly, und AFP Shares per netatalk/afpd.

    Zwar komm ich mit der Bedienung einigermaßen zurecht, dennoch habe ich ein paar Fragen die ich hier im Thread sammeln wollte (und selbigen daher unter Allgemein statt Netzwerk/Applikationen/.. untergebracht habe).

    1) powerd
    Hier (http://www.chruetertee.ch/blog/archive/2005/11/02/cpu-throttling-mit-freebsd-6-0.html) habe ich ein kleines Howto gefunden, wie ich meine CPU dazu bringe, bei wenig Leistung automatisch runterzutakten. Ich habe den powerd in der rc.conf entsprechend aktiviert, und dann auch manuell gestartet. Die Restlichen Anweisungen hatte ich nicht befolgt, dennoch zeigt mit sysctl:

    Code:
    [root@epoch /mnt/data]# sysctl dev.cpu.0.freq
    dev.cpu.0.freq: 224
    
    Kann ich daher davon ausgehen, dass das Modul cpufreq bereits geladen wurde, und ich selbiges nicht manuell eintragen musste?

    Code:
    [root@epoch /mnt/data]# kldstat -v| grep freq
    		328 cpu/cpufreq
    
    (Bin mit dem Thema Kernelmodule noch nicht so vertraut)

    powerd läuft mit den Standardeinstellungen. Ist das ausreichend, oder wäre es ratsam die Flags wie auf o.g. Seite angegeben manuell einzustellen?

    2) Festplatten

    Ich nutze 2 2TB Festplatten mit gmirror:
    Code:
    [root@epoch /mnt/data]# gmirror status
          Name    Status  Components
    mirror/gm0  COMPLETE  ad4
                          ad6
    
    Momentan schalte ich die Box von Hand aus, und lass sie per BIOS um 19:00 abends starten. Ich würde sie gerne dauerhaft laufen lassen, hätte dafür aber gerne, dass sich meine Festplatten abschalten, sofern keine Aktivität für 30-60 Minuten war.

    Wie muss ich das bei einem gmirror device einrichten? atacontrol o.ä. für beide Einzelplatten, oder für das Mirror-Device? Hat jemand ein gutes (aktuelles) Howto zum Thema HDD spindown parat, mit dem ein Anfänger wie ich weiterkommt? :)

    Ist es überhaupt ratsam, das System 24/7 laufen/schlafen zu lassen, oder sollte ich es um 7 abends einschalten, und per cronjob o.ä. nachts um 3 abschalten, da ichs dazwischen in der Regel eh nicht brauche ... ?

    3) Standby o.ä.?

    Kann ich weiterhin das gesamte System irgendwie in Standby schicken, und per LAN-Zugriff aufwecken? Wenn ja, geht das auch ohne WOL-Packet, oder brauch ich auf dem Client dann ein entsprechendes Programm um die Box aufzuwecken? (Im System steckt eine Intel PRO/1000PCI) Bringt das überhaupt was? (bei meiner letzten Messung noch unter FreeNAS 0.7 hat die Box 38W im Idle gebraucht, allerdings mit beiden HDDs an)

    4) netatalk Version

    Wie hier beschrieben (http://www.aisecure.net/2011/08/02/freebsd-and-os-x-lion-time-machine/) habe ich meine Time Machine eingerichtet. Dabei ist im verlinkten Beitrag die Rede von netatalk 2.2, sofern ich das aber beurteilen kann habe ich 2.1 installiert

    Code:
    [root@epoch /mnt/data]# pkg_version -v | grep netatalk
    netatalk-2.1.5,1                    =   up-to-date with port
    
    Wie komm ich auf Version 2.2? Wäre mir insbesondere wegen Lion wichtig, ich vermute das Lion Update ist in 2.2 enthalten .. ?

    5) packages ... ?

    Sollte man generell via packages oder lieber über ports installieren? Ich finde packages bequemer, schlicht weil dann nicht so ewig auf meiner eh schwachen Kiste kompiliert werden musste. Ich wollte von netatalk die zu installierende Version rausfinden, habe aber keinen Befehl gefunden, mit dem ich die Version des remote zur Verfügung stehenden Packages abfragen konnte. Bei mysql bspw. hab ichs dann so gemacht, dass ich im Browser auf (ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8.2-release/Latest/) gegangen bin, und nach 5 Minuten laden nach "mysql" gesucht habe, bis ich den Namen des Pakets hatte. Leider steht hier aber nicht unbedingt immer eine Versionsnummer (bei netatalk bspw.). Gibts eine Möglichkeit, die remote verfügbaren Packages zu durchsuchen (wenn man z. B. den Namen nicht kennt), oder auch die verfügbare Version anzuzeigen?
  2. Kamikaze

    Kamikaze Bottom Poster Mitarbeiter

    Registriert seit:
    26 Mai 2005
    Beiträge:
    10.170
    Ort:
    /Earth/Europe/Germany/Karlsruhe
    Mal zu 2)
    Das passt schon so. Ich würde aber noch ACPI Throttling abschalten, denn das bringt keinerlei messbaren Gewinn, macht das System aber unnötig träge.

    Folgende Einträge gehen dazu in die /boot/loader.conf:
    Code:
    hint.p4tcc.0.disabled=1
    hint.acpi_throttle.0.disabled=1
    Zu 5) kann ich auch noch etwas sagen, wenn es niemand anderes macht.
  3. cla

    cla IRC: Qyx

    Registriert seit:
    24 August 2005
    Beiträge:
    363
  4. Midian

    Midian Member

    Registriert seit:
    24 Juni 2004
    Beiträge:
    152
    Wie installiere ich dann das Update?
  5. cla

    cla IRC: Qyx

    Registriert seit:
    24 August 2005
    Beiträge:
    363
    Vorausgesetzt der Porttree ist aktuell, dann entweder manuell, oder eins der zahlreichen Tools zur Hilfe nehmen.

    Manuell:
    cd /usr/ports/net/netatalk
    make clean
    make
    make deinstall (altes deinstallieren)
    make reinstall (neues installieren)

    Oder mit Tools wie "portupgrade" oder "portmaster" (Ich hatte jahrelang "portupgrade" in Verwendung, bin aber jetzt seit kurzem mit "portmaster" glücklicher)

    Musst du aber auch erst aus dem Porttree nachinstallieren. Das erste mal also zwangsweise manuell, dann später alle weiteren Ports einfach mit "portupgrade -N netatalk" oder alternativ "portmaster net/netatalk"

    Weiteres hier:
    http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ports.html
  6. Kamikaze

    Kamikaze Bottom Poster Mitarbeiter

    Registriert seit:
    26 Mai 2005
    Beiträge:
    10.170
    Ort:
    /Earth/Europe/Germany/Karlsruhe
    Dann gibt es da noch pkg_upgrade ...
  7. Midian

    Midian Member

    Registriert seit:
    24 Juni 2004
    Beiträge:
    152
    Danke, hat super geklappt.

    Was meinst du? HDDs nicht in standby schicken? Ist neben der Stromfrage auch ne Sache der Lautstärke, daher hätte ich das schon gerne.

    Immer raus damit ... :)
  8. haegga

    haegga Member

    Registriert seit:
    9 August 2011
    Beiträge:
    110
    zu 1. Das beispiel ist für ein Notebook gedacht. Option -a steht für AC Power -b für Battery. Ich lasse auf meiner Desktop Kiste powerd mit folgenden Option laufen und bin damit voll zu frieden.

    /etc/rc.conf
    Code:
    powerd_enable="YES"
    powerd_flags="-a adp"
    
    wenn du dir mal anschauen willst was powerd macht:

    powerd -a adp -v

    Da kann man schön sehen wie er hin und her schaltet.


    Festplatten auschalten ist so eine sache unter FreeBSD (man möge mich korrigieren). System Platten hab ich nie geschaft länger als ca 5 Minuten ausgeschaltet zu lassen. Ein anfang wäre es /var/log /var/tmp /var/spool/mqueue (ich hab bestimmt ein Verzeichnis vergessen) auf ein tmpfs zu legen. Allerdings sind die Log Dateien dann nach einem Reboot weg, es sei den man baut sich dafür noch ein script. Swap darf auch nicht auf den Platten liegen.

    Standby, braucht man glück das man eine Saubere ACPI implementierung hat. Du solltest dir auf jeden fall vorher das FreeBSD Handbuch anschauen, bevor du damit Anfängt.

    http://www.freebsd.org/doc/handbook/acpi-debug.html

    und

    man acpiconf
  9. Midian

    Midian Member

    Registriert seit:
    24 Juni 2004
    Beiträge:
    152
    Die Systemplatte ist eine 16GB SSD, ich will nur die 2 HDDs schlafen legen. Die Systemplatte kann also an bleiben.
  10. pit234a

    pit234a Active Member

    Registriert seit:
    8 Juli 2006
    Beiträge:
    1.716
    als ich das probierte, hatte ich einen Raid mit fünf Platten aufgebaut.
    Das System ist noch immer ein FreeBSD7.2 und in der rc.conf hatte ich damals dieses:
    Code:
    #added because of new ataidle
    #        Note: ataidle options and rc startup settings
    #        have changed in version 2.
    #
    #        Add the following lines to /etc/rc.conf to enable ataidle:
    #
    #        ataidle_enable (bool): set to NO by default.
    #                Set to YES to enable ataidle.
    #        ataidle_devices: list of devices on which to run ataidle
    #        ataidle_adX: parameters to pass to ataidle(8)
    
    #ataidle_enable="YES"
    #ataidle_devices="ad6 ad8 ad10 ad12 ad14"
    #ataidle_ad6="-I 60 -S 120"
    #ataidle_ad8="-I 60 -S 120"
    #ataidle_ad10="-I 60 -S 120"
    #ataidle_ad12="-I 60 -S 120"
    #ataidle_ad14="-I 60 -S 120"
    Ich meine, du weißt schon, was davon auskommentiert war.
    Das benutzte Tool war also ataidle und es wirkte auf die fünf SATA Platten.
    Jedes mal wenn es wirkte, war anschließend mein Raid korrupt.

    Mit diversen Platten habe ich inzwischen unterschiedliches Verhalten erfahren. Gerne lasse ich die SSD in meinem kleinen Asus EEE schlafen und stelle fest, das eine dies erfolgreich kann und eine andere nicht. Gleiches System, gleicher Aufruf, unterschiedliches Verhalten: ich vermute, dass dies direkt an der verwendeten Platte liegt.
    Ohne Zweifel hängt der Erfolg auch grundsätzlich damit zusammen, ob Dateisystemoptionen genutzt werden, die ein ständiges, zyklisches Schreiben (oder auch nur Lesen) von der Platte erfordern. Sogenannte Journals oder Softupdates oder Zeitstempel oder gar Filesystemchecks im Hintergrund verbieten sich da natürlich von selbst.
    Um das zu vermeiden kannst du, wie schon beschrieben, tempfs nutzen. Besonders interessant fand ich aber immer, wie das bei FreeNAS auch gemacht wird, dass md-devices kreiert werden und im RAM gemountet werden. Unter Linux wurde do oft ein cramfs benutzt. Mit FreeBSD hatte ich nie die Muße, mir das mal genauer anzusehen.

    Der Raid5 mit gmirror verkraftete es womöglich nicht, wenn plötzlich und für ihn unerwartet eine Platte nicht mehr erreichbar war. Weil mir das Konzept eh nicht gefiel, wechselte ich zu ZFS und Zraid, unterließ es aber, die Platten schlafen zu schicken. Weil meine Sat-Receiver auf den Fileserver aufnehmen, landen dort auch mitten in der Nacht Daten, es gibt keinen dezidierten Ruhebereich.
  11. Flex6

    Flex6 New Member

    Registriert seit:
    25 Oktober 2004
    Beiträge:
    1.145
    Ort:
    Görlitz
  12. Kamikaze

    Kamikaze Bottom Poster Mitarbeiter

    Registriert seit:
    26 Mai 2005
    Beiträge:
    10.170
    Ort:
    /Earth/Europe/Germany/Karlsruhe
    Das Stichwort ist camcontrol, damit solltest du weiter kommen.
  13. Midian

    Midian Member

    Registriert seit:
    24 Juni 2004
    Beiträge:
    152
    Also hier steht was von:

    daher halte ich das für keine gute Idee, damit rumzufummeln...

    Also lass ich auch lieber mal die Finger davon ....


    Zum Thema afp hab ich jetzt leider noch eine Frage. Ich hab beobachtet, dass der afpd Prozess öfter auf 100% CPU geht, und davon auch nicht wieder wegzubekommen ist. Nach etwas rumprobieren hat sich rausgestellt, dass es am mDNSResponder liegt. Schalte ich den ab, bekomme ich das 100% Problem nicht. Allerdings habe ich natürlich auch keine Anzeige des Servers im Finder, iTunes etc.
    Ich hatte gehofft, dass der kürzliche Patch 320.5.1 Abhilfe schafft, das war leider nicht der Fall.
    Weiß da jemand Rat? Ich wurde den mDNSResponder doch schon gerne wieder aktivieren.
  14. pit234a

    pit234a Active Member

    Registriert seit:
    8 Juli 2006
    Beiträge:
    1.716
    Nicht direkt. Meine Version ist ja schon deutlich älter und als ich gerade nachsehe, entdecke ich einige andere Merkwürdigkeiten auf meinem Fileserver, die mich nun mehr beschäftigen und weshalb ich das nicht genau nachsehen möchte. Aber: auch mit meiner Version gab es immer Probleme und meist verabschiedet sich der Dienst nach einiger Zeit, so dass ich mir angewöhnt habe, ihn gar nicht zu nutzen.
    Das "Sehen" des Servers, als die Anzeige durch ein entsprechendes Symbol auf dem Mac passiert irgendwie davon unabhängig und auch recht unzuverlässig trotzdem. Auf manchen Macs wirds angezeigt, auf anderen nicht.
    Das Problem interessierte mich nicht weiter und das Mounten über "mit Server verbinden" halte ich insgesamt eh für besser und direkter.

    Also wäre mein Tip: im Zweifel ohne mDNSResponder und gar nicht lange rum machen.
  15. Midian

    Midian Member

    Registriert seit:
    24 Juni 2004
    Beiträge:
    152
    Nunja, klar kann ichs einfach nicht benutzen. Aber ich wills halt benutzen ;)
  16. pit234a

    pit234a Active Member

    Registriert seit:
    8 Juli 2006
    Beiträge:
    1.716
    http://blog.lostpackets.de/2008/10/06/freebsd-im-apple-netz/

    hast du das gemacht?
    Die Syntax in dem afp.service scheint mir aber etwas verrutscht zu sein.
    Ich glaube, es sollte eher etwa so aussehen, kenne mich damit aber nicht wirklich aus:
    Code:
    <?xml version="1.0" standalone='no'?><!--*-nxml-*-->
    <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
    <service-group>
     <name replace-wildcards="yes">%h</name>
      <service>
      <type>_afpovertcp._tcp</type>
      <port>548</port>
      </service>
     <service>
      <type>_device-info._tcp</type>
      <txt -record>model=bsd</txt>
      <port>0</port>
     </service>
    </service-group>
    
    die wichtigere Info scheint mir dabei aber, dass nicht der mDNSResponder (net/mDNSResponder) benutzt wird, sondern ein Dienst Namens nss_mdns (dns/nss_mdns).
    Im Nachhinein kann ich mich auch an sowas erinnern, dass der mDNSResponder nicht mehr genommen wird. Das ist mal wieder so eine blödsinnige Aussage, wie sie häufiger bei mir vorkommen! Vielleicht findest du was Genaueres dazu.

    Aber, wie schon erwähnt, bei meiner älteren Version jedenfalls, funktioniert das trotzdem nicht gescheit, ob ich will, oder nicht. ;)
  17. Midian

    Midian Member

    Registriert seit:
    24 Juni 2004
    Beiträge:
    152
    Hm also diese xml-Konfiguration gehört mE zum avahi demon. Der net/mDNSResponder ist der "offizielle" von Apple (http://de.wikipedia.org/wiki/Zeroconf), daher hatte ich den eigentlich vorgezogen.

    Hat jemand pros/cons bzw. Erfahrungswerte mit beiden, und kann mir zu einem der beiden raten? Hätte nichts gegen avahi, aber wenn sichs nichts gibt würde ich lieber den "offiziellen" Weg gehen, wobei hierfür auch interessant wäre, inwiefern der besser gepflegt wird als der avahi Dienst.
  18. -Nuke-

    -Nuke- Member

    Registriert seit:
    25 Juli 2004
    Beiträge:
    498
    Also ich habe netatalk komplett ohne den ganzen ZeroConf-Kram installiert (macht das System auch >deutlich< schlanker). Es fehlt dann halt nur, dass er den Server automatisch im Netzwerk findet.

    Hat man aber, z.B. für TimeMachine, ein mal den Server eingerichtet (Laufwerk manuell mounten per Apfel+K und dann afp://<ip>/<freigabe>), versucht TimeMachine diesen auch immer dort zu finden, mountet die Freigabe, sichert die Daten und unmountet.