Разработка сайта для Вашего бизнеса. Веб дизайн. Дизайн логотипа, фирменного стиля, рекламная фотография . Комплексный рекламный креатив.

Ralex. We do the work.
На рынке с 1999го года. Средняя ценовая категория. Ориентация на эффективность решений.
Ознакомтесь с нашим портфолио
Узнайте больше о услугах
Свяжитесь с нами:
E-mail: [email protected]
Tel: (044) 587 - 84 - 78
Custom web design & дизайн и разработка сайта "под ключ"
Креативный, эффективный дизайн. Система управления сайтом (СУС).
Custom flexible разработка систем электронной коммерции
Система e-commerce разрабатывается под индивидуальные потребности. Гибкая функциональность.
Search Engine Optimzation & оптимизация под поисковые системы (SEO)
Постоянная оптимизация и мониторинг сайта в поисковых системах. Достигаем результата быстро и эффективно
Custom logo design & дизайн логотипа и фирменного стиля
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.
профессиональная рекламная фотография
креативно, смело, качественно
Custom logo design & рекламный креатив. дизайн рекламы
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.

Робота в консолі (SSH)

  1. управління контентом
  2. управління сервером
  3. налагодження скриптів
  4. Авторизація методом RSA-ключів
  5. Корисні посилання

Наша взаимовыгодная связь https://banwar.org/

SSH (Secure Shell) - захищений мережевий протокол, який дозволяє працювати безпосередньо на майданчику віртуального хостингу або виділеного сервера VPS / VDS.

Використовуючи консоль SSH, можна проводити операції з файлами (копіювання, переміщення, видалення, архівацію і т.д.), бачити запущені процеси, підключатися до баз даних, виробляти налагодження скриптів і багато іншого.

Всі ці операції, реалізуються за допомогою стандартних утиліт операційної системи FreeBSD (або Linux), які викликаються в консолі SSH.

Працюючи в Unix-shell, Ви керуєте сервером через віддалений термінал: на своєму комп'ютері Ви бачите інтерфейс командного рядка, для якої всі надіслані команди виконуються на сервері, а результат виводиться Вам.

Всі тарифні плани (крім ТП "Вільний") на хостингу "Зенон НСП" підтримують протокол SSH.

У середовищі Windows для роботи з SSH-протоколу ми рекомендуємо використовувати утиліту PuTTY .

Дані для авторизації по SSH Ви можете знайти в розділі " логіни-паролі "В Панелі управління.

управління контентом

Розглянемо для початку список команд, які можуть Вам знадобитися, а потім опишемо практичні приклади.

  • ls - ця команда відображає вміст директорії
  • rm - видаляє файли
  • mv - переміщує файли
  • cp - копіює файли
  • mkdir - створює директорію
  • joe - редактор текстових файлів
  • tar, gzip, gunzip - ці команди найчастіше застосовуються спільно і дозволяють працювати з архівами: створювати їх, витягувати файли з архівів
  • zip, unzip - команди для роботи з zip-архівами
Детальніше про кожній команді можна дізнатися, виконавши команду "man імя_команди" в Unix-shell. Ви дізнаєтеся, для чого служить конкретна команда, ключі її запуску, приклади виконання. Вам знадобиться мінімальне знання англійської мови.

Тепер розглянемо кілька практичних прикладів.

Припустимо, Вам потрібно скопіювати файли з розширеннями. html і. jpg в папку "images", яка повинна бути в свою чергу в папці "www", а Ви, закачуючи файли на сервер, помилково записали всі файли кореневу папку на майданчику, тобто на рівень вище, ніж "www". Вирішується дана ситуація досить просто:

cd www mkdir images mv ~ / *. html ~ / www / mv ~ / *. jpg ~ / www / images /

Ви "заходите" в директорію "www", в ній створюєте директорію "images", потім переносите всі файли з розширенням. html (по масці "* .html") в директорію "www" (шлях "~ /" позначає шлях до Вашої домашньої директорії), а всі файли. jpg - в "www / images".

У наступному прикладі Вам, припустимо, потрібно видалити резервні копії файлів, які залишилися після застосування редактора "joe" (імена таких файлів закінчуються символом "~"):

rm * ~

