Tag Info

Hot answers tagged

12

FreeNAS is a NAS solution, as such, some technical choices are hidden behind whatever firmware, system or GUI such appliance can use. If you get the partition schema used on a given disk inside a ZFS pool made with FreeNAS (small VM example): $ glabel status Name Status Components ...


12

I think you should reconsider your use of FreeNAS. You've had an uncharacteristically. large. number. of issues. with. your. FreeNAS. installation(s). over. the years. Many of these issues were planning and ZFS design problems. It may be time to refactor or rebuild your environment now that you have some knowledge of best or better-practices.


6

The three commands and ZFS setups you've listed are vastly different configurations. zpool create tank mirror disk1 disk2 disk3 disk4 This creates a 4-way mirror with the capacity of ONE disk. Lots of protection, less space and less performance. I don't think you want that. zpool create tank mirror disk1 disk2 mirror disk3 disk4 This creates a stripe ...


4

Yes. You can run zpool import with no arguments, and it will identify the available pools for you. Asssuming the devices from the old testpool are still there, you will see the "old" testpool, and alongside it a GUID for the pool. Once you have that pools GUID, you can do zpool import $id oldtestpool. After the pool is imported, you can change the ...


4

No, I don't think this is possible in the manner you're describing. You can, however, create a new pool with the single disk and copy your ZFS filesystems to the new pool using a simple zfs send/receive process.


4

A 2TB disk is not 2 TiBi in size - it's only 2*10^12 / 2^30 ~ 1862 GiBi. 4 arrays of 6 effective disks each would be 24 * 1862 = 44703 GiBI, or 43.6 TiBi of real, usable storage. I reckon it has some additional overhead you're not taking into account - IIRC RAIDZ also does snapshots and scrubbing, which take up additional space.


4

Actually, you can rename a zpool. Just not live. It is done exactly as you suggested. You can only export & re-import it using the new name. 'man zpool import' explains it: zpool import [-o mntopts] [ -o property=value] ... [-d dir | -c cachefile] [-D] [-f] [-R root] pool | id [newpool] Imports a specific pool. A pool can be identified by its ...


4

To get a disk serial requires that it is running and available: camcontrol identify <device> |grep ^serial (this might be (S)ATA specific) smartcl -i <device> |grep ^Serial reading the disk label once removed from the enclosure In your case, I think the 3rd solution is the only available. So, Assuming you just want first identify the disk: ...


3

When I run format, and select disk 0, I'm told c4t0d0s3 is part of the root pool: This would be because you've screwed up the slice - it is overlapping with c4t0d0s0. You would need a slice starting at cylinder 3913 to remove the overlap. Then you should be able to add it as a vdev to another pool (if this is what you are after). If you just want to ...


3

The tool tells you what you need to do: "Determine if the device needs to be replaced". The tools are only so intelligent and need you, as the human administrator, to figure some things. The steps required are specific to your hardware and your set up, so you will need to make some decisions based on your knowledge of the system. Take a look at the output ...


3

Type zpool clear raid2 to clear the errors and initiate a scrub. If the errors persist following that, replace the disk. More details about the hardware would help, so this is generic advice. My recommendation for bunch of consumer disks connected to a PC motherboard are different than what I'd do for enterprise-level gear.


3

The slice visibility occurs during the resilvering operation. When it's complete, the normal device names are usually restored. As for your zpool replace operation, you only needed to use the device name. Not the full path. (by the way, that's a crazy-large raidz2 pool!!)


3

I'm fairly sure that this should be as simple as taking a snapshot of the zfs to be moved, and then using zfs send and zfs recv to move that snapshot between zpools: zfs send oldpool/my-data@snap1 | zfs recv newpool/my-data (taken from http://docs.oracle.com/cd/E19963-01/html/821-1448/gbchx.html#gbinw)


2

To clarify the discrepancy in output between the commands: The zpool command counts the disks that are being used for redundancy as space, while the zfs command does not; thus, the 50.5 TB number is your raw disk size, while the 42T is after taking out the 4 disks for redundancy.


