Выход из тени: 6 малоизвестных команд Linux

Alexey 01.09.2020 0 Система tty, who, вкладки терминала, интерфейс командной строки (CLI), множество терминалов в одной консоли, терминал

Что такое Linux?

Linux — это ядро операционной системы. Возможно, вы слышали о UNIX. Ну, так вот, Linux — это клон UNIX.  Он был создан Линусом Торвальдсом из Scratch. Linux является бесплатным и имеет открытый исходный код — вы можете просто изменить что-либо в Linux и распространять это под своим названием! Существует несколько сборок на основе Linux, обычно называемых дистрибутивами.

  • Ubuntu Linux
  • Red Hat Enterprise Linux
  • Linux Mint
  • Debian
  • Fedora

Linux в основном используется на серверах. Около 90% интернета работает на серверах Linux и вот почему.

Linux бесплатный,а основной проблемой использования Windows-серверов является их стоимость. Linux быстрый: ОС, которая работает примерно на 80% смартфонов в мире, Android, также сделана из ядра Linux. Linux безопасный, а большинство вирусов в мире работают на Windows.  

Забытая история bash.

Если вы открыли терминал и печатаете там команды, потом открыли еще один, немного его поиспользовали, то новый терминал не «вспомнит» ни одной команды, напечатанной в первом. Вдобавок, при закрытии первого терминала второй перезапишет все команды в истории, введённые в первом. Вдвойне досадно!

Это происходит потому, что история bash сохраняется только когда вы закрываете терминал, а не после каждой команды. Чтобы исправить такое поведение, добавьте в ~/.bashrc строки:

shopt -s histappend PROMPT_COMMAND=`history -a`

Добавьте следующую строку, если переменная $PROMPT_COMMAND уже была задана :

PROMPT_COMMAND=‘$PROMPT_COMMAND; history -a’

Это заставит bash дополнять историю вместо того, чтобы перезаписывать её: каждый раз, когда показывается приглашение командной строки, последняя команда добавляется в историю.

Читайте также:  Как стать бета-тестером OS X Yosemite без аккаунта разработчика

Как просматривать группы в Ubuntu Linux VPS

Вы также можете создавать группы, собирая нескольких пользователей и давая им некоторые административные права в системе. Этот вариант удобен для создания групп пользователей в одной системе. Информация об этих группах будет сохранена в папке Group. Итак, используйте следующую команду для просмотра групп в терминале.

less /etc/group

После успешного выполнения команды вы получите следующий результат:

Используйте команду ниже, если вы хотите отобразить имена групп:

Как просматривать группы в Ubuntu Linux VPS

cut -d : -f 1 /etc/group

Как вывести список пользователей в Ubuntu Linux VPS с помощью команды getent Команда getent используется для отображения записей из базы данных, настроенной в файле /etc/ Он охватывает базу данных passwd, которую можно использовать для запроса списка пользователей. Команда getent отображает записи из баз данных, настроенных в файле /etc/, включая базу данных passwd, для запроса списка всех пользователей.

Используйте следующую команду для выполнения getent в терминале:

getent passwd

После выполнения команды вы получите следующий вывод:

Вы можете использовать awk или cut для печати первого поля, содержащего имя пользователя:

getent passwd | awk -F: ‘{ print $1}’ getent passwd | cut -d: -f1

Как просматривать группы в Ubuntu Linux VPS

Как просмотреть зарегистрированных пользователей с помощью команды w Вы можете использовать команду w для вывода списка зарегистрированных пользователей Linux Ubuntu VPS. Чтобы использовать эту команду, введите «w» в терминале и выполните ее, нажав Enter.

После выполнения команды вы получите вывод, состоящий из различной информации о пользователе, такой как время входа в систему, время простоя и информация об удаленном хосте. Подробности в выводе следующие:

  • user -⁠ представляет имя пользователя.
  • TTY ⁠- представляет имя терминала.
  • From ⁠- представляет имя удаленного хоста.
  • [email protected] — время входа в систему.
  • Idle — представляет собой простой.
  • JCPU — ⁠ представляет время, используемое процессом, связанным с TTY.
  • PCPU ⁠ — представляет время, используемое конкретным процессом, отображаемым в поле WHAT.
  • WHAT ⁠- представляет текущий процесс пользователя.