Будьте гранично обережні, застосовуючи команду "rm" з ключами "-r" і "-f". Перший ключ "говорить" про те, що задані файли потрібно видаляти рекурсивно по всьому піддиректоріях. Другий - відключає запит будь-яких підтверджень.

Працюючи з архівами, можна значно мінімізувати трафік, а, отже, і час завантаження Ваших файлів на сервер.

Припустимо, що у Вас є готовий проект, який займає досить значний обсяг. Замість того, щоб закачувати всі файли на сервер окремо, можна упакувати їх на локальній машині в один архів, зберігши всю структуру директорій, записати на майданчик хостингу один файл, а потім просто розпакувати його:

якщо це zip-архів:

unzip імя_архіва

якщо це tar.gz-архів:

tar -zxf імя_архіва

Це буде значно швидше.

Точно так само і в зворотний бік. Більш того, розширивши завдання, уявімо, що потрібно перенести весь контент з одного сервера на інший:

1. спакуємо весь сайт в один архів:

tar -czf archive.tar.gz "www"

або, якщо потрібен zip-архів:

zip -r archive.zip "www"

2. за допомогою команди "ftp адрес_другого_сервера", авторизувавшись і виконавши команду "put archive.tar.gz", Ви закачаєте архів на інший сервер і, зайшовши в Unix-shell вже нового сервера, розпакуєте архів там:

tar -zxf archive.tar.gz

або, якщо zip-архів:

unzip archive.zip

Якщо Ви хочете підвищити рівень безпеки, не передаючи паролі ftp у відкритому вигляді, можна скористатися програмою "scp". Вона дозволяє копіювати файли з одного комп'ютера на інший, використовуючи для шифрування даних протокол SSH. Наприклад, команда:

scp login @home. domain_name: ~ / www / index.html index.html

спочатку запросить пароль. Якщо введений пароль співпаде з паролем логіна доступу (login) на сервері "home.domain_name", то Ви скопіювали до себе в поточну директорію файл 'index.html' з директорії "www" домашнього каталогу користувача "login".

Більш докладно про командах "ftp" і "scp" можна дізнатися, виконавши

man ftp man scp

управління сервером

Найчастіше єдиним інструментом для виконання тих чи інших дій з сервером є доступ в Unix-shell. Серйозно займаючись веб-програмуванням або дизайном, рано чи пізно Ваш рівень стає настільки високим, що виникає необхідність опановувати і деякими навичками адміністрування unix-систем. Розглянемо ті команди, які можуть Вам знадобитися:

  • ps - ця команда відображає список поточних процесів
  • kill - дозволяє відправити процесу певний сигнал, в тому числі і припинити виконання процесу
  • du - відображає інформацію про споживання дискових ресурсів

Звичайно ж, і для цієї групи команд вірно те, що детальну інформацію про них можна отримати, виконавши "man імя_команди".

Команда "du -sh ~ /" "розповість" про те, який обсяг займає Ваш сайт. Якщо будь-які процеси "зависли" і вимагають перезапуску, то можна за допомогою команди "ps x" отримати числове значення PID необхідного процесу, після чого виконати команду "kill значеніе_PID_процесса".

Далі, розглядаючи управління своїм веб-сервером, не можна не згадати про адміністрування баз даних. Одними з найпоширеніших серверів баз даних в рамках хостингу на платформі Unix є MySQL і PostgreSQL. Скажімо про те, що основним інструментом для управління ними є утиліти адміністрування, які запускаються з Unix-shell. Саме для MySQL - це програми mysql, mysqladmin і mysqldump.

При використанні загального MySQL доступ надається тільки до однієї бази даних, а не до всього сервера. У такому випадку для Вас буде актуальним використання mysqldump і mysql. Перша утиліта служить для створення дампа бази або окремих таблиць у вигляді текстового файлу. Детальніше про це можна прочитати в нашій статті " Імпорт / експорт даних з MySQL ". Mysql - це працюючий в текстовому режимі клієнт для сервера баз даних, що дозволяє виконувати різні SQL-запити.

Для початку розглянемо ключі, які можуть Вам знадобитися при запуску MySQL:

  • "-H адрес_хоста" (або "--host = адрес_хоста") - задає адресу хоста для підключення
  • "-U ім'я_користувача" (або "--user = имя_пользователя") - ім'я користувача, який підключається до сервера
  • "-P пароль" (або "--password = пароль") - пароль, з яким Ви підключаєтеся до сервера. Якщо Ви не введете пароль, а тільки задасте ключ "-p", то пароль буде запитано після виконання команди.
  • "-P порт" (або "--port = порт") - порт, який використовується для підключення

