• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Yet Another Netatalk 2.2 Fork

davewongillies

Well-known member
I'm not sure if anyone else had this problem, but thought I'd drop a post here. I've got a Pi Zero 2W based RaSCSI with the rascsi bridge enabled. On reboot netatalk would fail to load because the rascsi_bridge device would take a while to come up (after RaSCSI said it had started successfully).

I made some override files for the atalk, aftpd, timeload and papd services

Code:
[Unit]
BindsTo=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
After=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
Requires=rascsi.service sys-devices-virtual-net-rascsi_bridge.device

I dropped the contents of that file into the following paths:

Code:
/etc/systemd/system/afpd.service.d/override.conf
/etc/systemd/system/atalkd.service.d/override.conf
/etc/systemd/system/papd.service.d/override.conf
/etc/systemd/system/timelord.service.d/override.conf

A reboot or systemctl daemon-reload should make the updated configuration active.

I also had to make sure that I had a line for each interface in /etc/netatalk/atalkd.conf
 

rollmastr

Well-known member
Perhaps you can help me as I am completely lost here.

I have a RaSCSI connected to a Pi Zero2 W running the latest release of RaSCSI. I installed Netatalk with the easyinstall.sh script. Next I edited /etc/netatalk/atalkd.conf and added rascsi_bridge to the file to bind it to the WiFi bridge.

I can connect to the Pi file server from my modern mac and I can also access it via TCP/IP with 7.5.5 and AppleShare 3.7.4, but I cannot see the server through DDP.

What am I missing? Please help a non-Linux guru out to get this working.

/edit:

AppleTalk Support in Kernel​

In order to use AppleTalk / AFP over DDP the Linux kernel on the Pi needs to have support for AppleTalk, either compiled into it or loaded as a module. Without this kernel module, you will only be able to use Netatalk with TCP.

To check if your kernel has AppleTalk support, first start the atalkd daemon, then issue this command and inspect the output:

$ lsmod | grep appletalk

What should I be looking at? Is this correct?

pi@rascsi:~/RASCSI $ lsmod | grep appletalk


appletalk 36864 28
psnap 16384 1 appletalk
 
Last edited:

rollmastr

Well-known member
Some further digging. The appletalk module does not seem to be the issue. However...

pi@rascsi:~ $ sudo journalctl -u atalkd.service -b
-- Journal begins at Sun 2022-02-06 21:58:35 CET, ends at Tue 2022-05-03 19:19:49 CEST. --
May 03 19:15:28 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:29 rascsi atalkd[448]: atalkd: zero interfaces, exiting.
May 03 19:15:29 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:29 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:29 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:30 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 1.
May 03 19:15:30 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:30 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:30 rascsi atalkd[480]: atalkd: zero interfaces, exiting.
May 03 19:15:30 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:30 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:30 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:31 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 2.
May 03 19:15:31 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:31 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:31 rascsi atalkd[504]: atalkd: zero interfaces, exiting.
May 03 19:15:31 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:31 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:31 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:32 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 3.
May 03 19:15:32 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:32 rascsi atalkd[505]: atalkd: zero interfaces, exiting.
May 03 19:15:32 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:32 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:32 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:32 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:34 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 4.
May 03 19:15:34 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:34 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:34 rascsi atalkd[506]: atalkd: zero interfaces, exiting.
May 03 19:15:34 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:34 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:34 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:35 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 5.
May 03 19:15:35 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:35 rascsi systemd[1]: atalkd.service: Start request repeated too quickly.
May 03 19:15:35 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:35 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:17:03 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:17:03 rascsi atalkd[705]: Set syslog logging to level: LOG_DEBUG
May 03 19:17:03 rascsi atalkd[705]: restart (2.220101)
May 03 19:17:04 rascsi atalkd[705]: zip_getnetinfo for wlan0
May 03 19:17:14 rascsi atalkd[705]: zip_getnetinfo for wlan0
May 03 19:17:24 rascsi atalkd[705]: zip_getnetinfo for wlan0
May 03 19:17:34 rascsi atalkd[705]: as_timer multiple interfaces, no seed
May 03 19:17:34 rascsi atalkd[705]: as_timer can't configure wlan0
May 03 19:17:34 rascsi systemd[1]: Started Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:17:34 rascsi atalkd[705]: as_timer waiting for router
May 03 19:17:34 rascsi atalkd[705]: ready 0/0/0
May 03 19:18:44 rascsi atalkd[705]: done
May 03 19:18:44 rascsi systemd[1]: Stopping Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:18:44 rascsi systemd[1]: atalkd.service: Succeeded.
May 03 19:18:44 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:18:50 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:18:50 rascsi atalkd[717]: Set syslog logging to level: LOG_DEBUG
May 03 19:18:50 rascsi atalkd[717]: restart (2.220101)
May 03 19:18:51 rascsi atalkd[717]: zip_getnetinfo for rascsi_bridge
May 03 19:19:01 rascsi atalkd[717]: zip_getnetinfo for rascsi_bridge
May 03 19:19:11 rascsi atalkd[717]: zip_getnetinfo for rascsi_bridge
May 03 19:19:21 rascsi atalkd[717]: config for no router
May 03 19:19:23 rascsi atalkd[717]: ready 0/0/0
May 03 19:19:23 rascsi systemd[1]: Started Netatalk AppleTalk daemon for AFP fileserver.

