Inlägg

Inlägg som toge har skrivit i forumet
Av toge

Öppna portar på router för Raspberry Pi

Jag försöker installera Remote Wake/Sleep-on-LAN Server på en Raspberry Pi 3 B+ som kör Raspberry Pi OS Lite Bookworm, som är senaste versionen i skrivande stund. Routern är en TP-link Archer AX73 AX5400 och bredbandsleverantör är Bahnhof.

Jag tror att allt ska vara inställt för att fungera, men när jag kommer till steget där installationsskriptet ska kontrollera huruvida portarna 80 och 443 är tillgängliga genom den dynamiska DNS som jag satt upp (TP Links egna, ***.tplinkdns.com) så säger den att dom inte är det. Jag har öppnat portarna 80 och 443 under port forwarding på routern, till IP-adressen för Raspberry Pin. Besöker jag URL:en med port 80 i webbläsaren (Edge) så får jag 403. Besöker jag 443 så får jag "ERR_CONNECTION_REFUSED".

403-meddelandet säger också "Apache/2.4.57 (Raspbian) Server at ***.tplinkdns.com Port 80", så det bekräftar ju att den pekar till Raspberry Pin (givet "Raspbian" i meddelandet).

Jag har försökt se om port 80 eller 443 är upptagna eller blockade antingen genom Bahnhof eller av routern, men verkar inte så. Jag har även testat att köra "sudo ufw allow 80" och "sudo ufw allow 443" på Raspberry Pin utan framgång.

Vad missar jag?

Av toge

Någon som har erfarenhet av kork?

Av toge
Skrivet av OldComputer:

Beror ju på kvaliteten. Min Tv-box byter jag ut någon gång per år då HDMI-porten går sönder. Min OPPO-spelare eller grafikkortet har inte haft några av dom här problemen å andra sidan.

Någonting påminner mig om att det diskuterats grafikproblem med windows nyligen på sekundära portar. Kan dock inte avgöra om det är relevant i detta fallet, men inte omöjligt. Windows verkar har strul med det mesta när det gäller uppdateringar, så varför inte.

Tack för svar!

Dålig återkoppling av mig, men körde DisplayPort till datorskärm och använde Tv:n för HDMI-uttaget som fungerade, så trodde att jag hade kringgått det.

Igår tappade jag dock anslutningen helt plötsligt igen. Jag måste sedan dra ur kabeln både ut TV:n och grafikkortet och ibland också mecka lite fram och tillbaka i DisplayFusion för att få bilden att dyka upp. Men sen efter några sekunder så försvinner den igen.

Kabeln jag använder är en Supra mk3 på åtta meter som ska klara 8K i 60 hz. Jag kör dock 1440p i 60 hz, så det ska ju inte vara något sånt problem. Kabeln är optisk, så längden ska inte heller vara några problem.

Jag har kokat ner det till att det skulle kunna bero på:

• Kabeln har fått stryk, antingen av att kontakten legat mot baksidan av skåpet som jag har datorn i (som jag nämnde ovan) eller när jag satt fast kabeln i väggen med klamrar.
• Grafikkortet felar. Vet inte om ”sagging” skulle kunna vara en orsak då mitt grafikkort lutar en aning och inte är helt rakt. Det låter dock inte troligt eftersom signalen till datorskärmen fungerar utan problem. I sådana fall hade väl inget fungerat?

Lutar åt att det kan vara att kabeln helt enkelt gått sönder eftersom jag testat med kabel med lägre prestanda och den verkar mycket mer responsiv och fungerar utan att anslutningen försvinner.

Av toge

HDMI-port fungerar ej efter drivrutinsuppdateringar

Jag installerade igår senaste Windows-uppdateringen (Windows 11) och upptäckte ganska snabbt efter omstart att hela systemet hade som ett "micro stutter". Det var rätt tydligt när jag rörde musen att systemet stannade upp i några mikrosekunder lite hela tiden. Jag testade även att kolla på en YouTube-video och såg även där att videon stannade upp lite då och då. Kollade om det var några bakgrundsprocesser som eventuellt slöade ner datorn, men efter att ha stängt ner majoriteten av program som körs i bakgrunden och jag inte heller såg något suspekt i Task Manager så började jag googla på vad det skulle kunna bero på.

