Как создать Linux сервер своими руками и что для этого нужно

Приведу пример создания dummy интерфейсов в Linux.
На тесте использую Ubuntu Server 16.04.

Полезная инфа в приглашении

Приглашение командного интерпретатора bash формируется на основе содержимого переменной окружения PS1. Если верить man-страницам, эта переменная может содержать любые строки, а также довольно большой набор специальных управляющих символов, которые при выводе приглашения будут превращены в актуальные данные. Так, например, в дистрибутиве Ubuntu содержимое переменной PS1 выглядит так:

‘${debian_chroot:+($debian_chroot)}[email protected]:w$ ‘

А при выводе на экран превращается во всем знакомую строку вида:

юзер@имя_хоста:текущий_каталог$

Нетрудно догадаться, что юзер здесь появляется за счет управляющего символа ‘u’, имя хоста — за счет ‘h’, а текущий каталог — это ‘w’. Неуклюжая запись, содержащая в себе слова debian_chroot, это всего лишь индикатор того, находится ли пользователь в chroot-окружении. Такое лаконичное приглашение, конечно, удобно, но содержит далеко не всю информацию, которую bash способен отобразить. В его арсенале есть как минимум два десятка различных управляющих последовательностей, о которых многие пользователи даже не подозревают. Вот список наиболее интересных из них:

  • d — текущая дата
  • j — количество фоновых заданий
  • A — текущее время
  • ! — номер команды в истории

Кроме того, в PS1 вполне можно использовать текущие переменные окружения, а если учитывать, что перед каждым выводом на экран PS1 перечитывается, то туда можно засунуть такие вкусности, как, например, статус последней выполненной команды (переменная $?), чтобы знать, было ли ее исполнение успешным.

Управляющий символ ‘n’ также допустим в PS1, поэтому приглашение к вводу можно сделать многострочным, а заодно визуально отделить его от остального текста (с помощью начальной пустой строки):

PS1=’[email protected]:$?$ ‘

Но и это еще не все. Пример с индикатором chrootокружения показывает, что в приглашении можно использовать вывод любых сторонних приложений, а это открывает просто безграничные возможности по его кастомизации. Например, следующим образом в приглашение можно добавить данные о текущей погоде, количестве непрочитанных писем в gmail и уровне сигнала Wi-Fi:

$ vi ~/.bashrc

Google-погода

weather() {

Где мы?

local city=»Moscow» curl -s » api?weather=$city» | sed ‘s|.<temp_c data=» ([^»])»/>.*|1|’ }

Google-почта

