A következő címkéjű bejegyzések mutatása: Linux. Összes bejegyzés megjelenítése
A következő címkéjű bejegyzések mutatása: Linux. Összes bejegyzés megjelenítése

2016. július 1., péntek

Raspberry PI - UFO keresés a szabad CPU időben

A Bionic program használatával a szabad CPU idődben valamilyen értelmes tudományos projektben vehetsz részt. Például űrlények vagy aszteroidák után kutathatsz :), pulzárok felfedezéséhez járulhatsz hozzá vagy különféle betegségek gyógyításában segíthetsz. Az elérhető projektekről itt van egy lista. Mivel van egy folyamatosan működő Raspberry Pi mini számítógépem, amit torrent kliensnek, web-szervernek valamint SSL Socks proxy-nak használok, a szabad CPU idejét ráállítottam az UFO kutatásra a Seti@Home projekttel, ami a rádióteleszkópok adatait tölti le majd elemzi ki az otthoni RPI-n.

Az UFO kutatás megkezdéséhez nincs más dolgunk, mint beregisztrálni magunkat a SETI@Home oldalára az alábbi linken és a Raspberry Pi-n feltelepíteni és bekonfigurálni a bionic ill. Seti programokat ezen leírás alapján az alábbi parancsokkal:

apt-get install boinc 
cd /var/lib/boinc-client
wget https://github.com/dcarrion87/boinc-rpi/raw/master/bin/setiathomev7-armv6l.tar.gz
tar xfz setiathomev7-armv6l.tar.gz
chown -R boinc:boinc projects/
Add "ENABLED = 1" to /etc/init.d/boinc-client if you want to run as a service.
boinccmd --lookup_account http://setiathome.berkeley.edu <your_email> <your_password>
boinccmd --project_attach http://setiathome.berkeley.edu <your_account_key>

Az aktuálisan futó taszkot a boinccmd --get_tasks paranccsal tudjuk lekérdezni, valamint a webes felületen is megtekinthetjük a szerzett kreditek számát.

2015. október 9., péntek

GIT Update Hook - Commit Message Restriction

A GIT Hook-ok lehetőséget adnak arra, hogy egy saját szkriptet futtassunk le, bizonyos GIT-es események bekövetkezésekor. A GIT művelet típusától függően választhatunk a kliens oldali ill. szerver oldali hook-ok közül.

Amit el szerettem volna elérni az az volt, hogy csak abban az esetben lehessen feltölteni a módosításokat a GIT szerverre, hogyha a kommit üzenetek megfelelnek egy általunk definiált formátumnak, esetünkben a "RED-123 kommit-üzenet" mintának, ahol is a RED-123 annak a redmine issue-nak az azonosítója amin a fejlesztő éppen dolgozik.

Itt megjegyezném, hogy az Eclipse-hez léteznek mylyn issue tracking connector-ok (JIRA, Mantis, Bugzilla, Trac) amelyek lehetővé teszik, hogy a fejlesztő magához vegyen egy taszkot és a kommittoláskor az issue azonosítójával automatikusan kitöltik a kommit üzenetet, így azt már nem kell kézzel beírogatni. Ezen konnektorok használata mindenféleképpen javasolt, amennyiben létezik ilyen plugin az általunk használt fejlesztő eszközhöz ill. ticketing rendszerhez.


A GIT (esetemben RhodeCode) szerveren, a repository hooks könyvtárában létrehoztam egy update futtatható fájlt az alábbi tartalommal, ami meghívódik minden egyes git push művelet esetén és csak a megfelelő kommit üzenet formátum esetén engedélyezi a kód feltöltését.
#!/bin/sh

refname="$1"
oldrev="$2"
newrev="$3"

for rev in `git rev-list $oldrev..$newrev`
do
    comment=`git log --format=%B -n 1 $rev`
    echo "Your commit message is: "$comment
    str=$(grep ^RED-[0-9]\\+[[:space:]][a-zA-Z0-9]* <<< $comment)
    if [ "$str" == "" ];then
       echo "[POLICY] Your message is not formatted 
             correctly! Use the 'RED-123 message' pattern, please"
       exit 1
    fi