Jag bestämde mig för att ominstallera mina Nvidia-drivrutiner. Jag har ett Gigabyte RTX 3070 Gaming OC. Så jag laddade ner DDU (Display Driver Uninstaller) och installerade därefter om Nvidia Experience med drivrutiner från scratch. Det verkar ha fixat stuttret. Bra så.

Idag upptäckte jag dock att den andra HDMI-porten på grafikkortet som jag har ansluten till min TV helt plötsligt hade slutat fungera. Windows hittade helt enkelt inte TV:n som var ansluten där. Jag provade att switcha portar, så att TV:n gick till den port som datorskärmen gick till och vice versa och då fick jag bild på TV:n men datorskärmen dök istället inte upp. Så det verkar uppenbart vara någonting fel med den andra HDMI-porten.

Har nu anslutit datorskärmen via DisplayPort istället och det fungerar. Men jag undrar vad som skulle kunna orsaka att HDMI-porten helt plötsligt inte fungerar?

Det ska sägas att djupet i det skåp där jag ställer datorn är ganska precis lika djupt som själva datorn, vilket medför att kablarna till grafikkortet trycks något mot baksidan av skåpet. Kan det vara så att HDMI-porten slutat fungera för att kabeln tryckts mot porten? I sådana fall kan jag tycka att själva kabeln borde vara det som slutar fungera först men portarna kanske är känsligare än vad jag tror? Jag har inte tryckt dit datorn med våld, utan helt enkelt skjutit in den tills det tagit stopp, så det känns inte som någon jättebelastning.

Av toge
Skrivet av OldComputer:

När jag tittar på raden i ditt skript ser det ut som

start /b "" "C:\Program Files\DisplayFusion\DisplayFusionCommand.exe" -monitorloadprofile "Skrivbord"

den logiska beskrivningen av raden är

program [parameter] [värde] [värde] [värde] [värde]

logiken för en kommandorad brukar vanligen vara

program [ [ parameter | parameter=värde] ... ] [ värde ... ]

I ditt fall så tror jag du helt enkelt bara delar ut en parameter och ett gäng värden till start som programmet inte förstår vad det ska göra med om det inte finns en exakt innebörd av en logik här. Även det tomma citatet direkt efter /b ser ganska konstigt ut, om det inte är så att värdenas innebörd är statiska.

Eftersom det står i en skript fil där @echo off tar bort ekot till skärmen och sedan exit avslutar skriptet så borde det vara så att start skall starta skriptet och inte programmet. skriptet i sig kör programmet av sig själv, det är det som är meningen med ett skript då det är en lista av kommandon som körs en efter en.

I praktiken borde du kunna köra detta från en terminal och få rätt resultat:

"C:\Program Files\DisplayFusion\DisplayFusionCommand.exe" -monitorloadprofile Skrivbord

Det kan även vara så att citattecknen på sista värdet gör något goofy med raden.
Jag skulle annars tro att det är denna rad som ska stå i ditt skript och att start eller något annat ska starta detta skript, inte köras i skriptet.
terminalskript brukar vanligtvis bara köra dom saker som ska genomföras som om dom skrevs rad för rad. Det är externa program som ansvarar för hur eller när ett skript körs. Inget man skriver i skriptet annat än om skriptet behöver exklusivt testa något.

Ett exempel är att synkronisera en sparad ramdisk från förra avstängningen:

rsync -av /mnt/persistent_ramdisk /mnt/ramdisk/

Programvaran rsync uppdaterar här en katalog mot en annan och ser här till att alla filer är uppdaterade . Det är parametrarna och värdena på samma rad som rsync som bestämmer hur det går till och vad som uppdateras, tas bort, säkerhetskopior etc.

Det är programvaran som kör skriptet som bestämmer hur det körs, hur ofta och vem som får köra skriptet. Dvs är rätt person inloggad, är datorn inkopplad i vägg eller batteri, Hur ofta ska det köras etc.

Tack för rättelse!

Ska sägas att det kommando jag skrev ovan fungerar om jag kör det manuellt (alltså bara dubbelklickar på scriptet), men när jag skriver

"C:\Program Files\DisplayFusion\DisplayFusionCommand.exe" -monitorloadprofile Skrivbord

som du föreslår så verkar det gå lite snabbare.

