Linux Server RU - SA-MP Wiki
From SA-MP Wiki
Linux Server
Першочергові вимоги
Вам потрібний сервер Linux з доступом до shell, доступ по ftp, libstdc++5 або libstdc++6, і SSH-клієнт, такий як Putty для з'єднання з сервером.
Підняття сервера
Завантаження файлів
Насамперед зайдіть на http:/sa-mp.com/download.php і завантажте сервер Linux, libstdc++5 або libstdc++6, залежно від того, що запущено на вашому сервері. Я рекомендую завантажити libstdc++6 щоб перевірити для початку, чи працює. Потім помістіть через FTP файли на сервер, використовуючи улюблений FTP-клієнт.
Налаштування сервера
Запуск сервера
Після того, як ви налаштували server.cfg належним чином, просто запустіть сервер одним з таких способів. Кожен спосіб має опис під картинкою. Я покажу три найбільш популярні способи запуску сервера. Невеликий SSH-скрипт для підтримки працездатності сервера може бути знайдений внизу цієї сторінки.
ПРИМІТКА:Переконайтеся, що ви встановили дозволи samp022svrівкажіть, якщо ви бажаєте запустити інтернет-сервер! Якщо ви не зробите цього, отримайте помилку заборони дозволів.

У першому способі використовується команда nohup command підтримки працездатності сервера.nohup- це команда Linux, яка запускає програму, яка ігноруватиме сигналиSIGHUP- сигнали відключення. Це означає, що сервер продовжуватиме працювати після того, як ви закриєте раніше відкрите вікно SSH. Амперсанд&в кінці команди означає, що сервер повинен працювати у фоновому режимі, таким чином ви можете продовжувати виконання команд навіть після запуску сервера SA-MP.
Детальний лог може бути знайденийу файліnohup.out, який буде створено у папці, де ви виконали команду (в даному випадку "/home/gta"). Nohup встановлений на більшості Linux-серверів.
Другий метод дозволяє процесу сервера SA-MP йти у фоновому режимі. Перевага полягає в тому, що ви можете продовжувати роботу в shell-середовищі, таким чином вам не потрібно відкривати інше вікно. На деяких Linux-серверах процес буде виконуватися доти, доки вікно SSH не закриється, але не у всіх випадках.
Тут немає лог-файлів та інших. Shell поверне PID процесу, що стартував, 9251 на прикладі вище. Цей метод підтримується всіма серверами Linux.
Цей метод найоригінальніший і найлегший для розуміння. Сервер буде працювати на увазі, і всі помилки будуть виводитися прямо на екран (наприклад, segmentation faults). Але майте на увазі, що нормальний висновок у Windows-сервері не буде видно на Linux-сервері.
Сервер вимкнеться після закриття вікна. Цей метод найкраще підходить для написання скриптів та/або з метою налагодження, т.к. він цілком зрозумілий.
ПРИМІТКА:Якщо ви завантажили версію libstdc++6 із сайту SA:MP та отримали помилку про те, що libstdc++6 не може бути знайдено, просто скачайте версію libstdc++5 з веб-сайту SA:MP та використовуйте її. Описаний сервер видає "libstdc++6 cannot be found", і на скріншоті він запущений з використанням libstdc++5.
Підтримка працездатності сервера
З невеликою кількістю опцій проти виходу сервера з ладу (anti-crash options) є велика можливість отримання помилок "Segmentation Fault" і будь-яких інших помилок, згенерованих вашим режимом гри. Це призведе до завершення роботи сервера і Вам доведеться самим його знову запустити. Все, що вам потрібно для використання нижче описаноїпрограми, це середовище Linux та можливість використання cron'a. Ця програма перевірить, чи запущено процес samp01b, і якщо це не так, запустить його знову. Вам потрібно встановити наступний crontab:
Переконайтеся, що у вас правильно виставлені усі шляхи, інакше скрипт не працюватиме. На даний момент скрипт не може обробляти кілька серверів SA-MP на одній машині, проте чудово працює, коли тільки один запущений.Потрібно за допомогою chmod встановити права/дозволи на файл checksamp.sh в 0755 (+x)!
Ви також можете перезапустити сервер за допомогою цієї пари shell-скриптів (спасибі Noosferatu)
Скрипт номер 1startgtaserver.sh:
Він працює безпосередньо з виконуваним кодом сервера
Другий скрипт, названийgtaserver.sh:
цей запускається з /usr/local/bin
Тільки змініть шляхи в обох скриптах на ваші, і після цього ви можете запустити ваш сервер, ввівши
зупинити сервер, ввівши
і, нарешті, перезапустити його, ввівши
Помилка під час запуску "No such file or directory"
Проблема виникає при запуску samp`а на платформі x64. Для того щоб запустити сервер необхідно встановити у вашу систему необхідні бібліотеки.