Womit FreeBSD "laptopfähig" machen?

guru

Well-Known Member
Grüßeuch,

Ich habe hier ein ThinkPad X220 und möchte darauf - natürlich - gerne FreeBSD aufsetzen, doch dazu einige Fragen.

Wenn ich keine Desktopumgebung nutze, womit kann ich folgendes realisieren?
  • WiFi: Per GUI vorhandene Netzwerke scannen, damit verbinden, Passwörter eingeben, Status angezeigt bekommen etc.
  • Akku: Womit den Ladestatus des Akkus anzeigen lassen?
  • Helligkeit und Sound regulieren (Falls die Shortcuts mit Fn+Pos1/Ende bzw. die extra Lautstärkeregler nicht funktionieren
  • Suspend/Resume
  • Und das leidige USB-Automount (auch NTFS)
Nicht wichtig bzw. relevant sind die Plug&Play-fähigkeit eines externen Monitors sowie Darstellung der Lüftergeschwindigkeit.

Ich habe keine Erfahrung mit BSD auf Notebooks, das Apple-Zeug möchte ich verkaufen; Die X220 seien wohl durchgehend gut unterstützt (https://wiki.freebsd.org/Laptops/Thinkpad_X220)

Zurzeit benutze ich Artix GNU/Linux (Arch-Derivat mit OpenRC) und FVWM, das ganze war vorkonfiguriert und ich benutze die Einstellungsprogramme von Network und Power, die mit XFCE daherkamen, sowie alsamixer.

Zusätzlich ist auf der 320er-HDD Windows 7 installiert, was ich gerne dort belassen würde ... man kann ja nie wissen. Auf einem HP 6550b hat der Bootloader wunderbar ootb funktioniert, da wird das diesmal nicht anders sein.

Welche Software nutzt ihr? Es müssen keine Deskbars, Leisten, oder dgl. sein. Einfache network-manager oder power-manager oder automount-manager (falls es sowas gibt) würden wunderbar reichen. Als WM wird FVWM oder MWM zum Einsatz kommen, die sind so schön minimalistisch und hochgradig angenehm.

Ich muss auch betonen, dass ich mit dieser Software keinerlei Erfahrung habe, da ich fast ausschließlich Standrechner benutze, da sind Automount, Akkulaufzeit, WiFi, Suspend/Resume, Helligkeit und Lautstärke etc. kein Thema :D

Danke soweit

guru
 
Mein gutes, altes und inzwischen physisch ziemlich mitgenommenes X220 ist das einzige Laptop, auf dem ich noch FreeBSD habe und es läuft absolut einwandfrei inklusive zuverlässigem Syspend / Resume und voller 3d-Beschleunigung ohne irgendwelchem Gefrickel. :) Ich habe es gerade nicht hier, daher einmal aus dem Gedächtnis geschrieben:
  • Die solltest das 'acpi_ibm' Kernelmodul laden. Das beinhaltet einen Großteil der Thinkpad-Unterstützung und vor allem funktionieren damit die Funktionstasten wie Hintergrundbeleuchtung, Thinklight, Bluetooth an- und ausschalten und so weiter direkt ohne Konfiguration. Ich bin mir nur gerade nicht sicher, ob das auch für die die Lautstärke gilt oder ob die nur die normalen XFree86-Scancode generierten.
  • Um eine gute Akkulaufzeit zu erreichen sollte powerd (oder besser powerd++ aus den Ports da er effizienter ist) laufen und die Nutzung von C-States in der rc.conf sollte aktiviert werden. Wahre Wunder, zum Preis einer leicht geringeren Grafikleistung, bringt auch rc6 Powersave für die GPU. Die genauen Einstellungen kann ich heute Abend nachschauen.
  • Suspend / Resume funktionierten ohne weitere Einstellungen einfach so. Generell ist es unter FreeBSD wesentlich zuverlässiger wenn X11 läuft.
  • In Sachen Automount gibt's ja irgendwie die Tendenz immer neue, tolle, angeblich viel bessere Lösungen als alles, was es jemals vorher gab zu basteln, aber ich bin da pragmatisch und nutze einfach das seit einiger Zeit in FreeBSD integrierte autofs(4): https://www.freebsd.org/doc/handbook/usb-disks.html (Punkt 17.4.2).
  • Die verbleibende Akkukapazität und die Restlaufzeit wird durch die Firmware bestimmt und ich meine durch ein sysctl ausgegeben. Zumindest sollten alle gängigen Tools dafür sie ausgeben können, ich nutze einfach den "Battery Indicator" vom x11/tint Panel.
 
Grüßeuch,

Ich habe hier ein ThinkPad X220 und möchte darauf - natürlich - gerne FreeBSD aufsetzen, doch dazu einige Fragen.
FreeBSD 11.1 läuft ziemlich super auf dem X220.

Wenn ich keine Desktopumgebung nutze, womit kann ich folgendes realisieren?
  • WiFi: Per GUI vorhandene Netzwerke scannen, damit verbinden, Passwörter eingeben, Status angezeigt bekommen
Das geht mit
Code:
bsdconfig wlan

.
  • Akku: Womit den Ladestatus des Akkus anzeigen lassen?
Code:
acpiconf -i0
  • Helligkeit und Sound regulieren (Falls die Shortcuts mit Fn+Pos1/Ende bzw. die extra Lautstärkeregler nicht funktionieren
Helligkeitsregelung geht in Hardware, für die Lautstärkeregelung müsstest du dir etwas basteln.
Ob das ohne X geht, weiß ich nicht. Mit gestartetem X problemlos.

  • Und das leidige USB-Automount (auch NTFS)
Das geht mit dem automountd(8).

Welche Software nutzt ihr? Es müssen keine Deskbars, Leisten, oder dgl. sein. Einfache network-manager oder power-manager oder automount-manager (falls es sowas gibt) würden wunderbar reichen. Als WM wird FVWM oder MWM zum Einsatz kommen, die sind so schön minimalistisch und hochgradig angenehm.

Fluxbox :)
 
Hallo @guru

Und das leidige USB-Automount
Das geht mit der Kombi dsbmd/dsbmc-cli gut. Bei Interesse kann ich Dir Details posten.

WiFi: Per GUI vorhandene Netzwerke scannen, damit verbinden, Passwörter eingeben, Status angezeigt bekommen etc.
Da gibt es networkmgr, in welchem Zustand das zur Zeit ist, kann ich mangels Erfordernissen (nutze nur Lan und eine einzige Wifi Quelle mit meinem Notebook, nämlich den Hotspot meines Smartphones) nicht sagen. Ich werde es mir aber auch mal wieder ansehen.

Zumindest sollten alle gängigen Tools dafür sie ausgeben können, ich nutze einfach den "Battery Indicator" vom x11/tint Panel.
@guru falls Du Dich noch nicht festgelegt hast (und da @Yamagi tint erwähnt), kann ich Dir eine Kombi aus openbox (oder anderer Windowmanager) und tint2 sehr empfehlen. tint2 ist dermaßen hochkonfigurabel (das ist ähnlich "schlimm" wie bei den Systemsettings von KDE :D) und das alles per Mausklickerei. Das Ding macht süchtig.

Mein altes Notebook ist übrigens das Thinkpad R500, einfach nicht kaputt zu bekommen.

Kleiner Tipp: Falls Dein Notebook einen ähnlichen Intel-Wlan-Chip verbaut hat, wie mein TP R500 und beim Aktivieren herum zickt, hilft die Option -ht40, die packst Du wie folgt in die /etc/rc.conf
Code:
wlans_iwn0="wlan0"
ifconfig_wlan0="SYNCDHCP WPA -ht40"

Viele Grüße
Holger
 
n Sachen Automount gibt's ja irgendwie die Tendenz immer neue, tolle, angeblich viel bessere Lösungen als alles, was es jemals vorher gab zu basteln, aber ich bin da pragmatisch und nutze einfach das seit einiger Zeit in FreeBSD integrierte autofs(4): https://www.freebsd.org/doc/handbook/usb-disks.html (Punkt 17.4.2).

Also ich habe das nie richtig zum Laufen bekommen, ich meine dergestalt, dass zwei USB-Sticks oder gar eine CD gemountet wurden. Zudem mountet autofs nur, wenn man auf das Verzeichnis /media zugreift. Mit diesem Verhalten können die verschiedenen Dateimanager nichts anfangen.

Die Empfehlung von @holgerw, DSBMD/DSBMC zu verwenden, ist daher durchaus richtig. Willst Du aber unbedingt KDE, musst Du stattdessen HAL verwenden.

@Yamagi, könntest Du trotzdem mal posten, wie für ein richtig funktionierendes autofs (also inkl. Sticks und optische Medien) alle relevanten Konfigurationsdateien aussehen müssen?
 
  • Für die WiFi-Verwaltung gibt es WiFimgr.
  • Suspend/Resume geht mit acpiconf -s 3 bzw. zzz. Mit acpi_ibm(4) kann man auch den Fn-Key nutzen (afaik Fn + F4).
  • Die Volume-Keys können ebenfalls mit acpi_ibm(4) abgefragt werden. Einfach auf die X11-Events XF86AudioRaiseVolume und XF86AudioLowerVolume reagieren.
  • Helligkeit lässt sich mit acpi_ibm(4)/acpi_video(4) einstellen. Manuell auch per sysctl, zum Beispiel: sysctl hw.acpi.video.lcd0.brightness=75.
  • Akkustand geht per sysctl hw.acpi.battery.life (in Prozent)
 
Also, die Config zum Stromsparen:
  1. Der WLAN-Karte das 'powersave' Attribut mitgeben, als Beispiel in der rc.conf:
    Code:
    ifconfig_wlan0="WPA DHCP powersave"
  2. C-States einschalten, in der rc.conf dafür:
    Code:
    performance_cx_lowest="LOW"
    economy_cx_lowest="LOW"
  3. Wie schon gesagt 'powerdxx' aus den Ports oder Paketen installieren und starten. Die Standardeinstellungen sind okay.
  4. In der loader.conf:
    Code:
    # Kein Strom fuer Geraete ohne Treiber
    hw.pci.do_power_nodriver=3
    
    # Powersaving fuer die GPU
    drm.i915.enable_rc6=7
    
    # Weniger Sound-Interrupts
    hw.snd.latency=7
Damit komme ich beim Surfen laut Anzeige auf 5 Stunden und 10 Minuten. Zumindest theoretisch, der Akku ist inzwischen leider doch recht fritte.
 
@Yamagi, könntest Du trotzdem mal posten, wie für ein richtig funktionierendes autofs (also inkl. Sticks und optische Medien) alle relevanten Konfigurationsdateien aussehen müssen?
Ich mache das genauso wie im Handbuch beschrieben. Die /etc/auto_master:
Code:
# $FreeBSD: releng/11.1/etc/auto_master 310007 2016-12-13 04:44:06Z dteske $
#
# Automounter master map, see auto_master(5) for details.
#
/net     -hosts     -nobrowse,nosuid,intr
# When using the -media special map, make sure to edit devd.conf(5)
# to move the call to "automount -c" out of the comments section.
/media     -media     -nosuid,noatime
#/-     -noauto

An der /etc/devd.conf muss man nichts mehr ändern, die ist ab Haus korrekt. Dann noch in der rc.conf einschalten:

Code:
autofs_enable="YES"

Anschließend tauchen eingesteckte unter /media/$name auf.
 
Ich denke, damit hab ich eine ungefähre Vorstellung, wie ich vorgehen kann und was ich versuchen werde. Danke vielmals!

... bin gerade noch über xbattmon gestolpert ... das wird man sich ebenfalls ansehen :D
 
Ich mache das genauso wie im Handbuch beschrieben. Die /etc/auto_master:
Code:
# $FreeBSD: releng/11.1/etc/auto_master 310007 2016-12-13 04:44:06Z dteske $
#
# Automounter master map, see auto_master(5) for details.
#
/net     -hosts     -nobrowse,nosuid,intr
# When using the -media special map, make sure to edit devd.conf(5)
# to move the call to "automount -c" out of the comments section.
/media     -media     -nosuid,noatime
#/-     -noauto

An der /etc/devd.conf muss man nichts mehr ändern, die ist ab Haus korrekt. Dann noch in der rc.conf einschalten:

Code:
autofs_enable="YES"

Anschließend tauchen eingesteckte unter /media/$name auf.

Also hier bei mir wird mit autofs gar nichts gemountet, obwohl ich die /etc/auto_master wie angegeben geändert habe:


Code:
ugen1.2: <Corsair Flash Voyager> at usbus1
umass1 on uhub0
umass1: <Corsair Flash Voyager, class 0/0, rev 2.00/11.00, addr 2> on usbus1
umass1:  SCSI over Bulk-Only; quirks = 0x4000
umass1:5:1: Attached to scbus5
random: harvesting attach, 8 bytes (4 bits) from umass1
(probe0:umass-sim1:1:0:0): Down reving Protocol Version from 2 to 0?
pass5 at umass-sim1 bus 1 scbus5 target 0 lun 0
pass5: <Corsair Flash Voyager 1100> Removable Direct Access SCSI device
pass5: Serial Number A500000000026183
pass5: 40.000MB/s transfers
GEOM: new disk da1
da1 at umass-sim1 bus 1 scbus5 target 0 lun 0
da1: <Corsair Flash Voyager 1100> Removable Direct Access SCSI device
da1: Serial Number A500000000026183
da1: 40.000MB/s transfers
da1: 3872MB (7929856 512 byte sectors)
da1: quirks=0x2<NO_6_BYTE>
da1: Delete methods: <NONE(*),ZERO>
(da1:umass-sim1:1:0:0): PREVENT ALLOW MEDIUM REMOVAL not supported.
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
WARNING: autofs_trigger_one: request for /media/ completed with error 5
$ more /etc/auto_master
# $FreeBSD: releng/11.1/etc/auto_master 310007 2016-12-13 04:44:06Z dteske $
#
# Automounter master map, see auto_master(5) for details.
#
/net            -hosts          -nobrowse,nosuid,intr
# When using the -media special map, make sure to edit devd.conf(5)
# to move the call to "automount -c" out of the comments section.
/media     -media    -nosuid,noatime
#/-     -noauto
$


Code:
# ps -x
PID TT  STAT     TIME COMMAND
   0  -  DLs   0:00.36 [kernel]
   1  -  ILs   0:00.01 /sbin/init --
   2  -  DL    0:00.00 [crypto]
   3  -  DL    0:00.00 [crypto returns]
   4  -  DL    0:00.21 [cam]
   5  -  IL    0:00.00 [fw0_probe]
   6  -  DL    0:00.00 [fdc0]
   7  -  DL    0:00.00 [soaiod1]
   8  -  DL    0:00.00 [soaiod2]
   9  -  DL    0:00.00 [soaiod3]
  10  -  DL    0:00.00 [audit]
  11  -  RL   14:56.21 [idle]
  12  -  WL    0:01.84 [intr]
  13  -  DL    0:00.02 [geom]
  14  -  DL    0:00.12 [usb]
  15  -  DL    0:00.00 [soaiod4]
  16  -  DL    0:00.00 [Timer]
  17  -  DL    0:00.00 [sctp_iterator]
  18  -  DL    0:00.03 [rand_harvestq]
  19  -  DL    0:00.00 [acpi_thermal]
  20  -  DL    0:00.00 [acpi_cooling0]
  21  -  DL    0:00.04 [pagedaemon]
  22  -  DL    0:00.00 [vmdaemon]
  23  -  DL    0:00.00 [pagezero]
  24  -  DL    0:00.02 [bufdaemon]
  25  -  DL    0:00.00 [bufspacedaemon]
  26  -  DL    0:00.07 [syncer]
  27  -  DL    0:00.00 [vnlru]
212  -  Is    0:00.00 adjkerntz -i
449  -  Is    0:00.00 dhclient: nfe0 [priv] (dhclient)
509  -  Ss    0:00.14 /usr/sbin/moused -p /dev/ums0 -t auto -I /var/run/moused.ums0.pid
522  -  Ss    0:00.06 /sbin/devd
571  -  DL    0:00.00 [ng_queue]
608  -  Ss    0:00.03 /usr/sbin/syslogd -s
797  -  Ss    0:00.06 /usr/sbin/ntpd -c /etc/ntp.conf -p /var/run/ntpd.pid -f /var/db/ntpd.drift
1013  -  Is    0:00.04 /usr/local/sbin/cupsd -C /usr/local/etc/cups/cupsd.conf -s /usr/local/etc/cups/cups-files.conf
1044  -  Is    0:00.00 /usr/sbin/sshd
1047  -  Ss    0:00.01 sendmail: accepting connections (sendmail)
1054  -  Ss    0:00.00 /usr/sbin/cron -s
1110  -  Is    0:00.00 /usr/sbin/autounmountd
1115  -  Is    0:00.00 /usr/sbin/automountd
1130  -  S     0:21.16 /usr/local/bin/X -br -novtswitch -quiet :0 -nolisten tcp -auth /var/run/xauth/A:0-9OcgBe (Xorg)
1132  -  I     0:00.00 kdm: :0 (kdm)
1136  -  I     0:00.03 /usr/local/sbin/console-kit-daemon --no-daemon
1003 v0- I     0:00.01 /usr/local/bin/kdm
1120 v0  Is+   0:00.00 /usr/libexec/getty Pc ttyv0
1121 v1  Is+   0:00.00 /usr/libexec/getty Pc ttyv1
1122 v2  Is+   0:00.00 /usr/libexec/getty Pc ttyv2
1123 v3  Is+   0:00.00 /usr/libexec/getty Pc ttyv3
1124 v4  Is+   0:00.00 /usr/libexec/getty Pc ttyv4
1125 v5  Is+   0:00.00 /usr/libexec/getty Pc ttyv5
1126 v6  Is+   0:00.00 /usr/libexec/getty Pc ttyv6
1127 v7  Is+   0:00.00 /usr/libexec/getty Pc ttyv7
1331  0  S     0:00.01 su
1332  0  S     0:00.00 su (sh)
1333  0  R+    0:00.00 ps -x
#
 
gabs sowas wie das Thinkwiki für Linux evtl auch für BSD? (wo derlei Tipps für IBM/Lenovo Maschinchen zusammengefaßt sind - außer dem Thread hier natürlich)
 
Zurück
Oben