Skip to content

Re-labeling my ZFS devices with glabel

06-Apr-10

As I stated before, I wanted to move the underlying devices in my ZFS pool to glabel-based naming.
To do so, I did the following 3 commands:

> sudo zpool offline tank da2s1
> sudo glabel label -v fantom_1tb /dev/da2
Metadata value stored on /dev/da2.
Done.
> sudo zpool replace tank da2s1 /dev/label/fantom_1tb

Then, doing a zpool status yields:
> zpool status
pool: tank
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scrub: resilver in progress for 0h1m, 0.45% done, 3h47m to go
config:

NAME STATE READ WRITE CKSUM
tank DEGRADED 0 0 0
raidz1 DEGRADED 0 0 0
da0s1 ONLINE 0 0 0 3.52M resilvered
da1s1 ONLINE 0 0 0 3.51M resilvered
replacing DEGRADED 0 0 0
da2s1 OFFLINE 0 4.55K 0
label/fantom_1tb ONLINE 0 0 0 296M resilvered
cache
label/pico_usb ONLINE 0 0 0

errors: No known data errors

When the resilvering of da2 is done, I’ll do da1 and da0 in a similar manner. This way, I don’t have to plug the USB drives into the exact same port every time. My ZFS pool will be more reliable, because it’s less sensitive to the USB port ordering.

Be the first to like.

Adding cache device to ZFS

04-Apr-10

I went ahead and bought this USB stick to put in the back of my Portwell machine. The idea is to use it as a device cache to speed up my ZFS tank.
Based on this post by Alexander Leidinger, it should reduce latency (when data is in the cache), but not otherwise. I was also curious on whether it would reduce power consumption. I have no idea if FreeBSD powers down USB devices when they are not being actively used.
I don’t write to the disks frequently. At most, there’ll be a read here and there. (I use Allway Sync which keeps some metadata on the remote storage, that does need to get read. However, like rsync, it won’t write unless necessary.)

I had the Kill-a-Watt running continuously (909 hours) before I did this switch, and it measured $29.92/year (at 0.122 cents/kWh, 25.95 kWh). When I looked at it, the Kill-a-Watt registered 28 watts. (I think that’s instantaneous, not average.)

After doing so, I get the following dmesg:

usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 12Mbps Full Speed USB v1.0
usbus3: 480Mbps High Speed USB v2.0
ad0: 152627MB <Hitachi HTE543216L9A300 FB2OC45C> at ata0-master UDMA33
ugen0.1: <Intel> at usbus0
uhub0: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
ugen1.1: <Intel> at usbus1
uhub1: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
ugen2.1: <Intel> at usbus2
uhub2: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus2
ugen3.1: <Intel> at usbus3
uhub3: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus3
Root mount waiting for: usbus3 usbus2 usbus1 usbus0
uhub0: 2 ports with 2 removable, self powered
uhub1: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
Root mount waiting for: usbus3
Root mount waiting for: usbus3
Root mount waiting for: usbus3
uhub3: 8 ports with 8 removable, self powered
ugen3.2: <MICRONET> at usbus3
umass0: <MICRONET FANTOM DRIVE, class 0/0, rev 2.00/2.10, addr 2> on usbus3
umass0:  SCSI over Bulk-Only; quirks = 0x0000
Root mount waiting for: usbus3
umass0:0:0:-1: Attached to scbus0
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <MICRONET FANTOM DRIVE 2.10> Fixed Direct Access SCSI-4 device
da0: 40.000MB/s transfers
da0: 476940MB (976773168 512 byte sectors: 255H 63S/T 60801C)
ugen3.3: <SMI Corporation> at usbus3
umass1: <SMI Corporation USB, class 0/0, rev 2.00/0.00, addr 3> on usbus3
umass1:  SCSI over Bulk-Only; quirks = 0x0000
umass1:1:1:-1: Attached to scbus1
da1 at umass-sim1 bus 1 target 0 lun 0
da1: <ST 16GB 0000> Removable Direct Access SCSI-0 device
da1: 40.000MB/s transfers
da1: 15296MB (31326208 512 byte sectors: 255H 63S/T 1949C)
usbd_set_config_index:523: could not read device status: USB_ERR_SHORT_XFER
ugen3.4: <Simpletech> at usbus3
umass2: <MSC Bulk-Only Transfer> on usbus3
umass2:  SCSI over Bulk-Only; quirks = 0x0000
umass2:2:2:-1: Attached to scbus2
da2 at umass-sim2 bus 2 target 0 lun 0
da2: <Hitachi HDS721010CLA332 > Fixed Direct Access SCSI-2 device
da2: 40.000MB/s transfers
da2: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
GEOM: da1: partition 1 does not start on a track boundary.
GEOM: da1: partition 1 does not end on a track boundary.
Root mount waiting for: usbus3
ugen3.5: <MICRONET> at usbus3
umass3: <MICRONET FANTOM DRIVE, class 0/0, rev 2.00/2.10, addr 5> on usbus3
umass3:  SCSI over Bulk-Only; quirks = 0x0000
Root mount waiting for: usbus3
umass3:3:3:-1: Attached to scbus3
da3 at umass-sim3 bus 3 target 0 lun 0
da3: <MICRONET FANTOM DRIVE 2.10> Fixed Direct Access SCSI-4 device
da3: 40.000MB/s transfers
da3: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
ugen3.6: <vendor 0x13d1> at usbus3
ugen2.2: <Cesko> at usbus2