done
echo "Thank you for your valid GIT commit message format!"
exit 0

Amennyiben javítani szeretnénk egy véletlenül elrontott kommit message-en, az Eclipse git staging view/ commit message/ Amend/ edit previous commit funkcióval tehetjük meg. 

2014. június 19., csütörtök

Raspberry Pi - Apache web-szerver otthonra 2.

Miután beállítottuk, hogy az otthon.no-ip.org és a munka.no-ip.org címről kívülről is elérhető legyen a web-szerverünk, nézzük meg hogyan állítható be, hogy ezek a címek két különböző website-ra mutassanak. (Virtual Hosting)


Az Apache webszerver fő konfigurációs beállításai az /etc/apache2/apache2.conf fájlban találhatók, ami hivatkozik az engedélyezett website-okat tartalmazó könyvtárra (/etc/apache2/sites-enabled). Itt pedig sym linkek találhatók az elérhető website-okat tartalmazó könyvtárra (/etc/apache2/sites-available/).

Hozzuk létre a 2 website állományait és naplófájljait tartalmazó könyvtárakat:
mkdir /var/www/otthon.no-ip.org
mkdir /var/www/munka.no-ip.org
mkdir /var/log/apache2/otthon.no-ip.org>
mkdir /var/log/apache2/munka.no-ip.org
Hozzuk létre az első web-site virtuális hoszt beállításait tartalmazó fájlt /etc/apache2/sites-available/otthon.no-ip.org az alábbi tartalommal:
<VirtualHost *:80>
 ServerAdmin webmaster@otthon.no-ip.org
 ServerName otthon.no-ip.org
 DocumentRoot /var/www/otthon.no-ip.org

 CustomLog ${APACHE_LOG_DIR}/otthon.no-ip.org/access.log combined
 ErrorLog ${APACHE_LOG_DIR}/otthon.no-ip.org/error.log
 LogLevel warn
</VirtualHost>
Hozzuk létre a második web-site virtuális hoszt beállításait tartalmazó fájlt /etc/apache2/sites-available/munka.no-ip.org az alábbi tartalommal:
<VirtualHost *:80>
 ServerAdmin webmaster@munka.no-ip.org
 ServerName munka.no-ip.org
 DocumentRoot /var/www/munka.no-ip.org

 CustomLog ${APACHE_LOG_DIR}/munka.no-ip.org/access.log combined
 ErrorLog ${APACHE_LOG_DIR}/munka.no-ip.org/error.log
 LogLevel warn
</VirtualHost>
Engedélyezzük a site-okat a /etc/apache2/sites-enabled könyvtárban:
ln -s /etc/apache2/sites-available/otthon.no-ip.org otthon.no-ip.org
ln -s /etc/apache2/sites-available/munka.no-ip.org munka.no-ip.org>
Hozzunk létre egy-egy index.html-t más-más tartalommal a web-site-ok teszteléséhez
touch /var/www/otthon.no-ip.org/index.html
touch /var/www/munka.no-ip.org/index.html
Frissítsük az Apache web-szerver beállításait: sudo service apache2 reload

/var/www/otthon.no-ip.org/images könyvtár tartalmát az egyszerűség kedvéért egy BASIC authentikációval védtem le, amihez először létrehoztam egy password fájlt és hozzáadtam két felhasználót.
mkdir /etc/htpasswd
htpasswd -c /etc/htpasswd/.htpasswd user1
htpasswd /etc/htpasswd/.htpasswd user2
Az /etc/apache2/sites-available/otthon.no-ip.org fájlban pedig felvettem az alábbi sorokat:
 <Directory "/var/www/otthon.no-ip.org/images">
   AuthType Basic
   AuthName "Authentication Required"
   AuthUserFile "/etc/htpasswd/.htpasswd"
   Require valid-user
 
   Order allow,deny
   Allow from all
 </Directory>
Végül újraindítottam a webszervert: sudo service apache2 restart


2014. június 2., hétfő

