Can you try moving a sub-directory and recover from the snapshots?
As long as my original data is intact, I can browse/read every sub-directory. The issue is when the sub-directory is missing from the original path.
Can you try moving a sub-directory and recover from the snapshots?
As long as my original data is intact, I can browse/read every sub-directory. The issue is when the sub-directory is missing from the original path.
Confirmed, the Previous Versions prompt is definitely serving the files off the SMB share when going through sub-directories, not the .snapshots directory:
Files at the top level can be recovered. I can't figure out the why, the parameters seem correct for smb.conf and I've tried all types of combinations here. I can't really tell if this is a bug or a misconfiguration.
And before anyone asks, browsing this data from a mapped share or URI yields the same result. Here it is doing it from the URI itself, same issue:
I also thought this was a permission issue, but that's not the case. Whenever the snapshots are created, something's wrong with how the path is presented when trying to copy from them. I'm pulling my hair out trying to figure this out.
So I got an interesting issue, and I couldn't find anyone else with the same problem after some searching.
Long story short, I am trying to recover from a previous snapshot on a share. The volume is using btrfs, and the snapshot date is there. But when I try to recover it using Windows Previous Versions, I get "Item Not Found". It seems like is trying to recover from the original path, well since it was deleted of course it can't find it. It doesn't seem to be using the snapshots path to recover from, even though I can browse the data. See below:
Eventually, I just used WinSCP to grab what I needed from the .snapshots folder. I replicated this issue on an external USB HDD that also has a backup of the same data with snapshots as well, and a 2nd OMV 7.6.0-1 server also with a btrfs volume and snapshots.
As of note, if the data is actually not deleted from the share and you try to "recover" or open a file from within Previous Versions, it works but is not actually grabbing the data off the snapshots path but rather the actual live share.
To replicate:
1. Create a snapshot of the share
2. Delete the original data
3. Use Previous Versions on Explorer to recover
4. Profit?
I am not sure if this is a Samba Shadow Copy path issue or a misconfiguration on my end, but this is pretty bog standard stuff.
Any input helps!
# This file is auto-generated by openmediavault (https://www.openmediavault.org)
# WARNING: Do not edit this file, your changes will get lost.
#======================= Global Settings =======================
[global]
workgroup = WORKGROUP
server string = %h server
dns proxy = no
log level = 0
log file = /var/log/samba/log.%m
max log size = 1000
logging = syslog
panic action = /usr/share/samba/panic-action %d
passdb backend = tdbsam
obey pam restrictions = no
unix password sync = no
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
socket options = TCP_NODELAY IPTOS_LOWDELAY
guest account = nobody
load printers = no
disable spoolss = yes
printing = bsd
printcap name = /dev/null
unix extensions = yes
create mask = 0777
directory mask = 0777
map to guest = Bad User
use sendfile = yes
aio read size = 1
aio write size = 1
time server = no
wins support = no
disable netbios = yes
multicast dns register = no
server min protocol = SMB3_00
# Special configuration for Apple's Time Machine
fruit:aapl = yes
fruit:copyfile = yes
fruit:nfs_aces = no
# Extra options
fruit:model = MacRack
access based share enum = yes
veto files = /.DS_Store/.AppleDouble/.AppleDesktop/Network Trash Folder/.AppleDB/.TemporaryItems/Temporary Items/.snapshots
delete veto files = yes
[nobody]
browseable = no
#======================= Share Definitions =======================
[Backups]
comment = External HDD
path = /srv/dev-disk-by-uuid-051c2056-fd32-434f-b257-df5695e4620f/Backups/
guest ok = no
guest only = no
read only = yes
browseable = no
inherit acls = no
inherit permissions = no
ea support = yes
store dos attributes = no
smb encrypt = required
shadow:mountpoint = /srv/dev-disk-by-uuid-051c2056-fd32-434f-b257-df5695e4620f/
shadow:snapdir = /srv/dev-disk-by-uuid-051c2056-fd32-434f-b257-df5695e4620f/.snapshots/
shadow:basedir = /srv/dev-disk-by-uuid-051c2056-fd32-434f-b257-df5695e4620f/Backups/
shadow:sort = desc
shadow:format = _%Y%m%dT%H%M%S
shadow:delimiter = _
shadow:snapprefix = ^Backups\(@hourly\)\{0,1\}\(@daily\)\{0,1\}\(@weekly\)\{0,1\}\(@monthly\)\{0,1\}\(@yearly\)\{0,1\}$
shadow:localtime = no
dfree command = /usr/sbin/omv-btrfs-dfree
dfree cache time = 30
vfs objects = catia fruit streams_xattr btrfs shadow_copy2
printable = no
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
hide special files = yes
follow symlinks = yes
wide links = no
hide dot files = yes
valid users = @"admins"
invalid users =
read list =
[TimeMachine]
comment = macOS Backups
path = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/TimeMachine/
guest ok = no
guest only = no
read only = no
browseable = no
inherit acls = yes
inherit permissions = yes
ea support = yes
store dos attributes = no
smb encrypt = required
fruit:encoding = private
fruit:locking = none
fruit:metadata = stream
fruit:resource = file
fruit:veto_appledouble = no
fruit:wipe_intentionally_left_blank_rfork = yes
fruit:delete_empty_adfiles = yes
fruit:time machine = yes
shadow:mountpoint = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/
shadow:snapdir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/.snapshots/
shadow:basedir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/TimeMachine/
shadow:sort = desc
shadow:format = _%Y%m%dT%H%M%S
shadow:delimiter = _
shadow:snapprefix = ^TimeMachine\(@hourly\)\{0,1\}\(@daily\)\{0,1\}\(@weekly\)\{0,1\}\(@monthly\)\{0,1\}\(@yearly\)\{0,1\}$
shadow:localtime = no
dfree command = /usr/sbin/omv-btrfs-dfree
dfree cache time = 30
vfs objects = catia fruit streams_xattr btrfs shadow_copy2
printable = no
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
hide special files = yes
follow symlinks = yes
wide links = no
hide dot files = yes
valid users =
invalid users =
read list =
write list =
fruit:time machine max size=500G
[Public]
comment = Drop-Box
path = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/Public/
guest ok = yes
guest only = no
read only = no
browseable = yes
inherit acls = yes
inherit permissions = yes
ea support = yes
store dos attributes = no
shadow:mountpoint = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/
shadow:snapdir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/.snapshots/
shadow:basedir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/Public/
shadow:sort = desc
shadow:format = _%Y%m%dT%H%M%S
shadow:delimiter = _
shadow:snapprefix = ^Public\(@hourly\)\{0,1\}\(@daily\)\{0,1\}\(@weekly\)\{0,1\}\(@monthly\)\{0,1\}\(@yearly\)\{0,1\}$
shadow:localtime = no
dfree command = /usr/sbin/omv-btrfs-dfree
dfree cache time = 30
vfs objects = catia fruit streams_xattr btrfs shadow_copy2
printable = no
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
hide special files = yes
follow symlinks = yes
wide links = no
hide dot files = yes
read list =
write list =
[Media]
comment = Guests are read-only
path = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/Media/
guest ok = yes
guest only = no
read only = no
browseable = yes
inherit acls = yes
inherit permissions = yes
ea support = yes
store dos attributes = no
shadow:mountpoint = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/
shadow:snapdir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/.snapshots/
shadow:basedir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/Media/
shadow:sort = desc
shadow:format = _%Y%m%dT%H%M%S
shadow:delimiter = _
shadow:snapprefix = ^Media\(@hourly\)\{0,1\}\(@daily\)\{0,1\}\(@weekly\)\{0,1\}\(@monthly\)\{0,1\}\(@yearly\)\{0,1\}$
shadow:localtime = no
dfree command = /usr/sbin/omv-btrfs-dfree
dfree cache time = 30
vfs objects = catia fruit streams_xattr btrfs shadow_copy2
printable = no
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
hide special files = yes
follow symlinks = yes
wide links = no
hide dot files = yes
read list =
write list =
hide unreadable = yes
[Private]
comment = Private Share
path = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/Private/
guest ok = no
guest only = no
read only = no
browseable = yes
inherit acls = yes
inherit permissions = yes
ea support = yes
store dos attributes = no
smb encrypt = required
shadow:mountpoint = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/
shadow:snapdir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/.snapshots/
shadow:basedir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/Private/
shadow:sort = desc
shadow:format = _%Y%m%dT%H%M%S
shadow:delimiter = _
shadow:snapprefix = ^Private\(@hourly\)\{0,1\}\(@daily\)\{0,1\}\(@weekly\)\{0,1\}\(@monthly\)\{0,1\}\(@yearly\)\{0,1\}$
shadow:localtime = no
dfree command = /usr/sbin/omv-btrfs-dfree
dfree cache time = 30
vfs objects = catia fruit streams_xattr btrfs shadow_copy2
printable = no
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
hide special files = yes
follow symlinks = yes
wide links = no
hide dot files = yes
valid users = @"admins"
invalid users =
read list =
write list = @"admins"
[FileHistory]
comment = Veeam Backups
path = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/FileHistory/
guest ok = no
guest only = no
read only = no
browseable = no
inherit acls = yes
inherit permissions = yes
ea support = yes
store dos attributes = no
smb encrypt = required
shadow:mountpoint = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/
shadow:snapdir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/.snapshots/
shadow:basedir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/FileHistory/
shadow:sort = desc
shadow:format = _%Y%m%dT%H%M%S
shadow:delimiter = _
shadow:snapprefix = ^FileHistory\(@hourly\)\{0,1\}\(@daily\)\{0,1\}\(@weekly\)\{0,1\}\(@monthly\)\{0,1\}\(@yearly\)\{0,1\}$
shadow:localtime = no
dfree command = /usr/sbin/omv-btrfs-dfree
dfree cache time = 30
vfs objects = catia fruit streams_xattr btrfs shadow_copy2
printable = no
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
hide special files = yes
follow symlinks = yes
wide links = no
hide dot files = yes
valid users =
invalid users =
read list =
write list =
#======================= Home Directories =======================
[homes]
comment = Home directories
browseable = no
inherit acls = yes
inherit permissions = yes
writable = yes
create mask = 0600
force create mode = 0600
directory mask = 0700
force directory mode = 0700
valid users = %S
hide special files = yes
follow symlinks = yes
wide links = no
shadow:mountpoint = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/
shadow:snapdir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/.snapshots/
shadow:basedir = /srv/dev-disk-by-uuid-b547fd47-3448-4781-8eec-f53c6284b6d1/Shares/Users/
shadow:sort = desc
shadow:format = _%Y%m%dT%H%M%S
shadow:delimiter = _
shadow:snapprefix = ^homes\(@hourly\)\{0,1\}\(@daily\)\{0,1\}\(@weekly\)\{0,1\}\(@monthly\)\{0,1\}\(@yearly\)\{0,1\}$
shadow:localtime = no
dfree command = /usr/sbin/omv-btrfs-dfree
dfree cache time = 30
vfs objects = catia fruit streams_xattr btrfs shadow_copy2
Alles anzeigen
I do happen to have one of these with the iLO5 enablement card. You can get the card for around $40 on Amazon.
As far as the CPU is concerned, it is plenty powerful as a NAS and run Dockers or any other containers you choose. VMs are okay if you have plenty of memory, but not stellar.
If you get one, I recommend a NVMe M.2 SSD on a low profile PCIe adapter for your boot drive. Any low cost solution will do, and this thing is rock solid in terms of reliability. And yes, is more efficient than your older setup.
I read your comments on GitHub so I deleted and re-created the share with transport encryption, and now it works as you described.
I am thinking is leftover from a long time ago, this box was originally running on OMV 3.xx and I've always upgraded to the next major release. I am not too surprised.
Thanks for looking into it!
Yep, is a pretty straightfoward thing.
openmediavault Release: 6.9.2-1
I just noticed today that enabling "Transport encryption" per share wasn't working, and after some digging I concluded that the syntax for this option on this build of OMV is incorrect:
That syntax is for Samba v4.14.xx and above. The correct syntax for the version in OMV6 (v4.13.xx) is:
I was able to get my shares encrypted properly once I added "smb encrypt = required" to my "Private Share":
I raised issue 1605 on GitHub:
Once OpenMediaVault starts using Samba v4.14 and above, this would need to be revisited.
I personally like to use the MDADM soft RAID for RAID5/6 instead of HPE's own solution (and I work for HPE!)
My reason behind it is that MDADM is not hardware dependent, while a failure on your HPE SmartArray controller is the complete opposite.
As far as performance is concerned, I don't see any advantages other than the writing caching features of the HPE controller (which is dependent on a battery that needs regular servicing) but it also depends on how much data you will be writing on a regular basis and how many clients will be using it.
As long as you are aware of the limitations of hardware RAID and are able to get spare parts at any time, I don't see any reason to move away from it.
For just file sharing, no need to go the Xeon and memory upgrade route.
The base model is more than enough.
I agree that your old server may have reached the point that is no longer a good option to keep feeding new drives to.
As far as transitioning, I’d recommend a fresh install so you can take advantage of UEFI, and you will need UEFI anyway if you need to boot off a NVMe SSD which I strongly recommend.
As of right now, Microservers only exist on Gen7 (yours), Gen8, Gen10 and Gen10+. Gen8 has been discontinued for a while and Gen10 was not a great replacement in my opinion since it lacks a lot of what made the Gen8 a great server.
Gen10+ brings it all back, has more options and it is smaller. Definitely avoid a discontinued model if you can help it since UEFI is a big deal and this only started on Gen9 hardware. Gen10 as far as the Microservers are concerned.
You have a couple of options. I would have to either convert towers to rack servers or use a shelf for towers in our racks. These shelves are not exactly cheap, but you may be able to find it used on eBay. Since the ML10 v2 is fairly lightweight, you can use 417705-B2 as long as your rack is deep enough for it.
Or use a generic rack shelf and pad it with some packing foam, secure the tower to the shelve with a Velcro strap around it so that it won't move around (that's what I had to do sometimes).
Buying a used server is not a bad idea at all, it all depends on what you want to do. If it is just for storage, I'd recommend the MicroServer Gen10+ which is relatively inexpensive even when new. It has x4 LFF bays, x4 Ethernet ports, and a PCIe slot. You can easily get that, add four very large SATA hard drives and get an inexpensive PCIe to M.2 NVMe adapter with a cheap M.2 NVMe for the OMV OS. Although it does have the iLO5 chip, you do have to purchase the iLO5 network adapter which if you shop around, you can get for less than $50.
I got that server for myself and I have x4 10TB drives, for a total of 30TB of storage. Honestly, the small size, lower power consumption, low noise and low heat that comes out of it really made it totally worth it for me. Plus, it looks pretty!
Hi there.
Normally, when RBSU cannot communicate with iLO is due to a misconfiguration or a corrupt iLO firmware. There are a few things you can try out:
Removing the CMOS battery will erase all the RBSU and iLO4 settings from the server. If this doesn't resolve the issue, is probable that iLO has a corrupted firmware EEPROM. This may require the motherboard to be replaced.
I see. I wonder if this is the new expected behavior or if is just a new default for it, kinda sucks since I didn't expect it.
Cool, I'll do the same and replicate.
I know right? Is so bizarre, I don't even know where to start on trying to figure this out.
As you said, I don't see where it would generate this or even why.
I did see an impact that this would have for me, and that's when using WOL. The app I use wouldn't be able to determine if the server is up since it has use the the physical MAC to power it up. I got scripts on another server that checks those things and powers it up to RSYNC files from one to the other, this will be a challenge.
@ryecoaaron maybe you'll have an idea on this
Hi all!
I'm doing an early test of OMV 5.2.3-2 through an upgrade from version 4. I've been able to see a few issues along the upgrade and was able to fix them all, but something caught my attention.
When creating my bond (I use 802.3ad LACP) I noticed that the MAC address gets auto-generated, instead of deriving it from the 1st NIC. Here's a snapshot I grabbed from iLO:
The newly generated MAC is highlighted. I don't actually see any ill side-effect with this, other than the IP changing for those that use DHCP and maybe those that prefer to use the physical MAC (like me).
Does anyone knows if this is by design and expected?
Hello everyone!
iLO4 2.70 has been released. Among the bug fixes, this new version has HTML5 support for the KVM console and works with any modern browser. Java or .NET are no longer required.
To update iLO from its own interface, simply open the cp038075.exe with the 7-zip utility and extract the ilo_270.bin file. Then go to "Administration" and "Firmware". You can now upload the .bin file from there, is self-explanatory at this point.
Updating your iLO will not cause any downtime on your server, it can be done live. This iLO4 update applies to all Gen8 and Gen9 servers.
Gen10 servers already had HTML5 console support on iLO5 since version 1.20.
So here's how you can make the SSD on the Microserver Gen8 OOD port bootable:
And that's it! The server can now boot your SSD regardless of where is connected.
For those that already had OMV in the drive and had GRUB elsewhere, you have to install GRUB back into your SSD for this to work.
Although I've been able to add/remove the volume from being an array with RAID 0 and didn't lose any data, I recommend that you at least make a backup in the event something does happen. Is unlikely, but you never know.
Also, make sure that "Hard Disk Drive" is the first one under the boot order. You can change this either with iLO under Virtual Media, or the BIOS/RBSU settings (F9).