wtorek, 6 sierpnia 2013

Autoryzacja "po kluczu" w TortoiseSVN

Settings > Network > SSH client:
c:\Program Files\tortoisesvn\bin\TortoisePlink.exe -i c:\...\kluczprywatny.ppk -2 -l login_uzytkownika

poniedziałek, 29 lipca 2013

VisualVM i Websphere

Websphere:
1. Servers > Application servers > {NAZWA_SERVERA} > Java and Process Management > Process definition > Java Virtual Machine
2. W Generic JVM arguments dodać:
-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false \
    -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=1099
("javax.management.builder.initial" ma być puste - to nie literówka)
3. Restart.

VisualVM:
1. File -> Add JMX Connection
2. Connection:
localhost:1099
źródło

czwartek, 6 czerwca 2013

Gubienie StackTrace w HotSpot JVM -server

Jeśli JVM jest uruchomione z parametrem -server, to dla często występujących wyjątków mogą zostać obcięte StackTrace'y, np.:
public class NPEnoSTMain {

    public static void main(String[] args) {
        for (int i = 0; i < 100000; i++) {
            try {
                ((Object) null).hashCode();
            } catch (NullPointerException e) {
                e.printStackTrace();
            }
        }
    }

}
Na początku będzie wyświetlał:
java.lang.NullPointerException
 at poligon.NPEnoSTMain.main(NPEnoSTMain.java:8)
a po pewnym czasie już tylko:
java.lang.NullPointerException
Dzieje się tak, gdyż JIT po wykryciu często rzucanego wyjątku zamieni go na preallocated (zcache'owany?) wyjątek - podczas tego procesu jest tracona informacja o StackTrace. Aby temu zapobiec, należy przekazać do JVM parametr:
-XX:-OmitStackTraceInFastThrow
źródło

czwartek, 4 kwietnia 2013

Lista podłączonych użytkowników w PostgreSQL

SELECT * FROM pg_stat_activity WHERE datname = 'database_name';

Inline sed

Find-Replace w pliku za pomoca sed:
sed -e 's/find_str/replace_str/g' file.txt
man sed:
 s /wyrażenie regularne/zamiennik/flagi         (2)
Podmień znalezione wyrażenia regularne na zamiennik (w bieżącym buforze tekstowym). Zamiast  ‘/’  można  użyć  dowolnego  znaku.  Dla
dokładniejszego opisu zobacz ed (1).  Flagi to zero lub więcej z następujących:

g -- Globalnie. Podmieniaj wszystkie niezachodzące na siebie instancje
     łańcucha, a nie tylko pierwszą z nich.

p -- Drukuj przestrzeń wzorców po dokonaniu podmiany.

w -- Zapisuj. Doklej bieżący bufor tekstowy do argumentu plikowego, tak jak
     w komendzie w (o ile zostanie dokonana podmiana). Standardowe wyjście
     jest używane jeśli nie podano argumentu plikowego.

wtorek, 29 stycznia 2013

Bezhasłowa autoryzacja ssh (kluczem)

local$ ssh-keygen -t dsa
local$ scp ~/.ssh/id_dsa.pub remote:~/
local$ ssh username@remote
remote$ cat ~/id_dsa.pub >> ~/.ssh/authorized_keys
remote$ chmod 644 ~/.ssh/authorized_keys
remote$ exit
local$ ssh username@remote
źródło

piątek, 18 stycznia 2013

Zatrzymywanie wybranego połączenia MQ

Sekwencja komend odnajdująca i zatrzymująca jedyne połączenie do kanału CLIENT.TEST:
DISPLAY CONN(*) WHERE (CHL EQ CLIENT.TEST)
DISPLAY CONN(id_polaczenia)
STOP CONN(id_polaczenia)

sobota, 12 stycznia 2013

Usuniecie informacji EXIF z pliku JPEG

exiftool -exif:all= *.JPG
Uwaga - zostaną usunięte tylko dane wygenerowane przez aparat. Dane dopisane przez Google Picasa zostaną.

piątek, 11 stycznia 2013

Usuwanie połączonej sesji użytkownika w Informix

Pod dbaccess:
SELECT * FROM sysmaster:sysopendb WHERE odb_dbname = 'baza_danych'
i odczytujemy odb_sessionid. Nastepnie w bash:
onmode -z <odb_sessionid>