Raspberry Pi - Apache web-szerver otthonra 1.

A Raspberry Pi fogyasztása minimális (2-4W), így nagyjából havi 200 forintos áram költség mellett egy teljesen hangtalan szervert üzemeltethetsz folyamatosan otthonról, amit a kis mérete miatt (8.5cm x 5.6mm x 2.1cm) akár a szekrény tetejére is felrakhatsz.

Szerettem volna egy jelszóval védett web oldalon néhány családi fényképeket publikálni a rokonoknak (A Facebook-ot és a társait inkább hagyjuk) valamint néhány munkával kapcsolatos oktatási anyagot közzétenni az ügyfelek számára. Nem számítok nagy forgalomra, így adódott a remek alkalom hogy a Raspberry Pi-n alakítsak ki egy web-szervert méghozzá két website-al! (A példa kedvéért legyen ez az otthon és a munka)

Először is telepítettem az Apache HTTP szervert a sudo apt-get install apache2 paranccsal majd leellenőriztem, hogy a http://localhost:80 címen megjelenik-e a /var/www/index.html tartalma. Mivel a web-szervert kívülről is elakartam érni, ezért az otthoni routerem virtual szerver beállításainál kinyitottam a TCP/80-as portot, így a szolgáltatótól kapott IP címmel már meg is jelent az index.html tartalma. Szuper! Az IP címemet azonban dinamikusan adja a szolgáltató,  - ami naponta akár többször is megváltozhat - ezért az ingyenes noip DDNS szolgáltatását használtam arra, hogy a noip-nél beregisztrál domain neveim mindig az aktuális IP címemre mutassanak. Ahhoz, hogy az IP címem mindig szinkronizálódjon a noip felé, egy kliens alkalmazást telepítettem az Raspberry Pi-re, ami periodikusan elküldte a noip-nek az IP címemet. Érdemes megemlíteni, hogy az újabb routerek esetén már nem szükséges a kliens alkalmazás feltelepítése, mivel támogatják a DDNS beállítását.

Tehát beregisztráltam a noip.com-ra, majd a Hosts/Redirects, Manage Hosts alatt felvettem két hoszt nevet, ahogy az alábbi képen is látható: otthon.no-ip.org és a munka.no-ip.org. Mivel az aktuális IP címem automatikusan kitöltésre került, mindkét hoszt névvel egyből elértem a web-szerverem.


A következő lépés a noip kliens telepítése:
cd /usr/local/src/
wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
tar xf noip-duc-linux.tar.gz
cd noip-2.1.9-1/
make install
A noip programot a sudo /usr/local/bin/noip2 paranccsal tudjuk elindítani, azonban érdemes beállítani az alábbi tutorial alapján, hogy a Raspbian indulásával a noip szolgáltatás is mindig elinduljon. Innentől kezdve az otthoni web-szerverünk, a két beregisztrált hoszt névvel folyamatosan elérhető lesz bárki számára.

Tulajdonképpen egy mobiltelefonról is bárhonnan hozzáférhetünk az otthoni Raspberry Pi mini-számítógépünkhöz, lekérdezhetjük a GPIO portra kötött szenzorokat vagy a rákötött kamera segítségével megnézhetjük mi történik odahaza... :)

A folytatásban azt fogom megmutatni, hogy hogyan lehet mindkét website-ot üzemeltetni ugyanerről a web-szerverről, a virtuális hoszt beállítások segítségével.

2014. május 20., kedd

Raspberry Pi - Raspbian kezdő lépések

Miután megnéztük, hogy milyen lehetőségek rejlenek a Raspberry Pi-ben folytassuk a beüzemeléssel. A Debian alapú Raspbian használatához, először töltsük le az image fájlt, majd írjuk ki egy minimum 4GB-os SD kártyára. Windows alatt használjuk a Win32DiskImager programot, Linux alatt pedig a sudo dd bs=1M if=2014-01-07-wheezy-raspbian.img of=/dev/sdb parancsot. A későbbiekben ugyanilyen módon, backup mentést is érdemes készíteni az SD kártyáról. Ha wifi-n keresztül fogjuk használni a RPI-t vagy éppen nincs kéznél Ethernet kábel, akkor még a legelső indítás előtt érdemes a wifi beállításokat elvégezni a kiírt SD kártyán az /etc/network/interfaces fájlban:

