<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>lescinskas.lt</title>
    <description><![CDATA[Žymės įrašai :: linux]]></description>
    <link>http://www.lescinskas.lt/lt/blog</link>
    <language>lt</language>
    <item>
      <title>Compiz downgrade'inimas Ubuntu 11.04 OS</title>
      <description><![CDATA[<p><img width="450" height="281" src="http://www.lescinskas.lt/uploads/editor/image/compiz-cube.png" alt="Compiz Cube" /></p>
<p>Ubuntu 11.04 versija bei jai artimos distribucijos (pvz.: Linux Mint 11) mano nuomone, yra vienas prasčiausių release'ų.</p>
<p>Apie Unity aplinkos nebrandumą rašė <a href="http://emptydot.com/ubuntu-unity-per-anksti">Vidmantas</a>, bet net ir standartinėje Gnome aplinkoje (Linux Mint 11 atveju) yra palikta nemažai defektų. Vienas jų - dar nestabilios Compiz versijos (0.9) integravimas, dėl ko neveikia ar veikia nekorektiškai daugelis vizualinių elementų (neveikia Desktop Cube bei kiti plugin'ai, dingsta lango valdymo mygtukai ir t.t.).</p>
<p>Vienas problemos sprendimo būdų, siūlomų įvairiuose <a href="http://forums.linuxmint.com/viewtopic.php?f=90&amp;t=73456">forumuose</a>, yra Compiz versijos downgrade'inimas (vietoj nestabilios 0.9 naudojimas 0.8). Tai galima atlikti įvykdžius komandas:</p>
<p><code>sudo apt-get purge compiz compiz-plugins-extra compiz-plugins-main</code><br />
<code>sudo apt-get purge compizconfig-settings-manager </code><code>sudo add-apt-repository ppa:guido-iodice/compiz-0.8.6-natty<br />
sudo apt-get update<br />
sudo apt-get upgrade<br />
sudo apt-get install compiz compiz-core compiz-fusion-plugins-main&nbsp;&nbsp; compiz-fusion-plugins-extra compiz-fusion-plugins-unsupported compiz-gnome compiz-plugins compizconfig-backend-gconf&nbsp;&nbsp; compizconfig-settings-manager libdecoration0 python-compizconfig&nbsp;&nbsp; simple-ccsm</code></p>
<p>&nbsp;</p>]]></description>
      <pubDate>Mon, 25 Jul 2011 10:39:26 +0300</pubDate>
      <link>http://www.lescinskas.lt/lt/blog/entry/paulius/compiz-downgrade-ubuntu-11-04</link>
    </item>
    <item>
      <title>GNU screen</title>
      <description><![CDATA[<p>GNU screen yra virtualus terminalo multiplekseris. Naudojant jį viename konsolės lange galima paleisti kelis virtualius terminalus, persijungti tarp jų, padalinti langą ir matyti jame kelis terminalus, kuriuose galime vykdyti iškart kelias komandas (ar paleisti kelias programas). Galima paleisti ir kelias screen instancijas.</p>
<p><img alt="GNU screen" width="594" height="431" src="http://lescinskas.lt/uploads/editor/image/gnu-screen.png" /></p>
<p>Taip pat galima screen'e paleisti programą ir prisijungti prie jos iš kito kompiuterio (per tą pačią screen'o instanciją). Atsijungus nuo terminalo, programa, paleista per screen'ą, yra vykdoma toliau, tuo tarpu įprastai paleidus programą ir atsijungus nuo terminalo, ji automatiškai išjungiama. Panaudojimas gali būti labai įvairiapusiškas, pvz.: serveryje, kur didelė interneto sparta, per screen'ą paleidžiame Torrent klientą, paleidžiame siųsti failus (žinoma, legalius), ir vėliau iš kito kompiuterio prisijungę prie to paties screen'o toliau naudojamės programa.</p>
<p>Taipogi per screen'ą naudinga paleisti ilgai trunkančias komandas nutolusiame serveryje, kuomet reikia užtikrinti, kad jos baigs vykdytis net ir atsijungus nuo serverio, pvz.: dingus interneto ryšiui ar elektrai.</p>
<p>Screen'as paleidžiamas komanda:<br />
<span style="font-family: 'Courier New'; ">$ screen</span></p>
<p>Taip pat galima paleidžiant screen'ą, jam suteikti pavadinimą:<br />
<span style="font-family: 'Courier New'; ">$ screen -S &lt;pavadinimas&gt;</span></p>
<p>Visas paleistų screen instancijų sąrašas:<br />
<span style="font-family: 'Courier New'; ">$ screen -ls</span></p>
<p>Prisijungti prie screen'o:<br />
<span style="font-family: 'Courier New'; ">$screen -r</span></p>
<p>Jei paleistos kelios screen'o instancijos, gausite jų sąrašą:<br />
<span style="font-family: 'Courier New'; ">There are screens on:<br />
31296.pavadinimas	(04/05/2011 06:04:51 PM)	(Detached)<br />
30781.pts-0.paulius	(04/05/2011 05:39:06 PM)	(Attached)<br />
2 Sockets in /var/run/screen/S-paulius.</span></p>
<p>Tuomet reiks nurodyti screen'o instancijos pavadinimą, pvz.:<br />
<span style="font-family: 'Courier New'; ">$ screen -r 31296.pavadinimas</span></p>
<p>Prisijungus prie screen'o, komandos (išeiti, atsijungti, padalinti langą etc.) atliekamos paspaudus klavišų kombinaciją <strong>Ctrl+a</strong> (toliau - C-a), ją atleidus ir paspaudus kitą klavišą.<br />
Svarbu atkreipti dėmesį į tai, kad skiriasi komandų didžiosios ir mažosios raidės (pvz.: C-a x atlieka kitką nei C-a X).</p>
<h3>Komandos</h3>
<p>Išeiti (detach - neišjungiant paties screen'o): <strong>C-a d</strong><br />
Išeiti (exit - išjungiant screen'ą): <strong>C-a \</strong> (taip pat galima išeiti uždarant langus su <strong>Ctrl+d</strong>)<br />
Užrakinti screen'ą: <strong>C-a x</strong></p>
<h3>Langų valdymo komandos</h3>
<p>Sukuriamas naujas langas: <strong>C-a c</strong><br />
Uždaromas esamas langas: <strong>C-a k</strong><br />
Atidaromas kitas langas: <strong>C-a &lt;space&gt;</strong><br />
Atidaromas ankstesnis langas: <strong>C-a &lt;backspace&gt;</strong><br />
Parodomas langų sąrašas, su galimybe pasirinkti norimą: <strong>C-a &quot;</strong><br />
Keičiamas lango pavadinimas: <strong>C-a A</strong></p>
<h3>Regionų (padalintų langų) valdymo komandos</h3>
<p>Padalinamas aktyvus langas horizontaliai: <strong>C-a S</strong><br />
Padalinamas aktyvus langas vertikaliai: <strong>C-a |</strong><br />
Pereinama į kitą regioną: <strong>C-a &lt;tab&gt;</strong><br />
Uždaromas aktyvus regionas: <strong>C-a X</strong></p>
<p>Sukūrus naują regioną ir perėjus į jį, reikia arba jame sukurti naują langą (<strong>C-a S</strong>), arba atidaryti jau egzistuojantį langą (<strong>C-a &lt;space&gt;</strong> arba išsirinkti iš sukurtų langų sąrašo - <strong>C-a &quot;</strong>).</p>]]></description>
      <pubDate>Tue, 05 Apr 2011 23:22:59 +0300</pubDate>
      <link>http://www.lescinskas.lt/lt/blog/entry/paulius/gnu-screen</link>
    </item>
    <item>
      <title>SSH raktai</title>
      <description><![CDATA[<p><img width="400" height="193" src="http://lescinskas.lt/uploads/editor/image/ssh-client-server.png" alt="SSH" /></p>
<p><a href="http://lt.wikipedia.org/wiki/SSH">SSH</a> yra protokolas, leidžiantis saugiai prisijungti prie nutolusio kompiuterio (serverio) ir vykdyti jame komandas. Prie serverio galima prisijungti įprastu būdu - nurodant vartotojo vardą bei slaptažodį, arba naudojant SSH raktus. Naudojant SSH raktus jungiantis prie serverio tereikia įvesti paties rakto slaptažodį - serverio vartotojo slaptažodžio įvesti nebereikia.</p>
<p>SSH raktą sudaro 2 failų pora - privataus ir viešojo. Privatus raktas yra saugojamas vartotojo kompiuteryje, o viešas raktas yra patalpinamas serveryje.</p>
<h3>SSH raktų nauda vartotojui</h3>
<p>Kadangi jungiantis prie serverio reikia žinoti tik savo rakto slaptažodį, patalpinus viešąjį raktą kiekviename iš vartotojo serverių, nebereikia žinoti kiekvieno jų slaptažodžio. Jei vartotojo kompiuteryje veikia raktų agentas (ssh-agent), slaptažodį reiks įvesti tik vieną kartą - jis bus įsimenamas.</p>
<p>Žinoma, privataus rakto saugumą būtina užtikrinti, nes jį gavus ir žinant jo slaptažodį, bus galima prisijungti prie kiekvieno serverio, kuriame bus viešasis raktas.</p>
<h3>SSH raktų nauda infrastruktūrai - įmonei</h3>
<p>Dažna situacija, kuomet keli įmonės darbuotojai turi galimybę prisijungti prie įmonės serverio SSH protokolu vienu vartotoju (pvz.: valdyti interneto tinklalapio failus). Įprastu atveju, visiems darbuotojams turėtų būti patikėtas prisijungimo slaptažodis, o vartotojui nebeleidžiant prisijungti prie serverio (pvz.: išėjus iš darbo), slaptažodis turėtų būti pakeičiamas ir apie tai informuojami visi susiję darbuotojai. Esant dideliam darbuotojų kiekiui, tai gali sukelti nepatogumų ir saugumo spragų.</p>
<p>Naudojant SSH raktus, kiekvienas darbuotojas turi susigeneravęs savo raktus ir prie serverio jungiasi naudodamas ne slaptažodį, o SSH raktą. Apribojus vartotojo prisijungimo galimybę, iš serverio tiesiog pašalinamas jo viešasis raktas. Taip nėra paviešinamas pats slaptažodis ir realizuojamas didesnis saugumo lygis.</p>
<h3>SSH raktų sukūrimas</h3>
<p>SSH raktų pora sugeneruojama naudojant komandą:</p>
<p><span style="font-family: Courier New;"><strong>$ ssh-keygen</strong></span></p>
<p>Vartotojo bus paprašyta įvesti ir pakartoti slaptažodį ir bus sukurti 2 failai:</p>
<p><span style="font-family: Courier New;"><strong>~/.ssh/id_rsa</strong></span> - privatus raktas</p>
<p><span style="font-family: Courier New;"><strong>~/.ssh/id_rsa.pub</strong></span> - viešas raktas</p>
<p>Windows vartotojai gali naudoti <strong>puttygen.exe</strong> programą.</p>
<h3>SSH rakto talpinimas serveryje</h3>
<p>SSH viešieji raktai nutolusiame kompiuteryje (serveryje) talpinami faile, esančiame <span style="font-family: Courier New;"><strong>~/.ssh/authorized_keys</strong></span> po vieną vienoje eilutėje - reikia įrašyti viešojo rakto failo turinį. Jį galima pamatyti įvykdžius komandą:</p>
<p><span style="font-family: Courier New;"><strong>$ cat ~/.ssh/id_rsa.pub</strong></span></p>
<p>Kadangi galima įrašyti keletą viešųjų raktų, keli vartotojai galės prisijungti, naudodamiesi viešojo rakto autentifikacijos principu.</p>
<p>Kadangi failas talpinamas vartotojo namų direktorijoje, su SSH raktu bus galima prisijungti tuo vartotoju, kurio direktorijoje bus patalpinti viešieji raktai.</p>
<p><strong>Svarbu!</strong> Direktorijos <strong>~/.ssh</strong> teisės turi būti <strong>0700</strong>, o failo <strong>~/.ssh/authorized_keys</strong> - <strong>0600</strong>.</p>
<p>Taip pat viešąjį raktą galima įdiegti naudojant komandą:</p>
<p><span style="font-family: Courier New;"><strong>$ ssh-copy-id &lt;vartotojo vardas&gt;@&lt;serverio IP arba adresas&gt;</strong></span> - įkelia viešąjį raktą į serverį ir nustato failų teises. Ačiū Vidmantui.</p>
<h3>Prisijungimas prie SSH</h3>
<p>Prie nutolusio kompiuterio (serverio), naudojant SSH protokolą, prisijungiama naudojant komandą <span style="font-family: Courier New;"><strong>ssh</strong></span> arba SSH klientą PuTTY (Windows vartotojams). Galimi variantai:</p>
<p><span style="font-family: Courier New;"><strong>$ ssh &lt;serverio IP arba adresas&gt;</strong></span> - bus jungiamasi tuo pačiu vartotojo vardu</p>
<p><span style="font-family: Courier New;"><strong>$ ssh &lt;vartotojo vardas&gt;@&lt;serverio IP arba adresas&gt;</strong></span> - bus jungiamasi nurodytu vartotojo vardu</p>
<p><span style="font-family: Courier New;"><strong>$ ssh -i /kelias/iki/privataus/rakto &lt;vartotojo vardas&gt;@&lt;serverio IP arba adresas&gt;</strong></span> - jungiamasi nurodant privataus rakto kelią (jei jis yra kitoje direktorijoje)</p>
<p><span style="font-family: Courier New;"><strong>$ ssh -o &quot;PubkeyAuthentication no&quot; &lt;vartotojo vardas&gt;@&lt;serverio IP arba adresas&gt;</strong></span> - jungiamasi nenaudojant viešojo rakto principo</p>
<p>Taip pat galima susikurti SSH konfigūracijos failą, kuriame įrašius serverio pavadinimą, jam priskyrus atitinkamą vartotoją, prievadą (port), bus jungiamasi nurodytais duomenimis. Pvz.: konfigūracijos failas: <strong>~/.ssh/config</strong></p>
<p><strong><span style="font-family: Courier New;">Host serveris<br />
&nbsp;&nbsp;&nbsp; HostName www.serverio-adresas.tld<br />
&nbsp;&nbsp;&nbsp; User admin<br />
&nbsp;&nbsp;&nbsp; </span><span style="font-family: Courier New;">PubkeyAuthentication yes</span></strong></p>
<p>Komandinėje eilutėje užteks parašyti:</p>
<p><strong><span style="font-family: Courier New;">$ ssh serveris</span></strong></p>
<p>ir automatiškai bus jungiamasi prie www.serverio-adresas.tld serverio vartotoju admin, naudojant SSH raktą. Analogiškai į konfigūracijos failą galima įrašyti kelis serverius.</p>
<p>&nbsp;</p>
<p>Apie SSH ir jo panaudojimą taip pat rašė <a href="http://sirex.lt/node/124">Sirex</a>.</p>
<p>Kitas šaltinis (taip pat ir straipsnio iliustracijos): <a href="http://sial.org/howto/openssh/publickey-auth/">OpenSSH Public Key Authentication</a></p>]]></description>
      <pubDate>Tue, 07 Sep 2010 17:51:03 +0300</pubDate>
      <link>http://www.lescinskas.lt/lt/blog/entry/paulius/ssh-raktai</link>
    </item>
    <item>
      <title>Sprendimas: Eclipse ar Netbeans lūžta vykdant SVN operacijas</title>
      <description><![CDATA[<p>Jei programuojant Linux aplinkoje su Eclipse ar Netbeans ir, vykdant SVN operacijas, IDE pakimba ar lūžta, problema gali būti Gnome Keyring palaikyme SVN 1.6 versijoje. Kol šis defektas nėra pašalintas, reiktų naudotis problemos apėjimu. Tam reikia <strong>~/.subversion/config</strong> faile įrašyti (pakeisti) šias eilutes:</p>
<pre>
[auth]
### Set password stores used by Subversion. They should be
### delimited by spaces or commas. The order of values determines
### the order in which password stores are used.
### Valid password stores:
###   gnome-keyring        (Unix-like systems)
###   kwallet              (Unix-like systems)
###   keychain             (Mac OS X)
###   windows-cryptoapi    (Windows)
password-stores = </pre>
<p><br />
Tuščia <strong>password-stores</strong> reikšmė išjungs Gnome Keyring palaikymą ir slaptažodžiai bus saugomi paprastu tekstu, kaip ir ankstesnėse SVN versijose.</p>
<p>Šaltinis: <a href="http://subclipse.tigris.org/wiki/JavaHL#head-3a1d2d3c54791d2d751794e5d6645f1d77d95b32">subclipse.tigris.org</a></p>]]></description>
      <pubDate>Mon, 01 Mar 2010 14:59:32 +0200</pubDate>
      <link>http://www.lescinskas.lt/lt/blog/entry/paulius/sprendimas-eclipse-ar-netbeans-luzta-vykdant-svn-operacijas</link>
    </item>
    <item>
      <title>Neversijuotų SVN failų trynimas</title>
      <description><![CDATA[<p>Dirbant su versijų kontrolės sistema Subversion (SVN) pasitaiko atvejų, kai tenka ištrinti failus, neįtrauktus į versijų kontrolę.</p>
<p>Pavyzdžiui, perjungiant (switch) į kitą šaką (branch), ar turint nereikalingų failų, juos ištrinti galima komanda (veikia Unix sistemose):</p>
<pre class="brush:bash">
svn status --no-ignore | grep '^\?' | sed 's/^\? //' | xargs rm -rf</pre>
<p>Ši komanda ištrins net ir tuos failus, kurie buvo direktorijoje su svn:ignore savybe (property), atitnkančia tuos failus.</p>]]></description>
      <pubDate>Thu, 15 Oct 2009 14:44:16 +0300</pubDate>
      <link>http://www.lescinskas.lt/lt/blog/entry/paulius/neversijuotu-svn-failu-trynimas</link>
    </item>
  </channel>
</rss>