2

You can unmount a ZFS drive, but there is no such thing as a ZFS "partition", it's just not how it works. ZFS is both a file system (like EXT or UFS) and a volume manager (like a RAID HBA, or Linux LVM); you can not separate those functions. If you want to create another ZFS file system in the same tank, just use zfs create tank/new_fs. If you want to mimic ...


2

Sure - zfs set compression=off pool/filesystem (or just zfs set compression=off pool for the pool's root filesystem). Note that this does not go back and decompress data that's already been written - you'll need to re-write the data to do that (zfs send and zfs recv can help with this).


2

Attach the second disk as a mirror of the first, wait for resilver, remove the first disk, set the properties to autoexpand. Don't forget to setup boot code or anything like that. Example: zpool attach rpool olddisk newdisk ...wait, check using zpool status rpool zpool detach rpool olddisk zpool set autoexpand=on rpool


2

(I know you already solved your issue, but I found this when looking for an answer to my own which I solved another way) I had an issue similar to this (in that GRAID was messing with my system) when I upgraded FreeBSD with an existing ZFS pool. The pool then became degraded and I received the same sort of DMESG messages you received about an array being ...


2

The ZFS feature set copies=2 was not designed to overcome disk failures (see the comments on the following Q&A): ServerFault: How do you restore the correct number of copies after losing a drive The issue here being that as your pool is made of single disks, ALL disks must be healthy for import. This can only be done in your case by recovering ...


2

If you don't care about the snapshots, I'd probably just run mv in a screen session. Do you have any logical groupings of data that you can move piecemeal? I'm not sure what other options you have if you can't offload the data to another set of storage.


2

Seeing as you had a 4 disk raidz, with one failed disk, why on earth did you decide to use the 'add' command after replacing the disk? The add command does one thing and one thing only - adds vdevs to a pool. You now have a pool where data is striped between the raidz and ad16. Loosing that ONLINE ad16 disk will FAULT the entire pool. As it's not possible ...


1

This not a perfect answer but here is what I did. I turned back the RAID function of the controller in the BIOS. Then I restarted the computer, and went into the BIOS of the RAID card. It showed the disk that was part of a mirror, but was not functional. (I don't know how this happened because that disk was never part of a mirror.) There I have deleted the ...


1

Hard drive manufactures measure disk size in Base 10. Computers measure bytes in Base 2. It should say 42 TiB to clarify the SI use of the tera- prefix.


1

Yes, you can do this live. You can even change the compression type... Remember the distinction between zfs pools and filesystems. Compression properties are set at the zfs filesystem level. New data to the pool will be uncompressed if you turn it off. May I ask why you're interested in disabling compression? The recommendation for ZFS is to leave ...


1

You could run zdb -C rpool to get the GUID of each device, then use that in the detach command. Of course you'll see 2 devices with the same phys_path and it doesn't show the current status so you can't be 100% certain which is the UNAVAIL disk and which is the ONLINE one. You can hope that zdb shows the disks in the same order as zpool status (which it ...


1

the only difference between using the whole disk to create a pool and part of a disk is that you have to partition the disk first. so on your 2 TB drives, create 2 partitions, each 1 TB, using whatever partition tool you choose. (that would not be a zfs utility, but instead something like fdisk.) then when you issue your zpool command, pass the partition ...


1

Did you clear the alerts in fmadm? And the zpool clear... It's safe to run the zpool replace with the -f switch, but I think your statement is wrong, unless you already removed the bad disk. http://docs.oracle.com/cd/E19253-01/819-5461/gbcet/index.html


1

Check the cables or the drive sled and slot. A noisy SATA connection will yield errors and fmadm uses that info to determine when a device is faulted. I've had drives I thought were bad, but it was just ZFS noticing it wasn't getting valid data reliably. I noticed a pinched SATA cable, replaced it and ran zpool clear and zpool scrub, no more errors.



Only top voted, non community-wiki answers of a minimum length are eligible