ubuntuusers.de

Autostart Root Command

Status: Ungelöst | Ubuntu-Version: Lubuntu 14.04 (Trusty Tahr)
Antworten |

buntulux

Anmeldungsdatum:
1. Juli 2014

Beiträge: Zähle...

Ich würde gerne iftop, welches ein Konsolenprog ist, beim Start laufen lassen.

Der genaue Befehl lautet:

 
sudo iftop -i wlan0

Das Problem ist nun, dass dafür root Berechtigung verlangt wird. Was mich dazu zwingt folgenden Befehl davor einzugeben:

 
sudo su
Passwort eingeben:

sudo iftop -i wlan0

Der Umstand des Passworteingebens verhindert, dass ich ein Skript für den Befehl erstellen kann um dieses beim Start laufen zu lassen.

Gibt es einen Weg dieses terminal Prog dem Autostart hinzuzufügen, und diese Problematik zu umgehen?

Leider habe ich bei Lubuntu 14.04 nur die Möglichkeit dem Autostart einen Programmnamen hinzuzufügen, wobei man kein Command dazuschreiben kann.

Bearbeitet von HaCeMei:

Hilferuf aus Titel entfernt

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14332

buntulux schrieb:

Das Problem ist nun, dass dafür root Berechtigung verlangt wird.

Warum sollte das ein Problem sein? Es gibt doch Verzeichnisse aus denen ein Script, das root-Rechte braucht, gestartet werden kann. Hast Du schon geschaut ob es nicht daran liegt, dass das wlan0-Interface evtl. benötigt wird und zum Zeitpunkt deines "Starts", dieses wlan0-Interface noch nicht zur Verfügung steht?

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

Ich verwende Linux erst seit kurzer Zeit und kenne mich noch nicht so gut aus.

Meine Vermutung ist, dass mein script nicht stimmt.

Dateiname:Script1

 
#!/bin/bash

iftop -i wlan0

exit 0

Danach habe ich das noch als executable gekennzeichnet:

chmod +x Script1

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14332

buntulux schrieb:

Meine Vermutung ist, dass mein script nicht stimmt.

Das Script stimmt schon. Evtl. wird der komplette Pfad von iptop noch benötigt. Du könntest eine Gruppe erstellen in der nur dein user Mitglied ist und diese Gruppe so konfigurieren, dass diese ohne das Passwort dein Script mit autostart ausführen darf. Siehe z. B.: http://wiki.ubuntuusers.de/sudo/Konfiguration

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

Danke für den informativen Link!

Ich habe mich dazu entschlossen kein Passwort mehr zu verwenden und den LXTerminal mit dem perma-root command zu setzen.

Wo finde ich denn den kompletten Pfad von iftop und wie müsste ich den ins Script einfügen?

Danke schonmal für deine Hilfe! 😀

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14332

buntulux schrieb:

Wo finde ich denn den kompletten Pfad von iftop und wie müsste ich den ins Script einfügen?

... mit:

:~$ which iftop
/usr/sbin/iftop

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

Wäre das so richtig?

 

#!/bin/bash
#!/usr/sbin/iftop

iftop -i wlan0

exit 0

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14332

buntulux schrieb:

Wäre das so richtig?

 
#!/bin/bash
#!/usr/sbin/iftop

iftop -i wlan0

exit 0

Nein, so z. B.:

#!/bin/bash
/usr/sbin/iftop -i wlan0
exit 0

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

Habe die Datei in /Downloads/Script erstellt

#!/bin/bash
/usr/sbin/iftop -i wlan0
exit 0

Danach mit folgendem executable gemacht:

 
 jackson@jackson:~$ cd Downloads
jackson@jackson:~/Downloads$ chmod +x Script

Wenn ich das jetzt starte öffnet sich die Konsole mit dem Pfad zu Downloads, aber iftop wird nicht ausgeführt:

 
jackson@jackson:~/Downloads$

Was läuft denn da schief?

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14332

buntulux schrieb:

Was läuft denn da schief?

Evtl. hat es auch mit dem "promiscuous mode" des wlan-Interface zu tun oder/und mit dem socket das von pcap benötigt wird.

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

Gibt es was bestimmtes dass ich dem Code noch hinzufügen könnte?

Wenn ich es zum Beispiel mit einem einfachen Befehl wie df -h probiere und das Script starte, dann kommt auch nur der Terminal mit dem Pfad Downloads auf. Also muss an dem Script noch was fehlen, oder?

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14332

buntulux schrieb:

Also muss an dem Script noch was fehlen, oder?

Das Script funktioniert bei mir. Versuch mal mit:

sudo sh -x ./script

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

Ja das funktioniert ☺

 
jackson@jackson:/home/jackson# cd Downloads
jackson@jackson:/home/jackson/Downloads# sudo sh -x ./Script

Es funktioniert auch wenn ich ./ alleine verwende, aber hierbei dann nur mit root

 
root@jackson:/home/jackson/Downloads#  
root@jackson:/home/jackson/Downloads# ./Script

Wenn ich aber die Datei doppelt klicke, und dann die Option kriege sie mit dem Terminal oder anderem zu öffnen, wird jedes Mal nur der Pfad Downloads angezeigt.

Wenn ich es in den Autostart lege kommt das gleiche.

Also liegts doch nicht am Script?

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

Ich habe probiert ein neues script aufzunehmen, über die *script/exit* funktion. Dieses toggled zu den Downloads und öffnet das von uns erstellte script im Terminal:

root@jackson:/home/jackson# script
Script started, file is typescript
root@jackson:/home/jackson# cd Downloads
root@jackson:/home/jackson/Downloads# sudo sh -x ./script
+ /usr/sbin/iftop -i wlan0
interface: wlan0
IP address is: xxx.xxx.x.xx
MAC address is: xx:xx:xx:xx:xx:xx
+ exit 0
root@jackson:/home/jackson/Downloads# exit
exit
Script done, file is typescript
root@jackson:/home/jackson# 

Das funktioniert zwar bei der Eingabe, jedoch lässt sich das garnicht erst starten.

buntulux

(Themenstarter)

Anmeldungsdatum:
1. Juli 2014

Beiträge: 23

bump

Antworten |