- Skript erstellen
Erstelle ein neues Skript mit dem Namen change_dns.sh.
#!/bin/bash
# DNS-Server in /etc/resolv.conf ändern
echo -e "nameserver 1.1.1.1\nnameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
- Skript ausführbar machen
Gib dem Skript Ausführungsberechtigungen:
chmod +x change_dns.sh
- Skript automatisch nach dem Neustart ausführen
Methode 1: Crontab
Füge das Skript zur Crontab des Root-Benutzers hinzu, damit es nach jedem Neustart ausgeführt wird.
Öffne die Crontab für den Root-Benutzer:
sudo crontab -e
Füge die folgende Zeile hinzu:
@reboot /pfad/zu/deinem/change_dns.sh
Ersetze /pfad/zu/deinem/change_dns.sh durch den tatsächlichen Pfad zu deinem Skript.
Methode 2: Systemd-Dienst
Erstelle eine neue Systemd-Diensteinheit für dein Skript.
Erstelle eine neue Dienstdatei:
sudo nano /etc/systemd/system/change_dns.service
Füge den folgenden Inhalt ein:
[Unit]
Description=Change DNS on Startup
[Service]
ExecStart=/pfad/zu/deinem/change_dns.sh
[Install]
WantedBy=multi-user.target
Ersetze /pfad/zu/deinem/change_dns.sh durch den tatsächlichen Pfad zu deinem Skript.
Lade die Systemd-Dienste neu, aktiviere und starte den neuen Dienst:
sudo systemctl daemon-reload
sudo systemctl enable change_dns.service
sudo systemctl start change_dns.service
Zusammenfassung
Du hast jetzt ein Skript erstellt, das die DNS-Server in der /etc/resolv.conf Datei auf 1.1.1.1 und 8.8.8.8 setzt und dafür gesorgt, dass es nach jedem Neustart ausgeführt wird. Wähle entweder die Crontab-Methode oder die Systemd-Dienst-Methode, je nachdem, welche dir besser gefällt oder für dein System besser geeignet ist.
- Creating Script
Create a new script named change_dns.sh.
#!/bin/bash
# Modify DNS server in /etc/resolv.conf
echo -e "nameserver 1.1.1.1\nnameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
- Granting Execution Permissions to the Script
Grant execution permissions to the script:
chmod +x change_dns.sh
- Automatically Executing the Script after Reboot
Method 1: Crontab
Add the script to the root user’s crontab to execute it after every reboot.
Open the crontab for the root user:
sudo crontab -e
Add the following line:
@reboot /path/to/your/change_dns.sh
Replace /path/to/your/change_dns.sh with the actual path to your script.
Method 2: Systemd Service
Create a new systemd service unit for your script.
Create a new service file:
sudo nano /etc/systemd/system/change_dns.service
Insert the following content:
[Unit]
Description=Change DNS on Startup
[Service]
ExecStart=/path/to/your/change_dns.sh
[Install]
WantedBy=multi-user.target
Replace /path/to/your/change_dns.sh with the actual path to your script.
Reload systemd services, enable, and start the new service:
sudo systemctl daemon-reload
sudo systemctl enable change_dns.service
sudo systemctl start change_dns.service
Summary
You have now created a script that sets the DNS servers in the /etc/resolv.conf file to 1.1.1.1 and 8.8.8.8, and ensured that it is executed after every reboot. Choose either the Crontab method or the Systemd service method, depending on your preference or what is more suitable for your system.