auto lo
iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
wpa-ssid "MY_SSID"
wpa-psk "MY_PASSWORD"

Ha ez megvan akkor tegyük be az RPI-be az SD kártyát és a nano wifi adaptert, majd csatlakoztassuk a micro USB tápot. Nézzük meg, hogy a DHCP-n keresztül milyen IP címet kaptunk, majd egy ssh klienssel csatlakozhatunk az alapértelmezett pi felhasználónévvel és a raspberry jelszóval. 

Adjuk ki a sudo raspi-config parancsot és válasszuk ki az Expand Filesystem opciót a teljes SD kártya használatához, változtassuk meg a pi felhasználó jelszavát (Change User Password) és a használat szerint konfiguráljuk be (nálam 16MB), hogy mennyi memóriát adunk a GPU-nak (Memory Split). Itt még más hasznos beállításokat is találhatunk, érdemes körülnézni! A változtatások életbelépéshez a sudo reboot paranccsal indíthatjuk újra a Raspbian-t. Az újraindulás után frissítsük a firmware-t a sudo apt-get install rpi-update, a csomag index fájlokat - azaz a lokális szoftver repositoryt - a sudo apt-get update paranccsal és a telepített csomagokat a sudo apt-get upgrade kiadásával. 

A nano WIFI adapterem mellett, maradt még egy szabad USB port, ezért oda egy pendrive-ot tettem be. Ahhoz hogy a Raspbian kezelni tudja az NTFS-t feltelepítettem a linuxos ntfs driver-t a sudo apt-get install ntfs-3g paranccsal, majd a sudo fdisk -l kiadásával megkerestem hova került beillesztésre a pendrive-om (/dev/sda1) ezután tartósan felcsatoltam a /media könyvtár alá, úgy hogy az /etc/fstab fájlban felvettem ezt a sort: /dev/sda1 /media ntfs-3g defaults,rw,gid=100,umask=002 0 0

Végül pedig létrehoztam egy új felhasználót az users csoportba, sudo useradd -m -G users -s /bin/bash myuser és beállítottam neki a jelszavát: sudo passwd myuser.

2011. március 20., vasárnap

JBoss-orientált fejlesztőkörnyezet kialakítása - 2.

Frissítve: 2011.04.21. 

A cikk előző részében elkészítettem a fejlesztőkörnyezet szerver oldali részét, a mostani post-ban pedig az Eclipse beállításával és a környezet csinosítgatásával folytatom a leírást. 

Mivel nem voltam megelégedve az Ubuntu alapértelmezett betűtípusával, feltelepítettem a Microsoftos betűtípusokat a sudo apt-get install ttf-mscorefonts-installer cabextract paranccsal és módosítottam a fontokat az Ubuntu System/Preference/Appearance menü alatt az alábbiak szerint:


A sudo apt-get install eclipse paranccsal felraktam az Eclipse-t, majd az /etc/eclipse.ini fájlban módosítottam az alapértelmezett memória beállításokon, mert az -Xms,-Xmx,-XXMaxPermSize értékeit alacsonynak találtam. Az Eclipse toolbar és tabbar widget-ei túl sok helyközt tartalmaznak Linux alatt, ezért az Ubuntu fórum egyik bejegyzése alapján létrehoztam a /home/balazs könyvtár alatt egy .gtkrc-2.0 nevű fájlt, majd bemásoltam az alábbi sorokat a megjelenés feljavításához és újraindítottam az Eclipse-t.

