Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Takže jsem se konečně dostal k tomu, abych sem hodil další stahovací skriptík, tentokrát pro rapidshare.com. Tak doufám, že některým se bude hodit a budou rádi, že jsem ho sem dal.
A teď už k věci, trošku to popíšu, protože to už neni pár řádek jako posledně. Možná se z toho někdo poučí, naopak, někteří sem budou určitě psát, že jde něco řešit líp, např. používat grep, sed příp. awk místo perlu. Přestože je to trošku složitější skript, psal jsem ho prostě úplně jednoduše a Perl používám právě proto, že jsem línej kombinovat více grepů a sedů a psát nějaký šílený regexpy, když v Perlu to jde o hodně jednodušejc.
Na začátku skriptu se načte seznam proxy serverů. Já to používám tak, že mám přes SSH vytvořené tunely na tinyproxy servery běžící na různých serverech a pak jako proxy používám ty tunely. Např. localhost:3000 je přes SSH tunel směřovanej na tinyproxy na serveru A, localhost:3001 je směřovanej na tinyproxy na serveru B. Používám tinyproxy, protože na Debianu se ihned po instalaci tinyproxy spusti, poslouchá na portu 8888 a přístup je omezen právě z localhostu. Samozřejmě můžete si nainstalovat jakýkoliv jiný proxy, ale já ten tinyproxy instaluju jen kvůli tomu stahování, takže po dokončení stahování ho zase odinstaluju (purge), takže nemusím dělat složitou konfiguraci. Jinak instalaci provádím právě tím skriptíkem sshmulti (http://www.abclinuxu.cz/blog/RoboShim/2008/6/sshmulti-sshm), takze na aktuálně na 18 serverech nainstaluju tinyproxy jedním příkazem a nemusím se s tím nějak složitě dělat.
Soubor s proxy má jednoduchý formát, prostě SSH server|http://proxy:port. Důležitá je přitom pouze ta adresa proxy, ten SSH je pouze pro výpis nápovědy. Jinak ten tunel na SSH server můžete vytvářet buď pomocí parametrů u ssh (-L localport:remotehost:remoteport), což je ale v případě použítí sshmulti dost nešikovné, nebo si pro používané SSH servery nastavit PortForward v ~/.ssh/config přidáním rádky LocalFoward localport remotehost:remoteport. Já mám takhle pro každý server vlastní konfiguraci, takže při hromadném připojení se mi tunely vytvoří. Pokud byste měli servery s proxy daemonama v jedné síti, tak se můžete SSHckem připojit pouze a jeden server v té síti a udělat tunely pro různé lokální porty a ty pak z toho SSH serveru směřovat na různé proxy servery, vyjádřeno SSH konfigurací asi takhle:
Host SSH.server.domain.com LocalForward 3000 proxy1.domain.com:8888 LocalForward 3001 proxy2.domain.com:8888 LocalForward 3002 proxy3.domain.com:8888Přístup na těch proxy serverech pak stačí povolit pouze z toho SSH serveru. Pokud chcete použít pouze přístup přímo z lokálního serveru bez proxy, tak v souboru s proxy zadejte pouze "NONE" místo proxy URL.
Když už máte takhle seznam proxy serverů, tak na začátku skriptu se projdou parametry a můžete trochu upravit seznam proxy serverů, které se skutečně použijou. Pokud nezadáte žádný parametr pro manipulaci se seznamem proxy, použijou se všechny proxy. Pokud zadáte parametr -a (jako ADD), tak se do prázdého seznamu budou přidávat pouze zadané proxy z originálního seznamu. Naopak, pokud použijete -d (jako DELETE), tak se originální seznam zkopíruje celý a budou se proxy odebírat. ADD a DELETE udáváte číslem, které zastupuje proxy server v originálním seznamu. Kromě toho můžete použít taky přepínač -p (jako PROXY) a tam zadáte plnou URL proxy serveru.
Dál můžete zadat přepínač -r (RATE), kterým limitujete rychlost stahování wgetem (man wget --limit-rate). Dál jsou tam dva přepínače -c (CONSOLE) a -x (Xka), kterýma vynucujete použití konzole nebo Xek. Samozřejmě, že pokud budete spouštět přes SSH terminál bez X-forwardu a vynutíte Xka, tak to bude "zlobit". Na druhou stranu můžete v Xkách vynutit konzoli a zadávat CAPTCHA kód na konzoli.
No a dostali jsme se k hlavnímu cyklu, kterej se provádí, dokud jsou nějaké URL ke stahování. Nejdřív se otestuje, jestli už soubor z URL neexistuje a když existuje, tak se přeskočí s hlášením. To je opatření, aby náhodou stahovač zbytečně nestahoval už stažený soubor. No a když neexistuje, tak se jde ke stahování.
Postup se téměř opakuje: přečíst stránku, vyparsovat hodnoty, připravit další request. Nejdřív se přečte první stránka ze zadaného URL. Tam je formulář na výběr stažený jako registrovaný uživatel nebo free. Já taham free, takže se vyhledá URL pro správné tlačítko. Vyšle se teda request pro nalezené URL s těmi správnými POST daty. V dalším výstupu už jsou ta důležitá data. Buď je v HTML stránce text, že jste vypotřebovali váš stahovací limit a musíte nějakou dobu čekat (podle mých zkušeností tak 50-120 minut). V tom případě se použije další proxy. Pokud jste limit nepřesáhli a můžete stahovat, najde se v textu obrázek CAPTCHA, čas pro čekání před stahováním (obvykle 60-120 sekund), popis pro zadání kódu, jméno stahovaného souboru a hlavně URL pro stažení.
Jenom vsuvku uvedu, že Rapidshare je dost aktivní v úpravách systému, takže během psaní tohoto textu změnili typ CAPTCHA (zrušili koťátka a štěňátka a zobrazujou CAPTCHA v 3D drátovém modelu znaků vytlačených do plochy) a dál URL pro zobrazení CAPTCHA kódu už není čistý HTML, ale do stránky to vypisuje JavaScript a používají operátor spojování řetězců, znak plus "+".
A ještě jednu vsuvku. Než jsem se dostal k tomu, abych tenhle skript vystavil, tak se rapid rozhodnul zrušit CAPTCHA úplně, takže je teď jeden z těch lepší sdílečů, který nepožaduje interaktivní práci. I přesto jsem kód pro captcha nechal, kdyby se ho někdy v budoucnu rozhodli zase vrátit, tak to bude aspoň jednodušší.
Dále se z odstavce před vsuvkou pokračuje tím, že se počká zadaný čekací čas před stahováním. Následující popis práce s CAPTCHA samozřejmě platí pouze tehdy, pokud je CAPTCHA obrázek nalezen. Pak se stáhne obrázek CAPTCHA. Pokud je skript spuštěný z terminálu z X serveru a nebyla požadována konzole, tak se obrázek zobrazí v gqview (tohle je jedna z dependencies, ale můžete si prohlížeč samozřejmě změnit) a dále se zobrazí Xdialog (druhá dependence) a tím se přečte kód a po zadání kódu se gqview zakilluje a captcha smaže. Pokud skript neběží v Xkách nebo byla požadována pouze konzole, tak se obrázek nezobrazí a na konzoli se požaduje zadání kódu. Obrázek můžete zobrazit více způsoby: (a) stažením na lokální stanici s prohlížečem obrázků, (b) nastavení web serveru pro /tmp (případně si můžete ve skriptu změnit) a zobrazení obrázku ve web browseru, (c) zobrazením obrázku pomoci nejaké ASCII-art knihovny (např. aa nebo caca), ale netuším, jak dobře tu CAPTCHu dokážete rozeznat.
No a když zadáte kód, tak se připraví POST data a wgetem se stáhne soubor.
No a skript je tady.
#!/bin/bash proxiesfile="$HOME/.download-proxies" if ! [ -e "$proxiesfile" ];then echo "Please, create file $proxiesfile" exit fi allproxylist="$( awk -F '|' '{print $2;}' "$proxiesfile" | tr '\n' ' ' )" sshtunnels="$( awk -F '|' '$1~/^.+$/{print " " $1,$2;}' "$proxiesfile" )" sshtunservers="$( awk -F '|' '$1~/^.+$/{print $1;}' "$proxiesfile" | tr '\n' ' ' )" agent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7" console=0 if [ $# -gt 0 ];then i=$# while [ $i -gt 0 ];do case "$1" in -a) if [ $# -gt 1 ];then id="$[$2+1]" proxylist="$proxylist $( echo "$allproxylist" | tr -s '[[:space:]]' '\n' | sed -n "${id}p" )" i=$[$i-1] shift 2 else echo "value please" exit fi ;; -d) if [ $# -gt 1 ];then id="$[$2+1]" if [ -z "$proxylist" ] ;then proxylist="$allproxylist";fi proxylist="$( echo "$proxylist" | tr -s '[[:space:]]' '\n' | sed "${id}d" )" i=$[$i-1] shift 2 else echo "value please" exit fi ;; -r) if [ $# -gt 1 ];then rate="--limit-rate=$2" i=$[$i-1] shift 2 else echo "value please" exit fi ;; -p) if [ $# -gt 1 ];then proxylist="$proxylist $2" shift 2 i=$[$i-1] else echo "value please" exit fi ;; -c) console=1 shift ;; -x) console=0 shift ;; *) v="$1" shift 1 set -- "$@" "$v" ;; esac i=$[$i-1] done if [ -z "$proxylist" ] ;then proxylist="$allproxylist";fi while [ $# -gt 0 ];do if [ -e "$( basename "$1" )" ] && [ -s "$( basename "$1" )" ];then echo "File $( basename "$1" ) already exists and is not empty, not downloading, please delete it if you want to download" else echo "Downloading URL: $1" for proxy in $proxylist ;do if [ "$proxy" = "NONE" ];then unset http_proxy else export http_proxy="$proxy" fi echo "HTTP PROXY: $http_proxy" echo "GET 1: $1" output1="$( wget $rate -U "$agent" -nv -O - "$1" )" url="$( echo "$output1" | perl -e 'undef $/;$a=<STDIN>;print sprintf("%s",$url) if ((($tag)=($a=~m,(<form[^>]+id="ff"[^>]+>),is)) and (($url)=($tag=~m,action="([^"]+)",is)));' )" echo "GET 2 : $url" output2="$( wget $rate -U "$agent" -nv -O - --post-data="dl.start=Free" "$url" )" delay="$( echo "$output2" | perl -e 'undef $/; $a=<STDIN>;print "$1" if ($a=~m,var\s+c\s*=\s*(\d+)\s*;,is);' )" echo "DELAY: $delay" wait="$( echo "$output2" | perl -e 'undef $/; $a=<STDIN>;print "$1" if ($a=~m,(?:wait|try\s+again\s+in\s+(?:about)?)\s+(\d+\s+minutes?),is);' )" echo "WAIT: $wait" img="$( echo "$output2" | perl -e ' undef $/; $a=<STDIN>;print "$img" if (($img)=($a=~m,<img\s+src="([^"]+/access[^"]+)",is)) and ($img=~s/\x27\s*\+\s*\x27//g);' )" echo "IMG: $img" codetitle="$( echo "$output2" | perl -e ' undef $/; $a=<STDIN>; print "$1" if ($a=~m,(security\s+question[^\x27]+)\x27,is);' )" if echo "$codetitle" | grep -qE 'Have[[:space:]]+Fun';then happyhour=1;else happyhour=0;fi echo "CODETITLE: $codetitle" echo "HAPPYHOUR: $happyhour" file="$( echo "$output2" | perl -e ' undef $/; $a=<STDIN>;print "$1" if ($a=~m,<form\s+name="dlf?"\s+action="[^"]+/([^"/]+)",is);' )" echo "FILE: $file" url2="$( echo "$output2" | perl -e ' undef $/; $a=<STDIN>; while (($u)=($a=~m,document\.dlf\.action=\\\x27([^\x27]+)\\\x27;,is)) { $a=~s,document\.dlf\.action=\\\x27([^\x27]+)\\\x27;,,is; print "$u\n" unless $u=~m,http://rs\d+tl\d*\.,i; };' )" echo "URL2: $url2" echo "HTTP PROXY: $http_proxy" if [ -n "$file" ] && [ -n "$url2" ];then if [ $happyhour -eq 0 ];then if [ -n "$delay" ];then for i in `seq $delay -1 1`;do echo -en "waiting $delay seconds [ $i ] \r";sleep 1;done;echo;fi printf "URL: %s\nFile: %s\nIMG Code: %s\n" "$url2" "$file" "$img" echo "HTTP PROXY: $http_proxy" if [ -n "$img" ];then wget $rate -U "$agent" -nv -O "/tmp/$( basename "$img" )" -c "$img" if [ -n "$DISPLAY" ];then gqview "/tmp/$( basename "$img" )" >/dev/null 2>&1 & pid="$!" ; fi # display "$img" & code="" if [ -n "$DISPLAY" ] && [ $console -eq 0 ];then while [ -z "$code" ];do code="$( Xdialog --wmclass 'down-rapid' --no-cancel --title "RapidShare downloader" --screen-center --stdout --inputbox "Enter the CAPTCHA code\\n($codetitle)" 14 40 )" ; if [ $? -eq 1 ];then code="-";fi;done else while [ -z "$code" ];do read -p "Code ($codetitle) ['-' for stop]: " code;done fi if [ -n "$DISPLAY" ];then kill "$pid" ; fi rm -f "/tmp/$( basename "$img" )" else code="*" fi if [ "$code" != "-" ];then ### code="$( echo "$code" | tr 'a-z' 'A-Z' )" cmd="/bin/false" echo "$url2" | ( IFS="|";while read url data;do set -x if [ "$code" = "*" ];then codetxt="" else codetxt="&accesscode=$code" fi if [ -z "$data" ];then actionstring="actionstring=1" else actionstring="actionstring=${data}" fi if wget $rate -U "$agent" -c -O "$file" --post-data="${actionstring}${codetxt}" "$url"; then break;fi set +x done ) if [ -e "$file" ] && [ $( stat -c '%s' "$file" ) -gt 1000 ];then break;else echo "Unable to continue download";exit 1;fi else exit 1 fi else echo "$url2" | ( IFS="|";while read url data;do set -x if wget $rate -U "$agent" -c -O "$file" --post-data="actionstring=1" "$url"; then break;fi set +x done ) if [ -e "$file" ] && [ $( stat -c '%s' "$file" ) -gt 1000 ];then break;else echo "Unable to continue download";exit 1;fi fi elif [ -n "$wait" ];then echo "Wait $wait" else echo "$output" exit 3 fi done if [ -e "$file" ] && [ $( stat -c '%s' "$file" ) -gt 100000 ];then true;else echo "Unable to continue download";exit 1;fi fi shift done else cat <<EndOfInfo ssh tunnels: $sshtunnels proxy list: $( echo "$allproxylist" | tr -s '[[:space:]]' '\n' | nl -v0 -w4 -s' -- ' ) $sshtunservers Usage: $0 [ -a proxynum ] [ -d proxynum ] [ -r rate-limit ] [ -p proxyurl ] [ { -c | -x } ] URL ... -a proxynum add proxy at line proxynum -d proxynum delete proxy at line proxynum in ACTUAL proxy list -r rate-limit limit wget download rate -p proxyurl insert proxy specified by proxyurl -c use console to enter captcha code -x use X dialog to enter captcha code (this is default) URL URL to download EndOfInfo fi
Tiskni
Sdílej:
Jo, taky jsem ted premyslel, ze bych si na stahnuti dalsich sezon Big Bang Theory koupil treba jenom 3-denni ucet pres telefon (PayPal nemam, zatim ho na nic nepotrebuju). To by se docela dalo, ale pak jsem si to znovu rozmyslel a opravdu se mi nevyplati to platit, kdyz polovina nalezenych odkazu rapidshare nefunguje a ze vsech stahovanych souboru polovinu stahnu pres jiny sdilece (megauploads, leteckaposta, ulozto). Navic obvykle taham 2-6 souboru tydne (Heroes, HIMYM a IT-Crowd), navic kdyz je pauza ve vysilani, tak ani to. Takze se mi opravdu nevyplati zarizovat premium ani na jeden den. Naposledy jsem tahal Dextra 3.sezonu (asi 12 dilu, z toho asi 3 dily z rapidu po 2 archivech, zbytek megaupload), pouzil jsem celkem asi jenom 5 proxy serveru a tahal jsem z mixu rapidshare a megaupload. A stahnul jsem to asi behem 3 hodin. Pak jsem jeste nasel Transporter 3 (6 archivu z rapidu). No a pak nic pres 3 tydny. Navic me vubec nebavi tahat to pres firefox - kdyz mi FF chcipne (nebo ho musim zabit), abych tahal znovu. Nehlede na vic soucasnych tahani pres ruzny proxy.
Jinak samozrejme existuje spousta ruznych klientu pro premium ucty, takze muzes pouzit ty. Tohle je skriptik pro anonymni pristup.
Pěkné. Jenom bych poradil, že to funguje i bez user-agent. A chtěl bych se zeptat, dalo by se to udělat tak, aby se to stahovalo na ty jednotilvé servery, když na jednom je málo volného místa?
Pěkné.
Diky
Jenom bych poradil, že to funguje i bez user-agent.
Je to mozny. Kdyz jsem to psal, tak mi to nejak nechodilo. Tak jsem experimentoval s ruznyma vecma (referer, user-agent, cookies) no a agent mi tam zustal. Tak jsem ho tam nechal - funkcnosti to neubira a ano to nezvysuje zatez. Sice to asi zrejme rapid nebude nikdy testovat (protoze je jednoduchy to padelat a testovani user-agent by zabralo vetsi namahu, nez pro klienta to padelat), ale i tak to muze zvysi sance na funkcnost. Ale samozrejme si to muzes odmazat.
A chtěl bych se zeptat, dalo by se to udělat tak, aby se to stahovalo na ty jednotilvé servery, když na jednom je málo volného místa?
Ja mam takhle k dispozici asi 5 serveru, kam muzu tahat a ukladat to tam, takze ten skript mam na tehle strojich a spoustim ho tam, kde potrebuju. Ty proxy servery jsou opravdu jenom kvuli tomu, aby se pouzila jina IP adresa.
Kdybys to chtel ukladat na ruzny servery, tak by se dal asi udelat nejakej dalsi skriptik, kterymu bys dal seznam serveru, kam to chces tahat, ten by se pak pres SSH podival, kolik je mista a kdyz by bylo vic nez nejaky minimum, tak by to tam stahnul. Kdyby bylo malo, tak by mrknul na dalsi ssh server. Samozrejme by to vyzadovalo, abys mel login na ty servery pres klice, aby to neoxidovalo s heslem. A taky bys mel nastaveno NONE v ~/.download-proxies, aby to tahalo primo z toho serveru. Videl bych to na neco takovydleho:
#!/bin/bash ## minimum volnyho mista 2GB minfree=$(( 2 * 1024 * 1024 * 1024 )) ## cilovy adresar, kam se ma stahovat downdir=/data/download if [ $# -lt 2 ];then echo "$0 URL ssh-server ssh-server ..." else URL="$1" shift while [ $# -gt 0 ];do if [ "$( ssh "$1" df -P -B 1 "$downdir" | tail -n1 )" -ge "$minfree" ];then ssh "$1" down-rapid "$URL" shift $(( $# - 1 )) fi shift done fi
Samozrejme to netestuje, jestli to ten skript na tom serveru stahnul dobre. To se holt musi delat rucne, ale to, rekl bych, je uz drobnost.
Uz pred vyse rokom som si spravil velmi podobny skript.
Urcite nas bude vic
Pritomnost X-iek som testoval podla premennej DISPLAY.
Presne tak testuju i ja, ale nechavam moznost neotravovat oknama a umoznuju nacteni captchi z console (ikdyz by to slo taky jednoduse vymazanim DISPLAY)
V textovom mode som zobrazoval cez cacaview (Vdaka zoomu a antialiasingu sa dali citat aj tie enhanced obrazky so psami a mackami, aj ked to chvilu trvalo).
Tak takhle drsnej teda opravdu nejsem Ikdyz jsem nad tim premyslel, ze by to slo, opravdu si nejsem jistej, jak moc by to bylo pouzitelny.
Tiez od zaciatku pouzivam tunelovanie cez ssh na rozne proxy s rozdielom, ze tunely si otvara skript podla toho ako potrebuje. Navyse si vzdy osaha dostupne proxy a taha cez tu, na ktoru musi najmenej cakat. Do coho sa mi uz par mesiacov nechce je viacvlaknovost - aby jedna instancia skriptu vyuzivala vsetky proxy. Na druhej strane vytvara pomocne suborove zamky, takze nie je problem pustit vo viacerych terminaloch skript viackrat a oni sa uz dohodnu, aby nepouzivali rovnaku proxy v ten isty cas.
Tak klobouk dolu, takhle jsem to uz nedomakal. Taky tam mam kod, ktery zpusobi pouziti dalsi proxy, kdyz by se melo cekat dalsi dobu. Ale aby si to samo nahazovalo ssh tunel na tu proxy, zamky atd, to fakt delat nebudu (hlavne proto, ze tu proxynu vzdycky pred stahovanim rucne nainstaluju a po dokonceni stahovani zase odinstaluju, takze stejne to pripojeni musim rucne nahodit). Samozrejme je mozny spustit ten skript vickrat. Bud jim prepinacema reknes, ze maji pouzivat ruzny proxy, nebo to nechas, pak by se melo stat akorat to, ze pres nejakou proxynu bude stahovat jenom ten, kterej se na ni dostane prvni, ostatni asi budou mit hlasku, ze z ty IP adresy uz se stahuje (vida, tohle jsem nikdy nezkousel, osobne definuju rucne tu proxy, ktera se ma pouzit), nebo ze se musi pockat.
ssh -L"localhost:`getfreeport`:$host":80 -aNT "$proxyhost" 2>/dev/null &Uzitocne je pouzivat prikaz "trap ... EXIT", aby po pade nemusel clovek rucne cistit otvorene spojenia.
JO, tak ten muj skript proste prochazi postupne vsechny, takze pokud maji vsechny nejaky cekani, tak to skonci bez stazeni. Pak staci spustit znovu, mrknout na nejmensi cas, hodit sleep pred ten prikaz a spustit znovu.
Driv mi to z rapidu tahalo mezi 300-500kB/s, ted to jede tak 100-200kB/s, kdyz to vybehne na 300kB/s, tak je to opravdu dobry. Takze kdyz jsem driv tahal tech 500kB/s (100MB bylo asi za 3 minuty), tak se mi stavalo, ze na vsech asi 17 proxynach jsem musel cekat, ale pouze jednotky minut, takze jsem to resil tim sleepem.
To vytvareni tunelu urcite neni slozity, nicmene ja potrebuju interaktivne tinyproxy nainstalovat a pak zase odinstalovat, takze ssh musim spoustet vzdycky, takze tunely mam v ~/.ssh/config a pak uz se jenom loguju ala cluster-ssh (osobne pouzivam vlastni skirptik sshmulti http://www.abclinuxu.cz/blog/RoboShim/2008/6/sshmulti-sshm), takze jednim prikazem pak tinyproxy nainstaluju na vsech proxynach najednou a stejne tak jednim prikazem odinstaluju. A stejne tak nemusim na spojeni pouzivat trap, protoze spojeni spravuju manuale sam.
Ale mas to fakt hezky vychytany
Místo tinyproxy je zajímavá možnost tohle:
www.okisoft.co.jp/esc/python/proxy/
stačí mít nainstalovyný Python, a spustit. Celé je to v jednom souboru. Implicitně poslouchá na portu 8000, povolené klienty a port jde nastavit jako parametr.
No, tak to vypada taky dobre:) V Jave napsany, takze bezi na Lin+Win. Ja jsem si napsal ten skriptik i pro ty dalsi stahovace. Vubec by nebylo spatny, kdyz tenhle freerapid umel i dalsi share-weby. Sice je blby, ze se neda spoustet vzdalene pres ssh (sice by to slo pres vnc, ale clovek uz proste potrebuje navic nejaky X prostredi). Ja jsem spis cmdline orientovanej:)