Przenoszenie Ubuntu na inny dysk

Czasami zachodzi potrzeba przeniesienia systemu operacyjnego z jednego dysku na drugi. Poniżej kilka wskazówek jak można to wykonać na przykładzie Ubuntu. Na początku najlepiej jest podpiąć nowy dysk w miejsce starego, a stary podłączyć do innego kanału SATA. Jeśli coś się nie uda, zawsze będziemy mieli możliwość podłączenia starego dysku w jego pierwotny kanał i uruchomienia systemu. Po podłączeniu dysków uruchamiamy komputer z płyty Live CD lub pendriva i przygotowujemy nowy dysk do pracy tworząc na nim partycje (gparted, cfdisk, fdisk). Najlepiej jest zachować taki sam układ partycji jak na starym dysku, a ich wielkość dostosować do rozmiaru nowego dysku. Kolejnym krokiem jest utworzenie katalogów o nazwach przykładowo: stary_dysk i nowy_dysk: Czytaj dalej Przenoszenie Ubuntu na inny dysk

Install a KVM host on Ubuntu 14.04 Trusty Tahr

Instalacja i konfiguracja hosta KVM z libvirt i Open vSwitch na Ubuntu 14.04 Trusty Tahr. Poniższe kroki najlepiej wykonać zaraz po zainstalowaniu systemu operacyjnego.

1) Instalujemy wymagane pakiety:

root#server:/# apt-get install openvswitch-switch qemu-kvm libvirt-bin

2) Usuwamy domyślny bridge i tworzymy bridge oparte na Open vSwitch:

Czytaj dalej Install a KVM host on Ubuntu 14.04 Trusty Tahr

Połączenie z Ubuntu przez RDP z Windowsa

Jeśli mamy zainstalowaną wersję graficzną Ubuntu na zdalnej maszynie dostępnej przez Internet lub przez sieć lokalną możemy połączyć się z nią przez zdalny pulpit  (Remote Desktop Protocol w skrócie RDP). W tym celu wystarczy zainstalować na Ubuntu pakiet xrdp według poniższego:

root@ubuntu: apt-get install xrdp

Po instalacji na komputerze z zainstalowanym Windowsem wybieramy kolejno Start -> Programy -> Akcesoria -> Podłączenie pulpitu zdalnego. Obok pola Komputer wpisujemy adres IP komputera z Ubuntu np. 192.168.1.10

ubuntu,z,windows,rdp

W kolejnym oknie wpisujemy nazwę użytkownika i hasło do komputera z Ubuntu:

ubuntu,z,windows,xrdp

Klikamy OK i możemy korzystać zdalnie z Ubuntu:

Pulip,Ubuntu

Testowane na najnowszej wersji Ubuntu Desktop 12.04 w wersji 64bit oraz Pulpitu zdalnego w wersji 6.0.6001 z Windowsa XP Professional.

Lokalne montowanie zdalnych katalogów – sshfs

W linuxie istnieje możliwość pracy na zdalnym katalogu tak jak byśmy pracowali na lokalnym, w dodatku transfer danych pomiędzy maszynami odbywa się połączeniem szyfrowanym.

W celu zamontowania zdalnego katalogu na lokalnej maszynie należy zainstalować program sshfs.

root@server:~# apt-get install sshfs

Następnie tworzymy na lokalnej maszynie punkt montowania:

root@server:~# mkdir /mnt/zdalny_server

Zasób ze zdalnej maszyny montujemy w katalogu zdalny_server poniższym poleceniem:

root@server:~# sshfs user@82.160.206.20:/home/user /mnt/zdalny_server

gdzie user to nazwa użytkownika na zdalnej maszynie posiadającego uprawnienia odczytu do zasobu /home/user, 82.160.206.20 to adres IP zdalnej maszyny.

