Root Home
вторник, 18 декабря 2012 г.
Бекап на Dropbox в Debian/Ubuntu
ISPmanager'у он не мешает
Регистрируемся в Dropbox
Устанавливаем консольный клиент:
или для «обычной» 32 битной системы:
Запускаем клиент:
Через несколько секунд в консоле появится ссылка для привязки сервера к вашему аккаунту на dropbox.com
Пройдите по ссылке.
Создаем скрипт автозапуска /etc/init.d/dropbox
Делаем исполняемым, разрешаем запуск при загрузке и запускаем:
В ISPmanager в «Настройка резервного копирования» создаем новое задание, вводим все на свои усмотрения.
Директория: /root/Dropbox/backup
Выделяем задание и выбираем «Данные» (справа, вверху) и настраиваем на свое усмотрение.
Проверяем работу:
если выдает ошибку (что маловероятно, но у меня была), то выполните команду
Dropbox теперь будет синхронизировать ваши резервные копии.
Регистрируемся в Dropbox
Устанавливаем консольный клиент:
cd ~/
wget -O dropbox.tar.gz http://www.dropbox.com/download/?plat=lnx.x86_64
tar -zxof dropbox.tar.gz
или для «обычной» 32 битной системы:
cd ~/
wget -O dropbox.tar.gz http://www.dropbox.com/download/?plat=lnx.x86
tar -zxof dropbox.tar.gz
Запускаем клиент:
~/.dropbox-dist/dropboxd
Через несколько секунд в консоле появится ссылка для привязки сервера к вашему аккаунту на dropbox.com
Пройдите по ссылке.
Создаем скрипт автозапуска /etc/init.d/dropbox
wget -P /etc/init.d http://dl.dropbox.com/u/37472737/dropbox
Делаем исполняемым, разрешаем запуск при загрузке и запускаем:
chmod +x /etc/init.d/dropbox
update-rc.d dropbox defaults/etc/init.d/dropbox start
В ISPmanager в «Настройка резервного копирования» создаем новое задание, вводим все на свои усмотрения.
Директория: /root/Dropbox/backup
Выделяем задание и выбираем «Данные» (справа, вверху) и настраиваем на свое усмотрение.
Проверяем работу:
/etc/init.d/dropbox status
если выдает ошибку (что маловероятно, но у меня была), то выполните команду
~/.dropbox-dist/dropboxd &
Dropbox теперь будет синхронизировать ваши резервные копии.
Установка дополнительного жесткого диска в CentOS
Итак. У нас есть установленная система CentOS 5.6 и есть желание поставить еще один диск на котором планируем размещать файлы ftp.
В ОС Linux разделы называются:
/dev/hda — это Primary Master
/dev/hdb — Primary Slave
/dev/hdc — Secondary Master
/dev/hdd — Secondary Slave
Первый раздел на Primary Master называется /dev/hda1, второй — /dev/hda2 и т.д.
Создаем в корне каталог hdd00. Суда мы будем монтировать наш новый диск.
Набираем fdisk -l чтобы узнать что у нас есть.
Поключаемся к диску
Создаем новую партицию
Записываем изменения на диск
Смотрим что получилось
Создаем файловую систему ext3
Примонтируем наш новый диск
Проверим на ошибки
Поверим правильность монтирования
Создадим файлик test в /hdd00/
Посмотрим что есть в директории /hdd00
Отмонтируем диск и посмотрим еще раз.
Файлика нет. Он остался на на отмонтированном диске.
Монтируем его обратно
Добавим автоматическое монтирование жестких дисков при загрузке, отредактируем файл /etc/fstab
Добавим строку:
Получилось:
Ошибки:
если в системе присутствуют только одни sda и на hda нет не единого намека, то вам прямая дорого в bios.
В ОС Linux разделы называются:
/dev/hda — это Primary Master
/dev/hdb — Primary Slave
/dev/hdc — Secondary Master
/dev/hdd — Secondary Slave
Первый раздел на Primary Master называется /dev/hda1, второй — /dev/hda2 и т.д.
Создаем в корне каталог hdd00. Суда мы будем монтировать наш новый диск.
# mkdir /hdd01
Набираем fdisk -l чтобы узнать что у нас есть.
[root@localhost ~]# fdisk -l
Disk /dev/hda: 250.0 GB, 250059350016 bytes255 heads, 63 sectors/track, 30401 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 30401 244091610 8e Linux LVM
Disk /dev/hdc: 500.1 GB, 500107862016 bytes255 heads, 63 sectors/track, 60801 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hdc1 * 1 1 0 0 Empty
Partition 1 does not end on cylinder boundary.
[root@localhost ~]#
Поключаемся к диску
[root@localhost ~]# fdisk /dev/hdc
The number of cylinders for this disk is set to 60801.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): help
h: unknown commandCommand action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Создаем новую партицию
Command (m for help): nCommand action
e extended
p primary partition (1-4)
pPartition number (1-4): 1
First cylinder (1-60801, default 1): Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-60801, default 60801): Using default value 60801
Записываем изменения на диск
Command (m for help): wThe partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
[root@localhost ~]#
Смотрим что получилось
[root@localhost ~]# fdisk -l
Disk /dev/hda: 250.0 GB, 250059350016 bytes255 heads, 63 sectors/track, 30401 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 30401 244091610 8e Linux LVM
Disk /dev/hdc: 500.1 GB, 500107862016 bytes255 heads, 63 sectors/track, 60801 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hdc1 1 60801 488384001 83 Linux
[root@localhost ~]#
Создаем файловую систему ext3
[root@localhost ~]# mkfs.ext3 /dev/hdc1
mke2fs 1.39 (29-May-2011)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
61063168 inodes, 122096000 blocks6104800 blocks (5.00%) reserved for the super userFirst data block=0
Maximum filesystem blocks=4294967296
3727 block groups32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000
Writing inode tables: done Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@localhost ~]#
Примонтируем наш новый диск
[root@localhost /]# mount /dev/hdc1 /hdd00
Проверим на ошибки
[root@localhost /]# fsck /dev/hdc1
fsck 1.39 (29-May-2011)
e2fsck 1.39 (29-May-2011)
/dev/hdc1: clean, 12/61063168 files, 1966938/122096000 blocks[root@localhost /]#
Поверим правильность монтирования
Создадим файлик test в /hdd00/
[root@localhost /]#touch /hdd00/test
Посмотрим что есть в директории /hdd00
[root@localhost /]# ls /hdd00
lost+found test [root@localhost /]#
Отмонтируем диск и посмотрим еще раз.
[root@localhost /]# umount /dev/hdc1
umount: /dev/hdc1: not mounted[1]+ Done umount /dev/hdc1[root@localhost /]# ls /hdd00/
[root@localhost /]#
Файлика нет. Он остался на на отмонтированном диске.
Монтируем его обратно
[root@localhost /]# mount /dev/hdc1 /hdd00
Добавим автоматическое монтирование жестких дисков при загрузке, отредактируем файл /etc/fstab
[root@localhost /]# vi etc/fstab
Добавим строку:
/dev/hdc1 /hdd00 ext3 defaults 0 0
Получилось:
[root@localhost /]# cat /etc/fstab
/dev/VolGroup01/LogVol00 / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/VolGroup01/LogVol01 swap swap defaults 0 0
/dev/hdc1 /hdd00 ext3 defaults 0 0
[root@localhost /]#
Ошибки:
если в системе присутствуют только одни sda и на hda нет не единого намека, то вам прямая дорого в bios.
Установка cs 1.6 сервера на Linux
- Создание сервера CS 1.6 и его настройки
- Создание сервера сounter-strike 1.6 в Linux
- Установка сервера counter strike 1.6 (Linux)
- Установка сервера CS 1.6 на Linux
Установку будем производить на операционной системе CentOS 6.0. Перед установкой сервера counter-strike 1.6 имеем чистую систему, как раз после установки. Единственное, были выполнены команды:
yum update
yum install mc
Создадим папку где будем хранить весь исходный материал для серверов
[root@cs hdd2]# mkdir source
Скачаем hldsupdatetool.bin
[root@cs hdd2]# wget http://www.steampowered.com/download/hldsupdatetool.bin
Даём нужные права на файл:
[root@cs hdd2]# chmod +x hldsupdatetool.bin
Запускаем hldsupdatetool.bin
[root@cs hlds]# ./hldsupdatetool.bin
-bash: ./hldsupdatetool.bin: /lib/ld-linux.so.2: bad ELF interpreter: Нет такого файла или каталога
[root@cs hlds]#
У меня возникла ошибка. Решил её установкой:
[root@cs hlds]# yum install ld-linux.so.2
Пробуем снова
[root@cs hlds]# ./hldsupdatetool.bin
На вопрос отвечаем «YES»
Enter 'yes' to accept this agreement, 'no' to decline: yes
Выдало ошибку: «sh: uncompress: команда не найдена»
Enter 'yes' to accept this agreement, 'no' to decline: yes
sh: uncompress: команда не найдена
tar: Это не похоже на tar-архив
tar: Завершение работы с состоянием неисправности с из-за возникших ошибок
[root@cs hlds]#
Решаем её следующим образом:
[root@cs hlds]#ln -s /usr/bin/gunzip /usr/bin/uncompress
Пробуем снова:
[root@cs hlds]# ./hldsupdatetool.bin
Если увидим ниже написанное, то все ок.
Enter 'yes' to accept this agreement, 'no' to decline: yes
extracting steam.tar.Z...done
Проверяем, появились ли нужные нам файлы:
[root@cs hlds]# ls
hldsupdatetool.bin readme.txt steam
Обновляемся, причем нас попросят это сделать два раза:
[root@cs hlds]# ./steam
Checking bootstrapper version ...
Getting version 45 of Steam HLDS Update Tool
Downloading. . . . . . . . . . . .
Steam Linux Client updated, please retry the command[root@cs hlds]#
[root@cs hlds]# ./steam
Checking bootstrapper version ...
Getting version 45 of Steam HLDS Update Tool
Downloading. . . . . . . . . . . .
Steam Linux Client updated, please retry the commandCAsyncIOManager: 0 threads terminating. 0 reads, 0 writes, 0 deferrals.
CAsyncIOManager: 21 single object sleeps, 0 multi object sleepsCAsyncIOManager: 0 single object alertable sleeps, 0 multi object alertable sleeps[root@cs hlds]#
Создаем файл, через который будем в дальнейшем обновлять сервер:
[root@cs hlds]# touch update.sh
Даем нужные права на файл:
[root@cs hlds]# chmod +x update.sh
Записываем необходимое для обновления в файл:
[root@cs hlds]# echo ./steam -command update -game cstrike -dir . > update.sh
Проверяем:
[root@cs hlds]# cat update.sh
./steam -command update -game cstrike -dir .
[root@cs hlds]#
Скачиваем (обновляем) сервер:
[root@cs hlds]# ./update.sh
Checking bootstrapper version ...
Updating Installation
No installation record found at .
No installation record found at .
No installation record found at .
Checking/Installing 'Counter-Strike Base Content' version 35
0.16% downloading ./cstrike/cl_dlls/client.dll0.16% downloading ./cstrike/classes/ak47.res0.16% downloading ./cstrike/classes/arctic.res0.16% downloading ./cstrike/classes/aug.res0.16% downloading ./cstrike/classes/autoselect_ct.res0.16% downloading ./cstrike/classes/autoselect_t.res0.16% downloading ./cstrike/classes/awp.res0.16% downloading ./cstrike/classes/cancelbutton.res0.16% downloading ./cstrike/classes/default.res0.16% downloading ./cstrike/classes/defuser.res0.16% downloading ./cstrike/classes/deserteagle.res0.16% downloading ./cstrike/classes/elites.res0.16% downloading ./cstrike/classes/equipment.res
Ждем пока скачается
99.06% downloading ./valve/valve.rc99.06% downloading ./valve/valvecomm.lst100.00% downloading ./valve/xeno.wad
Connection Reset, errno 104 "Connection reset by peer"
CAsyncIOManager: 0 threads terminating. 0 reads, 0 writes, 0 deferrals.
CAsyncIOManager: 76 single object sleeps, 0 multi object sleepsCAsyncIOManager: 0 single object alertable sleeps, 0 multi object alertable sleeps[root@cs hlds]#
Создадим скрипт для запуска-проверки сервера:
[root@cs hlds]# chmod +x start.sh
[root@cs hlds]# vi start.sh
Содержимое файла «start.sh»
#!/bin/bash
echo «Starting CS:1.6»
sleep 1
./hlds_run -binary ./hlds_i686 -game cstrike -secure -console -pingboost 1 +exec server.cfg -verify_all +port 27015 +maxplayers 22 +map de_dust2 +ip 0.0.0.0
Запускаем
[root@cs hlds]# ./start.sh
Starting CS:1.6
Auto-restarting the server on crash
Console initialized.
scandir failed:/hdd2/source/hlds/./valve/SAVE
scandir failed:/hdd2/source/hlds/./platform/SAVEProtocol version 48
Exe version 1.1.2.6/Stdio (cstrike)
Exe build: 16:56:12 Mar 8 2010 (4883)
STEAM Auth Server
couldn't exec listip.cfg
couldn't exec banned.cfgServer IP address 0.0.0.0:27015
scandir failed:/hdd2/source/hlds/./valve/SAVE
scandir failed:/hdd2/source/hlds/./platform/SAVE[S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway.
scandir failed:/hdd2/source/hlds/./valve/SAVE
scandir failed:/hdd2/source/hlds/./platform/SAVE[S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway.
couldn't exec listip.cfg
couldn't exec banned.cfg
scandir failed:/hdd2/source/hlds/./valve/SAVE
scandir failed:/hdd2/source/hlds/./platform/SAVE[S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway.
Connection to Steam servers successful.
VAC secure mode is activated.
Птн Сен 2 07:22:45 NOVST 2011: Server Quit
[root@cs hlds]#
Исправляем ошибки:
couldn't exec listip.cfg
Создаем файл в listip.cfg папке cstrike:
[root@cs hlds]# touch cstrike/listip.cfg
Ошибка
couldn't exec banned.cfg
Создаем файл в banned.cfg папке cstrike:
[root@cs hlds]# touch cstrike/banned.cfg
Ошибка
scandir failed:/hdd2/source/hlds/./valve/SAVE
Создаем папки valve/SAVE в корне сервера
[root@cs hlds]# mkdir valve/SAVE
Ошибка
scandir failed:/hdd2/source/hlds/./platform/SAVE
Создаем папки platform/SAVE в корне сервера
[root@cs hlds]# mkdir platform
[root@cs hlds]# mkdir platform/SAVE
Пробуем запустить снова:
[root@cs hlds]# ./start.sh
Starting CS:1.6
Enabling debug mode
./hlds_run: line 134: gdb: команда не найдена
Please install gdb first.
Исправляем ошибку:
[root@cs hlds]# yum install gdb
Проверяем:
[root@cs hlds]$ ./start.sh
Starting CS:1.6
Enabling debug mode
Auto-restarting the server on crash
Console initialized.
Protocol version 48
Exe version 1.1.2.6/Stdio (cstrike)
Exe build: 16:56:12 Mar 8 2010 (4883)
STEAM Auth Server
Server IP address 0.0.0.0:27015
[S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway.
[S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway.
[S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway.
Connection to Steam servers successful.
VAC secure mode is activated.
Пользователь для сервера
Создадим пользователя от которого будем управлять и запускать сервер:
[root@cs hlds]# useradd gsrv
Установим пароль для пользователя «gsrv»:
[root@cs hlds]# passwd gsrv
Смена пароля для пользователя gsrv.
Новый пароль :
Повторите ввод нового пароля :
passwd: все токены проверки подлинности успешно обновлены.
[root@cs hlds]#
Передаем права пользователю gsrv
[root@cs hlds]# chown -R gsrv:gsrv source/
Дальше все действия будем выполнять от пользователя gsrv
[root@cs hdd2]# su gsrv
[gsrv@cs hdd2]$
Настройка IPTABLES
Создадим файл
[root@cs rc.d]# vi /etc/rc.d/rc.fw
со следующим содержимым:
#! /bin/sh
WAN_IF="eth0"
WAN_IP="ИП_АДРЕС_ВАШЕГО_СЕРВЕРА"
LO_IF="lo"
LO_IP="127.0.0.1"
LO_MASK="255.0.0.0"
LO_NET="$LO_IP/$LO_MASK"
SERV_PORT="27015:27025"
SHH_PORT="22"
IPT="/sbin/iptables"
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
$IPT -X
$IPT -P INPUT DROP
$IPT -P OUTPUT ACCEPT
$IPT -A INPUT -i $LO_IF -j ACCEPT
$IPT -A OUTPUT -o $LO_IF -j ACCEPT
$IPT -A INPUT -p ICMP --icmp-type 8 -j ACCEPT
$IPT -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$IPT -A INPUT -p TCP --dport 22 -j ACCEPT
$IPT -A INPUT -p tcp --dport 27015 -j ACCEPT
$IPT -A INPUT -p udp --dport 27015 -j ACCEPT
[root@cs rc.d]# chmod +x rc.fw
[root@cs init.d]# yum install screen
Подписаться на:
Сообщения (Atom)