style "gtkcompact" {
GtkButton::default_border={0,0,0,0}
GtkButton::default_outside_border={0,0,0,0}
GtkButtonBox::child_min_width=0
GtkButtonBox::child_min_heigth=0
GtkButtonBox::child_internal_pad_x=0
GtkButtonBox::child_internal_pad_y=0
GtkMenu::vertical-padding=1
GtkMenuBar::internal_padding=0
GtkMenuItem::horizontal_padding=4
GtkToolbar::internal-padding=0
GtkToolbar::space-size=0
GtkOptionMenu::indicator_size=0
GtkOptionMenu::indicator_spacing=0
GtkPaned::handle_size=4
GtkRange::trough_border=0
GtkRange::stepper_spacing=0
GtkScale::value_spacing=0
GtkScrolledWindow::scrollbar_spacing=0
GtkTreeView::vertical-separator=0
GtkTreeView::horizontal-separator=0
GtkTreeView::fixed-height-mode=TRUE
GtkWidget::focus_padding=0
}
class "GtkWidget" style "gtkcompact"

style "compact-toolbar"
{
    GtkToolbar::internal-padding = 0
    xthickness = 1
    ythickness = 1
}

style "compact-button"
{
    xthickness = 0
    ythickness = 0
}

class "GtkToolbar"                   style "compact-toolbar"
widget_class "*<GtkToolbar>*<GtkButton>"    style "compact-button"

Ezután módosítottam az Eclipse alapértelmezésként használt betűtípusain is. A Window/Preferences menü alatt a General/Appearance/Colors and Fonts beállításánál a Java/Java Editor Text Font és Basic/Text Font -hoz megadtam a Courier 10 pitch/Regular/11px karakter formátumot.


A következő lépésben beállítottam a JBoss Community által használt Java kód formázási stílust, melyet a Seam3-nál és a JBoss AS 7 projektnél is alkalmaznak. Ehhez a Window/Preferences/Java/CodeStyle/Formatter menüpont alatt beimportáltam a JBossAs7Formatter xml fájlt. A forráskód formázáshoz a CTRL+F billentyűkombinációt kell alkalmazni az Eclipse Java editor view-ban.


Érdemes még beállítani az xhtml fájlok formázásához a Line Width=128 értéket, így a CTRL+F hatására az xhtml oldalak tagolása is megfelelő lesz. (Window/preferences/Web/HtmlFiles/Editor)
Végül módosítottam a szöveges fájlok alapértelmezett kódolását UTF-8-ra, valamint a line delimiter-t UNIX stílusúra. (window/preferences/general/workspace) Így zökkenőmentesen dolgozhat több fejlesztő is ugyanazon a projekten, eltérő operációs rendszert használva. 


A módosítások eredménye jól látható az alábbi képernyőképek alapján:
 
Alapértelmezett megjelenés

Módosított megjelenés

Mivel az előkészített környezetben leginkább JBoss alapú technológiákat fogok használni, így a fejlesztés támogatásához felraktam a JBoss Tools plugint. A telepítéséhez kiválasztottam a Help/Install New Software... menüpontot, majd hozzáadtam az Eclipse verziójához (Help/About Eclipse SDK) illeszkedő update site url-t. A repository-ból feltelepített Eclipse 3.5.2 -höz, a JBoss Tools 3.1 stable release update site-ot használtam. Az Eclipse újraindítása után átváltottam a JBossAS perspektívára (Window/Open Perspective/ Other...), majd felvettem a JBoss alkalmazás szervert (JBoss Server View/jobb klikk/new/server/JBoss AS 5.1) és hozzáadtam a Seam Runtime-ot (Window/Preferences/JBossTools/Web/Seam).

A File/New/Seam Web Project menüt kiválasztva, lehetőségünk van gyorsan legenerálni egy Seam sablon alkalmazást (Enterprise vagy Web) melyet igényeink szerint módosíthatunk.


2011. február 11., péntek

JBoss-orientált fejlesztőkörnyezet kialakítása - 1.

Frissítve: 2011.09.02.

A fejlesztők körében gyakori, hogy Windows-on fejlesztenek és Linux alatt csak üzemeltetik az alkalmazásokat. Ezzel korábban én is így voltam, azonban nemrég elhatároztam hogy kliens oldalon is áttérek a Linuxra, így ennek a lépéseit fogom most ismertetni. A váltás után leginkább az Eclipse megjelenésével nem voltam megbarátkozva, de erről a blog következő részében még részletesen fogok írni.

