
Данная статья должна помочь вам организовать файл-сервер уровня домашнего или малого офиса на базе персонального компьютера и операционной системы Ubuntu. Ресурсы данного сервера будут доступны компьютерам вашей локальной сети под управлением операционных систем Windows и Linux.
Данный файл-сервер построен на базе ОС Ubuntu Server 7.10 (http://releases.ubuntu.com/7.10/ubuntu-7.10-server-i386.iso) с установленной службой Samba и может работать с жесткими дисками, форматированными под файловую систему NTFS и подключенными к большинству новых контроллеров IDE, SATA и RAID IDE/SATA. Файловое хранилище может быть организованно как на отдельном разделе основного жесткого диска (на котором будет установлена Ubuntu), так и на отдельном диске. Последний вариант является более предпочтительным с точки зрения надежности и производительности системы. Для организации разделов на ваших жестких дисках вы можете воспользоваться liveCD-дистрибутивом Gparted live CD (http://sourceforge.net/project/showfiles.php?group_id=115843&package_id=173828). Данный пакет так же построен на базе ОС Linux и имеет статус freeware.
Итак, предположим, что наш сервер будет называться server1.example.com и иметь IP-адрес 192.168.0.100 и адрес шлюза доступа к Интернет 192.168.0.1. Эти настройки вы можете изменять на ваше усмотрение.
Итак, приступим:
1) Загрузитесь с вашего Ubuntu install CD и выберите пункт “Install to the hard disk”
2) Начнется установка ОС Ubuntu. Выберите язык интерфейса и место вашего нахождения:



3) Выберите предпочтительную раскладку клавиатуры:

Вам будет предложено нажать несколько клавиш чтобы убедиться в правильности выбора вами раскладки клавиатуры:


4) Инсталятор проверит ваш инсталяционный диск, опознает аппаратное обеспечение вашего ПК и сконфигурирует сетевые службы с настройками по-умолчанию:




5) Введите имя вашего сервера (в нашем случае это server1.example.com, соответственно вводим server1):

6) Теперь необходимо разобраться с партициями на основном жестком диске. В случае, если жесткий диск с данными будет физически отдельным диском, вам необходимо будет создать одну болшую партицию с точкой монтирования / небольшую swap-партицию (партицию файла подкачки) с точко монтирования /swap. В случае, если жесткий диск в вашей системе один, то вам так же придется создать NTFS-партицию под пользовательские данные:

Выберите жесткий диск, который вам надо переразметить:

После подтверждения вносимых вами изменений выбраный вами жесткий диск будет переразмечен и отформатирован. Все данные на нем будут уничтожены!!!

7) Вам предложат сконфигурировать системные часы. Настройки по-умолчанию (UTC) вполне работоспособны - выбирайте их:

8) Создайте пользователя (например, создатим пользователя Administrator с логином administrator). Не используйте в качестве имени пользователя слово admin - оно зарезервировано системой:




9) После создания пользователя начнется установка базовых пакетов системы:

Нам необходимо, чтобы была установлена служба Samba File server, но её установку лучше будет совершить позже вручную. Соответственно на данном этапе установки мы выбираем лишь пункт OpenSSH server для того чтобы иметь возможноть сразу после окончания установки использовать для управленя компьютером любой SSH-клиент (например, PuTTY - http://www.putty.spb.ru/download.html:

Возможно, вам так же понадобятся службы Print server и Mail server, но их установка и конфигурация выходят за рамки данной статьи. После нажатия Continue установка продолжится:

10) После окончания установки дополнительных пакетов, система предложит извлечь Installation CD из привода и перезагрузиться:

Первый этап установки нашего файл-сервера завершен.
11) После того, как сервер стартует, вы сможете зайти на него любым SSH-клиентом. Теперь активизируем root-аккаунт:
sudo passwd root
После указания пароля для root (обязательно его запомните, а лучше запишите!!!) вы получите доступ к коммандной строке вашего сервера с правами суперпользователя, введя команду:
su
12) Сконфигурируем сетевые настройки для нашей конкретной сети. Ubuntu по-умолчанию устанавливает получение IP-адреса системы от сервера DHCP? в нашем же случае мы хотим указать статический IP-адрес. Соответственно нам необходимо отредактировать файл конфигурации сети /etc/network/interfaces. Это можно сделать, например, тектовым редактором vi:
vi /etc/network/interfaces
Для того, чтобы настройки соответствовали требованиям нашего примера этот файл должен иметь следующий вид:
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1
Затем перезапустим сетевые службы:
/etc/init.d/networking restart
Так же нам необходимо подправить файл /etc/hosts. Для нашего примера он должен выглядеть следующим образом:
127.0.0.1 localhost.localdomain localhost 192.168.0.100 server1.example.com server1 # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts#
Теперь запустим его:
echo server1.example.com > /etc/hostname /etc/init.d/hostname.sh start
После этого исполните команды:
hostname hostname -f
Оба должны вывести имя нашего хоста - server1.example.com
13) Отредактируйте файл, в котором указанны доступные репозитарии с пакетами программ для Ubuntu /etc/apt/sources.list.
vi /etc/apt/sources.list
Он должен выглядеть следующим образом:
# # deb cdrom:[Ubuntu-Server 7.10 _Gutsy Gibbon_ - Release i386 (20071016)]/ gutsy main restricted #deb cdrom:[Ubuntu-Server 7.10 _Gutsy Gibbon_ - Release i386 (20071016)]/ gutsy main restricted # See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to # newer versions of the distribution. deb http://de.archive.ubuntu.com/ubuntu/ gutsy main restricted deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy main restricted ## Major bug fix updates produced after the final release of the ## distribution. deb http://de.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu ## team, and may not be under a free licence. Please satisfy yourself as to ## your rights to use the software. Also, please note that software in ## universe WILL NOT receive any review or updates from the Ubuntu security ## team. deb http://de.archive.ubuntu.com/ubuntu/ gutsy universe deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy universe deb http://de.archive.ubuntu.com/ubuntu/ gutsy-updates universe deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-updates universe ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu ## team, and may not be under a free licence. Please satisfy yourself as to ## your rights to use the software. Also, please note that software in ## multiverse WILL NOT receive any review or updates from the Ubuntu ## security team. deb http://de.archive.ubuntu.com/ubuntu/ gutsy multiverse deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy multiverse deb http://de.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse ## Uncomment the following two lines to add software from the 'backports' ## repository. ## N.B. software from this repository may not have been tested as ## extensively as that contained in the main release, although it includes ## newer versions of some applications which may provide useful features. ## Also, please note that software in backports WILL NOT receive any review ## or updates from the Ubuntu security team. # deb http://de.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse # deb-src http://de.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse ## Uncomment the following two lines to add software from Canonical's ## 'partner' repository. This software is not part of Ubuntu, but is ## offered by Canonical and the respective vendors as a service to Ubuntu ## users. # deb http://archive.canonical.com/ubuntu gutsy partner # deb-src http://archive.canonical.com/ubuntu gutsy partner deb http://security.ubuntu.com/ubuntu gutsy-security main restricted deb-src http://security.ubuntu.com/ubuntu gutsy-security main restricted deb http://security.ubuntu.com/ubuntu gutsy-security universe deb-src http://security.ubuntu.com/ubuntu gutsy-security universe deb http://security.ubuntu.com/ubuntu gutsy-security multiverse deb-src http://security.ubuntu.com/ubuntu gutsy-security multiverse
Запустите процедуру получения списка доступных обновлений пакетов. В данный момент подключение вашего сервера к интернету должно быть активно:
apt-get update
Для запуска обновления установленных пакетов выполните:
apt-get upgrade
14) Установите пакеты samba, smbclient, smbfs, beep, ntp, ntpdate:
apt-get install samba smbclient smbfs beep ntp ntpdate
Samba, SMBlient и SMBFS нужны для организации самого файл-сервера. NTP и NTPdate позволяют синхронизировать по сети время. Beep позволяет сигнализировать встроенным динамиком ПК запуск и остановку сервера.
15) При необходимости установите второй жесткий диск. Включите компьютер. Для того, чтобы узнать список достуных жестких дисков, партиций на них и имен, которые им дала Ubuntu введите команду:
fdisk -l
Вы получите список, аналогичный следующему:
Disk /dev/hdb: 40.0 GB, 40020664320 bytes 255 heads, 63 sectors/track, 4865 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hdb1 * 1 4678 37576003+ 83 NTFS
Имена жестких дисков в ОС Linux начинаются с hd. В примере Linux показывает нам на наличие жесткого диска - hdb (40 гб) и наличие на нем партиции hdb1 (NTFS 37 Гб доступно пользователю). Теперь мы создадим точку монтирования /store и дадим к ней полный доступ для всех пользователей:
mkdir /media/store chmod 777 /media/store
Примонтируем жесткий диск hda:
mount /dev/hda /media/store
Для того, чтобы система автоматически монтировала этот жестки диск при запуске, нам необходимо отредактировать файл /etc/fstab:
vi /etc/fstab
В файле /etc/fstab указанны параметры всех устройств хранения данных, монтируемые при запуске системы. В нашем примере он изначально должен выглядеть следующим образом:
# /etc/fstab: static file system information. # #proc /proc proc defaults 0 0 /dev/hda1 / ext3 defaults,errors=remount-ro 0 1 /dev/hda5 none swap sw 0 0 /dev/hdb1 /media/hdb1 ext3 defaults 0 0 /dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
Обратите внимание, что диск hda разбит на 2 партиции (hda1 - основная, на которой стоит система и hda5 - swap-партиция) и каждая из них монтируется отдельно. Соответственно, если жесткий диск hdb разбит на несколько партиций, то их тоже придется монтировать отдельно. Все, что вам потребуется сделать для автомонтирования второго жетского диска, так это добавить в файл /etc/fstab следующую строчку:
/dev/hdb1 /media/store ntfs defaults 0 0
Перезагрузите файл /etc/fstab:
mount -a
Жесткий диск станет доступным без перезагрузки.
16) Конфигурация службы Samba. Отредактируйте файл /etc/samba/smb.conf под ваши требования:
vi /etc/samba/smb.conf
Для изменения имени рабочей группы вашей сети, отредактируйте строку:
workgroup = MSHOME
Добавьте следующие строки в конец файла /etc/samba/smb.conf, чтобы дать доступ сетевых пользователей к жесткому диску:
[hdb public hard disk] comment = Public Folder path = media/store public = yes writable = yes create mask = 0777 directory mask = 0777 force user = nobody force group = no group
Перезапустите службу Samba:
/etc/init.d/samba force-reload
Задайте пароль доступа к данному сетевому хранилищу:
smbpasswd -a family
В появившемся запросе введите пароль на ваш выбор. Теперь вы можете получить доступ к вашему файл-серверу, используя логин family (или любой, какой вы укажете при настройке) и указанный вами пароль.
17) Настройте сигнализацию активности вашего сервера. Откройте в редакторе файл /et/rc.load:
vi /et/rc.load
Добавьте в него следующую строчку:
beep -l 900 -r 3 -f 500
Теперь три сигнала из встроенного динамика вашего сервера будут означать окончание загрузки вашего сервера и его готовность к функционированию.
По материалам http://www.howtoforge.com/ubuntu-home-fileserver
