Motion - RaspberryPi?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet
Weiß jemand wieso Motion bei mir nicht Richtig installiert wird?

Ja. Es wird richtig installiert. Man lese einfach sinnentnehmend die Meldungen:

motion[2321]: [0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create log file /var/log/motion/motion.log: Permission denied

Motion hat Probleme, das Logfile anzulegen, weil die Berechtigungen nicht passen.


Nicolaus55 
Fragesteller
 13.02.2022, 00:03

Ja, aber wenn ich in cd /etc/default/ gehe finde ich keine motion Datei. Ich habe es bereits öfters neu installiert die Datei wird nicht erstellt.

0
franzhartwig  13.02.2022, 00:14
@Nicolaus55

Muss da denn eine Datei liegen? Ich finde den Verweis auf eine Datei in /etc/default nur in sehr alten Tutorials. Wenn ich das richtig sehe, konfigurierst Du daemon on|off in /etc/motion/motion.conf.

Aber vorher musst Du das Rechteproblem beheben.

1
Nicolaus55 
Fragesteller
 13.02.2022, 00:19
@franzhartwig

Aber wenn ich dann z.b. sudo service motion restart eingebe bekomme ich wieder diesen Error:

Message from syslogd@Nicolaus at Feb 13 00:18:02 ...

 motion[3896]: [0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create log file /var/log/motion/motion.log: Permission denied

Broadcast message from systemd-journald@Nicolaus (Sun 2022-02-13 00:18:02 CET):

motion[3896]: [0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create log file /var/log/motion/motion.log: Permission denied

0
franzhartwig  13.02.2022, 13:11
@Nicolaus55

Dann lies doch noch einmal die Fehlermeldung bei der Installation. Dann lies die Fehlermeldung beim Neustart des Dienstes. Und dann lies meine Antwort. Fällt Dir was auf?

Das Problem liegt immer noch darin, dass motion keine Logdatei anlegen kann. Da stimmen die Rechte nicht. Das schrieb ich bereits und sollte eigentlich zu verstehen sein. Warum reagierst Du darauf nicht? Warum hängst Du Dich an der /etc/default/motion.conf auf, die es offensichtlich nicht mehr gibt? Behebe diesen Fehler, damit motion startet. Danach kannst Du Dich um andere Dinge kümmern.

1
franzhartwig  13.02.2022, 13:44
@Nicolaus55
sudo service motion restart

Daran sehe ich, dass Du wohl völlig veraltete Tutorials verwendest und nur wenig Erfahrung mit Linux/Debian hast. Der Befehl service ... restart ist veraltet und funktioniert nur noch aufgrund von Abwärtskompatibilitäten.

Ich vermute, dass apparmor das Anlegen des Logs verhindert. Motion läuft nicht als root, sondern mit dem Benutzer motion. Und dieser Benutzer darf halt nicht überall hinschreiben. Mache mal zwei Terminal-Fenster auf. In dem einen Fenster schauen wir auf die Logdatei, in die apparmor schreibt:

tail -f /var/log/syslog

Im zweiten Terminal-Fenster startest Du motion:

sudo systemctl start motion

Wie lauten die neuen Zeilen in /var/log/syslog?

0
Nicolaus55 
Fragesteller
 13.02.2022, 14:35
@franzhartwig

Im zweiten Terminal kommt diese Nachricht:

Broadcast message from systemd-journald@Nicolaus (Sun 2022-02-13 14:34:32 CET):

motion[5196]: [0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create                                                                            log file /var/log/motion/motion.log: Permission denied

Message from syslogd@Nicolaus at Feb 13 14:34:32 ...

 motion[5196]: [0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create                                                                            log file /var/log/motion/motion.log: Permission denied

Feb 13 14:34:32 Nicolaus motion: [0:motion] [NTC] [ALL] conf_load: Processing th                                                                           read 0 - config file /etc/motion/motion.conf

Feb 13 14:34:32 Nicolaus motion[5196]: [0:motion] [NTC] [ALL] conf_load: Process                                                                           ing thread 0 - config file /etc/motion/motion.conf

Feb 13 14:34:32 Nicolaus motion[5196]: [0:motion] [ERR] [ALL] myfopen: Error ope                                                                           ning file /var/log/motion/motion.log with mode a: Permission denied

Feb 13 14:34:32 Nicolaus motion[5196]: [0:motion] [EMG] [ALL] motion_startup: Ex                                                                           it motion, cannot create log file /var/log/motion/motion.log: Permission denied

Feb 13 14:34:32 Nicolaus motion[5196]: [0:motion] [ERR] [ALL] myfopen: Error ope                                                                           ning file /var/log/motion/motion.log with mode a: Permission denied

Feb 13 14:34:32 Nicolaus motion[5196]: [0:motion] [EMG] [ALL] motion_startup: Ex                                                                           it motion, cannot create log file /var/log/motion/motion.log: Permission denied

Feb 13 14:34:32 Nicolaus systemd[1]: motion.service: Succeeded.

0
franzhartwig  13.02.2022, 15:13
@Nicolaus55

Der Schuss verpuffte im Ofen. Keine Meldungen von apparmor, wie ich das erhofft hatte. Also habe ich mir gerade auch einmal motion installiert. Bei mir läuft das fehlerfrei durch. Motion ergibt beim Start keine Fehlermeldung, ein Log wird allerdings auch nicht angelegt. Die Datei /etc/default/motion ist da.

Ich habe in dieser Datei dann daemon=yes gesetzt. Dann wird die Logdatei angelegt. Wenn ich die Datei /etc/default/motion entferne, startet motion ebenfalls, die Logdatei wird angelegt.

Wie ist die Ausgabe von

uname -a
dpkg -l | grep motion
sudo systemctl status apparmor

?

0
Nicolaus55 
Fragesteller
 13.02.2022, 15:23
@franzhartwig

Ja, aber bei mir wird die /etc/default/motion Datei nicht erstellt. Die Ausgabe:

Linux Nicolaus 5.10.92-v7l+ #1514 SMP Mon Jan 17 17:38:03 GMT 2022 armv7l GNU/Linux

ii motion                4.3.2-1             armhf    V4L capture program supporting motion detection

Unit apparmor.service could not be found.

0
franzhartwig  13.02.2022, 15:58
@Nicolaus55

Ja, aber bei mir wird die /etc/default/motion Datei nicht erstellt.

Das schriebst Du bereits einige Male. Ich benötige hier jetzt keine alten Informationen zum x-ten Male.

Linux Nicolaus 5.10.92-v7l+ #1514 SMP Mon Jan 17 17:38:03 GMT 2022 armv7l GNU/Linux

Das ist aktuell.

ii  motion                4.3.2-1             armhf    V4L capture program supporting  motion detection

Bei mir ist es

ii motion                4.1.1-1.1+b2

Woher hast Du die Version? Wie genau hast Du die Installation vorgenommen?

Unit apparmor.service could not be found.

Dann kann uns das auch nicht ins Knie schießen. Meine initiale Vermutung war also definitiv falsch. Ich benötigte von Dir also die exakten Angaben, wie Du die Installation vorgenommen hast.

0
Nicolaus55 
Fragesteller
 13.02.2022, 16:10
@franzhartwig

Mit diesem einfachen Befehl habe ich motion installiert: sudo apt-get install motion

0
franzhartwig  13.02.2022, 18:14
@Nicolaus55

Hast Du bereits Bullseye? Bei mir sieht

cat /etc/issue
Raspbian GNU/Linux 10 \n \l

so aus. Steht bei Dir eine 11, wo bei mir die 10 steht?

0
franzhartwig  13.02.2022, 20:17
@Nicolaus55

Du hast bereits Bullseye, ich habe Buster. Deshalb kann ich das Problem nicht nachstellen. Möglicherweise ist das Paket in Bullseye nicht in Ordnung. Mit Bestimmtheit kann ich das aber nicht sagen. Jetzt gibt es zwei Möglichkeiten:

  • Du legst die Datei /etc/default/motion selbst an.
  • Du legst die Logdatei selbst an.

Die Datei /etc/default/motion hat nur zwei Zeilen:

sudo nano /etc/default/motion
# set to 'yes' to enable the motion daemon
start_motion_daemon=no

Die Logdatei:

sudo touch -p /var/log/motion/motion.log && sudo chown -R motion.adm /var/log/motion && sudo chmod 2750 /var/log/motion && sudo chmod 644 /var/log/motion/motion.log

Alternativ installierst Du statt Bullseye (Debian 11) erst mal Buster (Debian 10). Da funktioniert die Installation von motion.

0
Nicolaus55 
Fragesteller
 13.02.2022, 20:54
@franzhartwig

Bei der Log-Datei kommt dieser Fehler:

touch: Ungültige Option -- p

„touch --help“ liefert weitere Informationen.

0
franzhartwig  13.02.2022, 23:10
@Nicolaus55

Jupp, ich war im falschen Film. Den Parameter -p gibt es bei mkdir, nicht bei touch. Also:

sudo mkdir /var/log/motion && sudo touch /var/log/motion/motion.log && sudo chown -R motion.adm /var/log/motion && sudo chmod 2750 /var/log/motion && sudo chmod 644 /var/log/motion/motion.log
0
Nicolaus55 
Fragesteller
 14.02.2022, 16:42
@franzhartwig

mkdir: das Verzeichnis „/var/log/motion“ kann nicht angelegt werden: Die Datei e                                                                           xistiert bereits

0
franzhartwig  14.02.2022, 17:03
@Nicolaus55

Dann lege nur noch die Logdatei an und setze die Rechte:

sudo touch /var/log/motion/motion.log && sudo chown -R motion.adm /var/log/motion && sudo chmod 2750 /var/log/motion && sudo chmod 644 /var/log/motion/motion.log
0
Nicolaus55 
Fragesteller
 14.02.2022, 17:19
@franzhartwig

Es kommt jetzt dieser Fehler:

[0:motion] [NTC] [ALL] conf_load: Processing thread 0 - config file /etc/motion/                                                                           motion.conf

[0:motion] [ERR] [ALL] myfopen: Error opening file /etc/motion/motion.conf with                                                                            mode a: Permission denied

[0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create log file /etc/                                                                           motion/motion.conf: Permission denied

Message from syslogd@Nicolaus at Feb 14 17:19:28 ...

 motion[1857]: [0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create                                                                            log file /etc/motion/motion.conf: Permission denied

Broadcast message from systemd-journald@Nicolaus (Mon 2022-02-14 17:19:28 CET):

motion[1857]: [0:motion] [EMG] [ALL] motion_startup: Exit motion, cannot create                                                                            log file /etc/motion/motion.conf: Permission denied

0
franzhartwig  14.02.2022, 18:54
@Nicolaus55

Ich habe das Gefühl, als wäre Dein System komplett verkonfiguriert oder aber das Paket motion bei Bullseye kaputt. Ich steige hier aus. Erstens habe ich hier kein System, um das nachzustellen. Ich habe auch keine Kapazitäten, das hier bereitzustellen. Zweitens fehlen Dir wesentliche Grundlagen bei der Administration des Servers. Du scheinst überhaupt keine Idee zu haben, was diese Meldungen bedeuten und was die Befehle, die ich Dir genannt habe, bewirken. Das ist eine denkbar schlechte Voraussetzung für den Betrieb eines Servers.

Du hast, wenn die von mir genannten Befehle richtig ausgeführt wurden, ein Logfile /var/log/motion/motion.log angelegt und dem Verzeichnis und der Datei die richtigen Rechte gegeben. Trotzdem moniert motion den Zugriff auf die Konfigurationsdatei. Das ist nicht normal und ich kann das nicht per Ferndiagnose beheben.

Noch einmal mein Tipp: Installiere Buster und versuche es da mit motion. Hier lief das einwandfrei.

0