You’ll notice from my previous post that the drive that used to be da1 is now da2 and the drive that used to be da2 is now da3. zpool status shows:

> zpool status
pool: tank
state: UNAVAIL
scrub: none requested
config:

NAME        STATE     READ WRITE CKSUM
tank        UNAVAIL      0     0     0  insufficient replicas
raidz1    UNAVAIL      0     0     0  corrupted data
da0s1   ONLINE       0     0     0
da1s1   ONLINE       0     0     0
da2s1   ONLINE       0     0     0

I don’t know for sure, but I think glabel would have solved all this USB port-numbering nonsense. The newly inserted USB key is now drive da1, bumping all the other drives up by one number. Anyway, at this point, it’s fairly simple to play musical chairs (USB ports) with the last three drives. After doing so (and a fair amount of memory game with USB ports/cables), I get the following dmesg:

usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 12Mbps Full Speed USB v1.0
usbus3: 480Mbps High Speed USB v2.0
ad0: 152627MB <Hitachi HTE543216L9A300 FB2OC45C> at ata0-master UDMA33
ugen0.1: <Intel> at usbus0
uhub0: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
ugen1.1: <Intel> at usbus1
uhub1: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
ugen2.1: <Intel> at usbus2
uhub2: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus2
ugen3.1: <Intel> at usbus3
uhub3: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus3
Root mount waiting for: usbus3 usbus2 usbus1 usbus0
uhub0: 2 ports with 2 removable, self powered
uhub1: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
Root mount waiting for: usbus3
Root mount waiting for: usbus3
Root mount waiting for: usbus3
uhub3: 8 ports with 8 removable, self powered
ugen3.2: <MICRONET> at usbus3
umass0: <MICRONET FANTOM DRIVE, class 0/0, rev 2.00/2.10, addr 2> on usbus3
umass0:  SCSI over Bulk-Only; quirks = 0x0000
Root mount waiting for: usbus3
umass0:0:0:-1: Attached to scbus0
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <MICRONET FANTOM DRIVE 2.10> Fixed Direct Access SCSI-4 device
da0: 40.000MB/s transfers
da0: 476940MB (976773168 512 byte sectors: 255H 63S/T 60801C)
usbd_set_config_index:523: could not read device status: USB_ERR_SHORT_XFER
ugen3.3: <Simpletech> at usbus3
umass1: <MSC Bulk-Only Transfer> on usbus3
umass1:  SCSI over Bulk-Only; quirks = 0x0000
umass1:1:1:-1: Attached to scbus1
da1 at umass-sim1 bus 1 target 0 lun 0
da1: <Hitachi HDS721010CLA332 > Fixed Direct Access SCSI-2 device
da1: 40.000MB/s transfers
da1: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
ugen3.4: <MICRONET> at usbus3
umass2: <MICRONET FANTOM DRIVE, class 0/0, rev 2.00/2.10, addr 4> on usbus3
umass2:  SCSI over Bulk-Only; quirks = 0x0000
umass2:2:2:-1: Attached to scbus2
da2 at umass-sim2 bus 2 target 0 lun 0
da2: <MICRONET FANTOM DRIVE 2.10> Fixed Direct Access SCSI-4 device
da2: 40.000MB/s transfers
da2: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
ugen3.5: <SMI Corporation> at usbus3
umass3: <SMI Corporation USB, class 0/0, rev 2.00/0.00, addr 5> on usbus3
umass3:  SCSI over Bulk-Only; quirks = 0x0000
umass3:3:3:-1: Attached to scbus3
da3 at umass-sim3 bus 3 target 0 lun 0
da3: <ST 16GB 0000> Removable Direct Access SCSI-0 device
da3: 40.000MB/s transfers
da3: 15296MB (31326208 512 byte sectors: 255H 63S/T 1949C)
ugen3.6: <vendor 0x13d1> at usbus3
ugen2.2: <Cesko> at usbus2
GEOM: da3: partition 1 does not start on a track boundary.
GEOM: da3: partition 1 does not end on a track boundary.
Trying to mount root from ufs:/dev/ad0s1a
WARNING: / was not properly dismounted
ZFS filesystem version 13
ZFS storage pool version 13