A fejlesztő környezetet az Ubuntu 10.10, SunJDK 6, MySQL 5.1, Eclipse 3.5, JBoss 5.1, JBoss Seam 2.2 és JBoss Tools 3.1 eszközökből állítottam össze.

Ubuntu 10.10
A képfájlt az Ubuntu letöltési oldaláról mentettem le. A telepítési folyamat elég egyszerű volt, olyan next->next->finish jellegű. A telepítés befejezésével egy teljesen használható rendszert kaptam, nem kellett külön meghajtó programokat keresgélnem és feltelepítenem mint Windows alatt, a bluetooth-tól kezdve a webkameráig minden egyből működött. Érdemes még megemlítenem, hogy más disztribúciókhoz képest az Ubuntu 10.10 alapértelmezett megjelenése is kifejezetten jóra sikerült, csak a fontok terén kellett egy kicsit utána állítanom.

Általában többféle java implementáció is megtalálható a gépemen, azonban legtöbbször a SUN megvalósítását szoktam használni. A Sun JDK telepítéshez először felvettem a sun-os repositoryt, majd telepítettem a csomagokat.
sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk sun-java6-plugin sun-java6-fonts
Mivel még régebben felraktam az OpenJDK-t, így az alapértelmezett Java-t át kellett állítanom a Sun JDK-ra. Ehhez megnéztem, hogy milyen Java implementációim vannak jelenleg: sudo update-java-alternatives -l, majd kiválasztottam a felsorolásból a java-6-sun-t: sudo update-java-alternatives -s java-6-sun. Végül a java -version -al megbizonyosodtam az átállás sikerességéről.

Minden fejlesztőnek van egy kedvenc keretrendszere, az enyém a JBoss Seam. Már jó pár éve használom és eddig nem okozott csalódást. Azt hiszem nem árulok el nagy titkot azzal, hogy a blogom olvasói még sokat fognak vele  találkozni. Visszatérve a telepítésre, letöltöttem a JBoss Seam 2.2 -es verzióját, majd kicsomagoltam a /usr/local/seam könyvtárba.

A JBoss 5.1 szervert kicsomagoltam az unzip jboss-5.1.0.GA-jdk6.zip paranccsal a /usr/local/jboss-5.1.0.GA könyvtár alá, majd készítettem egy szimbolikus linket: ln -s jboss-5.1.0.GA jboss. A jboss frissítése esetén mostmár csak a linket kell átállítani, így a /usr/local/jboss mindig az aktuális szerverre fog mutatni. Mivel a JBoss alatti könyvtárszerkezet nem követi a Linuxos fájlrendszer konvenciókat, ezért a  jboss/server/all/log, jboss/server/all/tmp és jboss/server/all/work könyvtárakra létrehoztam egy-egy szimbolikus linket, melyek a /var/log/jboss, /var/jboss/tmp és /var/jboss/work könyvtárakra mutatnak. 
A mysql eléréséhez, a mysql-connector-java.jar JDBC driver-t bemásoltam  a jboss/server/all/lib könyvtár alá. A datasource bekonfigurálásához a jboss/docs/examples/jca/mysql-ds.xml sablont átmásoltam a jboss/server/default/deploy könyvtárba majd módosítottam az alábbiak szerint:

<datasources>
  <local-tx-datasource>
   <jndi-name>testDatasource</jndi-name>
   <connection-url>
    jdbc:mysql://localhost:3306/testDB
   </connection-url>
   <driver-class>com.mysql.jdbc.Driver</driver-class>
   <user-name>testUsr</user-name>
   <password>testPwd</password>
   <exception-sorter-classname>
    org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter
   </exception-sorter-class-name>
   <metadata>
    <type-mapping>mySQL</type-mapping>
   </metadata>
  </local-tx-datasource>
</datasources>

