Harjoitus 4

·        Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html

·        Pohjana Tero Karvinen 2012: Linux kurssi, http://terokarvinen.com

Perus käyttäjän oikeuksilla verkkosivustojen tekeminen.

Tehtävien teko aloitettu 10.2.2019 noin kello 20.00.

Alkuvalmistelut…
Asenna apache2:
$ sudo apt-get install apache2
Käynnistin Apachen uudelleen:
$ sudo systemctl restart apache2

Kotihakemiston asennus ja teko.
Seuraava komento avaa mahdollisuuden ”hostata” omasta kotihakemistosta web-sivuja:
$ sudo a2enmod userdir
Tämän jälkeen Apache pitää taas käynnistää uudestaan:
$ sudo systemctl restart apache2
Seuraavaksi tehdään kansiot jne.
Siirrytään kotihakemistoon:
$ cd
Tehdään public_html hakemisto, josta verkkosivustoja hostataan:
$ mkdir public_html
Siirrytään äsken tehtyyn kansioon:
$ cd public_html
Tehdään uusi verkkosivu:
$ nano index.html
Tämän jälkeen pitäisi toimia osoitteessa:
http://vuorivirta.me/~nikke/

Käyttäjän oma sivusto.

Peruskäyttäjän hakemistossa sijaitsevan sivuston käyttäminen ”oletussivuna”

Tehdään uusi .conf tiedosto, jotta saadaan tehtyä ikään kuin ”linkki” public_html kansiossa sijaitsevaan index tiedostoon.
$ cd /etc/apache2/sites-available/
$ sudoedit vuorivirta-me.conf
Lisäsin edellätehtyyn vuorivirta-me.conf -tiedostoon seuraavan;

<VirtualHost *:80>
        ServerName www.vuorivirta.me
        ServerAlias vuorivirta.me *.vuorivirta.me
        DocumentRoot /home/nikke/public_html/
        <Directory /home/nikke/public_html/>
                require all granted
        </Directory>
</VirtualHost>

Laitetaan kyseinen sivusto toimimaan kotisivuna.
$ sudo a2ensite vuorivirta-me.conf
Lopuksi käynnistetään Apache uudelleen
$ sudo systemctl restart apache2

Kotisivu

Murtautumis yrityksien seuraaminen

Ensin siirryin kansioon, jossa sijaitsee kirjautumis yrityksiä seuraava loki tiedosto.
$ cd /var/log
Palvelimen kirjautumis lokia pystyy katsomaan joko ”less” komennolla tai näppärästi seuraamalla reaaliajassa murtautumis yrityksiä komennolla:
$ tail -F auth.log
Tämän seuraamis prosessin voi tappaa komennolla ”control + c”. Tunkeutumis yrityksiä tulee noin 10-20sekunnin välein.