unread_mail(){

Имя пользователя и пароль (без @)

local login=»логин» local password=»пароль» wget —secure-protocol=TLSv1 —timeout=3 -t 1 -q -O — https://${login}:${password}@ —nocheckcertificate | grep fullcount | sed «s/<fullcount>(.*)</fullcount>/1/» }

Сигнал Wi-Fi

wifi(){ /sbin/iwconfig wlan0 | grep Quality | cut -d = -f2 | awk ‘{print $1}’ } PS1=’nweather:unread_mail:wifi:wn [email protected]:$?$ ‘

Все это нужно поместить в конец ~/.bashrc и выставить на файл права 600, чтобы никто не смог подсмотреть пароли. Результат будет примерно таким:

-7:32:70/70:/usr/local [email protected]:0$

Универсальный способ установки PyCharm (Deebian, Fedora, Ubuntu и так далее)

Собственно, установить PyCharm можно скачав архив с программой с официального сайта, и данная инструкция подойдет для любого дистрибутива Linux, будь то Debian, Fedora и так далее. Так что если вы не хотите использовать Snap пакеты в той же Ubuntu, можно установить PyCharm этим способом. И так, переходим на официальный сайт, скачиваем архив и распаковываем его:

Универсальный способ установки PyCharm (Deebian, Fedora, Ubuntu и так далее)

Распаковать архив рекомендуется в директорию “/opt”, для этого можно открыть терминал, перейти в директорию куда вы скачали архив и распаковать его. Предполагается, что вы скачали архив в директорию “~/Загрузки”, если же директория отличается, то замените в команде путь до архива:

Читайте также:  Как открыть папку в Linux через терминал? [закрытый]

cd ~/Загрузки sudo tar xf pycharm-community* -C /opt/

Универсальный способ установки PyCharm (Deebian, Fedora, Ubuntu и так далее)

Переходим в директорию “/opt”, и запускаем скрипт PyCharm:

cd /opt/pycharm-community*/bin/ ./

Универсальный способ установки PyCharm (Deebian, Fedora, Ubuntu и так далее)

Нам выдается табличка с лицензионным соглашением, ставим галочку в нижнем правом углу и нажимаем кнопку “Continue”:

Далее решите сами, хотите что бы разработчикам отправлялась статистика или нет, это иногда может быть полезно для отладки самой программы. Я же откажусь, соответственно, нажимаю кнопку “Don’t Send”:

Универсальный способ установки PyCharm (Deebian, Fedora, Ubuntu и так далее)

После чего стартует программа, и по сути, можно начинать ей пользоваться:

Выводы

В статье собрано несколько типов использования псевдонимов *nix bash:

  1. Установка параметров по умолчанию для команды (например, установить eth0 как параметр по умолчанию для команды ethtool через псевдоним ethtool = ‘ethtool eth0’).
  2. Исправление опечаток (cd .. будет действовать как cd .. через псевдоним cd .. = ‘cd ..’).
  3. Минимизация объема скрипта.
  4. Установка пути по умолчанию для команды, которая существует в нескольких версиях системы (например, GNU/grep находится в /usr/local/bin/grep, а Unix grep находится в /bin/grep. Чтобы использовать GNU grep, применяйте команду alias grep = ‘/usr/local/bin/grep’).
  5. Добавление сетей безопасности в Unix, делая команды интерактивными и устанавливая параметры по умолчанию (например, rm, mv и другие команды).
  6. Совместимость путем создания команд для более старых операционных систем, таких как MS-DOS или других Unix-подобных операционных систем (например, alias del = rm).

Терминальный сервер

Терминальный сервер на Linux предназначен для предприятий и офисов, все компьютеры в которых объединены в одну сеть. Очень удобно, когда с любого ПК (если у него есть доступ) организации можно зайти на терминал. Это открывает большие возможности для удалённого администрирования.

Терминальный сервер

Для такой задачи подходит LTSP — Linux Terminal Server Project. Программа есть в стандартном пакете Ubuntu. Чтобы её установить:

Терминальный сервер
  1. Введите команду «ltsp-server-standalone».
  2. Потом напишите «apt-get update && apt-get install ltsp-server-standalone».
  3. Подождите, пока всё загрузится и обновится.
  4. Теперь надо поставить клиентскую систему. Напечатайте «ltsp-build-client».
  5. Затем «ltsp-build-client -dist trusty -arch i386 -fat-client-desktop lubuntu-desktop».
  6. Используйте команду «debootstrap», и дистрибутив автоматически развернётся в директорию «opt/ltsp/i386».
Терминальный сервер

Linux Server может работать даже на слабых ПК. Поэтому его очень часто используют для создания серверов и удалённого администрирования. На этой операционной системе делают почтовые сервисы, FTP-хранилища, терминалы.

Читайте также:  Как получить бесплатно 50 ГБ в iCloud на 4 месяца

apt-get clean (и apt-get autoclean)

(необходимы привилегии root)

С помощью этой команды удаляются все архивы, установленные в вашей системе. Всякий раз, когда вы устанавливаете приложение, оно будет загружено и его пакет DEB будет помещен в директорий /var/cache/apt/archives/. Данная команда удаляет эти пакеты и освобождает место.

apt-get clean apt-get autoclean

Относительно apt-get autoclean: с помощью этой команды удаляются только те архивы, которых уже нет в репозитариях, и сохраняются те, которые в данный момент в репозитариях присутствуют. Эта команда полезна, если вы хотите избавиться от старых архивов, которые были обновлены, но обновленные архивы хотите на всякий случай сохранить. Для того, чтобы увидеть, сколько места занимают архивы, используйте команду du -h (аргумент -h указывает, что результат нужно выдать в формате, удобном для чтения):

du -h /var/cache/apt/archives/