Читайте также:  Бета-версия iOS 12 доступна всем пользователям

shred

Когда вы в последний раз удаляли файл в Linux? Как вы это делали? Удалили с помощью rm и забыли? Если файл содержал какие-либо чувствительные данные, то перед rm в подобных целях, следовало бы хорошо подумать. Как раз для таких ситуаций существует shred. Эта небольшая утилита на самом деле гарантированно стирает файл, многократно записывая поверх него случайные данные.

Удаляя файл командой rm, вы в действительности просто стираете “ссылку” или его индекс, известный ОС. При этом файл несомненно исчезает, так что вы его больше не видите, но в течение какого-то времени его исходные данные все еще хранятся на жестком диске системы. Эти данные можно восстановить с помощью специальных процедур. Используя shred, вы можете быть уверены, что файл будет удален действительно, что избавит вас от необходимости сжигать компьютер.

С более подробной информацией о shred вы можете ознакомиться здесь.

В следующий раз, когда вы захотите безвозвратно удалить файл, выполните эту команду (флаг -u по-настоящему удаляет текущий файл, а не просто затирает его индекс).

shred -u <file>

Доступ к телетайпу

Вы можете получить доступ к полноэкранному сеансу TTY, удерживая клавиши Ctrl+Alt и нажав одну из функциональных клавиш.

Ctrl+Alt+F3 вызовет приглашение входа на tty3.

Если вы войдёте в систему и введёте команду tty, вы увидите, что подключены к /dev/tty3.

Это не псевдотелетайп (эмулируемый в программном обеспечении); это виртуальный телетайп (эмулируемый аппаратно). Он использует экран и клавиатуру, подключённые к вашему компьютеру, для имитации виртуального телетайпа, как это делал DEC VT100.

Читайте также:  Как настроить Nginx для балансировки нагрузки

Вы можете использовать функциональные клавиши Ctrl+Alt с функциональными клавишами от F3 до F6 и при желании открыть четыре сеанса телетайпа. Например, вы можете войти в tty3 и нажать Ctrl+Alt+F6, чтобы перейти на tty6.

Чтобы вернуться в графическую среду рабочего стола, нажмите Ctrl+Alt+F2.

Нажав Ctrl+Alt+F1, вы вернётесь в окно входа в систему в сеансе графического рабочего стола.

Сочетания клавиш Ctrl+Alt+F1 до Ctrl+Alt+F6 откроются полноэкранные консоли TTY, а Ctrl+Alt+F7 вернёт вас в графическую среду рабочего стола. Такое поведение может быть на более старых дистрибутивах Linux.

Это было протестировано на текущих выпусках Manjaro, Ubuntu и Fedora, и все они вели себя следующим образом:

  • Ctrl+Alt+F1: возврат к экрану входа в графическую среду рабочего стола.
  • Ctrl+Alt+F2: возврат в графическую среду рабочего стола.
  • Ctrl+Alt+F3: открывает TTY 3.
  • Ctrl+Alt+F4: открывает TTY 4.
  • Ctrl+Alt+F5: открывает TTY 5.
  • Ctrl+Alt+F6: открывает TTY 6.

У Kali Linux графический интерфейс открывается при нажатии Ctrl+Alt+F7.

Наличие доступа к этим полноэкранным консолям позволяет людям, использующим установки Linux только из командной строки — а многие серверы Linux настроены таким образом — иметь несколько доступных консолей.

Вы когда-нибудь работали на Linux-машине с графической средой рабочего стола и что-то заставляло ваш сеанс зависать? Теперь вы можете перейти к одному из сеансов консоли TTY, чтобы попытаться исправить ситуацию.

Вы можете использовать top и ps, чтобы попытаться идентифицировать отказавшее приложение, затем используйте kill, чтобы завершить его, или просто используйте shutdown, чтобы попытаться завершить работу настолько изящно, насколько позволяет состояние компьютера.