DragonFly BSD

HowToDevice

Device-specific information for DragonFly BSD

Sometimes, a device can be made working only with some "tricks". Here you can find mini-howto's for that.

ACPI

Some computers and notebooks have an "inaccurate" ACPI implementation which requires a work-around. Here you can find informations about the necessary ACPI settings

ASUS V6800 notebook

When booted with ACPI enabled, the keyboard doesn't work. To make it work, add this line to your /boot/loader.conf file:

debug.acpi.disabled="sysresource"

PATA(IDE) & SATA disk controller tuning

To speed up disk access, you may want to set this parameters in your /boot/loader.conf:

hw.ata.atapi_dma="1"
hw.ata.ata_dma="1"
hw.ata.wc="1" (Write caching, may cause data loss on power failure!)

For more details, look here: http://leaf.dragonflybsd.org/cgi/web-man?command#ata&section4

Input devices

Informations for input devices (e.g. mouse, keyboard, touchpad)

Synaptics touchpad

You can use synaptic touchpads with Xorg. Your section "Input Device" should contain this lines:

    Option "Protocol"    "Auto"
    Option "Protocol"    "/dev/psm0"

There's currently no support available for the the scrolling functionality on touchpads.

Intel Pentium-M processors

Controlling the CPU frequency

DragonFlyBSD has a kernel module for Enhanced Speedstep, named est.

If you want to load the est module on boot time, place this line in the file /boot/loader.conf:

    est_load="YES"

When the module is loaded, you can set and read the CPU frequency settings with sysctl machdep.est.

There's also a patch available for the pkgsrc package sysutils/pkgsrc from Johannes Hofmann. You can download it here http://www.ecademix.com/JohannesHofmann/estd_pkgsrc-1.patch.gz .

To apply the patch, do a

    cd /usr/pkgsrc
    patch -p0 < /path/to/estd_pkgsrc-1.patch

Now compile and install the pkgsrc-package sysutils/estd.

estd automatically sets the processor speed, depending of the current CPU usage. To use estd, start it with

    estd -d -s

for example. Look at the manpage of est for further explanation.

WLAN

Intel ipw2200 WLAN adapter & WPA

Add this line to your /boot/loader.conf file:

if_iwi_load="YES"

This will load the driver on boot time. Create a file, like start_if.iwi0, in your /etc directory and make it executable. This is an example for setting an IP address and the default gateway and enabling WPA:

ifconfig iwi0 up
wpa_supplicant -B -i iwi0 -c /etc/wpa_supplicant.conf > /var/log/wpa.log
route add default 192.168.2.1

Create a file /etc/wpa_supplicant.conf for the WPA configuration. This is an example:

network={
        ssid="myESSID"
        scan_ssid=1
        key_mgmt=WPA-PSK
        psk="myPreSharedKey"
}

If you've done everything correct, you should get a WLAN connection after reboot automagically.

Known issues with if_iwi:

Users mounting and using block devices

Ordinary users can be permitted to mount devices. Here is how:

As root set the sysctl variable vfs.usermount to 1.

# sysctl -w vfs.usermount=1

As root assign the appropriate permissions to the block device associated with the removable media.

For example, to allow users to mount the first floppy drive, use:

# chmod 666 /dev/fd0

To allow users in the group operator to mount the CDROM drive, use:

# chgrp operator /dev/acd0c
# chmod 640 /dev/acd0c

You will need to alter /etc/devices.conf to make these changes permanent across reboots.

As root, add the necessary lines to /etc/devices.conf. For example, to allow users to mount the first floppy drive add:

# Allow all users to mount the floppy disk.
fd0    root:operator    666

To allow users in the group operator to mount the CD-ROM drive add:

# Allow members of the group operator to mount CD-ROMs.

cd0 root:operator 660

Finally, add the line vfs.usermount=1 to the file /etc/sysctl.conf so that it is reset at system boot time.

All users can now mount the floppy /dev/fd0 onto a directory that they own:

% mkdir ~/my-mount-point
% mount -t msdos /dev/fd0 ~/my-mount-point

Users in group operator can now mount the CDROM /dev/acd0c onto a directory that they own:

% mkdir ~/my-mount-point
% mount -t cd9660 /dev/acd0c ~/my-mount-point

Unmounting the device is simple:

% umount ~/my-mount-point

Enabling vfs.usermount, however, has negative security implications. A better way to access MS-DOSĀ® formatted media is to use the emulators/mtools package in the ports collection.

Note: The device name used in the previous examples must be changed according to your configuration.

Mounting a FS image

Here is how to mount a FS image under DragonFly, the most used ones are .ISO for cd and dvd media.

If you have an .ISO image created with mkisofs or any other app, there is a method for mounting it without burn the image to some physical media.

In the next example, let'a assume the File System image is iso9660 named image.iso and it resides in the current directory.

vnconfig /dev/vn0c ./image.iso
mount -t cd9660 /dev/vn0c /cdrom

When you're finished with the image, here's how you reverse the above:

umount /cdrom
vnconfig -u /dev/vn0c

You can use this method for mounting images of other File Systems too. If you want to mount, say an msdos image, you could do it like this:

vnconfig /dev/vn0c ./image.fat
mount -t msdos /dev/vn0c /cdrom

Use the same steps as shown in the previous example to umount it. Have a look at man mount for more info about the various image types which you can mount.

NOTE: Once mounted, you cannot write to an ISO image. ISO images are readonly by design. If you want to change what is in your ISO image, use mkisofs. If you didn't create the ISO, then you could mount the image, copy everything from the image to disk, then use mkisofs to create a new ISO.