Po takim zabiegu w katalogu zdalny_server mamy zasoby ze zdalnej maszyny, z których możemy korzystać jak lokalnych pamiętając, że szybkość transferu plików zależy od szybkości łącza jakie jest pomiędzy maszyną lokalną i zdalną (np. łącza Internetowego).

Na zakończenie warto odmontować zdalny zasób. Można to zrobić poniższym poleceniem:

root@server:~# fusermount -u /mnt/zdalny_server

Ponowne montowanie zasobu można wykonać dodając opcje reconnect jak poniżej:

root@server:~# sshfs user@82.160.206.20:/home/user /mnt/zdalny_server -o reconnect

inne opcje:

-o reconnect,idmap=user,password_stdin,dev,suid

Wersja Ubuntu – jak sprawdzić

Czasami może się zdarzyć, że nie wiemy jaka wersja systemu, jądra (64 czy 32 bitowa) lub strefy czasowej jest zainstalowana na komputerze. Ustalenie wersji ubuntu uzyskamy wydając z konsoli komendę.

root@server:/# lsb_release -a

Informacje o jądrze uzyskamy poleceniem:

root@server:/# uname -a

Wszystkie opcje uname możemy poznać wydając polecenie:

root@server:/# uname --help

Instalacja PEAR-PHP w Ubuntu

Instalacja PEAR-PHP:

root@server:# apt-get install php-pear

Listę wszystkich programów dostępnych bezpośrednio z repozytoriów PEAR można wyświetlić wydając polecenie:

root@server:# pear remote-list

Instalacja pakietu z repozytoriów PEAR:

root@server:# pear install nazwa_pakietu

Instalacja modułów PHP w Ubuntu

Aby dograć dodatkowe moduły do PHP należy zainstalować odpowiednią paczkę z modułem:

root@server:# apt-get install php5-cgi

przykładowa lista modułów:

php5-exactimage – fast image manipulation library (PHP bindings)
php5-ffmpeg – audio and video support via ffmpeg for php5
php5-lasso – Library for Liberty Alliance and SAML protocols – PHP 5 bindings
php5-mapscript – php5-cgi module for MapServer
php5-ming – Ming module for php 5
php5-uuid – OSSP uuid module for php 5
php5-auth-pam – A PHP5 extension for PAM authentication
php5-geoip – GeoIP module for php5
php5-idn – PHP API for the IDNA library
php5-imagick – ImageMagick module for php5
php5-memcache – memcache extension module for PHP 5
php5-memcached – memcached extension module for PHP 5
php5-ps – ps module for PHP 5
php5-radius – PECL radius module for PHP 5
php5-sasl – Cyrus SASL extension for PHP 5
php5-suhosin – advanced protection module for php5
php5-svn – PHP Bindings for the Subversion Revision control system
php5-tokyo-tyrant – PHP interface to Tokyo Cabinet’s network interface, Tokyo Tyrant
php5-cgi – server-side, HTML-embedded scripting language (CGI binary)
php5-curl – CURL module for php5
php5-dbg – Debug symbols for PHP5
php5-dev – Files for PHP5 module development
php5-enchant – Enchant module for php5
php5-gmp – GMP module for php5
php5-imap – IMAP module for php5
php5-interbase – interbase/firebird module for php5
php5-intl – internationalisation module for php5
php5-ldap – LDAP module for php5
php5-mcrypt – MCrypt module for php5
php5-odbc – ODBC module for php5
php5-pgsql – PostgreSQL module for php5
php5-pspell – pspell module for php5
php5-recode – recode module for php5
php5-snmp – SNMP module for php5
php5-sqlite – SQLite module for php5
php5-sybase – Sybase / MS SQL Server module for php5
php5-tidy – tidy module for php5
php5-xmlrpc – XML-RPC module for php5
php5-xsl – XSL module for php5
php5-librdf – PHP5 language bindings for the Redland RDF library
php5-remctl – PECL module for Kerberos-authenticated command execution
php5-xcache – Fast, stable PHP opcode cacher
php5-xdebug – Xdebug Module for PHP 5
php5-adodb – Rozszerzenie optymalizujące bibliotekę abstrakcji bazy ADOdb
php5-cli – Interpreter wiersza poleceń języka skryptowego php5
php5-common – Pliki wspólne pakietów zbudowanych ze źródeł php5
php5-gd – Moduł GD do php5
php5-mysql – Moduł MySQL do PHP5

