Nur „echte“ Benutzerkonten anzeigen

Um am Login Bildschirm von Fedora nur jene Konten anzuzeigen, die sich in letzter Zeit eingeloggt haben, muss man nur eine kleine Änderung an der /etc/gdm/custom.conf Datei vornehmen:

--- old/custom.conf	2011-07-07 09:35:01.462829111 +0200
+++ new/custom.conf	2011-07-07 09:30:27.146258540 +0200
@@ -7,6 +7,7 @@
 [xdmcp]
 
 [greeter]
+IncludeAll=false
 
 [chooser]
 

Damit werden nicht oder zB nur per scp genutzte Benutzernamen ausgeblendet.

Fedora 15 on NVIDIA NVS 3100M

In an earlier post, I already wrote about how to install the proprietary video driver on Fedora. In a brief update I suggested to change the acpi_sleep kernel option to accomplish proper display wake-up from standby. Unfortunately, that solution doesn’t work reliably in my experience. Today I found a solution that seems to successfully work around the problem of the black screen by waking up the screen „manually“.

Gernot Walzl wrote a „nasty workaround“ (quoting himself) in the form of the following script:

#!/bin/sh

# nvidia_dpms_fix.sh
# 2011-06-12
# by Gernot WALZL

# nasty workaround for nvidia drivers to resume from dpms off/suspend

export DISPLAY=:0

getXauthority () {
  export XAUTHORITY=$(ps -C X -f | grep "$DISPLAY" \
    | sed -n 's/.* -auth \([^ ]*\).*/\1/p')
}

handle_line () {
  if echo "$1" | grep -e "(EE) NVIDIA.* DisplayPort link training failed" \
      > /dev/null; then
    getXauthority
    xset dpms force on
  fi
}

tail --follow=name /var/log/Xorg.0.log --retry --lines=1 2> /dev/null \
  | while read line; do
    handle_line "$line"
  done

To actually make this do its job, I copied it into /usr/local/bin, made it executable and created an autostart entry for GNOME 3 by saving the following lines under ~/.config/autostart/nvidia_dpms_fix.sh.desktop

[Desktop Entry]
Type=Application
Exec=/usr/local/bin/nvidia_dpms_fix.sh
Hidden=false
X-GNOME-Autostart-enabled=true
Name=NVidia DPMS fix
Comment=Wakes up the display properly

I believe the problem that is being worked around is indicated by a line in the Xorg.0.log:

(WW) NVIDIA(GPU-0): AUO (DFP-3): Failed to set DisplayPort power state

Although I could only test this on my machine (HP EliteBook 8440p), with some luck this works for all cases where a similar log message is found.

Fedora Live USB with GRUB

As already mentioned in my last post, my laptop won’t boot from a USB stick prepared using a binary copy of an ISO (by means of dd). Here is the method I use to boot the Fedora Live images off my USB stick using GNU GRUB2. The device node of the USB driver is denoted /dev/sdX in the following and must be replaced with the actual device node (e.g. /dev/sdc).

  1. Prepare a partition on the USB stick and/or make sure there is enough space on it (it must be slightly larger than the ISO image).
  2. Make sure it is flagged bootable. ( fdisk -l /dev/sdX is your friend)
  3. Remember the name of the USB partition you’re going to use or if unlabelled, label it.
  4. Loop-mount the ISO image using something like mount -o loop /path/to/iso /mnt/loop
  5. Copy the content of the ISO over to the USB
  6. Install GRUB on the USB by issuing grub-install --no-floppy --root-directory=/mnt/usb /dev/sdX
  7. Create a /mnt/usb/boot/grub/grub.cfg with the following content
    menuentry "Fedora Live" {
     linux /isolinux/vmlinuz0 root=live:LABEL=XYZ rootfstype=auto ro liveimg quiet  rhgb rd_NO_LUKS rd_NO_MD rd_NO_DM
     initrd /isolinux/initrd0.img
    }
    
    menuentry "Fedora Live (Basic Video)" {
     linux /isolinux/vmlinuz0 root=live:LABEL=XYZ rootfstype=auto ro liveimg quiet  rhgb rd_NO_LUKS rd_NO_MD rd_NO_DM xdriver=vesa nomodeset
     initrd /isolinux/initrd0.img
    }

    where XYZ must be replaced by the actual partition name of your USB partition.

  8. Unmount and boot

Fedora 15 Live USB for HP 8440p

Unfortunately, none of the „common methods“ for creating a Live USB workes such that my HP EliteBook 8400p would boot them. The procedure described by Jordon Mears came closest. The only technical difference is, that for some obscure reason, the machine won’t boot from anything else than FAT when it comes to USB sticks.

