Ubuntu: MySQL job failed to start

Dacă vă confruntați cu această problemă, o puteți rezolva urmând pașii:

  1. Asigurați-vă că aveți destul spațiu pe disc
  2. Asigurați-vă că aveți fișierul de configurare my.cnf
  3. Investigați log-urile:
    • /var/log/mysql/error.log
    • /var/log/mysql/mysql.log
    • /var/log/boot.log

La mine serviciul nu pornea dacă foloseam comanda:

sudo service mysql start

Însă mergea dacă rulam:

sudo mysqld start

Așa că problema se pare că era de la AppArmor:

AppArmor parser error for /etc/apparmor.d/usr.sbin.mysqld in /etc/apparmor.d/usr.sbin.mysqld at line 44: Could not open ‘local/usr.sbin.mysqld’

Care s-a rezolvat simplu, cu următoarea comandă:

sudo touch /etc/apparmor.d/local/usr.sbin.mysqld

Hope it helps. Mie mi-au trebuit vreo 2 ore să descoper și să rezolv eroarea.

Link-uri în legătură cu problema: link 1, link 2

Cum să renunți la Ubuntu Unity în favoarea Cinnamon

Pentru cei care nu au auzit încă, Linux Mint a creat un nouă interfață grafică bazată pe Gnome Shell. Interfața arată foarte bine, și până acum este preferata mea. O consider mult mai bună decât Gnome Shell sau Unity și sper să aibă un viitor strălucit (să se continue lucrul la ea și să nu se încarce cu toate tâmpeniile).

Pentru a instala Cinnamon în Ubuntu 12.04 este momentan foarte simplu (puteți folosi una din metodele de mai jos):
1. Prima variantă (pe care am folosit-o și eu acum câteva luni)

sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
sudo apt-get update
sudo apt-get install cinnamon

2. Folosind repository-urile de la Mint (distribuție bazată pe Ubuntu) – Metodă descoperită recent aici.

sudo apt-add-repository "deb http://packages.linuxmint.com/ lisa main"
sudo apt-get update
sudo apt-get install linuxmint-keyring cinnamon cinnamon-session

După ce ați configurat și rezolvat toate probleme verificați ca totul să meargă cum trebuie, preferabil să dați și un restart între timp, și puteți trece mai departe la dezinstalarea Unity. Spre fericirea mea, se face destul de simplu:

sudo apt-get remove unity unity-2d unity-2d-common unity-2d-panel unity-2d-shell unity-2d-spread unity-asset-pool unity-common unity-lens-applications unity-lens-files unity-lens-music unity-lens-video unity-scope-musicstores unity-scope-video-remote unity-services indicator-messages indicator-status-provider-mc5 appmenu-qt appmenu-gtk appmenu-gtk3 lightdm unity-greeter overlay-scrollbar zeitgeist zeitgeist-core zeitgeist-datahub activity-log-manager-common activity-log-manager-control-center

Dacă vă apar cumva erori, încercați să ștergeți din comandă pack-urile cu probleme (nu au putut fi dezinstalate sau nu există). Apoi treceți mai departe:

sudo apt-get autoremove
sudo apt-get purge `deborphan`
sudo dpkg --purge `dpkg -l | egrep "^rc" | cut -d' ' -f3`

Ultima linie de comandă șterge toate fișierele de configurare create de Unity.

Ca orice interfață de Linux, nici Cinnamon nu este perfectă, și are o mulțime de probleme mărunte (fonturi aiurea, combinație aiurea de culori, iconițe urâte etc). De aceea după instalare este nevoie de puțină configurare pentru a face ca totul să arate ok. Pentru customizarea cu teme și alte nebunii intrați pe cinnamon-spices.linuxmint.com.

Eu folosesc Cinnamon deja de câteva luni și n-am avut probleme până astăzi dimineață, când în urma unui update mi-au fost dispărut iconițele de pe Desktop. Am incercat să intru în Unity, și nici Unity nu mai mergea (lipsea Panel-ul), iar când m-am întors la Cinnamon toate configurările erau pierdute (font-uri, tema, culorile). Așa că m-am decis să o iau de la capăt cu configurarea și să șterg orice urmă de Unity. Sper să nu mai am probleme de acum încolo. Problema cu iconițele s-a rezolvat cu o bifă în setările de la Cinnamon (nu știu cine a stricat acea setarea, dar bănuies că un update de Unity).

Update: se pare că nici de compiz nu mai este nevoie (Cinnamon are efecte proprii), comada furată de aici:

sudo apt-get purge compiz-core compiz compiz-plugins-main-default libcompizconfig0

Update 2: Se pare că au mai rămas ceva aplicații inutile care țin de globalmenu (sistemul de meniuri din Unity). Pentru a identifica aplicațiile cu pricina

sudo dpkg -l | grep globalmenu

Apoi le ștergeți cu comanda următoare (la mine erau decât două: firefox-globalmenu, thunderbird-globalmenu)

sudo apt-get purge firefox-globalmenu thunderbird-globalmenu

Poker Game

Texas-Holdem

După cum știti dintr-un post mai vechi, m-am decis să-mi dezvolt puțin abilitățile de game developer și să încerc să implementez câteva jocuri micuțe ca exercițiu de programare și să mă având puțin în afara tehnicilor arhicunoscute din programarea de zi cu zi din cadrul job-ului.

După ce mi-au trebuit câteva zile să învâț lucruri noi despre JavaScript și să implementez o versiune de Tetris, am început să mă gândesc la un joc care să necesite AI. Deși planul era să implementez Snake sau Escape, m-am apucat să studiez mai mult algoritmii despre Poker.

Am plecat cu ideea greșită că nu o să fie foarte complex, dar ca de obicei m-am înșelat. După ce am citit câteva articole mi-am dat seama că sunt multe probleme care trebuiesc rezolvate de AI-ul pentru poker, asta pe lângă aplicația de joc în sine (structuri pentru memorarea datelor, implementarea mesei de joc cu toate interacțiunile necesare, etc…)

Lista cu situațiile importante care trebuiesc rezolvate de un AI de poker am găsit-o deja într-un articol, și m-am gândit că ar fi interesant să fac o trecere în revistă (pentru cei care credeau că e simplu – la fel ca mine). Regulile se referă la Texas Hold’em, însă cu mici modificări cred că se poate aplica și la alte tipuri de poker.

Continue reading “Poker Game”