Weblog Tomasza Przechlewskiego [Zdjęcie T. Przechlewskiego]


scrum
random image [Photo gallery]
Zestawienie tagów
1-wire | 18b20 | 1wire | 2140 | 3rz | adamowicz | afera | alsamixer | amazon | amber | amman | anniversary | antypis | apache | api | applebaum | arm | armenia | astronomy | asus | atom.xml | awk | aws | bachotek | bakłażan | balcerowicz | balta | banan | bash | batumi | berlin | białowieża | białystok | bibtex | bieszczady | biznes | blogger | blogging | blosxom | bme280 | bono | borne-sulinowo | breugel | bt747 | budapeszt | budyniowo | budyń | bursztyn | campagnolo | canon | cedewu | chaos | chello | chiller | chillerpl | chown | christophe dominici | chujowetaśmy | ciasto | cmentarz | contour | coronavirus | covi19 | covid | covid19 | cron | css | csv | cukinia | curl | cycling | d54250wykh | darkages | dbi | debian | dejavu | dhcp | dht22 | dia | docbook | dom | dp1500 | ds18b20 | duda | dulkiewicz | dulkiewiczowa | dyndns | dynia | ebay | economy | ecowitt | ekonomia | elka | elm | emacs | emacs23 | english | ep | erasmus | erasmusplus | ess | eu | eurostat | excel | exif | exiftool | f11 | fc | fc11 | fc15 | fc29 | fc5 | fc8 | fedora | fedora21 | fenix | ffmpeg | finepix | firefox | flickr | folau | fontforge | fontspec | fonty | food | fop | forms | foto | france | francja | fripp | froggit | fuczki | fuji | fuse | gammu | garden | garmin | gas | gawk | gazwyb | gdańsk | gdynia | gender | geo | geocoding | georgia | gft | ggplot | ghost | git | github | gmail | gmaps | gnokii | gnus | google | google apps script | googlecl | googleearth | googlemaps | gotowanie | gphoto | gphoto2 | gps | gpsbabel | gpsphoto | gpx | gpx-viewer | greasemonkey | gruzja | grzyby | gus | gw1000 | haldaemon | handbrake | hhi | historia | history | hitler | holocaust | holokaust | hp1000se | hpmini | humour | iblue747 | ical | iiyama | ikea | imagemagick | imap | inkscape | inne | internet | j10i2 | javascript | jhead | jordania | k800i | kajak | kamera | karob | kibbeh | kleinertest | kml | kmobiletools | knuth | kociewie kołem | kod | kolibki | komorowski | konwersja | krutynia | krynki | kuchnia | kurski | kłamstwo | latex | latex2rtf | latex3 | lcd | legend | lenny | lesund | lewactwo | lgbt-folly | liban | liberation | linksys | linux | lisp | lisrel | litwa | lizbona | logika | ltr | lubowla | lwp | lwów | m2wś | malta | mapquest | mapsource | maradona | marchew | marimekko | marvell | math | mathjax | mazury | mbank | mediolan | mencoder | mevo | mex | mh17 | michalak | michlmayr | microsoft | monitor | mp4box | mplayer | ms | msc | mssql | msw | mswindows | mtkbabel | museum | muzyka | mymaps | mysql | mz | nafisa | nanopi | natbib | navin | neapol | nekrolog | neo | neopi | netbook | niemcy | niemieckie zbrodnie | nikon | nmea | nowazelandia | nuc | nxml | oauth | oauth2 | obituary | ocr | odessa | okular | olympus | ooffice | ooxml | opera | osm | otf | otftotfm | other | ov5647 | overclocking | ozbekiston | padwa | panoramio | paryż | pdf | pdfpages | pdftex | pdftk | pedophilia | perl | photo | photography | pi | picasa | picasaweb | pim | pine | pis | pit | pizero | plain | plotly | pls | plugin | po | podcast | podlasie | podróże | pogoda | politics | polityka | polsat | portugalia | postęp | powerpoint | połtawa | prelink | problem | propaganda | pseudointeligencja | pstoedit | putin | python | pywws | r | r1984 | radio | random | raspberry | raspberry pi | raspberrypi | raspbian | refugees | relaxng | ridley | router | rower | rowery | roztocze | rpi | rsync | rtf | ruby | rugby | rumunia | russia | rwc | rwc2007 | rwc2011 | rwc2019 | rzym | salerno | samba | sds011 | selenium | sem | senah | sernik | sheevaplug | sienkiewicz | signature | sikorski | sks | skype | skytraq | smoleńsk | sqlite | srtm | sshfs | ssl | staszek wawrykiewicz | statistcs | statistics | stats | statystyka | stix | stretch | supraśl | suwałki | svg | svn | swanetia | swornegacie | szwajcaria | słowacja | tbilisi | terrorism | tesseract | tex | texgyre | texlive | thunderbird | tomato | totalnaopozycja | tourism | tramp | trang | transylwania | truetype | trzaskowski | ttf | turcja | turkey | turystyka | tusk | tv | tv5monde | tweepy | twitter | tykocin | typetools | ubuntu | uchodźcy | udev | ue | ukraina | umap | unix | upc | updmap | ups | utf8 | uzbekistan | varia | video | vienna | virb edit | virbedit | vostro | wammu | wdc | wdfs | weather | weathercloud | webcam | webdav | webscrapping | weewx | wenecja | wh2080 | wiedeń | wikicommons | wilno | win10 | windows | windows8 | wine | wioślarstwo | wojna | word | wordpress | wrt54gl | ws1080 | wtyczka | wunderground | ww2 | www | wybory | wybory2015 | włochy | węgry | xemex | xetex | xft | xhtml | xine | xml | xmllint | xsd | xslt | xvidtune | youtube | yum | zaatar | zakopane | zakupy | zawodzie | zdf | zdrowie | zeropi | zgarden | zgony | zprojekt | łeba | świdnica | żywność
Archiwum
02/2023 | 01/2023 | 11/2022 | 10/2022 | 09/2022 | 07/2022 | 06/2022 | 04/2022 | 03/2022 | 02/2022 | 12/2021 | 09/2021 | 03/2021 | 01/2021 | 12/2020 | 11/2020 | 10/2020 | 09/2020 | 08/2020 | 07/2020 | 04/2020 | 03/2020 | 02/2020 | 01/2020 | 12/2019 | 11/2019 | 10/2019 | 09/2019 | 08/2019 | 07/2019 | 06/2019 | 04/2019 | 02/2019 | 01/2019 | 12/2018 | 11/2018 | 10/2018 | 09/2018 | 08/2018 | 07/2018 | 05/2018 | 04/2018 | 03/2018 | 02/2018 | 01/2018 | 11/2017 | 10/2017 | 09/2017 | 08/2017 | 07/2017 | 06/2017 | 05/2017 | 04/2017 | 03/2017 | 02/2017 | 01/2017 | 12/2016 | 11/2016 | 10/2016 | 09/2016 | 08/2016 | 06/2016 | 05/2016 | 04/2016 | 02/2016 | 12/2015 | 11/2015 | 09/2015 | 07/2015 | 06/2015 | 05/2015 | 02/2015 | 01/2015 | 12/2014 | 09/2014 | 07/2014 | 06/2014 | 04/2014 | 02/2014 | 01/2014 | 12/2013 | 11/2013 | 10/2013 | 09/2013 | 08/2013 | 07/2013 | 05/2013 | 04/2013 | 03/2013 | 02/2013 | 01/2013 | 12/2012 | 11/2012 | 10/2012 | 09/2012 | 08/2012 | 07/2012 | 05/2012 | 03/2012 | 02/2012 | 01/2012 | 12/2011 | 11/2011 | 10/2011 | 09/2011 | 08/2011 | 07/2011 | 06/2011 | 05/2011 | 04/2011 | 03/2011 | 02/2011 | 01/2011 | 12/2010 | 11/2010 | 10/2010 | 09/2010 | 08/2010 | 07/2010 | 06/2010 | 05/2010 | 04/2010 | 03/2010 | 02/2010 | 01/2010 | 12/2009 | 11/2009 | 10/2009 | 09/2009 | 08/2009 | 07/2009 | 06/2009 | 05/2009 | 04/2009 | 03/2009 | 02/2009 | 01/2009 | 12/2008 | 11/2008 | 10/2008 | 09/2008 | 08/2008 | 07/2008 | 06/2008 | 05/2008 | 04/2008 | 03/2008 | 02/2008 | 01/2008 | 12/2007 | 11/2007 | 10/2007 | 09/2007 | 08/2007 | 07/2007 |
O stronie
wykorzystywany jest blosxom plus następujące wtyczki: tagging, flatarchives, rss10, lastbuilddatexhtmlmime. Niektóre musiałem dopasować nieco do swoich potrzeb. Więcej o blosxom jest tutaj
Subskrypcja
RSS 1.0
Migracja do Debian Stretch na jupiterze (svn)