Here are the slightly modified steps:

  1. Download the ISO image
  2. Unmount USB
  3. Delete partitions on the USB
  4. Create one primary partition of type 0x0c (Win 95 FAT LBA) of size ??.
  5. Make it bootable
  6. Use mkfs.vfat -n USB /dev/sdX1 to create the filesystem
  7. Make sure syslinux, and isomd5sum are installed
  8. Use livecd-iso-to-disk --overlay-size-mb 512 /path/to/iso /dev/sdX1
  9. Sync

Good luck!

Fedora 14 and SSH port forwarding

Yesterday I upgraded also my workstation to Fedora 14 and soon ran into a rather unexpected problem that I couldn’t resolve due to an overwhelming amount of misleading reports and discussions on the web a.k.a. „noise“. The use-case was, that I tunnel from home to my workstation via SSH on a regular basis and for different purposes. After yesterdays upgrade I double-checked that all firewall settings are OK to permit the connection before I went home. Initialising the tunnel later that evening went without a problem, but using it issued a weird error:

channel 2: open failed: administratively prohibited: open failed

A search on the web yielded all kinds of results, mostly referring to settings in the SSH daemon. All solutions either mentioned AllowTcpForwarding, which is anyway yes by default, or PermitTunnel, which has nothing to do with port forwarding. As was to be expected, these hints didn’t help in my case.

Desperate to find more useful keyword for a search, I ran ssh in verbose mode (with -vvv), which gave (global IP addresses are replaced by X.X.X.X):

debug1: Connection to port 11080 forwarding to socks port 0 requested.
debug2: fd 8 setting TCP_NODELAY
debug2: fd 8 setting O_NONBLOCK
debug3: fd 8 is O_NONBLOCK
debug1: channel 2: new [dynamic-tcpip]
debug2: channel 2: pre_dynamic: have 0
debug2: channel 2: pre_dynamic: have 3
debug2: channel 2: decode socks5
debug2: channel 2: socks5 auth done
debug2: channel 2: pre_dynamic: need more
debug2: channel 2: pre_dynamic: have 0
debug2: channel 2: pre_dynamic: have 10
debug2: channel 2: decode socks5
debug2: channel 2: socks5 post auth
debug2: channel 2: dynamic request: socks5 host X.X.X.X port 80 command 1
channel 2: open failed: administratively prohibited: open failed
debug2: channel 2: zombie
debug2: channel 2: garbage collecting
debug1: channel 2: free: direct-tcpip: listening port 11080 for X.X.X.X port 80, connect from 127.0.0.1 port 59418, nchannels 3
debug3: channel 2: status: The following connections are open:
  #1 client-session (t4 r0 i0/0 o0/0 fd 5/6 cc -1)

debug3: channel 2: close_fds r 8 w 8 e -1

No luck either.

Finally, I had the idea that SELinux could interfere here without giving the SSH daemon the possibility of a helpful error message. When I logged into my workstation this morning, the SELinux warning gave the appropriate solution in the form of a command (to be issued by root):

$ setsebool -P sshd_forward_ports 1

This fixed the problem and everything now works as before. \me = happy.

Fedora 14 on HP 8440p

The new version of Fedora is out since yesterday and available for download.

Naturally, my private notebook is the first place for me to perform the upgrade. Although the new Nouveau driver detects the resolution (1600×900) and runs just fine, I really want fully accelerated graphics and for that purpose still have to resort to the proprietary drivers from NVIDIA to use the NVS 3100M card in my HP EliteBook 8440p. Not the least reason for this is, that I love GNOME Shell which requires accelerated graphics.

Here is a summary specifically for the 8440p with a resolution of 1600×900. (as root):

yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
yum update
yum install kmod-nvidia

Reboot

nvidia-settings -r

Verify, that Xorg is configured to use the proprietary driver. A minimal /etc/X11/xorg.conf should look like this:

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
EndSection

Finally, since the driver doesn’t support Kernel Mode-Setting (KMS), open the Grub configuration at /boot/grub/grub.conf and append the following parameter to the kernel configuration (behind rdblacklist=nouveau): vga=0x34D.

Update (2011-02-28): To make the video wake up properly after suspend to RAM (sleep), add the following kernel parameter: acpi_sleep=nonvs.

HP Ambient Light Sensor on Linux

Often, the simple answers are those you don’t find on the web. Here is one of them with hopefully enough keywords to make it findable:
To activate the Ambient Light Sensor on my new HP EliteBook 8440p (article and pictures will follow later) running Fedora 13, the following command (issued by root obviously) did the trick:

echo 1 > /sys/devices/platform/hp-wmi/als

Also don’t forget to check if the ALS is enabled in the BIOS if this doesn’t work. It seems to be enabled by default though.