Hur som helst så testade jag att lägga till scriptet först på "shutdown", vilket inte fungerade. Jag testade sen att lägga in det på "logoff" samt att jag aktiverade "Display instructions in logoff scripts as they run" under System > Scripts. Detta gör att eventuella processer som körs under tiden "Restarting..." dyker upp visas. Och då fungerade det! Tack för hjälpen!

Provade även att aktivera motsvarigheten för "shutdown", dvs "Display instructions in shutdown scripts as they run" eller liknande. Men det fungerade inte. Kanske för att DisplayFusion inte är nåbar i det skedet.

Av toge

Upptäckt att hacket kvarstår så längr jag inte interagerar med Moonlight. Om jag antingen trycker på knappar eller rör med fingret (musen) så upphör det helt att lagga. Oklart vad det skulle kunna bero på, men spontant så känns det antingen som en nätverksgrej eller något med mjukvaran.

Det är ungefär som att strömningen blir stabil om den kommunicerar åt båda håll, dvs att strömningen skickas samtidigt som Sunshine får input från Moonlight när jag använder overlayknapparna.

Ingen som känner igen?

Av toge

Problem med Sunshine/Moonlight/Nvidia Gamestream

Jag har installerat Sunshine på min PC för att kunna streama spel och spela dessa på exempelvis min mobiltelefon. Tekniken bygger på Nvidia Gamestream som jag förstår det, men då Nvidia ska stoppa utvecklingen för denna tjänst så är Sunshine ett open source-projekt som ska fungera som ett alternativ. Dock upplever jag mitt problem i båda dessa tjänster, så jag tror inte att varken Sunshine eller Nvidia Gamestream specifikt är problemet.

Problemet jag upplever är att streamen hackar väldigt mycket. Det spelar ingen roll om jag ändrar varken bitrate eller kompressionstyp i Moonlight (klienten som kopplar upp mot streamen från mobilen), hackandet är mer eller mindre detsamma oavsett vilka inställningar jag gör i Moonlight.

Jag har spelat in två exempel där jag spelar Hades på Sunshine/Moonlight och Steam Link: https://imgur.com/a/3iVY33u

Sunshine/Moonlight kör i exemplet lokalt på mitt hemnätverk, anslutet till 5GHz WiFi. Datorn är ansluten till routern med Cat 6-kabel. Som ni ser så är det ett konstant hackande av både ljud och bild. Jag tycker mig höra att det nästan finns som en rytm i sättet det hackar på, som att det är ett återkommande mönster.

Steam Link körs utanför mitt nätverk via 4G-nätet medan jag åker tunnelbana och som ni kan se så körs det mycket mer konsekvent och mjukt utan några som helst hack. Visserligen är det lite mer komprimering/artefakter och latency pga att jag befann mig i tunnelbanan, men överlag är det en mycket mjukare upplevelse. Jag har inte spelat in när jag kör Steam Link lokalt hemma över WiFi, men då är det helt perfekt.

Jag undrar lite om någon har erfarenhet av Sunshine/Moonlight/Nvidia Gamestream och vad som skulle kunna vara problemet? Steam Link fungerar ju utan problem, så jag funderar på om det är någon ytterligare inställning/optimering som behöver göras eller om det helt enkelt är iOS-appen för Moonlight som är dålig?

Av toge
Skrivet av xallrons:

Går det att använda windows inbyggda "Schemaläggaren" och sätta vid upplåsning? På så vis körs det inte innan i alla fall. https://i.imgur.com/TXCA5lw.png

Tyvärr inte. Testat det, men enligt utvecklarna av DisplayFusion så kan inget rörande skärmen starta innan inloggning, eftersom inställningarna för det inte är tillgängliga vid det skedet.

Av toge
Skrivet av TorrentKatten:

De finns inga spår av de i systemloggen? sök på "Loggboken" på en svensk windowsmaskin i start menyn. Tycker windows loggar de mesta, så tycker att ett misslyckat script borde ha loggats

Ska kolla det!

Skrivet av mats42:

Det där startkommandot oroar mig lite. Start innebär ju att du skapar en ny process och sätter du inte /wait på den kommer maskinenen att gå vidare utan att vänta på resultatet.
Prova utan start och se vad som händer

Ja, jag har aldrig använt batch så jag saxade det från nätet utan att veta riktigt vad det gjorde mer exakt. Är det så här du menar att jag ska skriva det?

@echo off /b "" "C:\Program Files\DisplayFusion\DisplayFusionCommand.exe" -monitorloadprofile "Skrivbord" exit

