2015-10-06
Finch - Instant Messaging client
2015-09-30
Dysk SSD i Linuks Mint/Ubuntu
Kilka rzeczy, które warto ustawić mając system Mint/Ununtu zainstalowany na dysku SSD.
Swap
W pliku /etc/sysctl.conf dodajemy na dole następujące zmienne:
vm.swappiness = 1 vm.vfs_cache_pressure=50
Ja u siebie wyłączyłem swapa całkowicie (mam sporo ramu i mały dysk SSD):
vm.swappiness = 0
Wyłączenie "access time stamp"
W pliku /etc/fstab dla partycji dysku SSD dodajemy parametr noatime:
UUID=fcbaca8f-a6f7-4fa4-981a-8cd979a2e59d / ext4 noatime,errors=remount-ro 0 1
Włączenie TRIM
Dysk SSD powinien być regularnie czyszczony. Czyszczenia można dokonać wykonując polecenie:
sudo fstrim -v /
Gdzie znak / to partycja dysku SSD. Jeśli mamy więcej dysków/partycji to dla każdego/każdej z nich wykonujemy to polecenie osobno. Dobrym zwyczajem jest wykonywanie tego polecenia podczas startu systemu. Aby tego dokonać należy w pliku /etc/rc.local dodać linie (przed exit 0):
# Run fstrim at boot LOG=/var/log/trim.log fstrim -v / >> $LOG echo "Time: $(date)" >> $LOG exit 0
Kilka dodatkowych zabiegów
Aby zmniejszyć ilość zapisów na dysku warto również unikać hibernacji oraz defragmentacji dysku SSD. Można również ograniczyć lub wyłączyć cache w przeglądarkach www.
źródło: http://www.leniwiec.org/
2015-05-10
Utworzenie lokalnej domeny przy użyciu Apache2 i Virtual Hosts
- Tworzymy katalog test w katalogu /var/www/html/
- Tworzymy plik index.html w katalogu test
- Dajemy uprawnienia 0775 dla katalogu test
- W pliku index.html wpisujemy hello world!
- Tworzymy plik test_lh.conf w katalogu /etc/apache2/sites-available/
- W pliku test_lh.conf wpisujemy:
Uwaga! Zamiast id="/var/www/html/test" piszemy po prostu /var/www/html/test.ServerAdmin marcin.zaremba@gmail.com ServerName test.lh ServerAlias *.test.lh DocumentRoot /var/www/html/test ErrorLog /var/log/apache2/test_error.log CustomLog /var/log/apache2/test_access.log combined # enable the .htaccess rewrites AllowOverride All Allow from All Require all granted
- W katalogu /etc/apache2/sites-enabled/ tworzymy link symboliczny do /etc/apache2/sites-available/test_lh.conf
ln -s /etc/apache2/sites-available/test_lh.conf /etc/apache2/sites-enabled/test_lh.conf
- W pliku /etc/hosts dodajemy linijkę 127.0.0.1 test.lh
- Uruchamiamy przeglądarkę, wpisujemy w pasek adresy test.lh i cieszymy się z napisu hello world!
Skrypt do tworzenia lokalnej domeny
Na githubie umieściłem skrypt, który wykonuje wszystkie opisane ruchy w sposób automatyczny. Wystarczy wpisać w konsoli:
sudo ./addLocalHost.sh testa wszystkie wyżej opisane kroki wykonają się za nas i będziemy mogli cieszyć się nową lokalną domeną test.lh.
Poniżej przedstawiam kod, który wykonuje to zadanie:
2014-12-30
Android 5.0.1 i Nexus 4 - instalacja pod Linux Mint 17
Instalacja Java JDK
- Usuwamy openjdk
sudo apt-get update && apt-get remove openjdk*
- Ściągamy Java JDK ze strony Oracle.
- Rozpakowujemy ściągnięty plik
tar -zxvf jdk-...
- Tworzymy katalog java w katalogu opt
sudo mkdir -p /opt/java
- Przenosimy rozpakowaną javę do nowo utworzonego katalogu java (w moim przypadku to jdk1.8.0_25 ale w Twoim może być już inna)
sudo mv jdk1.8.0_25 /opt/java
- Ustawiamy zainstalowaną JDK jako domyślną
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/java/jdk1.8.0_25/bin/java" 1 sudo update-alternatives --set java /opt/java/jdk1.8.0_25/bin/java
- Nadajemy uprawnienia
sudo chmod 0775 /usr/bin/java sudo chmod -R 0775 /opt/java/jdk1.8.0_25/
- Sprawdzamy czy wszystko gra
java -version
Instalacja Android Studio
Uruchomienie modułu debuggowania USB w telefonie
Sprawdzenie połączenia komputera z telefonem
adb reboot bootloader
Instalacja systemu Android 5.0.1
2014-12-05
[linux] Jak duży jest katalog?
du -h medicaldata_dokumentacja_medyczna/ --max-depth=1
[linux] Ile plików znajduje się w danym katalogu?
find /tmp/ -type f | wc -l
źródło: http://blog.bestnet.pl/linux-zmiana/
2014-06-03
[linuks] Synchronizacja katalogów za pomocą rsync i ssh
rsync -avz -e 'ssh -p 2222' remoteuser@remotehost:/remote/dir /this/dir/
W tym przykładzie łączymy się z komputerem remotehost za pomocą ssh po niestandardowym porcie 2222.
2014-02-20
[linux] Kontrola jasności - Mint 16 i Acer V3-772g
sudo add-apt-repository ppa:bumblebee/stable sudo apt-get update sudo apt-get install bumblebee bumblebee-nvidia primus linux-headers-generic sudo rebootPo restarcie upewniamy się, że nie ma nouveau:
lsmod | grep nouveauNastępnie w pliku /etc/default/grub usuwamy nomodest i dodajemy acpi_backlight=vendor oraz acpi_osi=Linux do zmiennych - ostatecznie wyglądają one następująco:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=vendor" GRUB_CMDLINE_LINUX="acpi_osi=Linux"Na koniec aktualizujemy gruba:
sudo update-grubI restart. Mam nadzieję, że to już koniec tych sprzętowych wpisów. ;)
2014-02-11
[apache] Zmiana użytkownika z www-data na innego
export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data
na:
#export APACHE_RUN_USER=www-data export APACHE_RUN_USER=marcin #export APACHE_RUN_GROUP=www-data export APACHE_RUN_GROUP=marcin
2013-07-26
Instalacja statystyk Awstats pod Ubuntu
Instalacja:
sudo apt-get install awstatsopcjonalnie również:
apt-get install libnet-ip-perl apt-get install libgeo-ipfree-perl
Utworzenie pliku konfiguracyjnego:
sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.twoja_domena.pl.conf
Edycja pliku konfiguracyjnego:
# apache2 LogFile="/var/log/apache2/access.twoja_domena.log" # domain name SiteDomain="twoja_domena.pl" HostAliases="localhost 127.0.0.1 twoja_domena.pl" LogFormat=1opcjonalnie można aktywować pluginy:
LoadPlugin="tooltips" LoadPlugin="geoipfree"
Odpalamy pierwszy raz statystyki:
sudo /usr/lib/cgi-bin/awstats.pl -config=twoja_domena.pl -update
Po jakimś czasie (może nawet kilku minutach) powinno się pojawić coś w tym stylu:
Create/Update database for config "/etc/awstats/awstats.twoja_domena.pl.conf" by AWStats version 7.0 (build 1.971) From data in log file "/var/log/apache2/access.twoja_domena.log"... Phase 1 : First bypass old records, searching new record... Searching new records from beginning of log file... Phase 2 : Now process new records (Flush history on disk after 20000 hosts)... Jumped lines in file: 0 Parsed lines in file: 2075 Found 0 dropped records, Found 0 comments, Found 0 blank records, Found 54 corrupted records, Found 0 old records, Found 2021 new qualified records.
W katalogu /etc/apache2/sites-available/ w którym znajduje się konfiguracja apache'a danej strony (u mnie jest to /etc/apache2/sites-available/twoja_domena_pl) należy dodać:
Alias /awstatsclasses "/usr/share/awstats/lib/" Alias /awstatsicons/ "/usr/share/awstats/icon/" Alias /awstatscss "/usr/share/doc/awstats/examples/css" ScriptAlias /awstats/ /usr/lib/cgi-bin/ Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Na koniec robimy restart Apache'a:
/etc/init.d/apache2 restart
oraz dodajemy generowanie statystyk do Crontaba:
0 */3 * * * /usr/lib/cgi-bin/awstats.pl -config=twoja_domena.pl -update > /dev/null
Jeśli chcemy zrestartować awstatsa:
sudo su - root cd /var/lib/awstats rm * logout
źródło:
- http://jeromejaglale.com/doc/ubuntu/awstats
- https://help.ubuntu.com/community/AWStats
2012-09-24
Repozytorium git na niestandardowym porcie ssh
git clone git@domain.com:project_namepolecenie:
git clone ssh://git@domain.com:Jeśli zmiana nastąpiła w momencie, w którym projekt już istnieje to musimy zmienić ustawienia znajdujące się w pliku .git/config:/
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@domain.com:project_name
na:
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = ssh://git@domain.com:port/project_name
źródło: http://readystate4.com/2011/03/30/working-with-git-repos-on-non-standard-ports/
2012-07-01
Tunelem SSH do Apache'a
ssh -p 9999 user@adres.mojego-serwera.plwpisać:
ssh -p 9999 user@adres.mojego-serwera.pl -L 9980:localhost:80Po takim zabiegu wchodzimy w przeglądarkę, wpisujemy w pole adresu:
http://localhost:9980i już jesteśmy na Apache'u serwera, który "stoi" na zamkniętym porcie 80.
2011-11-26
[linux] Boot z Grub'a
root (hd0,1) linux /vmlinuz root=/dev/sda1 initrd /initrd.img bootPo tym zabiegu wszystko pięknie śmiga... :-)
2011-06-19
[unix][curl] Download wielu plików z zabezpieczonego katalogu
Forbidden
You don't have permission to access /images/xyz/ on this server.
Apache Server at www.tajemny-host.com Port 80
a do tego znasz mniej więcej nazewnictwo plików znajdujących się w katalogu to jest szansa, że uda Ci się pobrać zawartość. Wszystko dzięki curl - wystarczy, że wpiszesz z linii poleceń:
curl http://www.tajemny-host.com/images/img[00-99]_[A-Z].jpg -o img#1_#2.jpg
Przyjąłem tutaj, że pliki w katalogu xyz mogą mieć nazwy typu img28_C.jpg albo img47_A.jpg. Curl za pomocą powyższej linijki kodu ściągnie tego typu pliki bez większego problemu - fantastyczna sprawa. :-)
2011-03-28
[eclipse] Subversion Native Library Not Available
Failed to load JavaHL Library.
These are the errors that were encountered:
no libsvnjavahl-1 in java.library.path
no svnjavahl-1 in java.library.path
no svnjavahl in java.library.path
java.library.path = /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/amd64/server:/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/amd64:/usr/lib/jvm/java-6-sun-1.6.0.24/jre/../lib/amd64:/usr/lib64/xulrunner-addons:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
Do rozwiązania tego problemu pod Mint'em wystarczy:
1. Zainstalowanie libsvn-java
sudo apt-get install libsvn-java
2. Edycja eclipse.ini
W pliku eclipse.ini (znajduje się w katalogu eclipse) należy po linii -vmargs dopisać:
-Djava.library.path=/usr/lib/jniNa koniec wystarczy zrestartować Eclipse i wszystko powinno śmigać.
2011-03-25
Własne aliasy w bash'u
można dzięki aliasom zdefiniować sobie skrót w stylu:
ssh -p 666 m4rc1no5@host
goto_host
Co należy zrobić żeby stworzyć sobie taki skrót?
Po pierwsze .bashrc
Dodajemy w .bashrc kod:
Plik .bashrc powinien znajdować się w katalogu domowym. Jesli tam go nie ma to trzeba go utworzyć i wpisać tam kod znajdujący się wyżej.
#wczytanie aliasow
if [ -f ~/.bash_aliases ]; then
source ~/.bash_aliases
fi
Po drugie .bash_aliases
W katalogu domowym tworzymy plik .bash_aliases i umieszczamy w nim własne aliasy - na przykład:
alias goto_host='ssh -p 666 m4rc1no5@host'
Po tych fantastycznych i banalnych dwóch krokach otwieramy nowy terminal, wpisujemy
i cieszymy się z dobrodziejstw jakie dają nam aliasy. :-)
goto_host
2010-12-07
[unix][xml] XMLStarlet Command Line XML Toolkit
Aby obejrzeć możliwości tego cudeńka zapraszam do dokumentacji.
2010-07-28
[unix] Cloc - obliczanie ilości linii kodu
./cloc-1.51.pl /var/www/test/
Cloc przeskanuje pliki znajdujące się w katalogu test i wyrzuci wynik wyglądający mniej więcej tak:
456 text files.
450 unique files.
164 files ignored.
http://cloc.sourceforge.net v 1.51 T=2.0 s (146.0 files/s, 16437.5 lines/s)
---------------------------------------------------------------------
Language files blank comment code
---------------------------------------------------------------------
PHP 265 3947 10352 15815
CSS 9 165 172 1036
Javascript 6 20 278 575
Bourne Shell 10 54 142 218
SQL 2 13 0 88
---------------------------------------------------------------------
SUM: 292 4199 10944 17732
---------------------------------------------------------------------
Cloc wspiera wiele języków programowania i ma mnóstwo fajnych opcji o których warto sobie poczytać w deszczowe dni... :)
2010-04-25
[unix] edytor vi
Najważniejsze polecenia (dla mnie):
Więcej o edytorze można przeczytać na Wikipedii.
# wyjście bez zapisania zmian
:q!
# zapisanie zmian
:w
# wyjście z zapisaniem zmian
:x
# zamiana wszystkich nazwa1 na nazwa2 w danej linii (gdzie jest kursor)
:s/nazwa1/nazwa2/g
# zamiana wszystkich nazwa1 na nazwa2 w całym pliku
:%s/nazwa1/nazwa2/g