Call signs instead of node numbers

I am trying to run this script.
And I am getting errors

There’s simple script (by WA3DSP) that can convert the node number to callsign.
I found it very useful to keep tracking what’s going on when I connect to other nodes.

Download the script

First, download the script to your Allstar system by:
Lunch for the first time to update the database

./ -a
in the command line.
It will print many lines on the screen, just let it finish.

If you get a permission denied, try typing
chmod +x write_node_callsigns
and run the script again.

Schedule it

Now we want to it run automatically to update all the new nodes.
So we type:
crontab -e

Go to the end of the file and add the line:

17 20 * * * ./write_node_callsigns -a

This will run the script every day at 20:17 pm.
If you want to change it you can use to set your preferred time.

Now save the file by CTRL+O and Enter to save and then CTRL+X to exit.

And done!

Thanks to Doug WA3DSP for updating the script.

Is what I am trying to run
This is the errors I get

[root@n3idspi3 ~]# ./ -a
bash: ./ Permission denied
[root@n3idspi3 ~]# chmod +x write_node_callsigns
chmod: cannot access ‘write_node_callsigns’: No such file or directory
[root@n3idspi3 ~]# ./ -a
bash: ./ Permission denied


Clearly this is a permission error.
Permissions have 3 levels for 3 types of users each.
a owner, group and everyone else
read write and execute.

Guessing that you were not root user when you ran the command “chmod +x write_node_callsigns”
and perhaps did not have rights to change the permissions on the file in the first place.
So, try
sudo chmod +x write_node_callsigns

here is some help I found quickly on the subject but it may not be the best,
but now you know the path you need to take.

Hard for me to relate much anymore because I have run as root on many servers for a very long time.
Also see
chown - change owner/group

Mike, thank you for your suggestions…
still having issues…

[root@n3idspi3 ~]# sudo chmod +x write_node_callsigns
chmod: cannot access ‘write_node_callsigns’: No such file or directory
[root@n3idspi3 ~]# sudo ./ -a
sudo: ./ command not found
[root@n3idspi3 ~]#

linux is still a foreign language to me.

Sounds like you are using Hamvoip and not AllstarLink. While largely the same function, Doug and crew have made some OS changes in Hamvoip that I found to be less than transparent. The two are not the same. If you are using Hamvoip, you may do better to contact them.


Mike please feel free to contact me at 419 seven 8 8 seven 6 7 5 and I can help you with the issue.

I am kinda guiding you in the blind, so I may say something that may not exactly be relevant.
So, this is a bit generic

The file you are attempting to chmod either has to be in the current directory or you should specify that on your command line to the file.
sudo chmod +x /etc/asterisk/dir/

Next I might say to check the ownership of the file. Many ways to do that but

ls -l

will do that.
What it needs to be would be unknown to me but I would think asterisk:asterisk would allow it to run from macro sched as well as a sudo or root execution.
sudo chown User:Group

sudo chown asterisk:asterisk /path/to/

Back to your command line…

sudo chmod +x /path/to/

execute the file

sudo ./ -a

or state the path in the command if you are not in the same directory

sudo ./dir/path/ -a

So, I am sorry to stop right there as this becomes more of a lesson in linux which is available online.
Suggesting you go back to the author for better instruction if you are still stumped.
But I hope you get where you are going despite my lack of help and not knowing the program you are working with.

write_node_callsigns !=

1 Like

Good catch ! - I certainly missed it.

Plain text answer is when you did the chmod, you did not specify the .sh and so it is not the same file.

Some of us who started with dos and converted to linux know this well by experience.
dos/win you have a ‘filespec’ the dot XXX
But in linux, it really is just one filename but we have used the dos contention to help keep things organized.
So, in linux the whole name must be specified.

sudo chmod +x