Och hur skriver jag in /wait? Jag skulle ju kunna testa att sätta exempelvis fem sekunders wait bara för att ge det lite tid. Ser som sagt hellre att avstängning/omstart tar längre tid än uppstart.

Av toge

Scriptet jag kör ser ut såhär:

@echo off start /b "" "C:\Program Files\DisplayFusion\DisplayFusionCommand.exe" -monitorloadprofile "Skrivbord" exit

Av toge
Skrivet av TorrentKatten:

Ah, missade att du testat via Grupp Policy. Sorry. Det är inte så att ditt kommando DisplayFusion kräver admin? Logoff script körs som användaren. Har inga windows maskiner kvar, men har för mig att de iaf på Win Server fanns/finns maskin shutdown script och generiska user login/off script.

Googlar jar lite snabbt så låg de under Computer Settings/Windows Settings/Scripts. men hittar bara refs till de för win server dokumentationen. De scripten ska köras direkt av script hosten som SYSTEM iirc

Jag tror inte det ska kräva admin. Borde det dyka upp en UAC då? Annars skulle det ju kunna vara att scriptet som sådant är fel. Jag har bara utgått ifrån att en .bat-fil bör fungera? Jag har satt det till en .bat-fil som funkar när jag dubbelklickar på den manuellt, så det borde ju inte vara något fel på själva scriptet i sig.

Av toge

För att förtydliga så hade det önskade resultatet varit att jag trycker "stäng av" eller "starta om" och att Windows då stannar ett tag för att köra kommandot. Och att den faktiska avstängningen initieras först när kommandot har körts och profilen är bytt. Klickar jag "starta om" i nuläget med ett script angivet på antingen shutdown eller logoff i gpedit.msc så går Windows direkt till svart skärm med "Restarting..." och jag misstänker att någonting utanför min kunskap händer i bakgrunden som gör det svårt för kommandot att köra, om det nu är att DisplayFusionCommand.exe helt sonika förhindras att starta under tiden datorn stänger ner eller om det är något annat som lurar.

Av toge
Skrivet av TorrentKatten:

Du kan prova att köra de som ett logoff script.

Du bör hitta de under
gpedit.msc
User Configuration/Windows Settings/Scripts/logon/logoff

Precis, men som jag skrev ovan så verkar det inte fungera. Jag vet inte riktigt varför, men jag kan tänka mig att det är för att scriptet körs under tiden utloggningen sker och antingen att det då inte hinner utföras innan användaren är utloggad eller att det av någon anledning gör så att DisplayFusionCommand.exe inte är nåbar under tiden utloggningen sker.

Jag lyckades dock med alternativ två, att stänga av kravet på inloggning när Windows startar, så nu loggas jag automatiskt in och kan då köra kommandot för att byta till "Skrivbord"-profilen. Det var en ändring i Registry Editor som behövdes för att visa kryssrutan jag nämnde ovan i Windows 11.

Men är idel öra om det hela skulle kunna gå att lösa på ett mer elegant sätt. Det funkar absolut, men det tar ett tag för kommandot att köras efter inloggning, så bästa hade ju helt enkelt varit (tror jag) om profilbytet sker vid shutdown/restart. Är inte lika ivrig att det ska gå snabbt vid avstängning som vid uppstart.

Av toge

Köra program innan restart/shutdown

Jag använder DisplayFusion Pro för att sätta upp profiler för min datorskärm och min TV, där jag helt enkelt kan byta mellan att använda min datorskärm eller TV som primär display. Det är alltså en profil som heter "Skrivbord" och en som heter "TV".

Problemet jag upplever är att om jag har profilen "TV" aktiv när jag stänger av eller startar om datorn, så är den fortsatt den aktiva profilen när Windows startar igen. Jag skulle vilja att "Skrivbord" alltid är den profil som aktiveras så fort datorn startas ånyo. Man kan komma runt det på sätt och vis genom att skapa en genväg till DisplayFusionCommand.exe med parametern "-monitorloadprofile 'Skrivbord'" som körs på uppstart, men problemet med det är att Windows inte öppnar programmet förens användaren loggat in. Det har tydligen med begränsningar i Windows att göra, att det inte går att komma åt displayinställningar förens användaren loggat in.

