Kirjoittaja Aihe: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?  (Luettu 9267 kertaa)

OJK

  • Käyttäjä
  • Viestejä: 129
    • Profiili
Minulla ei nyt ole varsinaisesti muuta ongelmaa kuin että äimistelen vain. Eli osaisiko joku selittää minulle, miksi "tervapalloja" eli tar.gz-paketteja on, vaikka olen monesta yhteydestä lukenut, että niiden asentamisen kanssa pitää olla varovainen? Miksi esim. sellainenkin toimija kuin Mozilla tarjoaa Firefoxinsa tervapallona?

Lähinnä tämä kysymys nousi jälleen tänään mieleeni, kun töissä kaivoin melkoisen tovin jälkeen Linux Mint 17 -koneeni esille. Koska en ollut käyttänyt sitä vähään aikaan, sillä oli melkoisesti päivitettävää. Yksi päivitettävä oli Firefox-selain. Luonnollisesti yritin päivitystä Synapticin kautta, mutta jostain syystä päivitys ei onnistunut, vaan Synaptic herjasi muistaakseni joko ettei pakettia ole olemassa tai polku on väärä - en muista, eikä aikaa ollut jäädä asiaa enempiä kaivelemaan.

Siispä ei jäänyt muuta vaihtoehtoa kuin yrittää Firefoxin sivujen kautta. Sieltä sain sitten jälleen tervapallon, mutta jäipä sitten FF päivittämättä. En nimittäin ole koskaan osannut asentaa mitään tervapallojen kautta, ja kuten kirjoitin edellä, olen oppinut välttelemäänkin niitä. Kismitys kuitenkin jäi.

jekku

  • Käyttäjä
  • Viestejä: 2624
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #1 : 07.04.16 - klo:20.01 »
Silkkaa pelottelua tuo mitä olet lukenut.

tar on perin kätevä tapa klimpittää kasa tiedostoja yhdeksi ja .gz lopussa kertoo että se on (kenties) pakattu gzip -ohjelmalla.

Ja ainahan voit kurkata mitä se sisältää:
Noin muistinvaraisesti, jos sinulla on tiedosto jokupallo.tar.gz, niin komento

Koodia: [Valitse]
tar ztvf jokupallo.tar.gz

listaa sen sisällön, mutta ei pura sitä.

Mitä sen sisällön kanssa teet - se on sinun vastuullasi, mutta tar.gz ei ole vielä mikään uhka.



welmar

  • Käyttäjä
  • Viestejä: 1582
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #2 : 07.04.16 - klo:20.36 »
Tervapalloissa on usein lähdekoodi, eli sen voi asentaa mihin tahansa linuxiin(ja varmaan myös BSD:en). En kyllä suosittele selaimen asennusta lähdekoodista jos ei jotain erityistä syytä siihen ole. Chromiumin asentamiseen ainakin menee ihan tuhottomasti aikaa, firefox muistaakseni kääntyy nopeammin mutta kauan sekín kestää ja päivityksiä ei tule sitten automaattisesti.

SuperOscar

  • Käyttäjä
  • Viestejä: 4000
  • Ocatarinetabellatsumtsum!
    • Profiili
    • Legisign.org
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #3 : 07.04.16 - klo:20.45 »
Jos ollaan tarkkoja, niin Mozilla tarjoaa .tar.bz2-pakettia eikä .tar.gz. Bzip2 on tehokkaampi pakkaaja kuin Gzip.

Kuten jekku tuolla yllä kirjoitti, tarrapallo ei sinänsä ole mikään uhka – jos tiedät mitä teet. Asentamalla paketinhallinnan ohi voi sotkea koko järjestelmäsi. Juuri jottei sitä tarvitsisi tehdä koko paketinhallinta on olemassa.
pöytäkone 1, kannettavat 1–3: Debian GNU/Linux 12; pöytäkone 2: openSUSE Tumbleweed; NUC: openSUSE Leap 15.5; RPi 1: FreeBSD 14-RELEASE; RPi 2: LibreELEC 11

Postimies

  • Käyttäjä
  • Viestejä: 2619
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #4 : 07.04.16 - klo:22.43 »
Tervapalloissa on usein lähdekoodi, eli sen voi asentaa mihin tahansa linuxiin(ja varmaan myös BSD:en). En kyllä suosittele selaimen asennusta lähdekoodista jos ei jotain erityistä syytä siihen ole. Chromiumin asentamiseen ainakin menee ihan tuhottomasti aikaa, firefox muistaakseni kääntyy nopeammin mutta kauan sekín kestää ja päivityksiä ei tule sitten automaattisesti.
Mikäs siinä Chromiumin asentamisessa kestää tuhottomasti? Koneiden kehityksen myötä käännösajat ovat mukavasti laskeneet. Aikoinaan KDE 3 käännös kesti toista vuorokautta ja muistaakseni Firefox toista tuntia. Tervapalloissa saa vaikka sen uusimman Kodin, KDE:n tai kernelin ihmeteltäväksi. Asennus menee yleensä /usr/local/ kansion alle jolloin ei pelkoa systeemin sekoamisesta (suhteellista).

Vuoteen tai pariin päivittämätöntä systeemiä on usein hankala saada ajan tasalle.

juyli

  • Vieras
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #5 : 07.04.16 - klo:23.13 »
Minulla ei nyt ole varsinaisesti muuta ongelmaa kuin että äimistelen vain. Eli osaisiko joku selittää minulle, miksi "tervapalloja" eli tar.gz-paketteja on, vaikka olen monesta yhteydestä lukenut, että niiden asentamisen kanssa pitää olla varovainen? Miksi esim. sellainenkin toimija kuin Mozilla tarjoaa Firefoxinsa tervapallona?
Tar.gz -paketit voivat sisältää ihan mitä hyvänsä. Useimmin eri Linux-jakeluihin tarjotaan tar.gz -binääri tiedostoja, joilla ohjelma on asennettavissa kyseiseen jakeluun.
Koska käytät Ubuntua, on jakeluusi tarjolla lähes kaikki ohjelmat valmiiksi käännettyinä ja asennettuna, joten tarvetta asennella tar.gz -tiedostoja ei ole.
Nimenomaan mainitsemasi Mozillan Firefox on Canonical:in toimesta Ubuntu-jakeluusi valmiiksi konfiguroitu, virallinen, tietoturvapäivitykset sisältävä versio.
Kun huolehdit jakelusi päivityksistä, päivittyvät koneellasi olevat ohjelmat viimeisimpiin tuettuihin, ja tietoturvallisiin versioihin.
« Viimeksi muokattu: 07.04.16 - klo:23.16 kirjoittanut juyli »

Illu

  • Käyttäjä
  • Viestejä: 1061
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #6 : 08.04.16 - klo:11.09 »
Jos osaa ja on aikaa, mitä hyötyä tarrapallosta asentamisella olisi?

juyli

  • Vieras
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #7 : 08.04.16 - klo:13.10 »
Jos osaa ja on aikaa, mitä hyötyä tarrapallosta asentamisella olisi?
Ohjelmalähteet/ohjelmavarastot on tehty helpottamaan käyttäjän elämää. Toki, jos haluat itse kääntää ohjelmia lähdekoodista, joita myös src.tar.gz -paketeissa jaellaan, ja optimoida tavalla tai toisella ohjelmia, on tilanne toki toinen. Nykyisin on melko tarpeetonta optimoida ohjelmia.
Erityisesti ohjelmien päivitys ohjelmalähteitä käyttäen on hyödyllinen ominaisuus.

retu

  • Käyttäjä
  • Viestejä: 949
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #8 : 08.04.16 - klo:13.16 »
Jos pakettienhallinnassa on vanha versio jostain ohjelmasta eikä sen päivittämiseen ole vaihtoehtoista ohjelmalähdettä, ainoa vaihtoehto uudemman ohjelmaversion saamiseen on oikeastaan lähdekoodeista kääntäminen.

Tai sitten jokin ohjelma voi olla niin tuore tai niin vähällä käytöllä ettei sitä ole vielä mukana pakettivarastossa. Esim. pakettivarastossa ei ole kaikkia CPAN tai PyPi paketteja vaikka yleisimmät varmaan onkin.

Koodeista asentamisessa voi olla omat ongelmansa: että saa käännettyä ja asennettua voi joutua lataamaan koko liudan kehityspaketteja, joista ohjelman käännös on riippuvainen. Tai voi olla että nekin joutuu kääntämään lähdekoodista että saa tarpeeksi uudet versiot.