Just to be safe, I then did a zpool scrub tank. Okay, I got impatient and cancelled it after about 25% completion.

After that, I used glabel to give the USB flash drive a persistent label (might as well start now): sudo glabel label -v pico_usb /dev/da3. Then, I added the device as a cache:

sudo zpool add tank cache /dev/label/pico_usb

I’m running a scrub now. Next, up, I’ll use glabel on the other drives to have them have persistent labels (irrespective of which port I plug them into).

Be the first to like.

Verizon (WiFi) Tether Options

24-Mar-10

Our company is switching to Verizon. Currently, we’re a hodgepodge of AT&T and Sprint. Most of us have 4G data cards. The idea is that we switch our mobiles to Verizon and possibly use the tethering available on Verizon phones.
Here’s my attempt to lay out the tethering options (as of March 2010):

More…

Be the first to like.

Web Host Performance Comparison

18-Mar-10

Results

Median Connection Time  ± Std. Deviaton (ms) To: From DreamHost PS From my office (in Chicago)
A Small Orange 465.5 ± 332.6 544.5 ± 1012.6
Crucial Paradigm 511.5 ± 162.0 537.5 ± 112.1
DreamHost 574.5 ± 321.5 893.5 ± 203.5
MediaTemple 520.5 ± 530.1 802.5 ± 234.6
SteadFast 523.5 ± 69.8 260.5 ± 43.6
WebFaction 321.5 ± 301.6 304.5 ± 166.0

Explanation

Due to some files disappearing, I recently decided to switch from DreamHost to another host. I wasn’t sure which one to go to. So, I decided to sign up for short-term periods (one month) and try them all out. More…

Be the first to like.

Adding new repos to CentOS / RHEL5

16-Mar-10

From http://www.trinitycore.org/forum/mercurial-centos-t3113.html?t=3113

Essentially, the post shows one how to install priorities, to provide priority protection against a foreign RPM repository from over-riding (upgrading) a native CentOS/RHEL repository.

Then, the RPMForge repository is added with a priority of 9 (so you can add packages, but the package definitions from native repos will over-ride RPMForge).

Be the first to like.

Horrendous FreeBSD bonniee++ latency

16-Mar-10

On my ZFS tank:
> bonnie++
Writing a byte at a time…done
Writing intelligently…done
Rewriting…done
Reading a byte at a time…done
Reading intelligently…done
start ’em…done…done…done…done…done…
Create files in sequential order…done.
Stat files in sequential order…done.
Delete files in sequential order…done.
Create files in random order…done.
Stat files in random order…done.
Delete files in random order…done.
Version 1.96 ——Sequential Output—— –Sequential Input- –Random-
Concurrency 1 -Per Chr- –Block– -Rewrite- -Per Chr- –Block– –Seeks–
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
fbsd2 2G 15 86 12165 15 7534 13 34 83 36594 27 76.8 10
Latency 7792ms 7856ms 9665ms 574ms 1311ms 106s
Version 1.96 ——Sequential Create—— ——–Random Create——–
fbsd2           -Create– –Read— -Delete– -Create– –Read— -Delete–
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 3696 89 13108 92 3347 92 2572 80 5668 93 1679 93
Latency 129ms 11843us 5603us 573ms 8095us 7143us
1.96,1.96,fbsd2,1,1268703835,2G,,15,86,12165,15,7534,13,34,83,36594,27,76.8,10,16,,,,,3696,89,13108,92,3347,92,2572,80,5668,93,1679,93,7792ms,7856ms,9665ms,574ms,1311ms,106s,129ms,11843us,5603us,573ms,8095us,7143us

On the SATA internal hard drive:

> bonnie++
Writing a byte at a time…done
Writing intelligently…done
Rewriting…done
Reading a byte at a time…done
Reading intelligently…done
start ’em…done…done…done…done…done…
Create files in sequential order…done.
Stat files in sequential order…done.
Delete files in sequential order…done.
Create files in random order…done.
Stat files in random order…done.
Delete files in random order…done.
Version 1.96 ——Sequential Output—— –Sequential Input- –Random-
Concurrency 1 -Per Chr- –Block– -Rewrite- -Per Chr- –Block– –Seeks–
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
fbsd2            2G 80 94 48456 34 15479 14 165 76 24437 12 119.8 7
Latency 114ms 363ms 351ms 119ms 138ms 68345ms
Version 1.96 ——Sequential Create—— ——–Random Create——–
fbsd2                -Create– –Read— -Delete– -Create– –Read— -Delete–
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 8027 70 27864 89 17448 71 6583 50 +++++ +++ 21427 86
Latency 183ms 31646us 13344us 320ms 274us 50409us
1.96,1.96,fbsd2,1,1268703414,2G,,80,94,48456,34,15479,14,165,76,24437 ,12,119.8,7,16,,,,,8027,70,27864,89,17448,71,6583,50,+++++,+++,21427,86,114ms,36 3ms,351ms,119ms,138ms,68345ms,183ms,31646us,13344us,320ms,274us,50409us

Thought maybe that automatic ZFS snapshots were getting in the way. But no:


Writing a byte at a time…done
Writing intelligently…done
Rewriting…done
Reading a byte at a time…done
Reading intelligently…done
start ’em…done…done…done…done…done…
Create files in sequential order…done.
Stat files in sequential order…done.
Delete files in sequential order…done.
Create files in random order…done.
Stat files in random order…done.
Delete files in random order…done.
Version  1.96       ——Sequential Output—— –Sequential Input- –Random-
Concurrency   1     -Per Chr- –Block– -Rewrite- -Per Chr- –Block– –Seeks–
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
fbsd             2G    16  85 12138  14  7793  12    39  92 37740  27  78.2  10
Latency              6945ms    7693ms   21537ms     569ms    1137ms      104s
Version  1.96       ——Sequential Create—— ——–Random Create——–
fbsd                -Create– –Read— -Delete– -Create– –Read— -Delete–
files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
16  4046  83 14718  93  3581  92  3546  91 12360  94  3029  92
Latency               263ms    6412us    5649us     312ms    5466us    5879us
1.96,1.96,fbsd,1,1268710009,2G,,16,85,12138,14,7793,12,39,92,37740,27,78.2,10,16,,,,,4046,83,14718,93,3581,92,3546,91,12360,94,3029,92,6945ms,7693ms,21537ms,569ms,1137ms,104s,263ms,6412us,5649us,312ms,5466us,5879us

Test with bonnie:

Writing with putc()…done
Rewriting…done
Writing intelligently…done
Reading with getc()…done
Reading intelligently…done
Seeker 1…Seeker 2…Seeker 3…start ’em…done…done…done…



——-Sequential Output——–—Sequential Input––Random–
-Per Char-–Block—-Rewrite–-Per Char-–Block—–Seeks—
MachineMBK/sec%CPUK/sec%CPUK/sec%CPUK/sec%CPUK/sec%CPU/sec%CPU
fbsd8192869834.71201714.0805012.91782864.23848325.7 54.5 1.6

Be the first to like.

Tuning FreeBSD for Samba network performance

16-Mar-10

I’ve already compiled a custom kernel that enables polling. I’m now following http://forums.freebsd.org/showthread.php?t=9187:

in loader.conf:

aio_load=”YES”

Luckily, I had already built samba with AIO support.

In smb.conf:


min receivefile size = 131072
aio read size = 1
aio write size = 1
use sendfile = yes

In rc.conf:

ifconfig_re0=”DHCP polling”

in sysctl.conf:

kern.ipc.maxsockbuf=16777216
kern.ipc.nmbclusters=32768
kern.ipc.somaxconn=32768
kern.maxfiles=65536
kern.maxfilesperproc=32768
kern.maxvnodes=800000
net.inet.tcp.delayed_ack=0
net.inet.tcp.inflight.enable=0
net.inet.tcp.path_mtu_discovery=0
net.inet.tcp.recvbuf_auto=1
net.inet.tcp.recvbuf_inc=524288
net.inet.tcp.recvbuf_max=16777216
net.inet.tcp.recvspace=65536
net.inet.tcp.rfc1323=1
net.inet.tcp.sendbuf_auto=1
net.inet.tcp.sendbuf_inc=524288
net.inet.tcp.sendspace=65536
net.inet.udp.maxdgram=57344
net.inet.udp.recvspace=65536
net.local.stream.recvspace=65536
net.inet.tcp.sendbuf_max=16777216
net.inet.tcp.mssdflt=1460