Крім того, після всіх ключів можна вказати назву бази даних, з якою Ви збираєтеся працювати. наприклад:

mysql XX --user = base_login --host = baze. domain_name --port = 64000 -p base_name

Де XX - версія використовуваної бази даних, base_login - ім'я користувача бази даних (на загальному MySQL збігається з ім'ям бази даних), domain_name - Ваш домен, base_name - ім'я бази даних.

Звичайно ж, отримати доступ до потрібної базі можна і в інтерактивному режимі, виконавши команду "use названіе_бази;". Запит "show tables;" покаже Вам список таблиць в даній базі, "desc названіе_табліци;" відобразить структуру заданої таблиці. Детально про інших командах, таких як створення таблиць (create table ...), вибірка за заданими умовами (select ...), зміна даних (update ...), видалення (delete ...), Можна прочитати в документації по MySQL .

Якщо Ви використовуєте персональний MySQL-сервер, Вам знадобиться утиліта mysqladmin. За допомогою неї можна створювати і видаляти бази даних, оновлювати дані про права доступу користувачів, якщо Ви вносили зміни, відображати список виконуваних сервером процесів. Крім того, за допомогою клієнта mysql можна буде виконувати необхідні дії з таблицями в базі mysql ( "use mysql;", "show tables"). Наприклад, вносити зміни в таблицю користувачів ( "user").

Як завжди, Вам допоможуть команди:

man mysql man mysqldump man mysqladmin

налагодження скриптів

Як завжди, почнемо зі списку корисних команд:

  • less - ця команда дозволяє переглядати вміст файлу
  • grep - шукає задану послідовність у файлі
  • tail - відображає вміст кінця файлу
  • chmod - зміна атрибутів файлу

Звичайно ж, і для цієї групи команд вірно те, що детальну інформацію про них можна отримати, виконавши "man імя_команди".

У процесі налагодження роботи скриптів, додатків, сервісів дуже важливим фактором є можливість аналізу файлів протоколів. Найчастіше саме в протоколах помилок містяться відповіді на питання "чому скрипт не працює / не працює належним чином?" Найпростіше дію - звичайний перегляд такого файлу:

less file.log

Стрілки "вгору" і "вниз" дозволять "гортати" файл, клавіша "H" відобразить екран з текстом підказки, "Q" - закінчить роботу з файлом.

Однак, можна зіткнутися з такою проблемою. Файли протоколів часто оновлюються дуже активно, і вся нова інформація дописується в кінець файлу. Таким чином, щоб отримати дані, що цікавлять, необхідно завантажити файл протоколу до себе на комп'ютер або "перегорнути" його до самого кінця. Що з точки зору передачі деякого об'єму даних рівнозначно. Ось, саме в таких випадках допоможе команда:

tail імя_файла_протокола

Ви побачите останні 10 рядків файлу (за замовчуванням). Це значення можна змінити за допомогою ключа "-n", де n - число рядків, яке Ви хочете побачити. Наприклад, "tail -30 file.txt" - показати 30 останніх рядків файлу "file.txt".

Ще одним дуже зручним засобом діагностики помилок є запуск команди "tail" з ключем "-f":

tail -f імя_файла_протокола

У цьому випадку виконання даної команди не припиняється при досягненні кінця файлу, а триває і відображає знову додається інформацію. При цьому можна запустити ssh-клієнт і, наприклад, виконувати паралельно інші завдання.

Якщо ж файл протоколів досить великий і досить активно оновлюється, то, можливо, допоможе пошук по даному файлу по заданих параметрах. Найпростіший варіант:

grep "ключевая_фраза" імя_файла_протокола

Наприклад, потрібно знайти в файлі "file.txt" все рядки, в яких міститься слово "web". Для цього використовуємо команду:

grep "web" file.txt

А якщо Ви хочете, щоб команда "grep" шукала без урахування регістру і знаходила в тому числі і "Web" або "WEB", використовуйте ключ '-i':

grep -i "web" file.txt

