Je gebruikt een puntkomma als classpath-scheidingsteken - dit werkt niet onder Linux. Probeer ";" te vervangen. met ":" in classpath en het zou moeten werken.
Bewerken: uitleg van wat hier gebeurt. In Linux, ";" is opdrachtscheidingsteken. Uw lijn van
java -cp /home/JohnF/postgresql-9.2-1000.jdbc4.jar;/home/JohnF QueryDB
is echt uitgebreid tot 2 die één voor één worden uitgevoerd:
java -cp /home/JohnF/postgresql-9.2-1000.jdbc4.jar
/home/JohnF QueryDB
De eerste doet niets en sluit met succes af.Second probeert /home/JohnF
op te roepen als uitvoerbaar, en dit is niet echt een uitvoerbaar bestand, maar een map!