Feb 10 19:42:58 linuxkurssi sshd[18081]: Failed password for root from 218.92.1.158 port 21890 ssh2
Feb 10 19:42:59 linuxkurssi sshd[18081]: Received disconnect from 218.92.1.158 port 21890:11:  [preauth]
Feb 10 19:42:59 linuxkurssi sshd[18081]: Disconnected from 218.92.1.158 port 21890 [preauth]
Feb 10 19:42:59 linuxkurssi sshd[18081]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.1.158  user=root
Feb 10 19:42:59 linuxkurssi sshd[18083]: Failed password for root from 36.156.24.94 port 45922 ssh2
Feb 10 19:43:02 linuxkurssi sshd[18083]: Failed password for root from 36.156.24.94 port 45922 ssh2
Feb 10 19:43:02 linuxkurssi sshd[18083]: Received disconnect from 36.156.24.94 port 45922:11:  [preauth]
Feb 10 19:43:02 linuxkurssi sshd[18083]: Disconnected from 36.156.24.94 port 45922 [preauth]
Feb 10 19:43:02 linuxkurssi sshd[18083]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=36.156.24.94  user=root
Feb 10 19:43:05 linuxkurssi sshd[18085]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=36.156.24.94  user=root
Feb 10 19:43:07 linuxkurssi sshd[18085]: Failed password for root from 36.156.24.94 port 44558 ssh2
Feb 10 19:43:12 linuxkurssi sshd[18085]: message repeated 2 times: [ Failed password for root from 36.156.24.94 port 44558 ssh2]
Feb 10 19:43:12 linuxkurssi sshd[18085]: Received disconnect from 36.156.24.94 port 44558:11:  [preauth]
Feb 10 19:43:12 linuxkurssi sshd[18085]: Disconnected from 36.156.24.94 port 44558 [preauth]
Feb 10 19:43:12 linuxkurssi sshd[18085]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=36.156.24.94  user=root
Feb 10 19:43:15 linuxkurssi sshd[18090]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=36.156.24.94  user=root
Feb 10 19:43:17 linuxkurssi sshd[18090]: Failed password for root from 36.156.24.94 port 41626 ssh2
Feb 10 19:43:21 linuxkurssi sshd[18090]: message repeated 2 times: [ Failed password for root from 36.156.24.94 port 41626 ssh2]
Feb 10 19:43:21 linuxkurssi sshd[18090]: Received disconnect from 36.156.24.94 port 41626:11:  [preauth]
Feb 10 19:43:21 linuxkurssi sshd[18090]: Disconnected from 36.156.24.94 port 41626 [preauth]
Feb 10 19:43:21 linuxkurssi sshd[18090]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=36.156.24.94  user=root
Feb 10 19:43:23 linuxkurssi sshd[18092]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=36.156.24.94  user=root
Feb 10 19:43:26 linuxkurssi sshd[18092]: Failed password for root from 36.156.24.94 port 33464 ssh2
Feb 10 19:43:30 linuxkurssi sshd[18092]: message repeated 2 times: [ Failed password for root from 36.156.24.94 port 33464 ssh2]
Feb 10 19:43:30 linuxkurssi sshd[18092]: Received disconnect from 36.156.24.94 port 33464:11:  [preauth]
Feb 10 19:43:30 linuxkurssi sshd[18092]: Disconnected from 36.156.24.94 port 33464 [preauth]
Feb 10 19:43:30 linuxkurssi sshd[18092]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=36.156.24.94  user=root
Feb 10 19:43:50 linuxkurssi sshd[18094]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.1.158  user=root
Feb 10 19:43:52 linuxkurssi sshd[18094]: Failed password for root from 218.92.1.158 port 48374 ssh2
Feb 10 19:43:57 linuxkurssi sshd[18094]: message repeated 2 times: [ Failed password for root from 218.92.1.158 port 48374 ssh2]
Feb 10 19:43:57 linuxkurssi sshd[18094]: Received disconnect from 218.92.1.158 port 48374:11:  [preauth]
Feb 10 19:43:57 linuxkurssi sshd[18094]: Disconnected from 218.92.1.158 port 48374 [preauth]
Feb 10 19:43:57 linuxkurssi sshd[18094]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.1.158  user=root
Feb 10 19:44:46 linuxkurssi sshd[18098]: Connection closed by 104.248.244.59 port 42554 [preauth]
Feb 10 19:44:47 linuxkurssi sshd[18096]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.1.158  user=root
Feb 10 19:44:49 linuxkurssi sshd[18096]: Failed password for root from 218.92.1.158 port 13875 ssh2
Feb 10 19:44:53 linuxkurssi sshd[18096]: message repeated 2 times: [ Failed password for root from 218.92.1.158 port 13875 ssh2]
Feb 10 19:44:53 linuxkurssi sshd[18096]: Received disconnect from 218.92.1.158 port 13875:11:  [preauth]
Feb 10 19:44:53 linuxkurssi sshd[18096]: Disconnected from 218.92.1.158 port 13875 [preauth]
Feb 10 19:44:53 linuxkurssi sshd[18096]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.1.158  user=root
Feb 10 19:45:43 linuxkurssi sshd[18100]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.1.158  user=root
Feb 10 19:45:45 linuxkurssi sshd[18100]: Failed password for root from 218.92.1.158 port 33687 ssh2
Feb 10 19:45:49 linuxkurssi sshd[18100]: message repeated 2 times: [ Failed password for root from 218.92.1.158 port 33687 ssh2]
Feb 10 19:45:49 linuxkurssi sshd[18100]: Received disconnect from 218.92.1.158 port 33687:11:  [preauth]
Feb 10 19:45:49 linuxkurssi sshd[18100]: Disconnected from 218.92.1.158 port 33687 [preauth]

