Forum: PC-Programmierung Shellskript -LBS- Debian 8


von Matthias S. (Gast)


Lesenswert?

Gute N8,

ich bin auf das neue Debian 8 umgestiegen und stehe vor einem Problem.

Ich bekomme mein Shellskript, zur Aktivierung meines Touchpads, einfach 
nicht in den Autostart.
1
#!/bin/sh
2
3
### BEGIN INIT INFO
4
# Provides:          touchpad.sh
5
# Required-Start:    $remote_fs $syslog
6
# Required-Stop:     $remote_fs $syslog
7
# Default-Start:     2 3 4 5
8
# Default-Stop:      0 1 6
9
# Short-Description: Start daemon at boot time
10
# Description:       Enable service provided by daemon.
11
### END INIT INFO
12
13
synclient TapButton=1
14
synclient VertTwoFingerScroll=0
15
synclient VertEdgeScroll=1

Abgelegt habe ich es mit 'chmod +x' unter /etc/init.d/ und 
gestartet/aktiviert werden soll es, wenn ich es richtig verstanden habe, 
mit 'insserv SKRIPTNAME'.

Bin für konstruktive Hinweise dankbar.

von Ray M. (ray_m)


Lesenswert?

warum schreibst du deine 3 zeilen nicht einfach in /etc/rc.local ?

;)

von hink (Gast)


Lesenswert?

Hi,

Debian 8 hat Systemd als default, dass da oben ist aber ein 
SysVInit-Script.

Bsp (aus der Hüfte):
Service synclient.service erzeugen:
1
cat /etc/systemd/system/synclient.service
1
[Unit]
2
Description=synclient script
3
4
[Service]
5
Type=simple
6
ExecStart=/usr/bin/synclient TapButton=1
7
ExecStart=/usr/bin/synclient VertTwoFingerScroll=0
8
ExecStart=/usr/bin/synclient VertEdgeScroll=1

Services neu laden:
1
systemctl daemon-reload
Aktivieren für die Ausführung beim Booten:
1
systemctl enable synclient.service
Starten/Ausführen des Service:
1
systemctl start synclient.service
Aktueller Status des Service:
1
systemctl status synclient.service

von Matthias S. (Gast)


Lesenswert?

Ray M. schrieb:

>warum schreibst du deine 3 zeilen nicht einfach in /etc/rc.local ?

Habe ich ausprobiert, ohne Erfolg.

hink schrieb:

>sudo systemctl enable synclient.service

xxx@localhost:/etc/systemd/system$ sudo systemctl enable 
synclient.service
The unit files have no [Install] section. They are not meant to be 
enabled
using systemctl.
Possible reasons for having this kind of units are:
1) A unit may be statically enabled by being symlinked from another 
unit's
   .wants/ or .requires/ directory.
2) A unit's purpose may be to act as a helper for some other unit which 
has
   a requirement dependency on it.
3) A unit may be started when needed via activation (socket, path, 
timer,
   D-Bus, udev, scripted systemctl call, ...).

von Jobi (Gast)


Lesenswert?

Hi,

brauchst Du das schon im Konsolenbetrieb, oder genügt es, wenn der 
X-Server gestartet ist?

Falls ja, schreib das doch in deine .profile oder .bashrc rein.

Beim nächsten einloggen sollten dann deine Einstellungen passen.

von hink (Gast)


Lesenswert?

Upps...
1
[Unit]
2
Description=synclient script
3
4
[Service]
5
Type=simple
6
ExecStart=/usr/bin/synclient TapButton=1
7
ExecStart=/usr/bin/synclient VertTwoFingerScroll=0
8
ExecStart=/usr/bin/synclient VertEdgeScroll=1
9
10
[Install]
11
WantedBy=multi-user.target

von Matthias S. (Gast)


Lesenswert?

@ Jobi

Es sollte eigentlich beim Systemstart ausgeführt werden, so dass ich 
right from the beginning mein touchpad nutzen kann.

x-server bedeutet, dass die Sache aktiv werden würde, sobald das 
Desktop-GUI, also auch schon die User-Anmeldung gebootet wird, korrekt?

Würde ja auf das Selbe hinauslaufen.

von Jobi (Gast)


Lesenswert?

Korrekt, die Einstellungen hast Du dann erst nach der Anmeldung.

Dann hätten wir noch die
/etc/rc.local

Da kannst Du es auch rein tun...

von Jobi (Gast)


Lesenswert?

Jobi schrieb:
> Korrekt, die Einstellungen hast Du dann erst nach der Anmeldung.
>
> Dann hätten wir noch die
> /etc/rc.local
>
> Da kannst Du es auch rein tun...

och, das hatten wir schon mal :-)

von Matthias S. (Gast)


Lesenswert?

Erst einmal vielen Dank für all die Lösungswege.

Ich habe bis heute Abend noch zu tun. Angesichts der bevorstehenden 
Wetterlage, werde ich meinen Router vermutlich bis Sonntag Morgen 
abstöpseln, weil sicherer.

So habe ich allerdings auch genug Zeit, mir alle Vorschläge genauer 
anzusehen und das Thema Dienste unter Linux einmal richtig 
draufzuschaffen.

von hink (Gast)


Lesenswert?

Matthias S. schrieb:
> So habe ich allerdings auch genug Zeit, mir alle Vorschläge genauer
> anzusehen und das Thema Dienste unter Linux einmal richtig
> draufzuschaffen.
Anscheinend arbeitet synclient nicht auf Kernel-Ebene, sondern erst 
auf XServer-Ebene.
Das wusste ich nicht, da dürfte das aber nie sauber mit Start-Skripten 
funktioniert haben.

Es geht auch ohne Startskript:
https://wiki.archlinux.org/index.php/Touchpad_Synaptics#Frequently_used_options

Matthias S. schrieb:
> Es sollte eigentlich beim Systemstart ausgeführt werden, so dass ich
> right from the beginning mein touchpad nutzen kann.
Dann halt wie oben oder du musst schauen, wie dein Display-Manager 
(LightDM, KDM, GDM3 usw usf) da konfiguriert wird.

Mein Tipp:
Baue dir lieber eine
1
/etc/X11/xorg.conf.d/50-synaptics.conf
 zusammen, ist ja keine Hexenwerk.

von hink (Gast)


Lesenswert?

Chris. schrieb im Beitrag #4209980:
> Du kannst Garnix du bist ein Niemand und das Beweise ich dir auch.
Wann und Wo?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.