So... my AFP Fileserver won't start. Why though? Is there an idiot-proof writeup on how to install this?
 

davewongillies

Well-known member
Some further digging. The appletalk module does not seem to be the issue. However...

pi@rascsi:~ $ sudo journalctl -u atalkd.service -b
-- Journal begins at Sun 2022-02-06 21:58:35 CET, ends at Tue 2022-05-03 19:19:49 CEST. --
May 03 19:15:28 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:29 rascsi atalkd[448]: atalkd: zero interfaces, exiting.
May 03 19:15:29 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:29 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:29 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:30 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 1.
May 03 19:15:30 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:30 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:30 rascsi atalkd[480]: atalkd: zero interfaces, exiting.
May 03 19:15:30 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:30 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:30 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:31 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 2.
May 03 19:15:31 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:31 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:31 rascsi atalkd[504]: atalkd: zero interfaces, exiting.
May 03 19:15:31 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:31 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:31 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:32 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 3.
May 03 19:15:32 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:32 rascsi atalkd[505]: atalkd: zero interfaces, exiting.
May 03 19:15:32 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:32 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:32 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:32 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:34 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 4.
May 03 19:15:34 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:34 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:15:34 rascsi atalkd[506]: atalkd: zero interfaces, exiting.
May 03 19:15:34 rascsi systemd[1]: atalkd.service: Control process exited, code=exited, status=1/FAILURE
May 03 19:15:34 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:34 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:35 rascsi systemd[1]: atalkd.service: Scheduled restart job, restart counter is at 5.
May 03 19:15:35 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:15:35 rascsi systemd[1]: atalkd.service: Start request repeated too quickly.
May 03 19:15:35 rascsi systemd[1]: atalkd.service: Failed with result 'exit-code'.
May 03 19:15:35 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:17:03 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:17:03 rascsi atalkd[705]: Set syslog logging to level: LOG_DEBUG
May 03 19:17:03 rascsi atalkd[705]: restart (2.220101)
May 03 19:17:04 rascsi atalkd[705]: zip_getnetinfo for wlan0
May 03 19:17:14 rascsi atalkd[705]: zip_getnetinfo for wlan0
May 03 19:17:24 rascsi atalkd[705]: zip_getnetinfo for wlan0
May 03 19:17:34 rascsi atalkd[705]: as_timer multiple interfaces, no seed
May 03 19:17:34 rascsi atalkd[705]: as_timer can't configure wlan0
May 03 19:17:34 rascsi systemd[1]: Started Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:17:34 rascsi atalkd[705]: as_timer waiting for router
May 03 19:17:34 rascsi atalkd[705]: ready 0/0/0
May 03 19:18:44 rascsi atalkd[705]: done
May 03 19:18:44 rascsi systemd[1]: Stopping Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:18:44 rascsi systemd[1]: atalkd.service: Succeeded.
May 03 19:18:44 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fileserver.
May 03 19:18:50 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 03 19:18:50 rascsi atalkd[717]: Set syslog logging to level: LOG_DEBUG
May 03 19:18:50 rascsi atalkd[717]: restart (2.220101)
May 03 19:18:51 rascsi atalkd[717]: zip_getnetinfo for rascsi_bridge
May 03 19:19:01 rascsi atalkd[717]: zip_getnetinfo for rascsi_bridge
May 03 19:19:11 rascsi atalkd[717]: zip_getnetinfo for rascsi_bridge
May 03 19:19:21 rascsi atalkd[717]: config for no router
May 03 19:19:23 rascsi atalkd[717]: ready 0/0/0
May 03 19:19:23 rascsi systemd[1]: Started Netatalk AppleTalk daemon for AFP fileserver.

