Help Entware i aplikacje dla nie admina?

Remus

Passing Basics
Beginner
Jan 16, 2016
17
3
3
Bytom
QNAP
TS-x53A
Ethernet
1 GbE
  • ·
  • TS-x53A
  • ·
  • 1 GbE
  • ·
  • QTS 5.0.1.2277 Build 20230112
Witam,
Odpaliłem u siebie na qnap speedtest-cli wg tego opisu: Rozwiązany - Jak zbadać szybkość łącza na qnap ?. (dotychczas speedtest miałem na raspberry tylko, ale przy moim łączu trochę mi obcinało - raspberry ma ograniczenie do szybkowści usb2.0). Otóż speedtest-cli działa u mnie na qnap ale tylko jak zaloguję się po ssh jako administrator i odpalę ręcznie a chciałbym ten proces zautomatyzować, dodając skrypt do crona (bo w tej sytuacji nie chce mi to działać nawet, jak w cronie wydaję polecenie sudo ./speedtest-cli). Doszedłem do tego, że skrypt mi nie działa z poziomu innego użytkownika niż admin, gdyż python jest zainstalowany dla admina. Jak odpalam speedtest-cli z poziomu użytkownika to dostaję:
Code:
Traceback (most recent call last):
  File "./speedtest-cli", line 26, in <module>
    import timeit
ImportError: No module named timeit
W ogóle to entware działa mi tylko z poziomu admina, tzn jak zaloguję się do ssh na innego użytkownika to nie mam dostępu do tego, co zainstalowałem z entware, min. mc i nie mam dostępu do entware, tzn nic nie mogę instalować wydając polecenie opkg instal .... I pewnie to stąd bierze się, że wszystko co instaluję z entware jest tylko dla użytkownika admin.
Jak to zmienić, żeby z poziomu użytkownika z uprawnieniami admina też mieć dostęp do tego wszystkiego?



Wersja oprogramowania Firmware: 4.3.6.0895 Build 28/03/2019
Model serwera: QNAP TS-253A
 
bo qpkg sa pisane tak zeby działały pod userem admin

sprawdz co masz w zmiennej $PATH i dopisz przed odpaleniem skryptu.
swoją drogą - na damski parasol ta zabawa z innym userem ? ... po restarcie , Twoje zmiany szlag trafi.

odpalaj to jako admin i miej to z głowy.
 
  • ·
  • TS-x53A
  • ·
  • 1 GbE
  • ·
  • QTS 5.0.1.2277 Build 20230112
Ok, dodanie brakujących ścieżek pomogło (z tego co wyczytałem to do czasu wylogowania ale to już coś). Dzięki.
Ale crontab dalej nie chce tego odpalać. Używam Webcrontab z repozytorium. Próbuję systemowego crona, ale też nie chce działać. No chyba to jest systemowy, bo znajdujący się tu: /etc/config/crontab chociaż polecenie: which crontab wskazuje: /opt/bin/crontab. Jednak otwarcie crona z tej lokalizacji to same krzaki. Pytanie, czy ten crontab w /etc/config to prawidłowa ścieżka, skoro polecenie which pokazuje co innego ??
bo qpkg sa pisane tak zeby działały pod userem admin

sprawdz co masz w zmiennej $PATH i dopisz przed odpaleniem skryptu.
swoją drogą - na damski parasol ta zabawa z innym userem ? ... po restarcie , Twoje zmiany szlag trafi.

odpalaj to jako admin i miej to z głowy.
No ale z crona nie chce mi tego odpalać, nawet jak dodam sudo przed poleceniem odpalenia

Aha, crontab -e nie działa, zwraca: crontab: can't change directory to '/opt/var/spool/cron/crontabs': No such file or directory więc edytuję fizycznie plik a potem przeładowuję crontaba - jednak nie wiem, czy edytuję prawidłowy plik (ale trochę wpisów tam jest)
 
  • ·
  • TS-x53A
  • ·
  • 1 GbE
  • ·
  • QTS 5.0.1.2277 Build 20230112
no postępowałem wg tych wskazówek, ale nic to nie daje (wydaje mi się, że zadanie w ogóle się nie uruchamia). Utworzyłem dla testu coś takiego:
*/1 * * * * /opt/domoticz/scripts/python/speedtest-cli >> /opt/domoticz/scripts/python/log.txt
czyli co 1 minutę powinien się uruchomić a wynik uruchomienia przesłać do pliku log.txt (tak to rozumiem). Niestety plik log.txt jest cały czas pusty.
Oczywiście komendy: crontab /etc/config/crontab && /etc/init.d/crond.sh restart po edycji wykonuję. Notabene pierwsza część zwracała mi błąd: /opt/var/spool/cron/crontabs': No such file or directory bo rzeczywiście brakowało tam katalogu cron i crontabs (utworzyłem je ręcznie, wrzuciłem tam plik crontab i komenda nie zwraca już błędu).
Jest jakiś inny sposób, żeby sprawdzić, czy crontab działa albo jaki jest wynik wywołania zadania ??
 
Polecam CZYTANIE ze ZROZUMIENIEM co PRODUCENT napisał:

upload_2019-4-7_22-7-14.png


żaden crontab coś tam !
 
  • ·
  • TS-x53A
  • ·
  • 1 GbE
  • ·
  • QTS 5.0.1.2277 Build 20230112
Ok, ten Twój sposób pomiaru łącza jest lepszy i działa z wiersza poleceń ale wciąż nie działa mi z crona. Oczywiście edytuję plik tekstowy a nie wywołuję polecenia crontab. Mimo dodania wpisu:
*/1 * * * * /usr/local/bin/speedtest.sh >> /opt/domoticz/scripts/python/log.txt
skrypt się chyba nie uruchamia (dodałem w nim opcję wysyłania danych do domoticz ale nic mi się tam nie zmienia a powinno co minutę). Dodatkowo plik log.txt jest pusty (utworzyłem go sam ale jest cały czas pusty). Mam coś nie tak z tym crontabem bo z wiersza poleceń mi wszystko działa jak należy.
Ok, doczytałem drobny druk: */2 - co 2 dozwolona wartość (np. w pierwszej kolumnie będzie to 0,2,4,6...56,58), zmieniłem na 2 ale to i tak nie pomaga.
 
Wyedytowałeś CRONa zgodnie z tym co podesłał wyżej SiewcaRyżu? Pamiętaj też o zrestartowaniu usługi po edycji. Uruchamianie zadań można w łatwy sposób zweryfikować poprzez obserwację z użyciem narzędzia htop.
 
  • Like
Reactions: kaktus
  • ·
  • TS-x53A
  • ·
  • 1 GbE
  • ·
  • QTS 5.0.1.2277 Build 20230112
Zaczął mi działać crontab. Tutaj chyba znalazłem rozwiązanie: [HELP]Crontab not running scripts - QNAP NAS Community Forum
Po wydaniu polecenia:
Code:
 /usr/bin/crontab /etc/config/crontab
zaczął mi działać bez problemów po wykonaniu restartu:
Code:
/etc/init.d/crond.sh restart
Dziękuję za pomoc 'SiewcaRyżu' i za linka do pomiaru łącza, Twój skrypt jest dużo prostszy (łatwiejszy do edycji).
 

Users search this thread by keywords

  1. instal python