A következő pár lépést akkor érdemes elvégezni, ha a JBoss-t Linuxos szolgáltatásként is el szeretnénk indítani. Hozzunk létre egy jboss nevű felhasználót akinek a nevében fog majd futni a JBoss alkalmazás szerver: useradd -s /bin/bash -g jboss jboss. A jboss felhasználónak biztonsági okok miatt ne adjunk meg jelszót, így csak root -ként lesz lehetőségünk a jboss felhasználóra váltani a su jboss paranccsal. Ha eddig nem a jboss felhasználóval dolgoztunk, módosítsuk a /usr/local/jboss/ alatti fájlok tulajdonosi és csoport jogait a jboss felhasználóra ill. csoportra: chown jboss:jboss /usr/local/jboss/ -R. Ahhoz, hogy a JBoss szervert linuxos szolgáltatásként tudjuk futtatni, a jboss/bin/jboss_init_redhat.sh scriptet át kell másolni az /etc/init.d/ könyvtárba, majd be kell állítani a JBOSS_HOME, JBOSS_USER, JBOSS_CONF, JAVA_PATH változókat és az update-rc.d jboss_init_redhat.sh defaults parancsal telepíteni az alapértelmezett futási szintekre, melynek az eredményét a chkconfig -l paranccsal ellenőrizhetjük. Ezután a JBoss-t az /etc/init.d/jboss_init_redhat.sh start paranccsal tudjuk indítani.

Feltelepítettem a mysql szerver és kliens programot: apt-get install mysql-server mysql-client, majd a mysql biztonságosabb használata érdekében kiadtam a következő parancsot:/usr/bin/mysql_secure_installation és végrehajtottam az alábbi lépéseket. Ezután az /etc/mysql/my.cnf állományban, a [mysqld] sor után felvettem a következő változókat:

lower_case_table_names=1 
init_connect='SET NAMES utf8'
init_connect='SET collation_connection = utf8_general_ci'
default-character-set=utf8
character-set-server=utf8
collation-server=utf8_general_ci 
skip-character-set-client-handshake 

Linux alatt a mysql táblanevek alapértelmezettként case-sensitive-ek, így ezt megváltoztattam  a lower_case_table_names változó 1-re állításával. A karakterkódolási problémák elkerülése véget pedig beállítottam, hogy a mysql globálisan az utf8-at használja.
A változók hozzáadása után újraindítottam a mysql-t és csatlakoztam az adatbázishoz, majd létrehoztam egy testDB nevű adatbázist: CREATE DATABASE testDB CHARACTER SET utf8 COLLATE utf8_general_ci; és készítettem egy testUsr nevű felhasználót akihez hozzárendeltem a megfelelő jogokat: GRANT ALL PRIVILEGES ON testDB.* to 'testUsr' IDENTIFIED BY 'testPwd' WITH GRANT OPTION;

Végül összegyűjtöttem azokat a parancsokat, melyeket gyakrabban használok a mysql üzemeltetése során.

A mysql szerver újraindítása: 
service mysql restart
Sql szkript importálása a kiválasztott adatbázisba: 
mysql --user=testUsr --password=testPwd testDB < sqlscript.sql
Backup készítése a kiválasztott adatbázisról: 
mysqldump --user=testUsr --password=testPwd testDB > backup.sql
Adatbázisok megtekintése:
mysql -u testUsr --password=testPwd testDB --execute 'show databases'
A kiválasztott adatbázishoz tartozó táblák megtekintése:
mysql --user=testUsr --password=testPwd testDB --execute 'show tables'
Az alapértelmezett mysql engine megtekintése:
 
mysql -u testUsr --password=testPwd testDB --execute 'show engines' 
A mysql változók megtekintése: 
mysql -u testUsr --password=testPwd --execute 'show variables'
Mysq felhasználók listázása: 
mysql --user=testUsr --password=testPwd testDB --execute 'SELECT User, Host, Password FROM mysql.user';


A cikk következő részében a kedvenc fejlesztőeszközömmel, az Eclipse-el fogom folytatni a JBoss-orientált fejlesztőkörnyezet kialakítását. A cikk azoknak is hasznos lesz, akik nincsenek megelégedve az Eclipse alapértelmezett kinézetével Linux alatt.