I request for help and would appreciate it if someone could help me with my shellscript struggle. The following code is my shellscript to resign the zone-file.
#!/bin/bash
hash=$(head -c 1000 /dev/random | sha1sum | cut -b 1-16)
command=$(dnssec-signzone -3 $hash –N 'KEEP' –o "owolf.dnssec.local" –t /etc/bind/zones/db.owolf.dnssec.local)
sleep 10
service bind9 reload
When i start the script manually it gives me two errors and i can't figure out why.
First Error: !/bin/bash: No such file or directory
I checked it bash is present in the directory /bin.
Second Error: -N Could not open file.
Seems to be an error with the quoting but i already tried ",' and ´ none of them worked.
What else have i tried? I also tried and made sure, that the line endings are converted in unix style, and that there are no other missplaced symbols in the file.
SOLVED The file seems to be broken, created a new file and manually filled in the code. Also fixed some wrong quotes.
#!/bin/bash
hash=$(head -c 1000 /dev/random | sha1sum | cut -b 1-16)
dnssec-signzone -3 "$hash" –N "KEEP" –o "owolf.dnssec.local" –t /etc/bind/zones/db.owolf.dnssec.local
sleep 10
service bind9 reload