Juhana Kari © Tuesday, December 18, 2007 7:25

“Pohjana Tero Karvisen Linuxin perusteet-kurssi http://iki.fi/karvinen"

Tätä parannellaan vielä !

H5

Perjantai n. klo 14:30

H5.1 PHP Hei maailma (Apachella)

Ensiksi etsin PHP asennuspaketti komennolla
juhana@juhana-desktop:~$ sudo apt-cache search php ¦ less
(käytän | ls) jotta tulee vain näytöllinen tekstiä
Tarpeeksi kauan “kelattuani” näytöllisiä löytyy

php5 - server-side, HTML-embedded scripting language (meta-package)


“ kelaan” loppuun ja painan Q-näppäintä päästäkseni listauksesta pois.
joten seuraavaksi asennan php5:en
juhana@juhana-desktop:~$ sudo apt-get install php5


Reading package lists... Done

Building dependency tree

Reading state information... Done

The following packages were automatically installed and are no longer required:

libktnef1

Use 'apt-get autoremove' to remove them.

The following extra packages will be installed:

apache2-mpm-prefork libapache2-mod-php5 php5-common

Suggested packages:

php-pear

The following packages will be REMOVED:

apache2-mpm-worker

The following NEW packages will be installed:

apache2-mpm-prefork libapache2-mod-php5 php5 php5-common

0 upgraded, 4 newly installed, 1 to remove and 171 not upgraded.

Need to get 3328kB of archives.

After unpacking 6996kB of additional disk space will be used.