Zim

Jene Linux Anwendung, die OneNote im Funktionsumfang am nächsten kommt ist vermutlich BasKet. Trotzdem schreibe ich diesen Artikel, weil ich für mich Zim als geeignetste Anwendung befunden habe. Zim wird vom Autor als „Desktop Wiki“ bezeichnet. Was die Textverarbeitung betrifft, wird damit das meiste bereits erklärt. Wer jemals einen Wiki Artikel geschrieben hat, kennt das Prinzip.

Was Zim für mich aber perfekt macht, denn es ist beileibe nicht das einzige Desktop Wiki, sind drei Plugins, die folgende Funktionen zur grundlegenden Wiki Funktionalität hinzufügen:

Wie eventuell aus dem Countdown zur Veröffentlichung von Fedora 13 im rechten Rand zu schließen war, ist momentan Linux das Desktop und Laptop Betriebssystem meiner Wahl. Ohne weiter ausholen zu wollen, möchte ich nur anmerken, dass diese Wahl nicht aus ideologischen sondern aus technischen Überlegungen resultiert. Die Hardwareanforderungen aktueller Windows Versionen haben sich zu weit von den mir zur Verfügung stehenden Tatsachen entfernt als dass ein vernünftiger Betrieb möglich wäre. Andererseits ist eine Weiterverwendung veralteter Windows Versionen mit zu vielen, nicht zuletzt sicherheitstechnischen, Nachteilen verbunden.

Die eigentliche Herausforderung, wenn man Windows gänzlich den Rücken kehren möchte, besteht kaum mehr in Inkompatibilitäten wie es scheint, sondern vor allem im Bruch mit Gewohntem. Damit meine ich nicht das Betriebssystem, denn damit hat man als Benutzer kaum Kontakt, sondern die Anwendungen. Ich kann mir gut vorstellen, dass in manchen Bereichen für Linux keine adäquaten Entsprechungen für tausende Euro teure kommerzielle Software zu finden ist. Dennoch möchte ein Beispiel für (m)einen Fall bringen, wo eine Anwendung trotz kleinerem Funktionsumfang eine andere ersetzen kann.

Zim

Eine meiner Lieblingsanwendungen unter Windows ist OneNote. Als Notiz- und Logbuch hat sich dieses Programm als sehr nützlich erwiesen. Die Hauptvorteile gegenüber einem Papierblock sind für mich die Suchfunktion, der Umgang mit Markierungen (Schlagworten) und nicht zuletzt die Möglichkeit, schnell und einfach Bildschirmausschnitte in den Text einzufügen. Da ich beinahe sämtliche Information über den Bildschirm verarbeite, ist das Speichern von Bildschirmausschnitten das allgemeinste Interface. Als Naturwissenschaftler verwende ich diese Technik sehr oft, um Diagramme, die von einem beliebigen Programm erzeugt wurden, in das elektronische Notizbuch zu „kleben“.

Jene Linux Anwendung, die OneNote im Funktionsumfang am nächsten kommt ist vermutlich BasKet. Trotzdem schreibe ich diesen Artikel, weil ich für mich Zim als geeignetste Anwendung befunden habe. Zim wird vom Autor als „Desktop Wiki“ bezeichnet. Was die Textverarbeitung betrifft, wird damit das meiste bereits erklärt. Wer jemals einen Wiki Artikel geschrieben hat, kennt das Prinzip.

Was Zim für mich aber perfekt macht, denn es ist beileibe nicht das einzige Desktop Wiki, sind drei Plugins, die folgende Funktionen zur grundlegenden Wiki Funktionalität hinzufügen:

  • Es ist möglich Schnappschüsse vom ganzen Bildschirm, einzelnen Fenstern und frei wählbaren Ausschnitten zu machen.
  • Es ist möglich, Formeln einzufügen, die man in einem separaten Dialog per LaTeX Syntax formulieren kann.
  • Eine Versionsverwaltung kann verwendet werden, um Änderungen an den Notizen zu verfolgen.

Zur absoluten Perfektion fehlen meiner Meinung nach nur zwei Features:

  • Schlagworte (Tags) – ein für die Zukunft geplantes Feature
  • Versionsverwaltung mit Git (statt Bazaar oder Subversion) – Gewohnheit

Zim in Fedora

Leider enthält Fedora, selbst in der noch nicht freigegebenen Version 13, nicht die aktuelle Version von Zim. Man findet aber in Bugzilla den Bug 563844, der neben einer aufschlussreichen Diskussion auch einen Link auf eine aktuelle SRPM enthält. Wie man daraus eine installierbare RPM baut erfährt man (neben sicherlich unzähligen anderen Stellen) im Fedora Wiki.