Script vägrar köra annat script.

Permalänk

Script vägrar köra annat script.

..som följd av mina tidigare inlägg kommer ett till - givetvis. :-/
Målet är att när en viss USB-sticka med bestämd Label sätts i ska USB-stickan börja kopiera automatiskt filer etc. till datorn. Sen ska den reboota. Lösningen blev att när stickan stoppas i skapas automatiskt en fil på bestämd plats. Ett underhålls-cron-script som körs varannan minut kollar om filen finns. Finns den, ska det cron-scriptet anropa ett script på USB-stickan (som är auto.monterad). USB-scriptet börjar därmed kopiera filer. Allt funkar fram tills att scriptet som ska kopiera inte funkar.

Jag kan köra scriptet på USB-stickan manuellt från CLI men från Cron-scriptet går det inte.

Jag har givetvis #!/bin/bash överst.
Jag a+x:at samtliga.
Satt chmod 777 på ALLT.
Jag anropar scriptet på USB-stickan med raden: /bin/bash /media/tintin/updatusb/copyscript.sh

Höll på halva söndagen med detta. Jag använder mig av Linux Mint/Linux v 4.4.0-53

Kan nån ge mig ett tips vore det bra. Har googlat vilt och provat men...tror det sitter i nåt grundläggande som jag missat.

Permalänk
Medlem

Hittade detta, men kanske inte beror på det?
https://askubuntu.com/questions/23128/how-do-i-execute-a-file...

Men det kanske går att lägga till udev rules så att scriptet körs automatiskt när stickan pluggas in.
https://unix.stackexchange.com/questions/28548/how-to-run-cus...

Ett annat sätt:
https://fixmynix.com/run-shell-scripts-from-udev-rules/
Men jag förstod nog inte riktigt varför systemd-servicen också behövdes men har inte grunnat så mycket.

Permalänk

Jag kan tyvärr för lite än. För min del känns det som det är nåt med Group/user och/eller att det har nåt med process-tråd att göra och sen hur bash-kommandot skrivs korrekt i scriptet.

De två över länkarna har jag betat av under helgen. Den undre är jag lite för novis för att ha nån åsikt om än. Måste läsa på mer.

Permalänk

@Sweedland:
Jag kom på problemet. Ibland monterades inte USB-minnet riktigt. Bara labeln syntes. Det skedde när det fanns en Terminal öppen som pekade mot monteringen. Låg den kvar öppen, då blev den inte monterad korrekt nästa gång och skriptet kom inte åt kopieringsskriptet.
Så en kontrollerad avmontering av USB:n är på sin plats efter kopieringen.