See also http://www.psc.edu/networking/projects/tcptune/.

Nuts. Still topping out at 11 MB/s. Wonder if it’s the disk, or if it’s the Windows 7 machine that I’m using to initiate the Samba transfer for testing.

Be the first to like.

Python pretty print in hex

12-Mar-10

I recently needed to pretty print something from Python, but I needed the integers printed in hex rather than decimal. I overloaded the PrettyPrinter class to do it. Here’s how: More…

Be the first to like.

Archiving syslog (dmesg)

09-Mar-10

I’m about to build a FreeBSD kernel, so I decided to keep track of my boot-up console messages. I ran the following:

cat /var/run/dmesg.boot | mutt -nx -s “syslog” $EMAILADDRESS

(Replace $EMAILADDRESS with a real email address.)


Copyright (c) 1992-2009 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:48:17 UTC 2009
root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
Timecounter “i8254” frequency 1193182 Hz quality 0
CPU: Intel(R) Atom(TM) CPU Z510 @ 1.10GHz (1097.26-MHz 686-class CPU)
Origin = “GenuineIntel” Id = 0x106c2 Stepping = 2
Features=0xafe9fbff
Features2=0x40c39d<SSE3,DTES64,MON,DS_CPL,EST,TM2,SSSE3,xTPR,PDCM,>
AMD Features=0x100000
AMD Features2=0x1
TSC: P-state invariant
real memory = 1073741824 (1024 MB)
avail memory = 1026535424 (978 MB)
ACPI APIC Table:
ioapic0 irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: on motherboard
acpi0: [ITHREAD]
ACPI Error: Could not enable PowerButton event 20090521 evxfevnt-298
ACPI Warning: Could not enable fixed event 2 20090521 evxface-235
acpi0: Power Button (fixed)
Timecounter “ACPI-fast” frequency 3579545 Hz quality 1000
acpi_timer0: port 0x1008-0x100b on acpi0
acpi_ec0: port 0x62,0x66 on acpi0
acpi_hpet0: iomem 0xfed00000-0xfed003ff on acpi0
Timecounter “HPET” frequency 14318180 Hz quality 900
acpi_acad0: on acpi0
battery0: on acpi0
battery1: on acpi0
battery2: on acpi0
acpi_button0: on acpi0
pcib0: port 0xcf8-0xcff on acpi0
pci0: on pcib0
vgapci0: port 0x1800-0x1807 mem 0xd8080000-0xd80fffff,0xd0000000-0xd7ffffff,0xd8020000-0xd803ffff irq 16 at device 2.0 on pci0
pci0: at device 27.0 (no driver attached)
pcib1: irq 17 at device 28.0 on pci0
pci2: on pcib1
re0: port 0x2000-0x20ff mem 0xd8100000-0xd8100fff,0xd8400000-0xd840ffff irq 16 at device 0.0 on pci2
re0: Using 1 MSI messages
re0: Chip rev. 0x3c000000
re0: MAC rev. 0x00400000
miibus0: on re0
rgephy0: PHY 1 on miibus0
rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
re0: Ethernet address: 00:01:c0:06:8a:30
re0: [FILTER]
uhci0: port 0x1820-0x183f irq 23 at device 29.0 on pci0
uhci0: [ITHREAD]
uhci0: LegSup = 0x0000
usbus0: on uhci0
uhci1: port 0x1840-0x185f irq 19 at device 29.1 on pci0
uhci1: [ITHREAD]
uhci1: LegSup = 0x0000
usbus1: on uhci1
uhci2: port 0x1860-0x187f irq 18 at device 29.2 on pci0
uhci2: [ITHREAD]
uhci2: LegSup = 0x0000
usbus2: on uhci2
ehci0: mem 0xd8014000-0xd80143ff irq 21 at device 29.7 on pci0
ehci0: [ITHREAD]
usbus3: EHCI version 1.0
usbus3: on ehci0
pci0: at device 30.0 (no driver attached)
pci0: at device 30.1 (no driver attached)
isab0: at device 31.0 on pci0
isa0: on isab0
atapci0: port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x1810-0x181f at device 31.1 on pci0
ata0: on atapci0
ata0: [ITHREAD]
ata1: on atapci0
ata1: [ITHREAD]
acpi_tz0: on acpi0
acpi_tz1: on acpi0
atrtc0: port 0x70-0x73 on acpi0
atrtc0: Warning: Couldn’t map I/O.
cpu0: on acpi0
est0: on cpu0
p4tcc0: on cpu0
pmtimer0 on isa0
orm0: at iomem 0xe0000-0xe17ff pnpid ORM0000 on isa0
sc0: at flags 0x100 on isa0
sc0: VGA
vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
atkbdc0: at port 0x60,0x64 on isa0
atkbd0: irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
ppc0: parallel port not found.
Timecounter “TSC” frequency 1097261935 Hz quality 800
Timecounters tick every 1.000 msec
usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 12Mbps Full Speed USB v1.0
usbus3: 480Mbps High Speed USB v2.0
ad0: 152627MB at ata0-master UDMA33
ugen0.1: at usbus0
uhub0: on usbus0
ugen1.1: at usbus1
uhub1: on usbus1
ugen2.1: at usbus2
uhub2: on usbus2
ugen3.1: at usbus3
uhub3: on usbus3
Root mount waiting for: usbus3 usbus2 usbus1 usbus0
uhub0: 2 ports with 2 removable, self powered
uhub1: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
Root mount waiting for: usbus3
Root mount waiting for: usbus3
Root mount waiting for: usbus3
uhub3: 8 ports with 8 removable, self powered
ugen3.2: at usbus3
umass0: on usbus3
umass0: SCSI over Bulk-Only; quirks = 0x0000
Root mount waiting for: usbus3
umass0:0:0:-1: Attached to scbus0
da0 at umass-sim0 bus 0 target 0 lun 0
da0: Fixed Direct Access SCSI-4 device
da0: 40.000MB/s transfers
da0: 476940MB (976773168 512 byte sectors: 255H 63S/T 60801C)
usbd_set_config_index:523: could not read device status: USB_ERR_SHORT_XFER
ugen3.3: at usbus3
umass1: on usbus3
umass1: SCSI over Bulk-Only; quirks = 0x0000
umass1:1:1:-1: Attached to scbus1
da1 at umass-sim1 bus 1 target 0 lun 0
da1: Fixed Direct Access SCSI-2 device
da1: 40.000MB/s transfers
da1: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
ugen3.4: at usbus3
umass2: on usbus3
umass2: SCSI over Bulk-Only; quirks = 0x0000
umass2:2:2:-1: Attached to scbus2
da2 at umass-sim2 bus 2 target 0 lun 0
da2: Fixed Direct Access SCSI-4 device
da2: 40.000MB/s transfers
da2: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
ugen3.5: at usbus3
ugen2.2: at usbus2
Trying to mount root from ufs:/dev/ad0s1a
ZFS filesystem version 13
ZFS storage pool version 13
Be the first to like.