Asensin whois -palvelun tunkeutujien ip -tietojen katseluun.
$ sudo apt-get install whois

$ whois 218.92.1.158
% [whois.apnic.net]
% Whois data copyright terms    http://www.apnic.net/db/dbcopyright.html

% Information related to '218.90.0.0 - 218.94.255.255'

% Abuse contact for '218.90.0.0 - 218.94.255.255' is 'anti-spam@ns.chinanet.cn.net'

inetnum:        218.90.0.0 - 218.94.255.255
netname:        CHINANET-JS
descr:          CHINANET jiangsu province network
descr:          China Telecom
descr:          A12,Xin-Jie-Kou-Wai Street
descr:          Beijing 100088
country:        CN
admin-c:        CH93-AP
tech-c:         CJ186-AP
mnt-by:         MAINT-CHINANET
mnt-lower:      MAINT-CHINANET-JS
mnt-routes:     maint-chinanet-js
status:         ALLOCATED non-PORTABLE
last-modified:  2008-09-04T06:51:29Z
source:         APNIC

role:           CHINANET JIANGSU
address:        260 Zhongyang Road,Nanjing 210037
country:        CN
phone:          +86-25-86588231
phone:          +86-25-86588745
fax-no:         +86-25-86588104
e-mail:         ip@jsinfo.net
remarks:        send anti-spam reports to spam@jsinfo.net
remarks:        send abuse reports to abuse@jsinfo.net
remarks:        times in GMT+8
admin-c:        CH360-AP
tech-c:         CS306-AP
tech-c:         CN142-AP
nic-hdl:        CJ186-AP
remarks:        www.jsinfo.net
notify:         ip@jsinfo.net
mnt-by:         MAINT-CHINANET-JS
last-modified:  2011-12-06T02:58:51Z
source:         APNIC

person:         Chinanet Hostmaster
nic-hdl:        CH93-AP
e-mail:         anti-spam@ns.chinanet.cn.net
address:        No.31 ,jingrong street,beijing
address:        100032
phone:          +86-10-58501724
fax-no:         +86-10-58501724
country:        CN
mnt-by:         MAINT-CHINANET
last-modified:  2014-02-27T03:37:38Z
source:         APNIC

% Information related to '218.92.0.0/16AS23650'

route:          218.92.0.0/16
descr:          CHINANET jiangsu province network
country:        CN
origin:         AS23650
mnt-by:         MAINT-CHINANET-JS
last-modified:  2008-09-04T07:54:28Z
source:         APNIC

% This query was served by the APNIC Whois Service version 1.88.15-46 (WHOIS-UK4)

Ilmeisesti tämä ip (218.92.1.158), jonka tietoja etsin whois -palvelulla sijaitsee kiinassa tai mahdollisesti käyttää kiinalaisia internet-palveluita muualta käsin. Huomioitavaa on myös se, että hyökkääjät yrittävät kirjautua root -käyttäjällä, vaikka se on poissa käytöstä.

SCP -komento

Ensiksi jouduin googlailemaan, miten SCP toimii ja päädyin tälle sivulle, koska en ollut aikaisemmin käyttänyt SCP:tä. Ilmeisesti ohjeet olivat hyvät, koska sain ensimmäisellä yritykselle tiedoston siirrettyä. Kone, jolta siirsin tiedoston, oli vuoden 2017 Macbook pro, jossa käytin Mojave käyttöjärjestelmä versiota. Tein siirron iTerm nimisellä ohjelmalla terminaalissa normaalisti.