Następnie w /etc/php5/cgi/php.ini odkomentować linie z określonym modułem np.

extension=mysql.so

Instalacja PHP APC cache w Ubuntu

Mechanizm PHP APC cache polega na buforowaniu skomplikowanego kodu PHP w pamięci operacyjnej lub na dysku serwera. Przy kolejnym zapytaniu o ten sam kod, APC sprawdza czy ma go w pamięci, jeśli tak PHP nie wykonuje ponownie kodu tylko jest on ładowany z pamięci.

Instalacji PHP APC cache w Ubuntu jest banalnie prosta i polega na wydaniu poniższego polecenia z konsoli:

root@server:# apt-get install php-apc

Alternatywnym sposobem instalacji jest wydanie poniższych poleceń z konsoli:

root@server:# apt-get install php-pear
root@server:# apt-get install php5-dev 
root@server:# apt-get install apache2-dev
root@server:# pecl install apc
root@server:# echo "extension=apc.so" > /etc/php5/apache2/conf.d /apc.ini
W obu przypadkach, po instalacji oczywiście musimy zrestartować serwer www poniższym poleceniem:
root@server:# /etc/init.d/apache2 restart

 

Instalacja bibliteki GD PHP 5 w Ubuntu

Jeśli integrujecie Uploadify z jQuery UI ze swoją stroną www i pojawia Wam się błąd „HTTP Error” lub chcecie skorzystać z funkcji imagecreatefromjpeg(), która nie działa, a w logach jest wpis „Call to undefined function imagecreatefromjpeg()” bardzo możliwe, że nie macie zainstalowanej biblioteki GD z PHP. Można to sprawdzić dodając do strony www napisanej w PHP poniższy wpis:

echo "<pre>"; print_r(gd_info()); echo "</pre>";

Jeśli wyświetlając stronę w przeglądarce otrzymamy wynik różny od poniższego:

Array
(
    [GD Version] => 2.0
    [FreeType Support] => 1
    [FreeType Linkage] => with freetype
    [T1Lib Support] => 1
    [GIF Read Support] => 1
    [GIF Create Support] => 1
    [JPEG Support] => 1
    [PNG Support] => 1
    [WBMP Support] => 1
    [XPM Support] =>
    [XBM Support] =>
    [JIS-mapped Japanese Font Support] =>
)

lub nie otrzymamy nic oznacza to, że musicie zainstalować bibliotekę GD w systemie. W tym celu wystarczy wydać poniższe polecenie z konsoli:

root@server:# apt-get install php5-gd

Pamiętajcie, aby przed instalacją biblioteki wykonać aktualizację systemu wydając poniższe polecenia:

root@server:# apt-get update
root@server:# apt-get upgrade

Po instalacji należy zrestartować serwer www wydając polecenie:

root@server:# /etc/init.d/apache2 restart

Jeśli dalej występują błędy, powodem jest coś innego, szukajcie na tym forum, powinno być rozwiązanie.

Serwer czasu NTP w Ubuntu 12.04

Instalacja serwera czas uw Ubuntu:

root@server:# apt-get install ntp

Program ntpd może w systemie pełnić zarówno funkcję serwera (być wzorcem czasu dla innych maszyn), jak również klienta (synchronizować lokalny zegar z serwerami czasu).

Warto po instalacji ntpd usunąć z systemu poprzedni – przestarzały program do synchronizacji czasy ntpdate.

root@server:# apt-get remove ntpdate

Następnym krokiem jest konfiguracja serwera czasu. Edytujemy plik konfiguracyjny:

root@server:# vim /etc/ntp.conf

Zamiast domyślnych wzorców czasu podajemy własne komentując jednocześnie pozostałe. Najlepiej jest podać kilka serwerów czasu zlokalizowanych blisko nas, do których pingi są najkrótsze.

server tempus1.gum.gov.pl iburst
server tempus2.gum.gov.pl
server ntp1.tp.pl
server ntp2.tp.pl

Powyżej najpopularniejsze serwery czasu w Polsce. Przy jednym z nich (który ma najmniejsze opóźnienie), na końcu warto dodać parametr iburst, który przyspieszy synchronizację czasu z tym serwerem.

Dodanie poniższych linijek na końcu listy serwerów czasu nie będzie powodowało błędów w działaniu naszego ntp w przypadku braku dostępu do Internetu.

server tempus1.gum.gov.pl iburst
server tempus2.gum.gov.pl
server ntp1.tp.pl
server ntp2.tp.pl
server 127.127.1.0
fudge 127.127.1.0 stratum 10

Ostatnia rzecz do ustawienia to pozwolenie naszym maszynom z sieci lokalnej na pobieranie czasu z serwera ntp. Dodajemy poniższą linijkę na końcu pliku konfiguracyjnego.

restrict 192.168.1.0 mask 255.255.255.0 notrap nomodify nopeer noquery

Po zmianie konfiguracji restartujemy serwer czasu:

root@server:#/ service ntp restart

W celu zmiany strefy czasowej w Ubuntu wydajemy z konsoli polecenie:

root@server:# dpkg-reconfigure tzdata

Jeśli chcemy, żeby system używał lokalnego czasu, wydajemy komendę:

root@server:# vim  /etc/default/rcS

i zmieniamy lub dodajemy poniższą sekcję do pliku konfiguracyjnego:

# Set UTC=yes if your hardware clock is set to UTC (GMT)
UTC=no

Sprawdzamy czy serwer ntp jest uruchomiony:

root@server:# /etc/init.d/ntp status

Sprawdzamy czy system potrafi rozwiązać nazwę serwera czasu na jego adres IP (zamiast ntp1.tp.pl wstawiamy serwery czasy umieszczone w pliku konfiguracyjnym ntp.conf)

root@server:# host ntp1.tp.pl

Sprawdzanie różnic pomiędzy naszym serwerem, a serwerami z konfigu:

root@server:# ntpq --numeric --peer

lub (pomijając parametr „n” adresy IP serwerów czasu  będą rozwiązane na ich nazwy):

root@server:# ntpq -n -p

Najlepiej jak w pierwszej kolumnie są * i dużo + przed adresami IP serwerów czasu natomiast parametr reach (cel) ma wartość 377. W polu when mamy podany czas w s jaki upłynął od ostatniego kontaktu z danym serwerem czasu.

Parametr delay (opóźnienie) jest podany w milisekundach. Dla lokalnej sieci powinien wynosić poniżej 1, serwerów ISP poniżej 10, idealny dla Wi-Fi poniżej 100. offset też jest wyrażony w milisekundach i oznacza bieżącą różnicę pomiędzy serwerami czasu, a naszym serwerem. Im mniejsza różnica tym lepiej. jitter oznacza oszacowany błąd wewnętrznego zegara – im mniej tym lepiej. Jeśli ten parametr jest stosunkowo wysoki może powodować to pływanie zegara systemowego, gdyż server ntp będzie dostosowywał zegar systemowy do czasu wzorcowego zbyt często.

Przydatnymi poleceniami mogą być:

root@server:# ntpdc -c loopinfo

różnica w sekundach pomiędzy zegarem systemowym, a zegarem serwera czasu obliczona podczas ostatniej synchronizacji,

root@server:# ntpdc -c kerninfo

wyświetlenia bieżącej, pozostałej do przeprowadzenia korekty czasu zegara systemowego.