Mam program w języku Python, który kopiuje zawartość urządzeń USB podłączonych do mojego komputera, w tym przypadku jest to tablet z Androidem. Skrypt używa pyudev
do wykrywania urządzeń, a następnie GVfs
do ich montowania.
Chciałem uruchomić skrypt i uruchomić go w tle, więc nie muszę go uruchamiać za każdym razem. Próbowałem go /etc/init/
uruchomić, ale działanie GVfs
jako root powoduje problemy, więc postanowiłem uruchomić skrypt za pośrednictwem cron
. Mam ustawiony, aby rozpocząć o określonej godzinie, jeśli to zrobię ps -aux
i mogę zobaczyć proces na liście, jednak jeśli podłączę urządzenie, nic się nie stanie, pliki nie zostaną skopiowane.
Jeśli uruchomię skrypt ręcznie, działa on bez żadnych problemów.
To właśnie mam w swoim crontabie.
45 10 * * * cyberbemon /home/cyberbemon/Development/python/usb-dumper-1.0/build/lib.linux-x86_64-2.7/usb-dumper/./usb-dumper.py
`
Python używa tej env #!/usr/bin/env python
Próbowałem zalogować dane wyjściowe programów do pliku, jak to cyberbemon /home/cyberbemon/Development/python/usb-dumper-1.0/build/lib.linux-x86_64-2.7/usb-dumper/./usb-dumper.py > /home/cyberbemon/usb-dumped/log.txt 2>&1
Ale ten plik jest pusty.
Mam źródło programu stąd: https://codingteam.net/project/usb-dumper/download
2>&1
i zobacz, co się stanie.