Ще корисні ключі команди grep:

  • "grep -r" - пошук і в підкаталогах поточного каталогу
  • "grep -v" - показати ті рядки, які не задовольняють умовам пошуку

Детальніше про застосування "grep":

man grep

Не можна не згадати про такі корисні можливості Unix, як перенаправлення стандартного введення і виведення, а також об'єднання команд за допомогою каналів. Покажемо на прикладах, що це таке.

команда

ls -la

виводить на екран вміст поточної директорії. Припустимо, що ці дані Вам потрібно якимось чином зберегти.

команда

ls -la> file.txt

зробить те ж саме, що і попередня, але результат буде збережений у файлі "file.txt". Якщо такого файлу не було, він буде створений заново. В іншому випадку він буде перезаписано.

При використанні команди

ls -la >> file.txt

результат буде збережений у файлі "file.txt" з тією лише відмінністю, що якщо файл з таким ім'ям вже існував, нові дані будуть дописані в кінець наявного файлу.

Дані приклади ілюструють перенаправлення стандартного виводу. Перенаправлення стандартного введення - відповідно, зворотну дію: якщо будь-яка команда в процесі виконання вимагає деякі дані в інтерактивному режимі, то їх можна вводити не вручну, а отримати з файлу. Наприклад, команда

sort <file1.txt

відсортує за алфавітом рядки з текстового файлу "file1.txt" і виведе результат на екран. А, наприклад

sort <file1.txt> file2.txt

зробить те ж саме, але збереже отримані дані в "file2.txt". Даний приклад показує, що перенаправлення стандартного введення і виведення можна застосовувати одночасно. Крім того, висновок однієї команди може бути введенням для іншої. Це об'єднання команд каналами. наприклад:

grep "web" file.txt | grep "site"

знайде всі рядки в файлі "file.txt", в яких одночасно зустрічаються слова "web" і "site", а

grep "web" file.txt | grep "site" | wc -l

вважатиме кількість таких рядків.

І на закінчення потрібно сказати про те, що найпростішим, але досить ефективним засобом діагностики є простою запуск скрипта в командному рядку. Якщо Ви просто десь опечатали при написанні скрипта або помилилися в синтаксисі, то Ви відразу ж зрозумієте це за повідомленням про помилку.

Авторизація методом RSA-ключів

Спочатку потрібно виставити правильні права на домашню директорію на майданчику. Тут важливо прибрати sgid -біт на домашній директорії, що ставлять у нас по-замовчуванню.

chmod 750.

Після чого в домашній директорії має бути наступне:

ls -la drwxr-xr-x 9 your_login sadmin 512 7 Березня 8:01. drwxrws - x 716 root admin 44032 18 Червня 3:08 .. ... ... ...

Далі, якщо Ви генеруєте ключі командою (ми описуємо так, як якщо б генерація була б на нашому сервері, але Ви можете це робити, або в іншого провайдера, або вдома, так що можливі зміни):

ssh-keygen -t rsa

Залишайте запропоновані імена файлів.

Далі, оскільки Ви будете підключатися до нашого хосту, Ви кладете файл id_rsa.pub в директорії ~ / .ssh і перейменовувати в authorized_keys.

На директорію .ssh повинні бути права 700. На фото - права встановлені при генерації.

Далі, підключаєтеся командою:

ssh login @ host_name

Якщо Ви при генерації використовуєте команду:

ssh-keygen -t rsa1

то при підключенні необхідно використовувати команду:

ssh -1 login @ host_name

У нас підтримується і ssh1 і ssh2.

Корисні посилання


Найчастіше саме в протоколах помилок містяться відповіді на питання "чому скрипт не працює / не працює належним чином?
Категории
  • Биология
  • Математика
  • Краеведению
  • Лечебная
  • Наука
  • Физике
  • Природоведение
  • Информатика
  • Новости

  • Новости
    https://banwar.org/
    Наша взаимовыгодная связь https://banwar.org/. Запустив новый сайт, "Пари Матч" обещает своим клиентам незабываемый опыт и возможность выиграть крупные суммы.


    Наши клиенты
    Клиенты

    Быстрая связь

    Тел.: (044) 587-84-78
    E-mail: [email protected]

    Имя:
    E-mail:
    Телефон:
    Вопрос\Комментарий: