Köra kommando automatiskt vid uppstart ?

Permalänk

Köra kommando automatiskt vid uppstart ?

Jag undrar hur jag gör för att lättast köra ett kommando vid varje uppstart. Som det är nu så får jag manuellt köra kommandot:
"rar2fs /media/Main/ /home/user/media/ --seek-length=1 -o allow_other" vid varje uppstart.

Burken kör Lubuntu om det spelar roll.

Permalänk
Avstängd
Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk
Medlem

Om du kan vänta på att cron deamonen startar kan du skapa ett cronjob.
Editera crontab -e och lägg till:

@reboot /path/to/script

Ganska säker på att det kommer göra det du vill.

Visa signatur

Chassi: Cooler Master MasterBox NR200P Kylning: NZXT Kraken Z63 PSU: Corsair SF750
CPU: AMD Ryzen 5800X GPU: ASUS RTX 3080 TUF Gaming OC V2
RAM: Corsair Vengeance LPX Black 32GB 3200Mhz MOBO: Asus ROG STRIX B550-I GAMING
SSD:
Samsung EVO 970 500GB SDD2: Samsung EVO 970 500GB
Övrigt: Iqunix F60, Logitech G Pro Superlight, LG 34GN850-B, ModMic, Beyerdynamic DT 770 Pro

Permalänk
Medlem

Du kan ju alltid köra det via cron (crontab -e), antingen cron.daily eller med hjälp av strängen @reboot (detta stöds beroeende på vilken dist du kör).

Ett annat alternativ är att köra det via en systemd unit

Permalänk
Avstängd

@gonace:
@murzoo

Räcker väl att en skriva om svaret.

Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk
Medlem

@superegg: Om fler svarar samtidigt men du är snabbare att trycka på knappen så är det svårt att ta tillbaka något

Permalänk
Medlem

@superegg Du tänkte inte att det kanske var så att vi redan höll på att skriva ett inlägg? Svårt att se om någon annan gör det samtidigt.

Visa signatur

Chassi: Cooler Master MasterBox NR200P Kylning: NZXT Kraken Z63 PSU: Corsair SF750
CPU: AMD Ryzen 5800X GPU: ASUS RTX 3080 TUF Gaming OC V2
RAM: Corsair Vengeance LPX Black 32GB 3200Mhz MOBO: Asus ROG STRIX B550-I GAMING
SSD:
Samsung EVO 970 500GB SDD2: Samsung EVO 970 500GB
Övrigt: Iqunix F60, Logitech G Pro Superlight, LG 34GN850-B, ModMic, Beyerdynamic DT 770 Pro

Permalänk
Avstängd
Skrivet av murzoo:

@superegg Du tänkte inte att det kanske var så att vi redan höll på att skriva ett inlägg? Svårt att se om någon annan gör det samtidigt.

Skojar lite mer er.

Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk
Medlem

Tecken på en aktiv Linux tråd?

Visa signatur

Rog Strix B550-i | Ryzen 7 5800X @ 4.3Ghz | Corsair Vengeance LP 2x8gb 3000Mhz | Asus RTX 3060ti |
Pirat Prusa MK2 | Prusa Mini

Permalänk
Medlem
Skrivet av superegg:

Skojar lite mer er.

Innan morgonkaffet satt sig i blodet? Fy på dig!

Visa signatur

Chassi: Cooler Master MasterBox NR200P Kylning: NZXT Kraken Z63 PSU: Corsair SF750
CPU: AMD Ryzen 5800X GPU: ASUS RTX 3080 TUF Gaming OC V2
RAM: Corsair Vengeance LPX Black 32GB 3200Mhz MOBO: Asus ROG STRIX B550-I GAMING
SSD:
Samsung EVO 970 500GB SDD2: Samsung EVO 970 500GB
Övrigt: Iqunix F60, Logitech G Pro Superlight, LG 34GN850-B, ModMic, Beyerdynamic DT 770 Pro

Permalänk
Avstängd
Skrivet av murzoo:

Innan morgonkaffet satt sig i blodet? Fy på dig!

Dom säger att ett skämt för länge livet.

Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk

Detta låter ju som att det borde finnas en bättre plats än crontab. Fick en idé att kanske fstab kan montera rarfilen åt dig? En på Archlinux forums skriver:

“I suggest you try to create a systemd mount unit or add it to your fstab. rar2fs comes with a mount helper, so it should be possible (/usr/bin/mount.rar2fs)”

Kanske kan vara roligt att undersöka?

Permalänk
Avstängd
Skrivet av Whaleboobs:

Detta låter ju som att det borde finnas en bättre plats än crontab. Fick en idé att kanske fstab kan montera rarfilen åt dig? En på Archlinux forums skriver:

“I suggest you try to create a systemd mount unit or add it to your fstab. rar2fs comes with a mount helper, so it should be possible (/usr/bin/mount.rar2fs)”3

Kanske kan vara roligt att undersöka?

fstab är gjort för att mount inte för att köra command.

Edit: är rar2fs ett filsystem har aldrig hört tala om det.

Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk
Medlem

Man kan även göra det i det GUI via "Startup Applications" om man t.ex. kör nån desktop version och inte vill kommandotolka.

Nedan guide är för Ubuntu men funktionen lär inte vara unik för den distron på något sätt.
https://askubuntu.com/questions/48321/how-do-i-start-applications-automatically-on-login

Visa signatur

Tower: ace Battle IV | CPU AMD Phenom II X2 BE unlocked 4cores@3,2GHz | RAM 8GB DDR2@800MHz | MB ASUS M4A785-M | GFK AMD Radeon HD 6850 1GB | HDD Kingston SSD Now 60GB (/) Seagate 2TB(/home) | OS Ubuntu 20.04 LTS
-Numera titulerad: "dator-hipster" då jag har en AMD GPU och dessutom kör Linux.

Permalänk
Medlem

i crontab har jag:
@reboot /root/rar2fsmount.sh

root@ubuntu:~# cat /root/rar2fsmount.sh
#!/bin/bash
rar2fs -o allow_other /mnt/hgfs/ /mnt/movies/
exit
root@ubuntu:~#

Visa signatur

i5-12600KF | Noctua NH-D15S Chromax Black | MSI MAG B660M | 64 GB G.Skill Trident Z | 3 * WD Black SN750 | Asus TUF OC RTX 3080 | Fractal Design Torrent | Corsair RM750W | Samsung Odyssey G9 49" |

Permalänk
Medlem

Hade nog gjort det där med ett startscript istället för cron.

Det kan vara en del skillnader även olika versioner av debianbaserade distar sinsemellan hur startscriptsen ska vara utformade, så det är nog bäst att du läser på lite hur den biten funkar i just din version av Lubuntu, men i princip går det ut på att skriva ditt script, lägga det i /etc/init.d, göra det exekverbart, och enabla det, vilket enklast görs med update-rc.d.

Visa signatur

Nu lurade jag dig att slösa bort ett par värdefulla sekunder av ditt liv på att läsa denna fullständigt poänglösa signatur!

Permalänk
Medlem

Ja, det känns som att ett startupscript är mer lämpat för detta än cron.

Permalänk
Medlem

För att köra ett script vid uppstart:

a. Gör en executable och lägg den i /bin/

b. Gå in på ~/.config/autostart ( i Ubuntu, kanske annorlunda i lubuntu, e.g. ~/.config/lxsession/Lubuntu/autostart ), och gör en ".desktop"-fil med innehållet på executabeln.

Med andra ord:

1. skapa /bin/myStartUpScript.sh med innehållet

rar2fs /media/Main/ /home/user/media/ --seek-length=1 -o allow_other

2. I command line skriv:

sudo chmod +x /bin/myStartUpScript.sh

3. skapa ~/.config/autostart/myStartUpScript.desktop med innehållet

myStartUpScript.sh

Och det bör fungera.

Hoppas detta kan vara till någon hjälp och att det löser sig för dig.

Permalänk
Avstängd
Skrivet av Whaleboobs:

Detta låter ju som att det borde finnas en bättre plats än crontab. Fick en idé att kanske fstab kan montera rarfilen åt dig? En på Archlinux forums skriver:

“I suggest you try to create a systemd mount unit or add it to your fstab. rar2fs comes with a mount helper, so it should be possible (/usr/bin/mount.rar2fs)”