Się poprzedni wpis kończył jakoby odtworzenie repozytorium svn było prostą sprawą, ale w praniu się okazało, że nie do końca:

# zapisanie starego
svnadmin dump svnrepo > svnR.out
# odtworzenie
svnadmin create svnrepo
svnadmin load svnrepo < svnR.out

Próba zapisu skutkuje komunikatami o błędach. No tak zachciało mi się zmienić port na niestandardowy. Żeby svn wiedział jak się połączyć trzeba dopisać (na koncie komputera klienta, w sekcji [tunnels]):

vi ~/.subversion/config
ssh = $SVN_SSH ssh -q -p PORTNUMBER
# addgroup svn
Adding group `svn' (GID 1002) ...
# gpasswd -a "tomek" svn
##Adding user tomek to group svn
# chgrp -R svn path-to-svnrepo

Teraz

svn info
Ścieżka: .
Working Copy Root Path: /home/tomek/orgfiles
URL: svn+ssh://tomek@umbriel/media/usbstick/svnrepo/tp/orgfiles
...

## Zmień svn+ssh://tomek@umbriel/path-to-repo na nowe:
svn relocate svn+ssh://tomek@umbriel/path-to-repo/path-to-project

url | Wed, 14/02/2018 09:14 | tagi: , , ,
Przeniesienie repozytorium svn na kartę SD

Na kartę czy nie na kartę problem sprowadza się do przeniesienia repozytorium do innego katalogu, co okazuje się bardzo proste:

## http://www.petefreitag.com/item/665.cfm
## Backup your old Repository
svnadmin dump /path/to/repository > repo_name.svn_dump
## Create the new Repository
svnadmin create /path/to/repository
## Import your old repository into the new one
svnadmin load --force-uuid /path/to/repository < repo_name.svn_dump

Do zmiany położenia repozytorium w kopii roboczej służy zaś następujące polecenie:

# http://webkit.org/blog/97/svn-repository-location-change/
svn switch --relocate OLDURL NEWURL

Przykład:

svn switch --relocate svn+ssh://eros@jupiter/public/sheeva/svnrepo/er/ETC \
svn+ssh://eros@jupiter/media/sd/svnrepo/er/ETC

No i tyle...

url | Tue, 17/11/2009 19:41 | tagi: , ,
Zakładanie SVN

Celem synchronizacji danych na moich komputerach założyłem archiwum SVN na PC. Do tej pory trzymałem moje pliczki potajemnie na svn.gust.org.pl, ale baza padła, svn wypisuje, że takiej to a takiej wersji nie ma svn: No such revision 465, no i generalnie kicha. Ponieważ svn w moim przypadku to duży overkill myślałem o czymś w rodzaju unisone, ale szkoda mi czasu, a po drugie -- pewnie niesłusznie -- wydaje mi się, że unisone bardziej nadaje się do synchronizacji w jedną stronę, np. przesłanie plików konfiguracyjnych z serwera na wiele komputerów. Tak więc ostatecznie stanęło na svn.

Zacząłem od ,,konfiguracji'' mojej ,,sieci'' LAN. Po uruchomieniu /sbin/ifconfig ustaliłem, że mój PC ma adres 192.168.1.102. Dopisałem zatem do /etc/hosts:

192.168.1.102 darkstar.pinkaccordions.org darkstar

W zasadzie całą konfigurację zrobił router! Komputer ma zatem nazwę darkstar, a pinkaccordions.org jest ukłonem w stronę Elki. Laptopa konfiguruję podobnie, nie używam WiFi, tylko kabel. Sieć będę używał tylko do transferu-synchronizacji więc nie ma to (mam nadzieję) większego znaczenia. Teraz najtrudniejsze:

svnadmin create '/stuff/svn/repos/tomek/'
svn mkdir file:///stuff/svn/repos/tomek/weblog -m'pierwszy projekt'
chown -R g+w /stuff/svn/

Następnie dopisuję do /etc/group, grupę svn, a do niej tych, którzy mają korzystać z svn. Zmieniam grupę, do której należy katalog /stuff/svn/:

chown -R root:svn /stuff/svn/

Wylogowuję się jako root I dodaję do repozytorium pierwszy projekt. Ponieważ repo jest na lokalnej maszynie mogę wpisać:

svn import  file:///stuff/svn/repos/tomek/weblog -m "Import mojego bloga"

Jeżeli nie zadziała, ale zamiast tego wyświetli:

svn: Can't create directory '/subversion/main/db/transactions/0-1.txn':\
   Permission denied 

Albo ekwiwalent w języku polskim, to trzeba zrestartować komputer i powinno działać. Jeżeli coś dalej jest nie tak, no to nie wiem -- u mnie działa.

Obezwładniam SELinuksa, edytując /etc/selinux/config:

SELINUX=disabled

SELinux jest usługą, która przeszkadza w wielu miejscach i z moich doświadczeń wynika, że lepiej ją prędzej czy później wyłączyć. Usługa ssh powinna być ,,zaufana'' (trusted services). Teoretycznie można konfigurować zaporę sieciową poprzez wybór z System/Administracja/Zapora, ale u mnie to nie działa. Być może jest to moja wina, bo nie używam domyślnego unicode tylko ISO-8859-2. W każdym bądź razie, radzę sobie uruchamiając program poprzez terminal (oczywiście jako root):

LANG=C system-config-securitylevel

Żeby nie wpisywać hasła, generuję odpowiednie klucze używając ssh-keygen, w sposób opisany tutaj:

ssh-keygen -t rsa

Teraz dwa razy Enter. W rezultacie klucz prywatny jest w .ssh/id_rsa, a publiczny w .ssh/id_rsa.pub Zawartość tego ostatniego trzeba dodać do .ssh/authorized_keys na maszynie, z którą mamy się łączyć bez podawania hasła. Procedurę powtarzam dla drugiej maszyny. Można sprawdzić:

ssl -l tomek darkstar

Powinno działać. Także będzie działać svn, np. mogę ściągnąć repozytorium z PC na laptopa:

svn co  svn+ssh://tomek@darkstar/stuff/svn/repos/tomek/weblog

Dopisane 26 lutego 2008: Sam się dziwiłem jakim cudem router przydziela moim komputerom te same numery IP. Ale do czasu. Wczoraj przydzielił inne... Pomysł oparty na /etc/hosts miał raczej krótkie nogi. Nie mając bladego pojęcia jak to osiągnąć i posługując się google ustaliłem, że 1) static DHCP jest tym czego mi potrzeba; 2) fabryczny firmware do mojego routera WRT54GL nie potafi tego zrobić i należy wgrać alternatywny 3) są różne alternatywy, zachęcony tym wpisem postawiłem w ciemno na Tomato.

[tomato-static-dhcp.jpg]

Mówiąc szczerze najwyżej w Google było nt. dd-wrt, ale strona tegoż jakaś taka podejrzanie dziwna, nie mówiąc już o www.dd-wrt.org/. I was a bit afraid.

Zatem ściągnąłem plik ze strony www.polarcloud.com/tomato. Zainstalowałem archiwizer 7-Zip, który do niczego nie był mi wcześniej potrzebny:

yum install p7zip p7zip-plugins

Wypakowałem zawartość archiwum, połączyłem się z routerem (http://192.168.1.1/) i wgrałem firmware (Administration/Firmware Upgrade, wybrałem plik wrt54g_wrt54gl.bin). Teraz ważne (nie zrobiłem tego i straciłem trochę czasu): należy zresetować router (Administration/Restore default configuration, wybrać Erase all data in NVRAM memory). Po resecie loguję się na router jako root/admin. Następnie trzeba przejść do zakładki Basic/Static DHCP i wpisać odpowiednie informacje (numery MAC są w zakładce Status/Device List).

Zgodnie z tym co jest napisane w dokumentacji należy wybrać adresy spoza puli przydzielanej automatycznie przez router. Ponieważ mój router przydziela z przedziału 192.168.1.100--149, wybrałem numery typu: 192.168.1.2 itp.

Jak już wszystko zainstalowałem to znalazłem detaliczny opis co i jak tu: Turbocharge your router with Tomato. Jest też poradnik co robić jak instalując nowy firmware popsujemy router: Recover from a Bad Flash.

url | Sat, 09/02/2008 16:32 | tagi: , , , , ,
Nazwy plików a system SVN

W zasadzie prosta sprawa. Nazwy plików różniące się tylko wielkością znaków (duże/małe litery) w systemie MSW są nierozróżnialne. Jeżeli takimi plikami zarządza system kontroli wersji SVN, to w linuksie i podobnych systemach wszystko działa, a w MS Windows nie -- i w pierwszej chwili nie wiadomo dlaczego. A nie działa zapewne dlatego, że plik jest nadpisywany i SVN-owi nie zgadza się liczba ściągniętych dokumentów.

#!/usr/bin/perl
# Rekursywnie przeszukuje bieżący katalog wypisując pliki, których nazwy
# różnią się tylko wielkością liter (małe/duże).
# Takie pliki nierozróżnia tzw. W-System, co może być źródłem problemów.

use File::Find;
find(\&fcmp, ".");

sub fcmp {
  $dir = lc("$File::Find::dir");
  $file = lc("$File::Find::name");
  $Files{$dir}{$file}++;
}

for $d (sort keys %Files ) {
   for $f (sort keys %{ $Files{$d}} ) {
      if ($Files{$d}{$f} > 1) {
         print "** $Files{$d}{$f} Duplicates found for: $d $f\n" ;
      }
   }
}

Powyższy skrypt perlowy wypisze pliki, które potencjalne mogą powodować problemy.

url | Thu, 04/10/2007 11:35 | tagi: , , , ,