Ubuntu:Gutsy pl/Serwery
From
Serwer DHCP
Jak zainstalować serwer DHCP i skonfigurować go aby automatycznie przydzielał adresy IP
- Czytaj #Uwagi ogólne
- Czytaj #Jak dodawać nowe repozytoria
- np. Zakładamy że "eth0" jest interfejsem karty sieciowej
- IP Address Range: 192.168.0.100 to 192.168.0.200
- Subnet Mask: 255.255.255.0
- DNS Servers: 202.188.0.133, 202.188.1.5
- Domains: tm.net.my
- Gateway Address: 192.168.0.1
sudo apt-get install dhcp3-server sudo cp /etc/default/dhcp3-server /etc/default/dhcp3-server_backup gksudo gedit /etc/default/dhcp3-server
- Znajdź linię:
... INTERFACES=""
- Zastąp ją:
INTERFACES="eth0"
- Zapisz edytowany plik.
sudo cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf_backup gksudo gedit /etc/dhcp3/dhcpd.conf
- Znajdź sekcję:
... # option definitions common to all supported networks... option domain-name "example.org"; option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 600; max-lease-time 7200; ...
- Zastąp ją:
# option definitions common to all supported networks... #option domain-name "example.org"; #option domain-name-servers ns1.example.org, ns2.example.org;
#default-lease-time 600; #max-lease-time 7200;
- Znajdź sekcję:
...
# A slightly different configuration for an internal subnet.
#subnet 10.5.5.0 netmask 255.255.255.224 {
# range 10.5.5.26 10.5.5.30;
# option domain-name-servers ns1.internal.example.org;
# option domain-name "internal.example.org";
# option routers 10.5.5.1;
# option broadcast-address 10.5.5.31;
# default-lease-time 600;
# max-lease-time 7200;
#}
...
- Zastąp ją:
# A slightly different configuration for an internal subnet.
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100 192.168.0.200;
option domain-name-servers 202.188.0.133, 202.188.1.5;
option domain-name "tm.net.my";
option routers 192.168.0.1;
option broadcast-address 192.168.0.255;
default-lease-time 600;
max-lease-time 7200;
}
- Zapisz edytowany plik.
sudo invoke-rc.d dhcp3-server restart
Kopia bezpieczeństwa Ubuntu
Jeśli chcesz stworzyć backup systemu zainteresuj się tymi aplikacjami:
Sbackup
- Backup Using Sbackup - Tworzenie backupu i odzyskiwanie systemu używając Sbackup.
Dar and Kdar
- Backup Using Dar and Kdar - Tworzenie backupu i odzyskiwanie systemu używając Dar i Kdar
Serwer baz danych
Jak zainstalować serwer baz danych MYSQL
- Czytaj #Uwagi ogólne
- Czytaj #Jak dodawać nowe repozytoria
sudo apt-get install mysql-server
- MySQL początkowo pozwala na połączenia z adresu localhosta (127.0.0.1). Potrzebujesz usunąć te ograniczenie jeśli chcesz aby serwer był dostępny dla każdego z internetu. Otwórz plik /etc/mysql/my.cnf
gksudo gedit /etc/mysql/my.cnf
- Znajdź line bind-address = 127.0.0.1 i zakomentuj ją
... #bind-address = 127.0.0.1 ...
- MySQL domyślnie nie ma ustawionego hasła dla użytkownika root. Jest to ogromnym zagrożeniem dla bezpieczeństwa więc będziesz potrzebował ustawić hasło. Aby komputer lokalny miał dostęp do konta root, potrzebujesz ustawić hasło również dla niego. nazwa-komputera-lokalnego jest nazwą komputera na którym pracujesz. Aby dowiedzieć się więcej zobacz tutaj
mysqladmin -u root password your-new-password mysqladmin -h root@nazwa-komputera-lokalnego -u root -p password your-new-password sudo invoke-rc.d mysql restart
##MySQL Database backup using AutoMySQLBackup
- Czytaj #General Notes
- Czytaj #How to add extra repositories
- Czytaj #How to install MYSQL Database Server
- AutoMySQLBackup is a script to take daily, weekly and monthly backups of your MySQL databases using mysqldump.
- AutoMySQLBackup Script Features
- Backup mutiple MySQL databases with one script. (Now able to backup ALL databases on a server easily. no longer need to specify each database seperately)
- Backup all databases to a single backup file or to a seperate directory and file for each database.
- Automatically compress the backup files to save disk space using either gzip or bzip2 compression.
- Can backup remote MySQL servers to a central server.
- Runs automatically using cron or can be run manually.
- Can e-mail the backup log to any specified e-mail address instead of “root”. (Great for hosted websites and databases).
- Can email the compressed database backup files to the specified email address.
- Can specify maximun size backup to email.
- Can be set to run PRE and POST backup commands.
- Choose which day of the week to run weekly backups.
- Download from here
- AutoMySQLBackup Requirements
The AutoMySQLBackup script only requires mysqldump (A standard utility provided with the mysql client) and gzip or bzip2 for compression of the backup files. If you would like to have the log emailed to you then you will need to have permission to execute the “mail” program. If you want the compressed backup files mailed to you then Mutt must be available on the server. Finally you will need a bash shell and the standard system tools and utilities (all these requirements should be the default on most linux system.)
- What AutoMySQLBackup does
Every day AutoMySQLBackup will run (if setup in /etc/cron.daily) and using mysqldump and gzip will dump your specified databases to the /backups/daily directory, it will rotate daily backups weekly so you should never have more than 7 backups in there..
Every Saturday AutoMySQLBackup will again backup the databases you have chosen but they will be placed into /backups/weekly, these will be rotated every 5 weeks so there should never be more than 5 backups in there..
Every 1st of the month AutoMySQLBackup will create a backup of all databases and place them into /backups/monthly. These will never be rotated so it will be up to you to do your own house keeping. I would suggest taking a copy of this offline every month or two so that if you have a hard drive failure you will be able to restore your database
- AutoMySQLBackup Installation
The install is as simple as editing a few variables in the AutoMySQLBackup file. The full setup is documented in the AutoMySQLBackup script file below the variables section.
- Download automysqlbackup.sh and place it into your /etc/cron.daily directory or your home directory.
- Edit (at least) the following lines :
... USERNAME=dbuser PASSWORD=password DBNAMES=”DB1 DB2 DB3″ ...
- Note:The user must have at least select privileges to the databases and make sure to keep the quotes ” ” otherwise it won’t work
- Make the file executable :
sudo chmod u+rwx
- Create the following directory
./backups
- That’s it...Now you can run it using the command line “./automysqlbackup.sh” or if it is in /etc/cron.daily it will run each day when cron
Jak zainstalować MYSQL Administrator
- Czytaj #Uwagi ogólne
- Czytaj #Jak dodawać nowe repozytoria
- Czytaj #Jak zainstalować serwer baz danych MYSQL
sudo apt-get install mysql-admin
- Czytaj # Jak odświeżyć pulpit GNOME
- Aplikacje -> Narzędzia Systemowe -> MySQL Administrator
Jak zainstalować MySQL Query Browser (SQL Client)
- Czytaj #Uwagi ogólne
- Czytaj #Jak dodawać nowe repozytoria
- Czytaj #Jak zainstalować serwer baz danych MYSQL
sudo apt-get install mysql-query-browser
- Czytaj #Jak odświeżyć pulpit GNOME
- Aplikacje -> Narzędzia Systemowe -> MySQL Query Browser
Jak zainstalować Oracle Database XE
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak dodawać nowe repozytoria
- Przeczytaj http://www.oracle.com/technology/tech/linux/install/xe-on-kubuntu.html
- Otwórz plik sources.list:
sudo gedit /etc/apt/sources.list
- Dodaj tą linijkę do pliku sources.list:
deb http://oss.oracle.com/debian unstable main non-free
- Zainstaluj potrzebne pakiety używając apt-get
sudo apt-get update sudo apt-get install oracle-xe
- Dodaj swoją nazwę użytkownika do grupy 'dba' (Zakładając, że twoja nazwa to username).
sudo usermod -G dba -a username
- Uruchom podstawową konfigurację:
sudo /etc/init.d/oracle-xe configure
Możesz definiować tylko te porty, z których nie korzystają inne usługi. Możesz wybierać domyślne porty naciskając enter zamiast wpisywania numeru.
Serwer HTTP Apache
Jak zainstalować serwer WWW Apache?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak dodać kolejne repozytoria?
sudo apt-get install apache2
Jak zainstalować PHP dla serwera Apache?
Jak zainstalować PHP4
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak dodać kolejne repozytoria?
- Przeczytaj #Jak zainstalować serwer WWW Apache?
sudo apt-get install php4 sudo apt-get install libapache2-mod-php4 sudo invoke-rc.d apache2 restart
- Aby sprawdzić, czy PHP4 zostało zainstalowane poprawnie
gksudo gedit /var/www/testphp.php
- Wstaw poniższą linię do nowego pliku
<?php phpinfo(); ?>
- Zapisz tak przygotowany plik
- http://localhost/testphp.php
- Upewnij się potem, że usunąłeś plik testphp.php, który może być zagrożeniem dla bezpieczeństwa
Jak zainstalować PHP5
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak dodać kolejne repozytoria?
- Przeczytaj #Jak zainstalować serwer WWW Apache?
sudo apt-get install php5 sudo apt-get install libapache2-mod-php5 sudo invoke-rc.d apache2 restart
- Aby sprawdzić, czy PHP5 zostało zainstalowane poprawnie
gksudo gedit /var/www/testphp.php
- Wstaw poniższą linię do nowego pliku
<?php phpinfo(); ?>
- Zapisz tak przygotowany plik
- http://localhost/testphp.php
- Upewnij się potem, że usunąłeś plik testphp.php, który może być zagrożeniem dla bezpieczeństwa
Jeżeli nie działa (np. twoja przeglądarka chce zapisać plik testphp.php na dysk), spróbuj tych poloceń:
sudo a2enmod php5 sudo /etc/init.d/apache2 force-reload
Spróbuj otworzyć http://localhost/testphp.php ponownie
- (Opcjonalne) Zainstaluj rekomendowane moduły PHP5
sudo apt-get install php5-xsl php5-gd php-pear
- Uruchom ponownie Apache
sudo invoke-rc.d apache2 restart
Many PHP applications use XSLT technology as well as server-side graphic manipulation (via GD). Also, PEAR provides access to PHP's module repository.
pear help
Jak zainstalować obsługę MYSQL dla serwera Apache HTTP
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak dodawać nowe repozytoria?
- Przeczytaj #Jak zainstalować serwer WWW Apache?
- Przeczytaj #Jak zainstalować PHP dla serwera Apache?
- Przeczytaj #Jak zainstalować serwer baz danych MYSQL
sudo apt-get install libapache2-mod-auth-mysql
- Wybierz php4-mysql lub php5-mysql w zależności od tego jaką wersję PHP zainstalowałeś
sudo apt-get install php<version-number>-mysql sudo apt-get install phpmyadmin
- Aby nakłonić PHP do współpracy z MySQL otwórz plik (gdzie <wersja> to 4 lub 5 w zależności od wersji zainstalowanego PHP)
gksudo gedit /etc/php<version>/apache2/php.ini
- Odkomentuj linię ";extension=mysql.so" aby wyglądała tak
... extension=mysql.so ...
- Zapisz plik i zakończ edycję
sudo invoke-rc.d apache2 restart
Alternatywnie, jeśli powyższe rozwiązanie nie zadziała upewnij się, że serwer bazdanych MySQL jest już zainstalowany:
sudo apt-get install mysql-server
Jak zainstalować Pythona dla Apache 2
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer WWW Apache?
sudo aptitude install python sudo aptitude install libapache2-mod-python sudo gedit /etc/apache2/mods-available/mod_python.conf
- Dopisz następujące linie do pliku
AddType application/x-httpd-python .py AddHandler mod_python .py PythonHandler mod_python.publisher PythonDebug On
- Zapisz tak przygotowany plik
cd /etc/apache2/mods-enabled sudo ln -s ../mods-available/mod_python.conf mod_python.conf sudo invoke-rc.d apache2 restart
Jak zamapować adresy URL dla lokalizacji spoza /var/www/?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer WWW Apache?
gksudo gedit /etc/apache2/conf.d/alias
- Wstaw poniższe linie do nowego pliku
Alias /URL-path /sciezka_dostepu_do_katalogu/
<Directory /sciezka_dostepu_do_katalogu/> Options Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory>
- Zapisz tak przygotowany plik
sudo invoke-rc.d apache2 restart
- Jeżeli otrzymasz błąd "403 - Permission denied", spróbuj:
chmod o+x /sciezka_dostepu_do_katalogu/
- jeżeli dalej nie działa, to spawdź:
chmod o+r,o+x /sciezka_dostepu_do_katalogu/
Jak zmienić domyślny numer portu dla serwera Apache?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer WWW Apache?
- Przyjęto, że nowy numer portu to 78
sudo cp /etc/apache2/ports.conf /etc/apache2/ports.conf_backup gksudo gedit /etc/apache2/ports.conf
- Znajdź poniższą linię
Listen 80
- Zastąp ją następującym wpisem
Listen 78
- Zapisz tak przygotowany plik
sudo invoke-rc.d apache2 restart
Jak przetwarzać kanał RSS za pomocą PHP i serwera Apache?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer WWW Apache?
- Przeczytaj #Jak zainstalować PHP dla serwera Apache?
- Przyjęto że kanałem RSS jest kanał serwisu DistroWatch.com - News
wget -c http://easylinux.info/uploads/magpierss-0.71.1.tar.gz sudo mkdir /var/www/feeds sudo tar zxvf magpierss-0.71.1.tar.gz -C /var/www/feeds/ sudo mv /var/www/feeds/magpierss-0.71.1/* /var/www/feeds/ sudo rm -fr /var/www/feeds/magpierss-0.71.1/ sudo chown -R www-data:root /var/www/feeds/ gksudo gedit /var/www/feeds/index.php
- Wstaw poniższe linie do nowego pliku
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>DistroWatch.com - News</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<style type="text/css">
/*<![CDATA[*/
/*
DEFAULT TAG STYLES
*/
body {
background: #ffffff;
margin-left: 20px;
font-family: bitstream vera sans,sans-serif;
font-size: 9pt;
}
h1 {
font-family: luxi sans,sans-serif;
font-size: 15pt;
}
/*]]>*/
</style>
</head>
<body>
<?php
require_once 'rss_fetch.inc';
error_reporting(E_ERROR);
$url = 'http://distrowatch.com/news/dw.xml';
$rss = fetch_rss($url);
if ($rss) {
echo "<h1>";
echo "<a href=$url>", $rss->channel[title], "</a><br/>";
echo "</h1>";
foreach ($rss->items as $item ) {
$url = $item[link];
$title = $item[title];
$description = $item[description];
echo "<li>";
echo "<b>Temat:</b> <a href=$url><b><u>$title</u></b></a><br/><br/>";
echo "$description<br/><br/>";
echo "</li>";
}
}
else {
echo "<a href=$url>", $url, "</a> - serwer nie odpowiada!<br/>";
}
?>
</body>
</html>
- Zapisz tak przygotowany plik
- http://localhost/feeds/index.php
Serwer FTP
Jak zainstalować serwer FTP?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak dodać kolejne repozytoria?
sudo apt-get install proftpd
Jak określić prawa użytkownika, by mógł się on poruszać jedynie po swoim katalogu domowym?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer FTP?
sudo cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf_backup gksudo gedit /etc/proftpd/proftpd.conf
- Znajdź tę sekcję
... DenyFilter \*.*/ ...
- Dodaj poniższą linię na jej końcu
DefaultRoot ~
- Zapisz tak przygotowany plik
sudo invoke-rc.d proftpd restart
Jak skonfigurować serwer FTP tak, aby użytkonicy anonimowi mieli jedynie prawo do odczytu?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer FTP?
sudo cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf_backup gksudo gedit /etc/proftpd/proftpd.conf
- Dodaj następujący fragment na końcu pliku
<Anonymous ~ftp> User ftp Group nogroup UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp RequireValidShell off MaxClients 10 DisplayLogin welcome.msg DisplayFirstChdir .message <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous>
- Zapisz tak przygotowany plik
sudo invoke-rc.d proftpd restart
Jak skonfigurować serwer FTP tak, aby użytkownicy anonimowi mieli prawo do odczytu i zapisu?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer FTP?
sudo cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf_backup gksudo gedit /etc/proftpd/proftpd.conf
- Dodaj następujący fragment na końcu pliku
<Anonymous ~ftp> User ftp Group nogroup UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp RequireValidShell off MaxClients 10 DisplayLogin welcome.msg DisplayFirstChdir .message </Anonymous>
- Zapisz tak przygotowany plik
sudo invoke-rc.d proftpd restart
Jak zamapować użytkownika anonimowego do katalogu spoza /home/ftp/?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer FTP?
sudo cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf_backup gksudo gedit /etc/proftpd/proftpd.conf
- Dodaj następujący fragment na końcu pliku
<Anonymous /location_of_folder/> User ftp Group nogroup UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp RequireValidShell off MaxClients 10 DisplayLogin welcome.msg DisplayFirstChdir .message <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous>
- Zapisz tak przygotowany plik
sudo invoke-rc.d proftpd restart
Jak zmienić domyślny numer portu dla serwera FTP?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer FTP?
- Przyjęto że nowym numerem portu jest 77
sudo cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf_backup gksudo gedit /etc/proftpd/proftpd.conf
- Znajdź tę linię
Port 21
- Zastąp ją następującym wpisem
Port 77
- Zapisz tak przygotowany plik
sudo invoke-rc.d proftpd restart
Jak połączyć się z serwerem FTP za pomocą komputera z systemem Windows?
- Przeczytaj #Uwagi ogólne
- Przyjęto że komputer zdalny posiada zainstalowaną usługę FTP
- Przeczytaj #Jak zainstalować serwer FTP?
- Pobierz FileZilla: Tutaj
Prywatne repozytorium APT
- Przeczytaj #Uwagi ogólne
Ustaw repozytorium
- Przeczytaj #Jak dodawać nowe repozytoria
- Przeczytaj # Jak zainstalować sieciowy serwer Apache HTTP
- Zainstaluj paczki narzędziowe
sudo apt-get install dpkg-dev
- Stwórz repozytorium w systemie plików
mkdir /somewhere/apt mkdir /somewhere/apt/archives mkdir /somewhere/apt/archives/binary
- Stwórz listę paczek w repozytorium
cd /somewhere/apt/archives dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
- Publikuj repozytorium przez Apache
cd /var/www sudo ln -s /somewhere/apt/archives apt
- Dodaj repo do źródeł w /etc/apt/sources.list
Otwórz /etc/apt/sources.list
sudo gedit /etc/apt/sources.list
Dodaj poniższą linię na końcu pliku:
# My Repos deb http://localhost/apt binary/
- Odśwież bazę danych APT
sudo apt-get update
Odświeżanie repozytorium
Skopiuj lub pobierz pliki ".deb" do /somewhere/apt/archives/binary/ i wtedy odswież listę paczek:
cd /somewhere/apt/archives dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
Serwer mediów strumieniowych
Jak zainstalować serwer mediów strumieniowych GNUMP3d?
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak dodać kolejne repozytoria?
- Przeczytaj #Jak zainstalować serwer WWW Apache?
- Przyjęto, że katalog /var/music/ zawiera pliki multimedialne
sudo apt-get install gnump3d
Jak zmienić domyślny folder zawierający pliki multimedialne dla GNUMP3d
- Przeczytaj #Uwagi ogólne
- Przeczytaj #How to install GNUMP3d for Streaming Media Server service
- Przyjęto, że nowy folder zawierający pliki multimedialne to /home/music/
sudo cp /etc/gnump3d/gnump3d.conf /etc/gnump3d/gnump3d.conf_backup gksudo gedit /etc/gnump3d/gnump3d.conf
- Znajdź poniższą linię
root = /var/music
- Zastąp ją następującym wpisem
root = /home/music
- Znajdź poniższą linię
user = gnump3d
- Zastąp ją następującym wpisem
user = root
- Zapisz tak przygotowany plik
sudo invoke-rc.d gnump3d restart
Jak zmienić domyślny numer portu dla GNUMP3d
- Przeczytaj #Uwagi ogólne
- Przeczytaj #Jak zainstalować serwer WWW Apache?
- Przyjęto, że nowy numer portu to 7878
sudo cp /etc/gnump3d/gnump3d.conf /etc/gnump3d/gnump3d.conf_backup gksudo gedit /etc/gnump3d/gnump3d.conf
- Znajdź poniższą linię
port = 8888
- Zastąp ją następującym wpisem
port = 7878
- Zapisz tak przygotowany plik
sudo invoke-rc.d gnump3d restart
BlogMarks
del.icio.us
digg
Fark
Furl
Newsvine
reddit
Segnalo
Simpy
Slashdot
smarking
Spurl
Wists