Do you want to continue [Y/n]?
y (painan y:tä ja imurointi asennus alkaa

PHP 5 on onnistuneesti asennettu

Nyt katson googlella wikibooksista PHP:n Hello World -esimerkin
Se löytyy osoitteesta
http://en.wikibooks.org/wiki/Programming:PHP/hello_world

Kirjoitan tekstin Text Editorilla (Geditillä) ja tallennan sen public_html-kansion alle hei_php.php-nimellä.

<?php

$merkkijono = "Hei maailma!";

print $merkkijono;

// tai echo $merkkijono;

?>


H5.2 Kirjoita esimerkki shell scriptistä.

Bash scripting eli shell scriptin esimerkki

Käynnistän texteditorin ja kirjoitan
ensimmäisellä riville
#!/bin/bash tällä aloitetaan aina shell scripting

Alle kirjoitan texteditorissa varsinaisen shellskriptin, kyseinen skripti yhdistää kuukaudet kuusanaan
for kuukaudet in "Tammi" "Helmi" "Maalis" "Huhti" "Touko" "Kesä" "Heinä" "Elo"$

do

set -- $kuukaudet

# The "--" estää ikäviä yllätyksiä jos $kuukaudet on null

echo "$1$2kuu"

done


exit 0

Tallennnan skriptin nimellä kuukaudet

Sen jälkeen teen kaikille kirjoitus
$ chmod a+x kuukaudet (kaikille käyttäjille suoritusoikeudet) bashskripti-tiedostoon kuukaudet, jotta kyseisen skriptin voi suorittaa.
chmod vastaa unix järjestelmissä ms-dos/windowsin attrib-komentoa.
a=all (kaikki)
x=execute (suoritus)

Skriptin voi siis suorittaa nyt samassa hakemistossa komennolla

./kuukaudet/
Jos haluan, että se suoritetaan missä tahansa hakemistossa kopioin tiedoston sudolla /usr/local/bin hakemistoon.
sudo cp /usr/local/bin
Jos haluan kyseisen asian käyttäjäkohtaiseksi
teen käyttäjähakemistoni alle bin-kansion ja sinne kopion skriptin
ja kirjoitan
nano .bashrc tällöin .bashrc avautuu nanoon .bashsrc:en viimeiselle riville kirjoitan

PATH=$PATH:$HOME/bin
(polku bin hakemistoon)

tämän jälkeen voin suorittaa bin hakemistossa olevan skriptin kirjoittamalla vain sen nimen

kuukaudet

# enable programmable completion features (you don't need to enable

# this, if it's already enabled in /etc/bash.bashrc and /etc/profile

# sources /etc/bash.bashrc).


Launtai 1:50

H5.3 C++ Hei maailma. (g++)


Asennan seuraavaksi GNU C++ compilerin g++
juhana@juhana-desktop:~$ sudo apt-get install g++
Tämän jälkeen kirjoitan ohjelmakoodin heimaailma-ohjelma a varten texteditorilla
// 'Hei Maailma!' ohjelma

#include <iostream>

int main()
{
std::cout << "Hei maailma!" << std::endl;
return 0;
}
Tallennan sen heimaailma.cc nimellä käyttäkansiooni

kirjoitan seuraavaksi
juhana@juhana-desktop:~$ g++ heimaailma.cc
se käänsi ohjelman ja tekee siitä ajettavan tiedoston a.out.
Seuraavaksi teen ajan sen komennolla
juhana@juhana-desktop:~$ ./a.out
./ kertoo järjestelmälle että ohjelma sijaitsee siinä kansiossa missä ollaan.
Hei maailma!
juhana@juhana-desktop:~$

H5.4 Java hei maailma (Sun Java ja Ubuntu)


Asensin vapaan java-sdk:n
sudo apt-get install free-java-sdk tai jos olisin asentanut Sunin javan niin sudo apt-get install sun-java5-jdk sun-java5-jre
Sen jälkeen kirjoitan texteditorilla java-ohjelman koodin
public class HeiMaailma
{
public static void main(String[] args)
{
System.out.println("Hei maailma!");
}

}
ja tallennan sen heimaailma.java-nimellä.
ja käännän sen
juhana@juhana-desktop:~$ javac heimaailma.java

kirjoitan
juhana@juhana-desktop:~$ ls

jotta näen mitä hakemistoon on syntynyt siellä on
HeiMaailma.class-tiedosto

seuraavaksi ajan ohjelman

juhana@juhana-desktop:~$ java HeiMaailma
Hei maailma
juhana@juhana-desktop:~$

H5.6 Käännä wget lähdekoodista

Tutkin Freshmeat.netin sivuja, lataan “tervapallon” ohjelmankotisivulta wget-1.10.1.tar.gz


Sen jälkeen puran sen tar -zxvf wget*.tar.gz
syntyi uusi hakemist
wget-1.10.1
sen jälkeen siirryn uuteen kansioon wget-1.10.1
ja siellä suoritan configuren

kirjoittamalla
./configure (./ kyseinen hakemisto, jossa ollaan)
Se menee läpi jos ei menisi niin käytettäsiiin $ sudo apt-get install build-essential


configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating doc/Makefile
config.status: creating util/Makefile
config.status: creating po/Makefile.in
config.status: creating windows/Makefile
config.status: creating stamp-h
config.status: creating src/config.h
config.status: executing default commands
generating po/POTFILES from ./po/POTFILES.in
creating po/Makefile
Makefile syntyi edellisessä vaiheessa. Se sisältää tiedon, kuinka ohjelma käännetään juuri meidän ympäristössämme.
kirjoitin make -komennon
Make (suorittamisen aikan tuli jotain ilmoituksia jostain tiedostoista joita ei löytynyt, mutta ohjelma näytti kuitenkin toimivan silti.
juhana@juhana-desktop:~/wget-1.10.1$ make
make[1]: Entering directory `/home/juhana/wget-1.10.1/po'
file=./`echo bg | sed 's,.*/,,'`.gmo \
&& rm -f $file && PATH=../src:$PATH msgfmt -o $file bg.po
/bin/sh: msgfmt: not found
make[1]: *** [bg.gmo] Error 127
make[1]: Leaving directory `/home/juhana/wget-1.10.1/po'
make: *** [po] Error 2
ja sen jälkeen siirryin src-kansioon

ja kirjoitin
./wget
ohjelma toimi

juhana@juhana-desktop:~/wget-1.10.1$ cd src

H5.7 Asenna MySQL tietokantapalvelin ja PhpMyAdmin.


sudo apt-cache search mysql
sudo apt-get install mysql-server-5.0
juhana@juhana-desktop:~/wget-1.10.1/src$ sudo apt-get install mysql-server-5.0
Password:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libktnef1
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl
mysql-client-5.0 mysql-common
Suggested packages:
dbishell libcompress-zlib-perl tinyca
Recommended packages:
mailx
The following NEW packages will be installed:
libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl
mysql-client-5.0 mysql-common mysql-server-5.0
0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded.
Need to get 37.2MB of archives.
After unpacking 98.5MB of additional disk space will be used.
Do you want to continue [Y/n]? y


sudo apt-get install php5-mysql
juhana@juhana-desktop:~/wget-1.10.1/src$ sudo apt-get install mysql-server-5.0
Password:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libktnef1
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl
mysql-client-5.0 mysql-common
Suggested packages:
dbishell libcompress-zlib-perl tinyca
Recommended packages:
mailx
The following NEW packages will be installed:
libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl
mysql-client-5.0 mysql-common mysql-server-5.0
0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded.
Need to get 37.2MB of archives.
After unpacking 98.5MB of additional disk space will be used.
Do you want to continue [Y/n]? y
juhana@juhana-desktop:~/wget-1.10.1/src$ sudo apt-get install php5-mysql
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libktnef1
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
php5-mysql
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 73.8kB of archives.
After unpacking 287kB of additional disk space will be used.
Get:1 http://fi.archive.ubuntu.com feisty-updates/main php5-mysql 5.2.1-0ubuntu1.5 [73.8kB]
Fetched 73.8kB in 0s (1297kB/s)
Selecting previously deselected package php5-mysql.
(Reading database ... 119410 files and directories currently installed.)
Unpacking php5-mysql (from .../php5-mysql_5.2.1-0ubuntu1.5_amd64.deb) ...
Setting up php5-mysql (5.2.1-0ubuntu1.5) ...
sudo apt-get install phpmyadmin

uhana@juhana-desktop:~/wget-1.10.1/src$ sudo apt-get install phpmyadmin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libktnef1
Use 'apt-get autoremove' to remove them.
Recommended packages:
php5-mcrypt php4-mcrypt php5-gd php4-gd
The following NEW packages will be installed:
phpmyadmin
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 3592kB of archives.

17.12
phmmyadmin kansio ilmestyy oikean paikkaan apache2-kansion viereen var/www-kansioon

Mutta kun kirjoitan http://localhost selaimeen ja avian phpmyadmin kansion niin tulee pelkkää valkoista Mozilla Firefoxiin, eli ei mitään kirjautumissivua.

Yritän uudellen monella eri tavalla mutta en saa toimimaan phpmyadminia, käytän sudo taskselilla, lamp-asennusta, mikään ei auta

H5.10* (Vapaaehtoinen extra) Lue Haaga-Helian lehtiä avaamalla ssh-tunneli proxyyn.

1. terminaalissa kirjoitin nano ~/.ssh/config, tällöin nanoon avautuu uusi config-tiedosto

2. sitten kirjoitn config-tiedostoon seuraavat määritykset tunnelointia varten

host myy.haaga-helia
user a0400792
hostname myy.haaga-helia.fi
ForwardAgent yes
LocalForward L8000 www.cache.haaga-helia.fi:8000
host www.cache.haaga-helia.fi
user a0400792
hostname localhost
port 8000

ja tallensin tiedoston

sitten kirjoitn terminaaliin

ssh -fN myy.haaga-helia.fi
password:
ja salasanan sudolle

ja Mozilla Firefoxin asetuksiin laitoin kohtaan
Edit->preferences->Advanced
Network välilehti
Connection configure how firefox connects to the Internet Settings button
Manual proxy configuration

HTTP proxy :localhost port:8000

use this proxy server for all protocols

Sitten kokeilin Firefoxia

http://www.haaga-helia.fi/fi/kirjasto/tiedonlahteet/

ja painoin linkkkiä Hakuteokset ja sanakirjat
Mutta jotain oli väärin tunneloinnin kanssa, koska sivu ei latautunut, oli vain seuraava teksti sivulla


The proxy server is refusing connections


Firefox is configured to use a proxy server that is refusing connections.

* Check the proxy settings to make sure that they are correct.

* Contact your network administrator to make sure the proxy server is
working.

and try again-painike sivulla

Valid XHTML 1.0 Transitional

© 2007 Juhana Kari

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.