Esim. Käytän Exaile ohjelmaa ja huomasin siinä taannoin bugin. Ohjelman nettisivuilta huomasin että bugi oli aikaa sitten korjattu. Pakettivarastossa oli kuitenkin tarjolla vain ikuvanha versio. Latasin ohjelman koodit ja asensin sen niistä. Asennus onnistui ilman sarvia ja hampaita ja uusi ohjelmaversiokin toimi hienosti. 8) Meni sitten oma aikansa ja ubuntu päivittyi seuraavaan versioon ja sen mukana exaile, paitsi että ei. Kuvakkeesta käynnistyi edelleen se vanhempi itse asennettu versio :( Minulla oli siis kaksi Exaile versiota: itse asennettu /usr/local/bin alla ja pakettivaraston versio /usr/bin alla. Piti sitten käsin poistaa se itse asennettu että uudempi pakettienhallinnan versio tuli käyttöön. Jos asennat itse koodeista kääntämällä, on päivityksetkin huolehdittava itse.

Esim. 2. Käytän mysql-ohjelmaa ja erään ubuntu-päivityksen jälkeen se päivittyi 5.5 versioon. Tarvitsin kuitenkin 5.1 version, mutta sitä ei enää saanut pakettivarastosta. Kaivoin sitten vanhemman version deb-paketin netistä ja asensin sen väkipakolla. Paha virhe! En saanut enää ubuntua päivitettyä versioristiriitojen takia ennen kuin poistin sen. Kaivoin sitten 5.1 version lähdekoodit ja käänsin sen itse. Nyt kaikki toimii. Mysql on kuitenkin aika laaja ohjelma eikä käännös sujunut ihan käden käänteessä. Itse käännös kesti pari tuntia, mutta asetusten pähkäily noin tuplasti.

Toisinaan on hyvä että ohjelman koodit voi ladata, mutta vielä parempi ettei yleensä tarvitse, kuten superoscar osuvasti sanoi.

Postimies

  • Käyttäjä
  • Viestejä: 2619
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #9 : 08.04.16 - klo:17.23 »
/usr/local/bin on polussa ennen /usr/bin kansiota. Exaile olisi käynnistynyt komennolla /usr/bin/Exaile. Itse kääntäminen ja optimointi tietylle prosessorille ja näytönohjaimmelle ehkä turhaa. Itse kääntelin aikoinaan vdpau-tukea teräväpiirron katseluun ennenkuin tuki sille tuli Ubuntuun. Joskus emolevy on ollut niin tuore, että alsa on pitänyt kääntää lähdekoodista, että sai äänen kuuluville. Välillä on ihan uteliaisuudesta haettu gitillä se uusin versio jostain ohjelmasta.

Illu

  • Käyttäjä
  • Viestejä: 1061
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #10 : 08.04.16 - klo:22.36 »
Jos osaa ja on aikaa, mitä hyötyä tarrapallosta asentamisella olisi?
Ohjelmalähteet/ohjelmavarastot on tehty helpottamaan käyttäjän elämää. Toki, jos haluat itse kääntää ohjelmia lähdekoodista, joita myös src.tar.gz -paketeissa jaellaan, ja optimoida tavalla tai toisella ohjelmia, on tilanne toki toinen. Nykyisin on melko tarpeetonta optimoida ohjelmia.
Erityisesti ohjelmien päivitys ohjelmalähteitä käyttäen on hyödyllinen ominaisuus.
No jos on tarpeetonta, mitä joku kokee hyötyvänsä itse kääntämisestä? Siis toimiiko ohjelma nopeammin tms? Kysyn, kun en vähääkään aiheesta tiedä ja ensimmäisen linux-kokeilun (jotain viime vuosituhannella) jäljiltä on muistikuvissa vain vaikeuksia. Silloinhan vain käänneltiin, vaikka ei mitään ymmärretty, mutta aihe kiinnosti. Ja kun mitään ei näyttänyt tapahtuvan, homma poikki ;)

nm

  • Käyttäjä
  • Viestejä: 16252
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #11 : 09.04.16 - klo:00.39 »
No jos on tarpeetonta, mitä joku kokee hyötyvänsä itse kääntämisestä? Siis toimiiko ohjelma nopeammin tms?

Ei toimi nopeammin. Kuten retu sanoi, ohjelman voi joutua asentamaan ja kääntämään lähdekoodipaketeista, jos haluaa käyttää jotain toista kuin jakelun tarjoamaa versiota (eikä esim. PPA-lähteistä löydy sopivaa). Joskus jakelun paketoinneista saattaa myös puuttua ominaisuuksia, joita valitaan mukaan kääntämisen yhteydessä. Nämä ovat kuitenkin melko harvinaisia tapauksia. Suosituista ohjelmista on käytännössä aina tarjolla tuoreet binääripaketit yleisimmille jakeluille.

