RISC OS / Mac shared drive
John Rickman (71) 645 posts |
Is there a recommended way to get a shared drive working between a Mac and a native, ie not emulated RISC OS machine? |
Colin Ferris (399) 1809 posts |
Which RO machine? |
John Rickman (71) 645 posts |
armx6 but I could use a Qube with pi compute module |
Paolo Fabio Zaino (28) 1853 posts |
It depends on the version of your mac OS. Recent versions have abandoned support for SMB v1, which is required by RISC OS to be able to access a shared folder via SMB protocol. Otherwise you should try NFSv3 which should still be fully supported (and offers better performance than SMB) and use Sunfish / Moonfish for that. HTH |
Michael Grunditz (8594) 259 posts |
I use NFS (SunFish) for mounting shares on my NAS and also share from linux which in turn is mounted iscsi volumes. I have used NFS server on macOS in the past for use with RISC OS. It worked quite well. |
John Rickman (71) 645 posts |
I have downloaded !Sunfish from PackMan onto ARMX6. Is 2.05 the laterst? It seems very old. |
Stuart Swales (8827) 1349 posts |
Chris Gransden has an updated build of the Sunfish front end for ARMv7 systems |
John Rickman (71) 645 posts |
Chris Graansden mods installed but the frontend still crashes at 5E338. |
Michael Grunditz (8594) 259 posts |
The sunfish frontend is buggy in new systems. I have been maintaining my configuration by hand since several years back. |
Sprow (202) 1155 posts |
Don’t forget there’s an NFS client shipped with the OS as part of OmniClient. What I don’t know (as I don’t have a Mac) is whether Macs are Unix-like enough these days that they’ll let you in, it certainly lets FreeBSD and Linux connect so you might be in with a shout. Any experienced Mac users here able to confirm/deny? |
Doug Webb (190) 1158 posts |
You did reboot your system after installing and then try? The other thing is with SunFish loaded on the iconbar what does Menu>Info give as mine says 2.05 (08 Jun 2013). Then you could try running the SunFish module in the application through !PatchSWP to clean it up for more modern systems. Then if not see you emails as I will send you my version that works here, but as Michael says it can be a bit flaky at times. Final as Sprow says try NFS in Omniclient but you will have to hand edit OmniClients startup file to ensure it is running. |
David Pitt (9872) 362 posts |
NFS on the Mac, Sonoma here, can talk to native RISC OS. One, or more, earlier macOS versions didn’t, but I can’t remember which. There is a setup tool which may or may not help. The GUI of Sunfish 2.05 (08 Jun 2023) is a total crashy nightmare, but NFS itself to a Mac is fine. Mount files need to be used, the front end can successfully manage that at least. It is in the help. It is not SWP’s and perversely the GUI is fine with a low vector ROM. (Or at least is was last time I tried.) NFS via Omni can see the Mac mounts. There may be an issue the other way in writing to the Mac, but is has been a while since I last tried that. I use Sunfish mount files, works for me! |
John Rickman (71) 645 posts |
Thanks everybody for the support. There is a lot to digest, but at least it looks as if it is worth perservering. I will assume the Mac end is doable and concentrate on getting Sunfish to work. Then look into Omni. |
Paolo Fabio Zaino (28) 1853 posts |
@ Sprow
Quite few considerations: For non experienced users, the only “graphical” way to set up NFS server on a mac is to use the Mac OS Server App, which can be purchased from the Apple Store and it’s relatively cheap. There is also a 3rd party NFS Manager utility, but given it’s 3rd party I do not recommend it as it is not even distributed through the Apple Store, so it’s completely unchecked for security! Here is the link as reference only: https://www.bresink.com/osx/NFSManager.html However, without the Server App (or NFS Manager), then configuration is manual and text based and not the most intuitive one for non-experienced users. For everyone interested, here is the procedure to set up an NFS sahre on macOS: Before starting, make sure you know which subnet(s) your macOS and RISC OS machiens are in, this is needed to configure NFS shares. Also make sure you know the correct user name you’ll want to use for the share (macOS normally display the user full name, so it’s not intuitive to known the actual username). First, using admin privvileges, we need to add and edit a file calles exports and place it in /etc/ directory, this is the command line using vi editor: sudo vi /etc/exports When in the editing screen add the directory one wants to share with which subnets and users as follow: # NFS Share to Virtualbox guests: /path/to/my/shared/directory -mapall=<uid of local user> <subnet>/<subnetmask>(<permissions>) No “<” or “>” ;) Where: - uid of local user is the username (jdove for example) of the user with the right file and directory permissions for the shared path https://man7.org/linux/man-pages/man5/nfs4_acl.5.html Commonly used flag list: rw,fsid=root,all_squash,anonuid=1000,anongid=1000,no_subtree_check Here is a full example:
The above is VERY insecure, but it’s a good starting point! When completed the edititng (if you’re using vi) then press ESC and then type (without the double quotes) “:wq!” and press return to confirm the save and quit. Finally to start the NFS server type the following command: sudo nfsd start If you get an error message that NFS Server was already started then use: sudo nfsd restart At this point you need to configure macOS firewall to allow NFS traffic. This is done via Settings → Security and Privacy and the port to open are: 2049 and 111 When done that, you can try to connect to it. Here is how-to using !OmniClient (yes Omniclient WORKS! No, I dont’ get paid by ROOL to sponsor OmniCLient! lol) Before you run OmniCLient, you need to enable the NFS protocol, so you need to open your !Omniclient app, go to files and edit Startup. Before you edit it make sure you copy of !Omniclient has NFS module in RMStore directory (I have seen some dodgy copies on some machine I have fixed which did NOT have all the modules). In Startup change the value 0 at this line with 1: SetEval Omni$NFS 0 Save and close. Run !OmniClient (if you had it already running then close it from the TaskManager window and then re-run it) When ready, using menu mouse button on the omniclient icon on the icon bar then go to Mounts → Protocols → NFS In the Name field type a memorable and short name In the server field type the IP or the FQDN of your mac In the Directory field type the FULL shared path, so, in the example above it would be /Users/Shared/Public (make sure caps are also typed correctly) In the user field the username (or nobody if don’t want to use a user, but remember nobody has NO write privileges!) In the password field the user password Connect HTH |
David Pitt (9872) 362 posts |
As I understand it, which is stretching it a bit, Sunfish is apparently more ‘benevolent’ in that it is less strict on permissions than Omni.
I have now got writing to the mac via Omni NFS going by mapping to my mac account with the NFS Manager tool. |
David Pitt (9872) 362 posts |
macOS Server is not present in the App Store here, one Sonoma. I did find a reference to it being discontinued |
Paolo Fabio Zaino (28) 1853 posts |
Haaa! Cheers David! |
Dave Higton (1515) 3497 posts |
It all depends on exactly what you want to achieve. I opted to set up NAS on an OpenMediaVault server on a Raspberry Pi with two 2.5" spinning rust 1TB drives. We normally use one, and a timed rsync task runs at 2am every day to syncs everything on the first drive to the second. Rather than putting share-worthy stuff on one computer and sharing it from there, it all goes on the first NAS drive. It’s good for backups too, of course. I have a second Raspberry Pi set up as an OpenVPN server, so we can both save and retrieve stuff to/from the server from our mobile phones or laptop while we’re out of the house. The system is cheap, and I recommend to you to consider something like it. |
John Rickman (71) 645 posts |
@Paolo
But on RISC OS I get either of the following messages:
|
Paolo Fabio Zaino (28) 1853 posts |
@ John
Sounds like your mac firewall still has port 111 blocked. Can you please check that the firewall has the correct configuration? In case of doubt you can do a quick test by disabling the firewall if you are on your home network. HTH |
John Rickman (71) 645 posts |
Sounds like your mac firewall still has port 111 blocked. My firewall GUI is limited. I can’t see any reference to port numbers or NFS I have also tried turning off the firewall but it has made no difference. |
Chris Gransden (337) 1202 posts |
If you click ‘FS List’ on the OmniClient menu the nfs server should show up in the ‘Network servers’ window. |
David Pitt (9872) 362 posts |
What version of macOS is in use? From Catalina onwards Apple introduced a more complicated arrangement of Volumes to allow the operating system itself to be read only. It is now necessary to specify full paths for NFS to share and not just what the Finder shows. imac@iMacPro ~ % showmount -e Exports list on localhost: /System/Volumes/Data/Users/imac/Downloads Everyone /System/Volumes/Data/Users/Shared Everyone imac@iMacPro ~ % |
Chris Gransden (337) 1202 posts |
Works fine here using folder names using macos ventura(13.6.x). e.g /Users/username |
David Pitt (9872) 362 posts |
That will be me being wrong about Catalina. It is true now here with Sonoma. |