On Jul 18, 2009, at 19:27, McLone wrote: > Hell Low. > > As downloading torrent files from many peers to ZFS > imposes fragmentation (and there's no way to defragment > ZFS volume - what a pity! How come now-a-days FS can > go like this?), i created zvol with UFS2 on it last time > i wanted to watch some old sci-fi. I had plans to > move sci-fi from UFS2/zvol to ZFS when it'll be complete, > but forgot it, and rebooted machine. After reboot > rtorrent said sci-fi is marked as complete, but it > can not find files. I wasn't surprised, as i haven't modified > my /etc/fstab, so i entered "mount /dev/zvol" and pressed > Tab in hope of tcsh (eek) autocomplete. > It just beeped on me. > I've done "ls /dev" and there was no directory there named zvol. > Then i've done "zfs list" and my zvol was there. > Puzzled, i've done "zfs snapshot" and then a little dance of > "zfs send | zfs recv" to a new volume. Now dev entries appeared > (both for newly created snapshot of an old zvol and for new zvol). > I rebooted, and there was no /dev/zvol again. > > I looked at my uname -v output (it was HEAD/amd64 from Jul 1) > and decided to update. Updating didn't solved this problem. > > Strangely, simple "zfs rename zpool/zvol zpool/newzvol" > cures this woe, but i think this is a bug. > > Steps to reproduce: > zfs create -V 1g zpool/zvol > [newfs /dev/zvol/zpool/zvol] > reboot > ls /dev > > Workaround: > zfs rename zpool/zvol zpool/newzvol > mount /dev/zvol/zpool/zvol /mnt OK, I've found the problem we have here... Or, rather, I've found the *reason* (and this shows why I previously said I couldn't reproduce). I haven't found it in source, though. UFS filesystems in fstab are mounted *before* the /dev/zvol directory is populated, at least on my system! If I remove the entry from fstab, everything boots fine, and the directory exists when the boot is complete. If its IN fstab, init gives me a root prompt because it couldn't find /dev/zvol/x/y. Remove it, and again it works on the next boot. And, as you said, renaming it while in single user creates /dev/zvol and thus resolves the issue for that boot and allows me to boot into multiuser with the ZVOL working. Anyone with a clue in these areas know if there's an easy fix to this (i.e. easy enough that we could have it in 8.0)? I'm guessing /etc/ rc.d/zfs simply starts too late in the boot process? Regards, ThomasReceived on Thu Jul 23 2009 - 05:31:30 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:52 UTC