Kysyn, kun en vähääkään aiheesta tiedä ja ensimmäisen linux-kokeilun (jotain viime vuosituhannella) jäljiltä on muistikuvissa vain vaikeuksia. Silloinhan vain käänneltiin, vaikka ei mitään ymmärretty, mutta aihe kiinnosti. Ja kun mitään ei näyttänyt tapahtuvan, homma poikki ;)

Ohjelmissa on usein paljon riippuvuuksia (lähinnä kirjastoja), jotka on mainittu ohjelman dokumentaatiossa -- yleensä README-tiedostossa. Kääntämistä varten pitää asentaa tarvittavat kirjastot ja niiden dev-paketit sekä tarvittavat kääntäjät ym. työkalut. Joskus voi joutua kääntämään myös uusia versioita niistä riippuvuuksista jne.

Näitä asioita kyllä oppii käytännön kautta ja googlettamalla ongelmatilanteissa. Sillä tavalla jakelujen paketoijatkin ovat taitojaan kartuttaneet. Ohjelmointiosaamisesta on toki myös hyötyä.

spark

  • Käyttäjä
  • Viestejä: 1752
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #12 : 09.04.16 - klo:09.33 »
Yksi päivitettävä oli Firefox-selain. Luonnollisesti yritin päivitystä Synapticin kautta, mutta jostain syystä päivitys ei onnistunut, vaan Synaptic herjasi muistaakseni joko ettei pakettia ole olemassa tai polku on väärä - en muista, eikä aikaa ollut jäädä asiaa enempiä kaivelemaan.

Siispä ei jäänyt muuta vaihtoehtoa kuin yrittää Firefoxin sivujen kautta. Sieltä sain sitten jälleen tervapallon, mutta jäipä sitten FF päivittämättä. En nimittäin ole koskaan osannut asentaa mitään tervapallojen kautta, ja kuten kirjoitin edellä, olen oppinut välttelemäänkin niitä. Kismitys kuitenkin jäi.

Eihän siinä mitään ihmeellistä ole, että toisinaan ei jotain pakettilähdettä ole saatavilla. Voinut juuri sillä hetkellä olla joku päivitys palvelimella menossa. Yleensä on sitten seuraavana päivänä toiminut, tai sitten vaihtaa pakettienhallinnasta palvelimet toiseen.

Postimies

  • Käyttäjä
  • Viestejä: 2619
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #13 : 09.04.16 - klo:15.16 »

Ei toimi nopeammin. Kuten retu sanoi, ohjelman voi joutua asentamaan ja kääntämään lähdekoodipaketeista, jos haluaa käyttää jotain toista kuin jakelun tarjoamaa versiota (eikä esim. PPA-lähteistä löydy sopivaa). Joskus jakelun paketoinneista saattaa myös puuttua ominaisuuksia, joita valitaan mukaan kääntämisen yhteydessä. Nämä ovat kuitenkin melko harvinaisia tapauksia. Suosituista ohjelmista on käytännössä aina tarjolla tuoreet binääripaketit yleisimmille jakeluille.

Sanoisin, että joku paljon laskentaa sisältävä ohjelma voi nopeutua paljonkin. Varsinkin jos pystyy ottamaan näytönohjaimen avuksi. Jonkun fraktaalin laskenta isolla suurennuksella voi kestää kauan. https://www.youtube.com/watch?v=_QskAoLIzuI.
Jos tuota yrittää ilman optimoitua koodia saa odotella tulosta kauan.

nm

  • Käyttäjä
  • Viestejä: 16252
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #14 : 09.04.16 - klo:16.00 »

Ei toimi nopeammin. Kuten retu sanoi, ohjelman voi joutua asentamaan ja kääntämään lähdekoodipaketeista, jos haluaa käyttää jotain toista kuin jakelun tarjoamaa versiota (eikä esim. PPA-lähteistä löydy sopivaa). Joskus jakelun paketoinneista saattaa myös puuttua ominaisuuksia, joita valitaan mukaan kääntämisen yhteydessä. Nämä ovat kuitenkin melko harvinaisia tapauksia. Suosituista ohjelmista on käytännössä aina tarjolla tuoreet binääripaketit yleisimmille jakeluille.