So... my AFP Fileserver won't start. Why though? Is there an idiot-proof writeup on how to install this?
What do you get when you run systemctl status afpd. I think you might be suffering from the same problem that I had above.

Basically the various netatalk services out of the box just attempt to start, but they don't account for the fact that the rascsi_bridge interface takes time to come up. I suggest you try adding configuration files that I documented in my post https://68kmla.org/bb/index.php?threads/yet-another-netatalk-2-2-fork.39889/post-443281
 

rollmastr

Well-known member
afpd is ok, however atalkd is not.

pi@rascsi:~ $ systemctl status atalkd
atalkd.service - Netatalk AppleTalk daemon for AFP fileserver
Loaded: loaded (/lib/systemd/system/atalkd.service; enabled; vendor preset>
Active: failed (Result: exit-code) since Wed 2022-05-04 07:10:11 CEST; 26s>
Process: 498 ExecStart=/usr/local/sbin/atalkd (code=exited, status=1/FAILUR>
CPU: 7ms
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Scheduled restart job, resta>
May 04 07:10:11 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fi>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Start request repeated too q>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Failed with result 'exit-cod>
May 04 07:10:11 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon fo>
...skipping...
atalkd.service - Netatalk AppleTalk daemon for AFP fileserver
Loaded: loaded (/lib/systemd/system/atalkd.service; enabled; vendor preset>
Active: failed (Result: exit-code) since Wed 2022-05-04 07:10:11 CEST; 26s>
Process: 498 ExecStart=/usr/local/sbin/atalkd (code=exited, status=1/FAILUR>
CPU: 7ms
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Scheduled restart job, resta>
May 04 07:10:11 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fi>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Start request repeated too q>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Failed with result 'exit-cod>
May 04 07:10:11 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon fo>


So, you are suggesting I need to create the file /etc/systemd/system/atalkd.service.d/override.conf with the contents:

[Unit]
BindsTo=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
After=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
Requires=rascsi.service sys-devices-virtual-net-rascsi_bridge.device

The directory /etc/systemd/system/atalkd.service.d/ does not exist on my pi. Do I just create it?


/edit:

pi@rascsi:~ $ sudo mkdir -p /etc/systemd/system/atalkd.service.d/
pi@rascsi:/etc/systemd/system/atalkd.service.d $ sudo pico /etc/systemd/system/atalkd.service.d/override.conf

After a restart:

pi@rascsi:~ $ nbplkup
pi@rascsi:~ $ systemctl status atalkd
● atalkd.service - Netatalk AppleTalk daemon for AFP fileserver
Loaded: loaded (/lib/systemd/system/atalkd.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/atalkd.service.d
└─override.conf
Active: activating (start) since Wed 2022-05-04 07:42:23 CEST; 30s ago
Cntrl PID: 639 (atalkd)
Tasks: 2 (limit: 410)
CPU: 18ms
CGroup: /system.slice/atalkd.service
├─639 /usr/local/sbin/atalkd
└─641 /usr/local/sbin/atalkd

May 04 07:42:23 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 04 07:42:23 rascsi atalkd[641]: Set syslog logging to level: LOG_DEBUG
May 04 07:42:23 rascsi atalkd[641]: restart (2.220101)
May 04 07:42:25 rascsi atalkd[641]: zip_getnetinfo for rascsi_bridge
May 04 07:42:35 rascsi atalkd[641]: zip_getnetinfo for rascsi_bridge
May 04 07:42:45 rascsi atalkd[641]: zip_getnetinfo for rascsi_bridge
May 04 07:42:55 rascsi atalkd[641]: config for no router
May 04 07:42:56 rascsi atalkd[641]: ready 0/0/0
May 04 07:42:56 rascsi systemd[1]: Started Netatalk AppleTalk daemon for AFP fileserver.
pi@rascsi:~ $ nbplkup
Brother MFC L2730DW series:LaserWriter 65280.246:132
rascsi:AFPServer 65280.246:130
rascsi:TimeLord 65280.246:128



I still do not see the afp server on my vintage mac though.
 
Last edited:

davewongillies

Well-known member
afpd is ok, however atalkd is not.

pi@rascsi:~ $ systemctl status atalkd
atalkd.service - Netatalk AppleTalk daemon for AFP fileserver
Loaded: loaded (/lib/systemd/system/atalkd.service; enabled; vendor preset>
Active: failed (Result: exit-code) since Wed 2022-05-04 07:10:11 CEST; 26s>
Process: 498 ExecStart=/usr/local/sbin/atalkd (code=exited, status=1/FAILUR>
CPU: 7ms
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Scheduled restart job, resta>
May 04 07:10:11 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fi>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Start request repeated too q>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Failed with result 'exit-cod>
May 04 07:10:11 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon fo>
...skipping...
atalkd.service - Netatalk AppleTalk daemon for AFP fileserver
Loaded: loaded (/lib/systemd/system/atalkd.service; enabled; vendor preset>
Active: failed (Result: exit-code) since Wed 2022-05-04 07:10:11 CEST; 26s>
Process: 498 ExecStart=/usr/local/sbin/atalkd (code=exited, status=1/FAILUR>
CPU: 7ms
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Scheduled restart job, resta>
May 04 07:10:11 rascsi systemd[1]: Stopped Netatalk AppleTalk daemon for AFP fi>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Start request repeated too q>
May 04 07:10:11 rascsi systemd[1]: atalkd.service: Failed with result 'exit-cod>
May 04 07:10:11 rascsi systemd[1]: Failed to start Netatalk AppleTalk daemon fo>


So, you are suggesting I need to create the file /etc/systemd/system/atalkd.service.d/override.conf with the contents:

[Unit]
BindsTo=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
After=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
Requires=rascsi.service sys-devices-virtual-net-rascsi_bridge.device

The directory /etc/systemd/system/atalkd.service.d/ does not exist on my pi. Do I just create it?


/edit:

pi@rascsi:~ $ sudo mkdir -p /etc/systemd/system/atalkd.service.d/
pi@rascsi:/etc/systemd/system/atalkd.service.d $ sudo pico /etc/systemd/system/atalkd.service.d/override.conf

After a restart:

pi@rascsi:~ $ nbplkup
pi@rascsi:~ $ systemctl status atalkd
● atalkd.service - Netatalk AppleTalk daemon for AFP fileserver
Loaded: loaded (/lib/systemd/system/atalkd.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/atalkd.service.d
└─override.conf
Active: activating (start) since Wed 2022-05-04 07:42:23 CEST; 30s ago
Cntrl PID: 639 (atalkd)
Tasks: 2 (limit: 410)
CPU: 18ms
CGroup: /system.slice/atalkd.service
├─639 /usr/local/sbin/atalkd
└─641 /usr/local/sbin/atalkd

May 04 07:42:23 rascsi systemd[1]: Starting Netatalk AppleTalk daemon for AFP fileserver...
May 04 07:42:23 rascsi atalkd[641]: Set syslog logging to level: LOG_DEBUG
May 04 07:42:23 rascsi atalkd[641]: restart (2.220101)
May 04 07:42:25 rascsi atalkd[641]: zip_getnetinfo for rascsi_bridge
May 04 07:42:35 rascsi atalkd[641]: zip_getnetinfo for rascsi_bridge
May 04 07:42:45 rascsi atalkd[641]: zip_getnetinfo for rascsi_bridge
May 04 07:42:55 rascsi atalkd[641]: config for no router
May 04 07:42:56 rascsi atalkd[641]: ready 0/0/0
May 04 07:42:56 rascsi systemd[1]: Started Netatalk AppleTalk daemon for AFP fileserver.
pi@rascsi:~ $ nbplkup
Brother MFC L2730DW series:LaserWriter 65280.246:132
rascsi:AFPServer 65280.246:130
rascsi:TimeLord 65280.246:128



I still do not see the afp server on my vintage mac though.
You need to create both the directory and the override files for all the atalk services (afpd, atalkd, papd, timelord):

Code:
/etc/systemd/system/afpd.service.d/override.conf
/etc/systemd/system/atalkd.service.d/override.conf
/etc/systemd/system/papd.service.d/override.conf
/etc/systemd/system/timelord.service.d/override.conf

Also, you need to be running systemctl status aftpd to show the status of the aftpd daemon.
 

rollmastr

Well-known member
Allright, finally I had some more time to fiddle with this.

Now I did create all four override.conf files in the directories and filled them with the code below

Code:
/etc/systemd/system/afpd.service.d/override.conf
/etc/systemd/system/atalkd.service.d/override.conf
/etc/systemd/system/papd.service.d/override.conf
/etc/systemd/system/timelord.service.d/override.conf

Code:
[Unit]
BindsTo=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
After=rascsi.service sys-devices-virtual-net-rascsi_bridge.device
Requires=rascsi.service sys-devices-virtual-net-rascsi_bridge.device

I think nbplkup looks OK:
Code:
pi@rascsi:~ $ nbplkup
     Brother MFC L2730DW series:LaserWriter                        65280.197:133
                         rascsi:AFPServer                          65280.197:131
                         rascsi:TimeLord                           65280.197:129


systemctl status afpd only shows AFP/TCP, however it says nothing about DDP.

Code:
pi@rascsi:~ $ systemctl status afpd
● afpd.service - Netatalk AFP fileserver for Macintosh clients
     Loaded: loaded (/lib/systemd/system/afpd.service; enabled; vendor preset: enabled)
    Drop-In: /etc/systemd/system/afpd.service.d
             └─override.conf
     Active: active (running) since Wed 2022-05-18 13:47:43 CEST; 6min ago
    Process: 677 ExecStart=/usr/local/sbin/afpd -c 20 (code=exited, status=0/SUCCESS)
      Tasks: 2 (limit: 410)
        CPU: 54ms
     CGroup: /system.slice/afpd.service
             └─682 /usr/local/sbin/afpd -c 20

May 18 13:47:43 rascsi systemd[1]: Starting Netatalk AFP fileserver for Macintosh clients...
May 18 13:47:43 rascsi systemd[1]: Started Netatalk AFP fileserver for Macintosh clients.
May 18 13:47:49 rascsi afpd[682]: AFP/TCP started, advertising 192.168.0.230:548 (2.220101)

I still cannot see the Pi file server in chooser when using DDP. It does work over TCP though. I noticed you wrote this:

I also had to make sure that I had a line for each interface in /etc/netatalk/atalkd.conf

Currently it only contains rascsi_bridge -phase 2 -net 0-65534 -addr 65280.197 for me. Is this insufficient?
 

slipperygrey

Well-known member
@rollmastr I assume the Pi is connected to your network via Ethernet? Please make sure that you have run the script to configure the RaSCSI wired network bridge. It's one of the options in easyinstall.sh. As long as the bridge has been configured, that one line in atalkd.conf should be sufficient.

One way to test that the DDP network between the Pi and your vintage Mac works, is to turn on File Sharing on the Mac side. Once File Sharing has been enabled, you should see another AFPServer instance on the Mac's domain when running nbplkup on the Pi. This is a sign that the two systems can talk to each other.
 

rollmastr

Well-known member
I am running a Pi Zero 2W without Ethernet thus I have to connect through WiFi and use the network bridge for WiFi.

I did reinstall the Pi from scratch to make sure that nothing from my previous experimenting is left that might have negative influence.
I used the latest image from the RaSCSI github v22.05.02. Once installed I ran easyinstall.sh and first installed 7) configure network bridge for WiFi (static IP + NAT). After I had this working I installed Netatalk 2x through easyinstall.sh 8) install AppleShare File Server (Netatalk).

Then I edited /etc/netatalk/atalkd.conf and added rascsi_bridge. Next I created the override files as described in the post above.

I just enabled file sharing on my SE/30 (running 7.1.1) and then checked nbplkup on the pi:
Code:
pi@rascsi:~ $ nbplkup
     Brother MFC L2730DW series:LaserWriter                        65280.197:132
                         rascsi:AFPServer                          65280.197:130
                         rascsi:TimeLord                           65280.197:128

So... they do not see each other. I can connect via TCP though when using chooser 7.6.1 and manually entering the IP-address of my Pi.
 

rollmastr

Well-known member
Holy crap! I am such a moron. On that disk image of 7.1.1 AppleTalk was set to the modem port instead of Alternate Ethernet.
Yay, it finally works!
 

JAG

Well-known member
Has anyone else had a problem with running Netatalk under a virtual machine under ESXi? I have it running well on a Raspberry Pi but when I set it up under Debian on an ESXi VM, I can't login. Under System 7.6.1, the Chooser can see the server, but when I choose it, I get an immediate "No response from server, please try again" error. I vaguely recall something about ESXi not playing nice with DDP because my Mac OS 9.2 PDQ laptop can login no problem.
 

NJRoadfan

Well-known member
Wired ethernet with bridged networking is a must on any VM for DDP to work. No wireless anywhere unless you have an access point that definately supports DDP properly. I know VirtualBox works fine.
 

galgot

Well-known member
Hi, Thank you for this new Netatalk branch.

I’ve been trying to make a share on my R-Pi 3B (Raspbian 9 Stretch) , installed Netatalk 2.2.5 from the repo.
I do want to stay in Raspbian 9, that because my setup uses a kernel driver that fails building in more recent Dedian/Raspbian versions…
With 2.2.5, Could share to MacOSX, but not to Mac OS 8-9s (doesn’t want the more than 8 characters passwd, whatever uams I tried …)

So now I’m trying this Netatalk 2.x. But it fails to configure.
I installed every thing needed I think, as mentioned here :
https://github.com/akuker/RASCSI/wiki/AFP-File-Sharing

And tried configure with :
./configure --enable-systemd --enable-systemd-start --enable-srvloc --disable-zeroconf
As here :
https://github.com/rdmark/Netatalk-2.x

It fails and give me this error :
… checking if large file support is available... no configure: error: AFP 3.x support requires Large File Support.
Any hint to what I miss here ?
 

slipperygrey

Well-known member
@galgot Thanks for trying out my fork! Yes, this is a known issue in the bleeding edge code, introduced with the autoconf changes in PR#10. My running theory is that Large File Support checks were broken already and silently failing for who knows how long, but I haven't had the time to investigate yet.

What you can do is to use the latest stable release instead.
 

pfuentes69

Well-known member
What I did was just to clone the RASCSI repo and use easyintall.sh to install Netatalk... Does this still work? I did it several months ago... (I think all this was done by @slipperygrey for the RASCSI project, right?)
 

slipperygrey

Well-known member
What I did was just to clone the RASCSI repo and use easyintall.sh to install Netatalk... Does this still work? I did it several months ago... (I think all this was done by @slipperygrey for the RASCSI project, right?)
Correct, I wrote that Netatalk installation script for RaSCSI. It currently uses the earlier (20220101) stable release of my fork. I should probably make a standalone version that doesn't depend on cloning a RaSCSI repo. :)
 

galgot

Well-known member
@galgot Thanks for trying out my fork! Yes, this is a known issue in the bleeding edge code, introduced with the autoconf changes in PR#10. My running theory is that Large File Support checks were broken already and silently failing for who knows how long, but I haven't had the time to investigate yet.

What you can do is to use the latest stable release instead.
Thanks for the fast response :)
Tried that stable release, configures fine, but build fail :
cnid_dbd.c: In function ‘transmit’: cnid_dbd.c:444:8: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing] db->db_dir, *(uint64_t *) stamp); ^~ cc1: all warnings being treated as errors Makefile:443 : la recette pour la cible « cnid_dbd.lo » a échouée make[4]: *** [cnid_dbd.lo] Erreur 1 make[4] : on quitte le répertoire « /home/galgot/Documents/Netatalk-2.x-netatalk-2-220401b/libatalk/cnid/dbd » Makefile:511 : la recette pour la cible « all-recursive » a échouée make[3]: *** [all-recursive] Erreur 1 make[3] : on quitte le répertoire « /home/galgot/Documents/Netatalk-2.x-netatalk-2-220401b/libatalk/cnid » Makefile:589 : la recette pour la cible « all-recursive » a échouée make[2]: *** [all-recursive] Erreur 1 make[2] : on quitte le répertoire « /home/galgot/Documents/Netatalk-2.x-netatalk-2-220401b/libatalk » Makefile:477 : la recette pour la cible « all-recursive » a échouée make[1]: *** [all-recursive] Erreur 1 make[1] : on quitte le répertoire « /home/galgot/Documents/Netatalk-2.x-netatalk-2-220401b » Makefile:407 : la recette pour la cible « all » a échouée make: *** [all] Erreur 2
yes... my system is in French, hope it's understandable tho , problem with cnid_dbd ?...

I going to try the RaSCSI install stuff...
 
Top