Kanske kan vara roligt att undersöka?

Nu är jag väldigt sen på bollen här men crontab är väldigt dåligt instämmer verkligen.

Detta är ett jobb (även då du skrev om det på den tiden och även idag) ett jobb för autofs.

Är aktuell i en annan tråd så såg jag även denna så det blev en "bump" men med anledning av en nyare tråd som tog mig hit men ja, eftersom de inte nämts och de är sällan de gör det så skriver jag det.

För den som inte vet vad autofs är så är det så fort man går in i en mapp eller ja, read/open/close files så kommer linux kärnan att automontera usb disken, sshfs mounten, rar2fs mounten eller samba eller vad man nu har och efter X antal sekunder så går det off igen. Sjukt smart, effektivt och elegant.

Lättläst för den som vill läsa den bästa beskrviningen hur de funkar:

https://www.kernel.org/doc/html/next/filesystems/autofs.html

För den som inte orkar läsa allt det så kan man istället te.x om man använder sshfs föllja "tjanssons" wiki, men som sagt de finns för allt som går att mounta ftp med såklart:

https://www.tjansson.dk/2008/01/autofs-and-sshfs-the-perfect-...

Jag menar, vem har inte haft en mount som hänger sig så fort man tappar anslutning med "sshfs"? så sshfs+autofs är drömmen för den som inte provat. De är ett minne blott med autofs. Det är få som jag ser skriver om det men de kanske är kernel dokumentationen som gör det läskigt för en del men tjansson har en bra tutorial tycker jag (2008 liksom) och man ser de så sällan att det näms. Jaja, den som inte provat tro mig, du kommer älska det.

De märks inte ens om man ställer in det perfekt att det man välljer att vara"off" till att det auto mountas i bakgrunden i dom flesta fall nu handlar de ju lite om man sitter på bra linor också men svenskar har ju väldigt bra intenret och låg ping så går ju supersnabbt och gör man de väldigt seriöst och lägger ner tid på det så märks de knappt att den är omonterad tills man använder filsystemet på den mountade enheten (ja, numenar jag med nyaste diskarna, sata diskar kan ta nån halv sekund/sekund att mounta så de kan bli ett litet "lagg" när man har roterande diskar men de är de värt om dom inte används 24/7). Räcker att man skriver "cd usb_mapp" och har man då ställt in share eller rar2fs att mounta sin source till "mapp" så kommer den omedelbart mounta source > mapp, perfekt för plex eller vad man nu använder så slipper de tugga i onödan för ingen nytta alls iaf just för rar2fs som skrivs här i denna tråden.

Det är extremt bra för inte bara rar2fs, för att inte rootkits m.m skall hitta ens privata mounts te.x, därför vill man inte alltid ha saker mountat 24/7 utan bara när det faktiskt används.

Ja, ett för mig iaf lätt top 5 verktyg som måste finnas på varje installation som har en *nix kärna som använder portabel lagring/nätverks mount. Tjansson wiki är väldigt gammal ser jag nu det var den jag läste när jag lärde mig åren går verkligen, men ja. Det går att göra det lite enklare men jag minns just den sshfs delen och autofs för den var lite krånglig för de skrevs som detta för de var typ 'baklänge' eller revert från hur man brukar skriva vid en mount så som tjansson visar på sin wiki men det finns olika sätt, de är som en "fstab" setup fast med mer effektiva sätt för just "auto" mount.

Inget fel på crontab men när det handlar om filsystem så är det inget som kan jämföras med detta, men för script i allmänhet så funkar de men jag skriver mest med anledning av att det rör sig om rar2fs och inte script i sig då är de ju annat såklart då funkar crontab ok. Inget jagt själv använder mig av dock men de beror på vad det är, hade jag inte avänt autofs här så hade jag använt mig av runlevels/init eller systemd's services men när jag var på hetzner så ville man ju kontrollera det där för att först dekryptera, sen mounta och rar2fs mounta så det var viktigt att allt kom i sin ordning.