Sanoisin, että joku paljon laskentaa sisältävä ohjelma voi nopeutua paljonkin. Varsinkin jos pystyy ottamaan näytönohjaimen avuksi.

Tämä menee kategoriaan "paketoinnista puuttuvat ominaisuudet, jotka voi valita mukaan kääntämisen yhteydessä". Nykyisin OpenCL- tai CUDA-tuki kuitenkin useimmiten on mukana paketoinneissa, jos ohjelmassa on niille valinnainen tuki.

Jos taas ohjelman lähdekoodissa ei ole tukea GPU-laskennalle, pelkällä käännösaikaisilla valinnoilla sitä ei saa mukaan, eikä nopeutusta ole luvassa. CPU-puolen optimoinnitkin ovat valmiissa paketeissa yleensä kunnossa.

Postimies

  • Käyttäjä
  • Viestejä: 2619
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #15 : 09.04.16 - klo:18.57 »
CPU-puolen optimoinnitkin ovat valmiissa paketeissa yleensä kunnossa.

Gcc sisältää paljon optioita. En ole kokeillut nopeuttaako esim. -march=X tai -march=native eli koodi optimoidaan tietylle prosessorille paljoakaan. Jossain väitettiin, että -march=X -mtune=generic tekisi nopeampaa koodia. Ubuntun paketoinnissa käytetään varmaan jotain -mtune=generic  -02 tyyppisiä optioita.

nm

  • Käyttäjä
  • Viestejä: 16252
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #16 : 09.04.16 - klo:21.01 »
CPU-puolen optimoinnitkin ovat valmiissa paketeissa yleensä kunnossa.

Gcc sisältää paljon optioita. En ole kokeillut nopeuttaako esim. -march=X tai -march=native eli koodi optimoidaan tietylle prosessorille paljoakaan. Jossain väitettiin, että -march=X -mtune=generic tekisi nopeampaa koodia. Ubuntun paketoinnissa käytetään varmaan jotain -mtune=generic  -02 tyyppisiä optioita.

Suoritinspesifeillä optimoinneilla saavutetaan vain harvoissa tapauksissa merkittäviä suorituskykyparannuksia. Tässä Phoronixin laajempi testi muutaman vuoden takaa GCC 4.6:lla: http://www.phoronix.com/scan.php?page=article&item=intel_avx_gcc&num=2

Liukulukulaskenta AVX:llä taitaa olla hyödyllisin uusista optimoinneista. Sillä voidaan saada 10 %:n nopeutus tietyissä laskentaongelmissa: http://www.phoronix.com/scan.php?page=news_item&px=MTA3NjE
Selaimen tai kuvankäsittelyohjelman kääntäminen tuolla optimoinnilla ei käytännössä tuo mitään havaittavaa parannusta.

64-bittisessä jakelussa voidaan olettaa, että prosessorissa on SSE2-käskykanta, ja kääntäjät hyödyntävät sitä mm. silmukoiden automaattisessa vektoroinnissa, josta voi olla silloin tällöin apua. AVX:n nopeushyödyt siihen verrattuna ovat melko vähäisiä ilman käsin optimoitua koodia. Suorituskykykriittiset multimedia- ja laskentakirjastot valitsevatkin usein lennossa nopeimman käsin optimoidun version, joka toimii alla olevalla raudalla.

DDR55

  • Käyttäjä
  • Viestejä: 101
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #17 : 11.04.16 - klo:19.36 »
Mistä tulee sana tervapallo ??
Pääkone: Ubuntu 16.04 (käsin käänetty reaaliaikainen rtlinux)
Varakone1: Centos 7
Varakone2: Windows 10
Luuri: Android 5.0

AimoE

  • Käyttäjä
  • Viestejä: 2719
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #18 : 11.04.16 - klo:19.57 »
Yleensä se on tarrapallo. Mutta sitä en tiedä miksi enkuksi sanotaan tar ball, kun tar on suomeksi terva.

AimoE

  • Käyttäjä
  • Viestejä: 2719
    • Profiili
Vs: Osaisiko joku selittää, miksi "tervapalloja" (tar.gz) on?
« Vastaus #19 : 11.04.16 - klo:19.59 »
Äh, olisi pitänyt googlettaa ensin: https://en.wiktionary.org/wiki/tarball