I am aware of the command to stop apple devices writing these files to network shares, but regularly our mac users 'forget' to run this command after setting up new profiles or upgrading OSs etc.
I am aware of the command to stop apple devices writing these files to network shares, but regularly our mac users 'forget' to run this command after setting up new profiles or upgrading OSs etc.
You can configure Samba to store resource forks using xattrs instead. See fruit:resource:
https://www.samba.org/samba/docs/current/man-html/vfs_fruit....
You can veto the .DS_Store files. The consequence to Mac users is that the Finder won't remember any display changes they make to windows that correspond to network folders.
https://www.samba.org/samba/docs/current/man-html/smb.conf.5...
veto files = /._*/.DS_Store/.Trashes/.TemporaryItems/
delete veto files = yes
The second line allows vetoed files to be deleted. Otherwise, already existing vetoed files would be stuck on the drive.(Note that "._*" prevents HFS+/APFS extended attributes from being stored on the SMB drive.)
Good. Why would one user's view preferences have an effect on another user? That is what happens if .DS_Store files are left on the server.
If you have readonly access to the folders you can't persist a change to the layout.
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE
You can't, as far as I know, do the same for locally mounted/connected drives, though.Full ext2/3/4 read-write support. $39.95.
There's also fuse-ext2 via macFUSE but its doc still say: "Even though write support is available, please do not mount your filesystems with write support unless you have nothing to lose."
https://www.paragon-software.com/home/extfs-mac/
It also doesn't seem surprising to me that Apple itself wouldn't support ext2/3/4. It's something very few Mac users are going to care about. Why would Apple dedicate any resources to it?
FWIW, I've been using Linux and Macs for over two decades and I can only recall maybe a single time I even wanted to mount an ext formatted drive onto a Mac, and vice-versa (HFS onto Linux). For exchanging files via floppy disks or thumb drives, various flavors of FAT have been near universal for ages. CDs/DVDs/BluRay use their own filesystem. And FTP/NFS/SMB/AFP/HTTP/SCP/RCP have been around forever for exchanging over a network. (Before ssh/scp, there was unencrypted rlogin/rsh/rcp... I'm dating myself.)
- FAT32 can't go above 4GB files, can't do sparse files and can't store UNIX permissions at all
- NTFS can do large and sparse files, but can't deal with UNIX permissions, instead bringing NT ACLs (which no one else understands). exFAT used to be patent encumbered and has the same limitations that NTFS has, plus its support is nowhere near as battle-tested as NTFS is
- HFS/APFS are not supported at all under Windows and support in Linux is spotty at best
- ext4 has third-party read (and if you're risk-tolerant, write) support on Windows and Linux, but it's hacky or expensive
The situation, as it is, is an utter shame.
FWIW, the company I linked elsewhere provides full ext4 support products for both macOS and Windows.
Shoving data across operating systems using USB sticks or drives is a pretty standard thing to do, at least in the corporate world which is filled with slow internet connections (in related words, never underestimate the bandwidth of a truck filled with SD cards), and particularly when having to send data to clients or vendors.
The fact that there is no standard that works on all three major OS families and in the best case also supports encryption is maddening - macOS has Filevault, Windows has Bitlocker and Linux has LUKS, and neither of the three can understand any other.
Just ask an IT helpdesk in any major company how many questions they get a day by people who have to transfer files to a vendor or client, with encryption. Extra fun in anything involving creative work because most of that happens on Macs whereas most big-corp customers use Windows because of Active Directory and GPO. (And no, ZIP isn't an answer because Apple's built-in unarchiver routinely gobbles up when encountering password protected ZIPs)
> I don't even understand the use case for file permissions on an external drive.
Unlike Windows which conveys the fact that an executable is an executable by the file suffix .exe (or .cmd/.bat, and I think *.js was at least until Windows 7 associated with the JScript interpreter), Linux and macOS do so by using the execute permission on the file.
The use case would be to copy a Java application, let's use jadx, downloaded and extracted on a Mac, then copy it via an USB stick or a Windows CIFS file share on another Mac or a Linux machine, and have the command bin/jadx-gui still start up the UI when clicked upon. As soon as any non-Unix filesystem is in the copy path, it gets inevitably nasty.
There's a version of 7zip for windows, linux and Mac. It's supposedly safe for now. Until the next vulnerability is found I guess but that is the same for every option.
Bit of a downside that it is a third party option that would then have to be installed everywhere you want it rather than a native option though.
Latency is the issue! Once I was working at a museum and we needed to get these stupidly high detail 3D scans to the university. Considering the IT policy and available bandwidth it was quicker for us to put all the files on a single HDD and walk it over.
File permissions usually don't make sense on an external drive that's moving between computers, much less computers running a different OS.
I just don't see why it's surprising that Microsoft and Apple don't have built-in support for ext when FAT/exFAT support is good enough for 99% of interop use cases.
exFAT is better, but it is also quite recent development on Linux, since it was licensed and only in 2019 that Microsoft publicly said, they would not ask for any licensing and the specification became publicly available.
Both of them are quite unfriendly to flash memory, but exFAT is good enough.
Files up to 16 EiB, supported from Windows XP and up, Mac's with OSX and up, Linux had some bugs back in 2010 which prevented you from dealing with very large devices that were over 80% full.
Been doing it for over 10 years now, and it is still one of the best formats for universal access.
Really it would be nice if everyone could just natively read EXT3/4 out of the box - theres no reason NOT to add it. And even though Microsofts new file system still doesn't seem to have taken off (ReFS) it is quite good.
Mostly it doesn't. And in any case, Windows doesn't ship with native support for mounting ext either. Only recently by installing WSL can it do so. So a very tiny minority of Windows users care about it.
https://devblogs.microsoft.com/commandline/access-linux-file...
Very hard.
Instead there are 3rd party implementations. Those are independently maintained, serving directly the (comparatively small) target audience.
What I'd REALLY love is to be able to run all of my own services in place of iCloud. I realize that this stuff isn't free to develop and I'd happily pay for it. They've been moving further away from standard formats and protocols with no way for others to integrate in the same way and I'm curious if there are any legal anticompetitive actions on the table should they continue to do so.
Before anybody says it— I have business needs that favor using MacOS directly on Apple Hardware and as a result, iOS is a good choice. Moving from Apple would regularly cause me more grief than these things do. No, you don't know my use case better than me and I have exhaustively explored all alternatives both ancient and modern.
I'm not sure if that will work on iOS since iOS doesn't really have a filesystem - there are apps available on iOS for Syncthing and Obsidian, but I don't know if Obsidian will be able to access the Syncthing synced folder. But it works great for me on Linux PCs + Android. Much better than Nextcloud which is too complex and is a pain to administer over time. Syncthing is super simple to set up does file sync very well, much better than Nextcloud does. Radicale is also easy to set up and just works.
The nice thing about the groupware functionality in Apple Server is that it used all of these standard protocols so it was entirely interoperable with other devices AND it had a nice smooth administration experience.
At the moment, I just pay $15/mo for Cloudron which handles email, is decently smooth for administration though a little more disjointed between the apps than I'd prefer, and can "one click" deploy Radicale, NextCloud, Sogo, et. al. I used to administer servers but it's not what I do now and I have no interested in sinking non-work time into work-like tasks.
EDIT: I have had people say this to me before about windows and thumbs.db. But I personally have not seen this in the wild. Maybe its what old versions of windows did and people are still remembering this?
https://serverfault.com/a/5567
Thumbs.db files are created on my windows 11 pc at least. They’re only created for files that have metadata that requires reading those files. Explorer likes to display the metadata (sometimes) for some folders that have a lot of media in it (pictures, music, videos, etc). If the thumbs.db file is missing, windows will partially read every media file on the server to show thumbnails, that obviously creates unnecessary load but it’s really a trade off that might not make sense for most.
Also, these files provide a useful service to Mac users. You could also find a way to support them instead of fighting this.
I appreciate it may come across as a bit hostile towards the users, but in reality in a budget constrained environment where we cant make it perfect for everybody, we must make sacrifices to make the majority of users have a better experience. In my opinion mac users not having metadata of when a file was last modified pales in comparison to the rest of the business searches taking twice as long on samba shares.
Isn’t that what’s making searches slow, not that the files exist? Why do you suppose that this isn’t a problem for Macs too?
That being said, depending on your business and data structure this doesnt detract from the point. Also if you have a deep nested directory structure with no real files in it, would every level contain a .ds_store file?
There are also AppleDouble (._) files, which are one-per-file. These contain the file's extended metadata and resource fork. Deleting these _may_ cause data loss if there's anything important stored in the resource fork. A better option is to enable vfs_streams on your Samba server to allow storing the additional forks natively on your filesystem (e.g. as xattrs).
(If you're using a modern Windows file server, I believe the resource fork is automatically mapped to an NTFS alternate data stream.)
See:
https://www.samba.org/samba/docs/current/man-html/vfs_stream...
https://www.samba.org/samba/docs/current/man-html/vfs_stream...
I also object to my operating system running all these background processes on MY computer without me commanding it to, and it suggesting on its own that I do this or run that, again in absence of any command to do so. More and more, operating systems and applications are treating MY computer as a dumping ground and science experiment: for things it wants to do, instead of what I want it to do.
I should not have to go off and find a setting somewhere just to stop my operating system from doing things on its own I don’t ask for.
It's worth noting that almost all modern file systems support multiple streams. NTFS has alternate data streams, Ext4 has xattrs. Modern SMB and NFSv4 also both support this at the protocol level.
The problem arises when you're using Samba (without vfs_streams enabled), or you're writing to a legacy FAT filesystem, in which case you start getting the AppleDouble files - again, to prevent data loss.
What about linux that would have 27 in this case?
They already have a solution but they're not using it?
With respect to DS_Store files on shared network drives, that is not true. Such files provide utility to a single Mac user, whichever uploaded the DS_Store file to that directory last. This file is used to store user preferences, which breaks as soon as there are two or more users with different preferences. Simply put, it does not belong on shared network drives at all.
My home NAS file shares are used by only me, so I'd like it to be supported there. So at the very least it needs to be configurable per-share. And in that case, having the server admin add them to veto lists seems like the easiest solution.
and reboot.
Terrible naming on that one...
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool YES