Lähdetiedosto omalla koneella sijaitsi polussa: /Users/nikke/Desktop/h4/scptesti.html
ja lähetin sen palvelimelle kansioon:
home/public_html

$ scp /Users/nikke/Desktop/h4/scptesti.html nikke@vuorivirta.me:~/public_html

Komennon jälkeen SCP kysyi vastaanottavan tietokoneen (tässä tapauksessa palvelimen) salasanaa, jonka syötin ja painoin enter. Seuraavanlaista statistiikkaa näkyi tiedoston siirron jälkeen:
100%  204    3.2KB/s   00:00.
Näistä 100% tarkoittaa luultavasti tiedostojen lähettämisen onnistumis prosenttia, 204 lähetettyjen tavujen määrää, 3.2KB/s tiedoston lähetys nopeutta, sekä 00.00 kokonaisaikaa, joka lähetyksessä kesti. Testasin myös, että lähettämäni testisivu toimii internetissä, joka onnistui:
http://vuorivirta.me/scptesti.html

PHP

PHP:n olin asentanut jo komennolla;
$ sudo apt-get install php libapache2-mod-php
Tämän jälkeen piti editoida php7.0.conf tiedostoa, jotta PHP saadaan toimimaan käyttäjien kotihakemistossa.
$ sudoedit /etc/apache2/mods-available/php7.0.conf
Tiedostossa on ohjeet, mitä pitää kommentoida, jotta PHP alkaa toimimaan käyttäjien kotihakemistoissa. Seuraavaksi tein seuraavanlaisen phptestisivu.php tiedoston;

<html>
 <head>
  <title>PHP Test</title>
 </head>
 <body>
<?php print("$_SERVER[REMOTE_ADDR]");?>
 </body>
</html>

Tässä linkki kyseiselle testisivulle.

Tehtävän teko lopetettu 10.2.2019 noin kello 23.55.

Harjoitus 3

·        Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html

·        Pohjana Tero Karvinen 2012: Linux kurssi, http://terokarvinen.com

Apachen asennus

Harjoitus 3:n teko aloitettu su 3.2.1019 noin klo 20.13.
Tehtävän tekemisen aloitin päivittämällä ohjelma lähteet.

$ sudo apt update
Aachen asensin komennolla:
$  sudo apt-get install apache2

Testasin Apachen toiminan kirjoittamalla selaimen osoiteriville “localhost” ja Apachen aloitussivu tuli esille = Apache asennettu onnistuneesti.

Apachen testisivu

Tämän jälkeen tein public_html kansion käyttäjäni koti hakemistoon komennolla:
$ mkdir public_html

Jotta käyttäjät voivat tehdä omaan koti hakemistoon web sivustoja public_html kansioon, ajoin komennon
$ sudo a2enmod userdir
, jonka jälkeen pitää Apache käynnistää uudelleen komennolla:
$ sudo systemctl restart apache2

Apachen uudelleen käynnistyksen jälkeen siirryin aikaisemmin tekemääni public_html kansioon, johon tein itselleni html testisivuston nanolla. Tämän jälkeen testasin toimintaa kirjoittamalla selaimen osoiteriville “http://localhost/~nikke/” ja testisivu näkyi odotetusti.

Testisivu

Apachen lokiin onnistunut ja epäonnistunut merkintä

Apachen logia monitoroin “livenä”
$ sudo tail -f /var/log/apache2/access.log
komennolla. Päivittämällä “http://localhost/~nikke/” sivuston loki antaa seuraavanlaisen merkinnän;

::1 – – [03/Feb/2019:21:10:47 +0200] ”GET /~nikke/ HTTP/1.1” 200 478 ”-” ”Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/71.0.3578.98 Chrome/71.0.3578.98 Safari/537.36”