Detta medför att jag antingen måste slå på TV:n för att se inloggningsrutan eller skriva in lösenordet i blindo och hoppas att jag skriver rätt. Det är absolut görbart, men jag har gjort så tidigare och det är rätt jobbigt om man slinter på lösenordet och misslyckas att logga in. Det blir mycket jobb med att gå fram och tillbaka mellan TV och datorskärm.

Jag tänker att det potentiellt skulle kunna gå att lösa på två sätt:

  1. Få Windows att utföra ett kommando innan omstart/avstängning. Dvs. att Windows startar kommandot nämnt ovan och sedan inväntar detta innan den faktiska omstarten/avstängningen/utloggningen påbörjas. Har försökt ställa in Group Policies för detta eftersom det där finns möjlighet att köra script vid antingen avstängning av systemet eller utloggning av användare, men det fungerar dessvärre inte. Jag skulle tro att kommandot behöver köras medan användaren är inloggad, alltså innan utloggningen genomförs, och inte under tiden. Så det skulle i sådana fall vara om det går att försena den faktiska utloggningen tills det att kommandot har kört?

  2. Kringgå inloggningen genom att helt enkelt stänga av det. Alltså att jag vid start av Windows automatiskt loggas in och inte behöver ange varken lösenord eller PIN-kod. Detta ska vara möjligt att göra, men guiden som jag följt nämner kryssrutan Users must enter a user name and password to use this computer, vilken inte är synlig för mig. Någon som vet varför?

Av toge

Dessa instruktioner fungerade:
https://superuser.com/a/1607854/640150

Skillnaden mot hur jag gjorde det tidigare är att man skapar en genväg som triggar Task Scheduler-funktionen genom autostart-mappen istället för att Task Scheduler själv triggar det på startup.

Av toge

Undvika UAC för specifikt program?

Jag har satt ihop en lösning för att kunna överaka temperaturer på min dator genom MSI Afterburner, där programmet MSI Afterburner Remote Server körs parallellt för att serva statistiken via ett API på nätverket, så att jag kan visa den i realtid genom en annan Linux-burk. Ganska smart lösning, kan verkligen rekommendera.

Dock har jag ett smärre problem som blir lite störigt i längden. Jag har både MSI Afterburner och MSI Afterburner Remote Server på autostart. Varje gång jag loggar in så kommer en UAC-prompt upp för MSI Afterburner Remote Server, vilket är lite störigt att behöva klicka ”OK” varje gång vid uppstart.

Jag har försökt att följa diverse råd kring att undvika promptern specifikt för detta program, men det verkar inte riktigt vara möjligt.

En workaround som kan fungera men som tyvärr inte verkar göra det i mitt fall är att via Task Scheduler skapa en funktion som öppnar programmet vid inloggning samt att ge denna process maximal rättighet via kryssrutan ”Run with highest privileges”.

När jag testar att starta om datorn så verkar det inte som att programmet öppnas helt och hållet. Det dyker inte upp i system tray som den ska göra, men när jag sen försöker starta programmet manuellt så klagar den på att det redan finns en process aktiv på den porten i nätverket, så det verkar ändå som att den är delvis uppstartad. Dock fungerar inte själva servern, så något är galet.

Undrar om det är något jag missar i skapandet av tasken i Task Scheduler eller om det finns andra sätt att kringgå UAC för ett specifikt program?

Av toge

Annonsen är avslutad

Av toge

Japp, har testat den. Men behöver längre än 5 meter dessvärre.

Av toge

Hittade faktiskt detta erbjudande på Tele-Hå:
https://www.tele-ha.se/produkt/supra-hdmi-hdmi-aoc-4k-hdr-6m

50% på 48 gbps Supra-kabel. Står att den ”i vissa uniks kombinationer” krånglar, men kan inte tänka mig att PC till TV skulle falla under ”unik kombination”. Testar och ser helt enkelt.

Av toge

Alltid stört mig på hans totala frånvaro av ödmjukhet, att han alltid reagerar "Hold on... WTF is this?" följt av likgiltig blick in i kameran så fort det är något marginellt i en produkt som avviker lite från hans bild över hur man gör saker. Som att det inte finns några som helst nyanser eller alternativ i hur man löser ett problem och att det är heeelt sjuuukt att dom inte gjort som han har lärt sig att man ska göra. Jag vet inte, det är bara så töntigt sätt att demonstrera sin kunskap på.