KeeFox is cool

07-Mar-10

I’ve been using KeePass 2 for a while now. It’s really cool and portable and safe etc. However, it doesn’t integrate with Firefox.
Until now: A talented developer has a plugin for FireFox called KeeFox. It’s really cool. Here’s a screenshot:
Screenshot of FireFox with KeePass menu, showing username/password entries
KeeFox essentially over-rides Firefox’s native password database. Instead, all passwords go to and from KeePass 2. It’s really nice, now, since KeeFox now asks if I want to have a site username/password saved in KeePass. There’s a little bit of growing pains in transitioning from the native Firefox database: passwords stored in Firefox aren’t automatically imported into KeePass. Also, it’d be nice to use KeePass’s password generation facility. (Keep in mind that this is only version 0.7).

The way it works is that when you start Firefox, KeeFox (somehow) detects whether you have KeePass 2 running. If you do, you’ll see a grayed out “Logged In” status on your toolbar. If not, there’s a button that says “Launch KeeFox” (you’ll also be prompted by a pop-down dialog bar). After that, the “Logins” menu expands (as shown in the screenshot) to show you all your KeePass entries. If you visit a site for which you have a KeePass entry (the web site matches the URL field of an entry in KeePass), KeeFox will auto-populate username/password.

In one case, KeeFox had trouble figuring out which fields to auto-populate. (I encountered this on a hefty WordPress configuration screen, where there were a lot of entries and KeeFox filled in my WordPress username for one of them.) Once again, though, it’s only version 0.7, and one can turn off the auto-populate option in KeeFox’s settings.
However, since I’ve been using KeePass for a while now, it’s a welcome integration. Only thing missing from KeeFox (and KeeFox’s web site) is a donate button.

Be the first to like.