Lokista löytyy päivämäärä ja kellonaika, “GET” -pyyntö, jolla selain on pyytänyt  /~nikke hakemistosta index sivua, HTTP protokolla ja versio 1.1, seuraava numero 200 on merkki onnistuneesta sivun latauksesta, “478” tarkoittaa ilmeisesti vastauksen pituutta, koska se ei muutu lokissa, vaikka sivustoa lataa. Loput lokista on lähinnä selaimen ja alustan tietoja eli ns. user agentteja, löysin netistä sivuston, joka avaa user agentin tietoja ja alla olevassa kuvassa on minun agentin tiedot.

User Agent Info

Seuraavaksi aiheutin 404 Not Found errorin lokiin kirjoittamalla osoitteen, jolle ei löydy nettisivua (http://localhost/~nikke/testi). Tästä seurasi alla oleva virhe.

404

::1 – – [03/Feb/2019:21:36:04 +0200] ”GET /~nikke/testi HTTP/1.1” 404 502 ”-” ”Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/71.0.3578.98 Chrome/71.0.3578.98 Safari/537.36”

Tässä ei oikeastaan muutu muuta, kuin kellonaika ja tulee tämä http 404 error ja vastauksen pituus on eri.

Virhe web-palvelimella ajettavaan koodiin

Ensin muutin index.html sivun index.php sivuksi komennolla
$ mv index.html index.php

Asensin PHP:n komennolla:
$ sudo apt-get install php libapache2-mod-php
Tämän jälkeen tein index.php tiedostoon PHP koodia, mutta huomasin, että PHP ei toimi viellä. Lyhyen googlettamisen jälkeen löysin syyn tältä sivulta, eli en ollut muokannut “sudo gedit /etc/apache2/mods-available/php7.0.conf” tiedostosta PHP:tä käyttöön kotihakemistossa.

Alla on koodini, josta jätin tarkoituksella huutomerkin jälkeen lainausmerkin pois.

<!doctype html>
<html>
<head>
        <title>Niklaksen testisivu</title>
        <meta charset="utf-8" />
</head>
<body>
        <h1>"nikke"käyttäjän testisivu</h1>
        <?php echo "Hi, I'm a PHP script!; ?>
</body>
</html>

Tästä seurasi oheinen virhe lokiin;

[Sun Feb 03 22:28:15.559554 2019] [php7:emerg] [pid 18748] [client ::1:36260] PHP Parse error:  syntax error, unexpected end of file, expecting variable (T_VARIABLE) or ${ (T_DOLLAR_OPEN_CURLY_BRACES) or {$ (T_CURLY_OPEN) in /home/nikke/public_html/index.php on line 15

Ensin tulee päivä ja aika, sitten ilmeisesti PHP:n tiettyyn prosessiin viittaava errori, ja syntax virhe rivillä 15.

Virheen tekeminen Apachen asetustiedostoon

Tein simppelin virheen “/etc/apache2/mods-available/php7.0.conf” tiedostoon, josta poistin viimeiseltä riviltä kommentoinnin (otin # merkin pois rivin alusta). Ajoin terminaalissa
$ apache2ctl configtest
komennon, jonka löysin tehtävänannosta Tero Karvisen kotisivuilta.

apache2: Syntax error on line 147 of /etc/apache2/apache2.conf: Syntax error on line 25 of /etc/apache2/mods-enabled/php7.2.conf: </IfModule> without matching <IfModule> section Action ’configtest’ failed.

Komennon virheilmoitus kertoo, että tiedostossa, johon aiheutin virheen löytyy syntax virhe rivillä 25. Lisäksi kerrotaan että </IfModule>:lla ei ole alkua (<IfModule>) ja myös tämä configtest ei mennyt läpi tämän takia. Virheen korjauksen jälkeen ajoin saman komennon, josta vastaukseksi tuli “Syntax OK”.

Käyttäjän kansiossa sijaitsevan palvelimen etusivuston teko

Aloitin tämän kohdan tekemisen googlettelemalla erilaisia ohjeita, joista päädyin tähän.

Muokkasin ”/etc/apache2/sites-available/000-default.conf” tiedostoa nettisivun ohjeen mukaan, eli aluksi kommentoin kaiken, mitä ei jo ollut kommentoitu ja tämän jälkeen laitoin tiedostoon seuraavan pätkän:

<VirtualHost *:80>
ServerName localhost
ServerAlias localhost *localhost
DocumentRoot /home/nikke/public_html/
</VirtualHost>

Tämän jälkeen testasin kirjoittamalla selaimen osoiteriville “localhost” ja tuossa public_html kansiossa oleva index.php tiedosto tuli esille. Kokeilin myös syöttämällä selaimelle osoitteen “http://127.0.0.1/” ja vastaukseksi tuli juuri tämä /home/nikke/public_html kansiossa oleva index.php tiedosto.

Pääsivulla toimii /home/nikke/public_html/index.php tiedosto.

Lopetin harjoitus 3:n teon noin klo 23.50.

Harjoitus 2

·        Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html

·        Pohjana Tero Karvinen 2012: Linux kurssi, http://terokarvinen.com

Huom. Kuvat, joista löytyy tekstiä kannattaa avata toiseen välilehteen suuremmaksi.

Loki merkintöjen teko

”Onnistunut” lokimerkintä

Lisäsin muistitikun 28.1.19 klo 9.42, ja sain noin 10sek sisällä ilmoituksen että “Volume mounted”. Työpöydältä klikkasin oikealla hiiren näppäimellä tikun kuvaa ja pianoin “Eject Volume” noin klo 9.43.

Kuvaan kirjoitettu kommentteina selitykset eri vaiheista.

”Epäonnistunut” lokimerkintä

Virheellisen loki merkinnän aiheuttamiseksi yritin asentaa filezilla FTP-clienttiä väärällä käyttäjä tunnuksella. Löysin netistä artikkelin mihin nämä käyttäjän jättämät “kirjautumis” loki merkinnät jäävät (/var/log/auth.log tiedostoon).

Kuvaan kirjoitettu kommentteina selitykset eri vaiheista.

Unelmien apt-get komento

Mikä on PPA?

Ennen apt-get komentoa on pakko kertoa PPA:sta ja siitä mitä riskejä ja hyötyjä niiden käyttämisestä voi saada.

PPA ( Personal Package Archive ) on pakettikirjasto, josta ladataan ohjelma paketteja. On sekä virallisia , että epävirallisia pakettikirjastoja. Nämä “viralliset” PPA:t ovat Ubuntun tarkistamia ennen kun ne päätyvät julkiseen jakoon. Muissa kun virallisissa PPA kirjastoissa on vaara, että ohjelmasta löytyy haitallista koodia. Suurimpia hyötyjä “epävirallisista” PPA-kirjastoista on mm.
1. Ohjelmien uudet versiot päätyvät levitykseen nopeammin.
2. Softan alkuperäinen kehittäjä saattaa tarjota ohjelmaansa vain lädekoodina, jota on vaikeampi asentaa, kuin PPA:sta, joten yksittäinen henkilö on tehnyt suurimman vaivan ja tarjoaa valmiin paketin ladattavaksi PPA:n kautta.
Lähde https://itsfoss.com/ppa-guide/

Ohjelmat, jotka valitsin apt-get komentoon

Atom, joka on erittäin laaja ja muokattavissa oleva tekstinkäsittely softa.
Lähde http://tipsonubuntu.com/2016/08/05/install-atom-text-editor-ubuntu-16-04/
$ add-apt-repository ppa:webupd8team/atom; sudo apt update; sudo apt install atom

Chromium, joka on Google Chromen linux vastine.
$ sudo apt-get install chromium-browser

Spotify, josta nykyään löytyy Spotifyn tekemä Linux versio.
Lähde https://www.spotify.com/fi/download/linux/
$ sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys 931FF8E79F0876134EDDBDCCA87FF9DF48BF1C90; echo deb http://repository.spotify.com stable non-free | sudo tee /etc/apt/sources.list.d/spotify.list; sudo apt-get update; sudo apt-get install spotify-client

Lopullinen apt-get komento

Näistä kolmesta ohjelmasta tein yhden komennon, joka asentaa nämä ohjelmat. Tätä testattu Asus G751JY kannettavalla tietokoneella edellisessä blogi postauksessa tehdyllä live tikulla 27.1.19 noin klo. 22.56. Komento pyytää tietyissä kohtaa painamaan ”y” tai enter.

$ sudo apt-get -y install chromium-browser; sudo add-apt-repository ppa:webupd8team/atom; sudo apt update; sudo apt install atom; sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys 931FF8E79F0876134EDDBDCCA87FF9DF48BF1C90; echo deb http://repository.spotify.com stable non-free | sudo tee /etc/apt/sources.list.d/spotify.list; sudo apt-get update; sudo apt-get install spotify-client

Kolme uutta komentorivi ohjelmaa

Saidar on komentorivi pohjainen työkalu, joka tarjoaa tietoa tietokoneen käyttöasteesta (ramin vapaana oleva määrä, prosessorin käyttöaste jne.).
1. $ sudo apt-get install saidar
2. Kirjoita terminaaliin “saidar” ja ohjelma avautuu. Kun haluat pois “ctrl + c”.

Saidar

Nudoku on sudoku peli, joka toimii terminaalissa.
1. $ sudo apt-get install nudoku
2. Kirjoita terminaaliin “nudoku” ja ohjelma avautuu. Kun haluat pois “ctrl + c”.

Nudoku

Sää terminaalissa. Törmäsin netissä tähän mielenkiintoiseen komentorivillä toimivaan ohjelmaan.
1. Ensin pitää asentaa curl –> $ sudo apt-get curl
2. Kirjoita terminaaliin “curl wttr.in” ja ohjelma yrittää sijaintisi perusteella etsiä sää tietoja.

Sää

Harjoitus 1

·        Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html

·        Pohjana Tero Karvinen 2012: Linux kurssi, http://terokarvinen.com

Linux-livetikun teko

Aloitin tehtävän tekemisen etsimällä xubuntun uusimman LTS version (long term support). Päädyin sivulle http://www.mirrorservice.org/sites/cdimage.ubuntu.com/cdimage/xubuntu/releases/18.04/release/, josta latasin itselleni xubuntu-18.04.1-desktop-amd64.iso levykuva tiedoston. Päädyin tähän versioon selvitettyäni ensin, mitä eroa 18.04 ja 18.04.1 versiolla on ja vastauksen löysin tästä linkistä https://xubuntu.org/news/18-04-1-released/ .

Seuraavaksi latasin UNetbootin, johon löysin linkin Linux kurssin sivuilta. UNetbootissa valitsin lataamani xubuntun levykuvatiedoston ja kohde usb 3 (alustettu FAT-32) muistitikun ja aloitin live tikun tekemisen. Koska usb 3 tikkuni on suhteellisen nopea arvioin, että tikun tekemiseen UNetbootilla meni alle 1min.

Sammutin tietokoneen ja uudelleen käynnistyksen yhteydyssä avasin bootmenun, jonka kautta valitsin usb tikun, johon xubuntun live versio oli asennettu. Valitsin käynnistyksen yhteydessä ”try xubuntu without installing” vaihtoehdon ja xubuntu boottasi työpöydälle onnistuneesti.

Tietokoneen raudan listaaminen

Terminaalin käynnistämisen jälkeen jouduin ajamaan komennon ”setxkbmap fi”, joka muutti tietokoneen näppäimistö asettelun suomalaiseksi. Tämän jälkeen ajoin tehtävässä pyydetyn komennon ” sudo lshw -short -sanitize”, joka listasi koneen raudan onnistuneesti.

Kolmen ohjelman asentaminen ja testaaminen

Ensimmäinen ongelma, jonka jouduin ratkaisemaan tämän kohdan tekemiseen, oli langattoman verkkoyhteyden ajurin asentaminen. Koska käytän koti pöytätietokonettani langattomasti, jouduin tutkia, miten saan wlanin toimimaan. Ongelmaan löytyi ratkaisu ”Software & Updates” ohjelman ”Additional Drivers” kohdasta, josta löytyi ajuri, jonka asensin.

ajuri

Ohjelmia asensin ”Software” ohjelmalla, joka helpottaa paljon itselle uusien ohjelmien löytämistä.

Ensimmäiseksi päätin asentaa Amarok:in, josta olen kyllä kuullut, mutta en koskaan itse käyttänyt (aikaisemmin käyttänyt foobar2000). Asennus keskeytyi virheeseen viimeisen 90% kohdalla. Tämän jälkeen kokeilin päivittää ohjelma kirjastot terminaalissa komennolla ”sudo apt-get update”, jonka jälkeen kokeilin ohjelman asennusta uudestaan onnistuneesti.

Amarokkia testasin kuuntelemalla kappaleen toiselta tietokoneeseen liitetyltä muistitikulta.

Amarok

Toiseksi ohjelmaksi asensin Okular:in, joka on eri tyyppisten dokumenttien (pdf, tekstitiedosto, kuvat) katseluun tarkoitettu ohjelma. Löysin ohjelman ”Software” sovelluksen ”Featured Productivity” kohdasta.

Okular

Kolmanneksi ohjelmaksi asensin Shutterin, johon törmäsin (https://www.tecmint.com/take-or-capture-desktop-screenshots-in-ubuntu-linux/ ), kun olin etsimässä tietoa, löytyykö Linuxista helppoa GUI pohjaista kuvakaappaus työkalua, joka olisi valmiiksi asennettu. Shutterin päätin asentaa terminaalin avulla komennolla ” sudo apt-get install shutter”.

Shutteria käytin loppujen kuvakaappausten ottoon tehtävissä ja mielestäni ohjelma oli hyvä.

Shutter

Lisenssit

Amarok käyttää lisenssinä: GNU General Public License (https://userbase.kde.org/Amarok/Manual/References/Credits_and_License#Licenses )

Okular käyttää lisenssinä: GNU Lesser General Public License version 2. Lähde (https://api.kde.org/okular/html/licenses.html )

Shutter käyttää lisenssinä: GNU General Public License version 3. Lähde (http://shutter-project.org/about/ )

GPL lisenssi antaa todella vapaat kädet ohjelmiston käyttöön ja muokkaamiseen. (Brett 2007)

  • Voit käyttää ohjelmaa mihin tahansa
  • Voit muokata ohjelmaa millaiseksi vain haluat
  • Voit jakaa/levittää ohjelmaa kenelle haluat
  • Voit jakaa muutoksia mitä olet ohjelmaan tehnyt

LGPL lisenssi pohjautuu ilmeisesti paljon GPL lisenssiin, mutta siinä ei tarvitse jakaa ohjelmiston lähdekoodia. Lähde (https://fi.wikipedia.org/wiki/GNU_Lesser_General_Public_License )

Windows alustan ohjelmien Linux vastineet

Minun eniten käyttämät ohjelmat Windows alustalla ja niiden Linux vastineet.

Google Chrome Chromium
Discord Discord (löytyy linux versio)
Spotify Spotify (Ubuntu Software, tai terminal ” snap install spotify”
Atom Atom (löytyy linux versio)
Eclipse IDE Eclipse IDE (löytyy linux versio)
foobar200 foobar2000 (löytyy linux versio)
Steam Steam (löytyy linux versio, myös paljon pelejä suoraan linuxille)

Lähteet

Smith, Brett 2007: A Quick Guide to GPLv3 (https://www.gnu.org/licenses/quick-guide-gplv3.pdf ).