Ogillar crontab för ändamålet även om det funkar, det är för att @reboot te.x inte fungerar på alla distros te.x, sådanna pettiteser är noga för fan vad störande om man kommer till en annan server/box/dist och så funkar det inte, de funkar men är ej perfekt. Det är ju ungefär som att skriva:

grep 'rar2fs' -q /proc/mounts; [[ $? == 0" ]] || rar2fs ..... kommandot

i ~/.bashrc så fort man loggar in efter en reboot så mounta den om den redan är mountat skippa det. Funkar men är inte direkt pro imo!

Är det något som verkligen unix/linux skulle kunna lägga till så är det ju while, true och repeat såklart. Men de kan man gör själv:

while true; do printf '%s\n' 'you are now 5 seconds into the future versus where you were 5 seconds ago.' sleep 5 done

Eller mer elegant:

repeat () { local repeat_times=$1 repeat_delay=$2 repeat_foo repeat_sleep read -t .0001 repeat_foo if [ $? = 1 ] ;then repeat_sleep() { sleep $1 ;} else repeat_sleep() { read -t $1 repeat_foo; } fi shift 2 while ((repeat_times)); do ((repeat_times=repeat_times>0?repeat_times-1:repeat_times)) "${@}" ((repeat_times))&& ((10#${repeat_delay//.})) && repeat_sleep $repeat_delay done }

Därefter nedan

3 = Hur många gånger de skall köras
2 = Delay i sekunder det skall köras

repeat 3 2 printf "time now: %(%T)T, tick tack %s.\n" -1 echo rar2fs_mounted | mutt -S "Time is worth more then gold" mail@com

Skriver ut 3 gånger varannaan sekund.

Detta är ju 100 ggr mer bättre än cronie. Det kan ju ställas in också efter te.x när mountades hårddisken med rar arkviet, är allt komplett, nice då kan vi köra rar2fs.

istället för MIALTO m.m i cronie.
Blir en helt annan kontroll än at köra cronie imo.

Permalänk
Medlem

Tänkte jag skulle ta tag i att servern på 10 års tid inte har mountat rar2fs automatiskt efter boot. Jag har en NFS mount som ska till först och sen kör jag rar2fs på denna. Den här tråden kom upp när jag letade lösning och nu jag vill dela med mig av vad som faktiskt fungerade.

Först se till rar2fs nfs och allt det fungerar. Lägg till i /etc/fstab:

rar2fs#/mnt/movies_nfs/ /mnt/movies_unrar/ fuse allow_other,--seek-length=1,x-systemd.requires=/mnt/movies_nfs,x-systemd.device-timeout=15 0 0

Grymt skönt äntligen hade det här fixat! tack för den här tråden

Permalänk
Avstängd
Skrivet av noobs:

Tänkte jag skulle ta tag i att servern på 10 års tid inte har mountat rar2fs automatiskt efter boot. Jag har en NFS mount som ska till först och sen kör jag rar2fs på denna. Den här tråden kom upp när jag letade lösning och nu jag vill dela med mig av vad som faktiskt fungerade.

Först se till rar2fs nfs och allt det fungerar. Lägg till i /etc/fstab:

rar2fs#/mnt/movies_nfs/ /mnt/movies_unrar/ fuse allow_other,--seek-length=1,x-systemd.requires=/mnt/movies_nfs,x-systemd.device-timeout=15 0 0

Grymt skönt äntligen hade det här fixat! tack för den här tråden

Nice!!!

Tack för det noobs. det uppskattas verkligen!! Det där ser ut som man gör med autofs i princip då tänker jag på '#' efter rar2fs. Vad gör systemd.requires? Är det för att mappen skall finnas annars mountar den inte? (gissar) men blev nyfiken

Permalänk
Medlem
Skrivet av wuseman:

Nice!!!

Tack för det noobs. det uppskattas verkligen!! Det där ser ut som man gör med autofs i princip då tänker jag på '#' efter rar2fs. Vad gör systemd.requires? Är det för att mappen skall finnas annars mountar den inte? (gissar) men blev nyfiken

Det ska va att den ska vänta på att den ska mountas först. Men hade lite problem med att då hamna man i nån slags dependency hell vilket timeout grejen verkade lösa. Ifrågasätter nu ingenting men njuter av att plex funkar efter server restart 😄