Как войти в систему Linux

Обновлено: 02.07.2024

В этой главе рассматриваются некоторые основные команды, которые необходимо знать для эффективной работы в командной строке Ubuntu.

Эта глава из книги

Эта глава из книги

Эта глава из книги 

В ЭТОЙ ГЛАВЕ

  • Что такое командная строка?
  • Вход в систему и работа с Linux
  • Доступ к командной строке
  • Использование текстовых редакторов
  • Работа с разрешениями
  • Работа с правами root
  • Чтение документации
  • Справочник

Командная строка — один из самых мощных инструментов, доступных для использования в Ubuntu и даже в Linux. Знание команд, связанных с ним, а также того, как связать их вместе, сделает вашу жизнь с Ubuntu намного проще.

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

Что такое командная строка?

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

Но иногда что-то идет не так, и у вас может не быть графического интерфейса для работы. Именно в таких ситуациях фундаментальное понимание командной строки и ее использования может реально спасти жизнь.

В Главе 3, "Работа с Gnome", вы узнали о BulletProofX, проекте, цель которого состоит в том, чтобы всегда обеспечивать запасной вариант в случае сбоя вашего X-сервера. В Ubuntu 9.10 это стало еще лучше, хотя в некоторых случаях даже BulletProofX не спасет вас.

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

Заманчиво думать о командной строке как о продукте какого-то черного и тайного искусства, и в некоторых отношениях она может показаться чрезвычайно сложной и сложной в использовании. Однако ключевым фактором является настойчивость, и к концу этой главы вы, по крайней мере, должны научиться пользоваться командной строкой и быть готовыми перейти к главе 30 "Мастер-класс по работе с командной строкой".

Что еще более важно, вы сможете обойти систему на основе командной строки, с которой вы, вероятно, столкнетесь, если будете работать в серверной среде.

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

  • Выполнение рутинных задач: вход в систему и выход из нее, использование текстовой консоли, изменение паролей, просмотр каталогов и навигация по ним.
  • Реализовать базовое управление файлами: создавать файлы и папки, копировать или перемещать их по файловой системе, переименовывать и, в конечном счете, удалять (при необходимости).
  • Выполнение базового управления системой: завершение работы или перезагрузка, чтение справочных страниц и использование текстовых инструментов для редактирования файлов конфигурации системы.

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

Те из вас, кто много лет пользовался компьютером, вероятно, сталкивались с MS-DOS, и в этом случае черный экран наполнит вас чувством ностальгии. Не устраивайтесь поудобнее; командная строка в Linux намного превосходит своего дальнего родственника MS-DOS. В то время как навыки MS-DOS переносятся только в другие среды MS-DOS, навыки, которые вы изучаете в командной строке Linux, могут быть легко перенесены в другие Unix-подобные операционные системы, такие как Solaris, OpenBSD, FreeBSD и даже Mac OS X. , что позволяет получить доступ к терминалу.

Одна из концепций, к которой вам придется привыкнуть, — это безопасность на основе пользователей. По большому счету только два типа пользователей будут иметь доступ к системе в качестве реальных пользователей. Первый тип — это обычный пользователь, которого вы создали при первом запуске Ubuntu (см. Главу 1, «Установка Ubuntu»). Эти пользователи могут изменить все, что относится к ним, например, обои на рабочем столе, их личные настройки и т. д. Обратите внимание, что акцент следует делать на все, что относится к ним, поскольку это не позволяет обычным пользователям вносить общесистемные изменения, которые могут повлиять на других пользователей.

Для внесения общесистемных изменений вам необходимо использовать привилегии суперпользователя, которые должны быть у вас, если ваша учетная запись была указана первой (т. е. когда вы указали пользователя во время установки). С привилегиями суперпользователя вы фактически имеете доступ ко всей системе и можете выполнять любые задачи, даже разрушительные! Чтобы использовать свои привилегии суперпользователя, вам нужно указать префикс команды, которую вы хотите выполнить, командой sudo. Когда вы нажмете Enter (после ввода оставшейся команды), вам будет предложено ввести пароль, который вы должны ввести, а затем нажать клавишу Enter. Затем Ubuntu выполнит команду, но с привилегиями суперпользователя.

Пример деструктивного характера работы в качестве суперпользователя можно найти в старом примере $sudo rm -rf /, который стирает все данные на вашем жестком диске. Вы должны быть особенно осторожны при использовании своих привилегий суперпользователя, иначе вы можете нанести непоправимый ущерб вашей системе.

Пусть это вас не беспокоит, так как возможность работать в качестве суперпользователя имеет основополагающее значение для исправной системы Linux. Без него вы не сможете устанавливать новое программное обеспечение, редактировать файлы конфигурации системы или выполнять любые административные задачи. К концу этой главы вы почувствуете себя комфортно, работая с привилегиями суперпользователя, и сможете адекватно администрировать свою систему.

Как и в большинстве случаев, Ubuntu предлагает несколько способов доступа к командной строке. Вы можете использовать запись Терминала в Приложениях, Стандартных, но, безусловно, самый простой способ — нажать Ctrl + Alt + F1. Ubuntu переключается на черный экран и традиционное приглашение для входа в систему, похожее на следующее:

На самом деле это одна из шести виртуальных консолей, которые Ubuntu предоставляет для вашего использования. После того, как вы получили доступ к виртуальной консоли, вы можете использовать клавишу Alt и клавиши F1–F6 для переключения на другую консоль. Если вы хотите вернуться к графическому интерфейсу, нажмите Alt + F7. Вы также можете переключаться между консолями, удерживая клавишу Alt и нажимая левую или правую клавишу курсора, чтобы перемещаться вниз или вверх по консоли, например, с tty1 на tty2.

Ubuntu ожидает, пока вы войдете в систему как пользователь, поэтому введите свое имя пользователя и нажмите клавишу возврата. Затем Ubuntu запросит у вас пароль, который вы должны ввести. Обратите внимание, что Ubuntu не показывает никаких символов, когда вы вводите пароль. Это хорошо, потому что не позволяет пользователям браузера увидеть, что вы набрали, или длину пароля.

Нажатие клавиши "Return" возвращает вас к командной строке, обозначенной знаком доллара:

Это конкретное приглашение сообщает мне, что я вошел в систему как пользователь andrew в системе karmic-dev и в настоящее время нахожусь в своем домашнем каталоге (в Linux используется тильда как сокращение для домашнего каталога).

Навигация по системе с помощью командной строки иногда может привести к путанице, особенно если имя каталога встречается в нескольких разных местах. К счастью, в Linux есть простая команда, которая точно сообщает, где вы находитесь в файловой системе. Это легко запомнить, потому что команда представляет собой просто аббревиатуру текущего рабочего каталога, поэтому введите pwd в любой момент, чтобы получить полный путь к вашему местоположению. Например, ввод pwd после выполнения этих инструкций показывает /home/yourusername, что означает, что вы в данный момент находитесь в своем домашнем каталоге.

Использование команды pwd может избавить вас от множества проблем, если вы полдюжины раз сменили каталог и потеряли след.

Еще один способ получить быстрый доступ к терминалу — перейти в раздел "Приложения", "Стандартные" и выбрать пункт "Терминал". Ubuntu открывает gnome-terminal, что позволяет вам получить доступ к терминалу, оставаясь в Gnome. На этот раз терминал выглядит как черный текст на белом фоне. Доступ к терминалу таким образом или с помощью метода Ctrl + Alt + F1 не имеет значения, поскольку вы взаимодействуете непосредственно с самим терминалом.

Навигация по файловой системе

Используйте команду cd для навигации по файловой системе Ubuntu. Эта команда обычно используется с определенным расположением каталога или именем пути, например:

В Ubuntu команду cd также можно использовать с несколькими сочетаниями клавиш. Например, чтобы быстро перейти в каталог parent (более высокого уровня), используйте команду cd следующим образом:

Чтобы вернуться в свой домашний каталог из любой точки файловой системы Linux, используйте команду cd следующим образом:

Вы также можете использовать переменную среды оболочки $HOME для достижения той же цели. Введите эту команду и нажмите Enter, чтобы вернуться в свой домашний каталог:

То же самое можно сделать, используя тильду (~) следующим образом:

Не забудьте команду pwd, чтобы напомнить вам, где вы находитесь в файловой системе!

Еще одна важная команда для использования — это команда ls, которая выводит список содержимого текущего каталога. Он обычно используется сам по себе, но ряд опций (или переключателей), доступных для ls, дают вам больше информации. Например, следующая команда возвращает список всех файлов и каталогов в текущем каталоге, включая все скрытые файлы (обозначаемые префиксом .), а также полный список, поэтому он будет включать в себя детали такие как разрешения, владелец и группа, размер и время и дата последнего изменения:

Вы также можете ввести команду

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

Предыдущая команда отправляет вывод ls -alR в файл с именем listing.txt и демонстрирует часть возможностей командной строки Linux. В командной строке вы можете использовать файлы в качестве входных данных для команд или создавать файлы в качестве выходных данных, как показано ниже. Дополнительные сведения о комбинировании команд см. в главе 30.

Мы включили таблицу, показывающую некоторые каталоги верхнего уровня, которые являются частью стандартного дистрибутива Linux, в Таблицу 4.1.

В этом учебном пособии по системному администрированию Linux вы узнаете, как войти в систему Ubuntu Linux Server 16.04 LTS (Xenial Xerus) со снимками экрана и инструкциями.

Предпосылки

Для выполнения этого руководства вам потребуется работающая система Ubuntu Linux Server 16.04 LTS и действующая учетная запись пользователя.

Войти

Следующие шаги помогут вам войти в систему Ubuntu Linux Server 16.04 LTS.

Чтобы начать вход в систему Ubuntu Linux, вам потребуется информация об имени пользователя и пароле для вашей учетной записи. Мы будем использовать основную учетную запись, созданную в нашем учебном пособии по установке Ubuntu Linux Server 16.04.

Если вы подключены к системной консоли, вы увидите экран, подобный следующему:

Экран входа
< /p>

Приглашение для входа в нашу демонстрационную систему: вход в Ubuntu:

При появлении запроса на вход введите свое имя пользователя и нажмите клавишу Enter, когда закончите.

Введите имя пользователя

В нашей демонстрационной системе мы введем techonthenet в качестве имени пользователя.

Далее система отобразит приглашение Пароль: чтобы указать, что вы должны ввести свой пароль. Введите свой пароль и нажмите клавишу Enter, чтобы продолжить.

Введите пароль пользователя

Обратите внимание, что при вводе пароля символы отображаться не будут. Это нормально и важно для обеспечения безопасности вашего пароля.

Если вы допустили ошибку при вводе имени пользователя, не беспокойтесь, система предложит вам повторить попытку.

Если все пойдет хорошо, вы войдете в свою систему Ubuntu Linux Server 16.04 LTS и увидите экран, подобный следующему:

Системная подсказка
< /p>

Обратите внимание на системную подсказку. В нашей системе приглашение выглядит так: techonthenet@ubuntu:~$.

Первая часть системной подсказки до символа @ — это имя пользователя, который в данный момент находится в системе. В нашем случае имя пользователя — techonthenet. Второе значение после символа @ и перед : — это имя хоста. Имя этого хоста — ubuntu.

Поздравляем, вы успешно вошли в свой Ubuntu Linux Server 16.04 LTS!

В Unix-подобных операционных системах команда входа в систему запускает новый сеанс входа в систему.

Эта страница охватывает версию входа в систему для Linux.

Описание

Программа входа используется для установления нового сеанса с системой. Обычно он вызывается автоматически при ответе на приглашение «login:» на пользовательском терминале. login может быть особенным для оболочки и не может вызываться как подпроцесс. При вызове из оболочки вход в систему должен выполняться как вход в систему exec, что приводит к выходу пользователя из текущей оболочки (и, таким образом, предотвращает возвращение нового вошедшего в систему пользователя в сеанс вызывающей стороны). Попытка выполнить вход из любой оболочки, но оболочка входа выдает сообщение об ошибке.

После этого пользователю будет предложено ввести пароль, если это необходимо. Эхо отключено, чтобы предотвратить раскрытие пароля. Разрешено лишь небольшое количество неудачных попыток ввода пароля, прежде чем вход в систему будет завершен, а связь будет разорвана.

Если для вашей учетной записи включено устаревание пароля, вам может быть предложено ввести новый пароль, прежде чем продолжить. Вы будете вынуждены ввести свой старый пароль и новый пароль, прежде чем продолжить; обратитесь к нашему паролю для получения дополнительной информации.

Идентификаторы пользователя и группы будут установлены в соответствии с их значениями в файле /etc/passwd. Значения $HOME, $SHELL, $PATH, $LOGNAME и $MAIL устанавливаются в соответствии с соответствующими полями при вводе пароля. ulimit, umask и nice значения также могут быть установлены в соответствии с записями в поле GECOS.

В некоторых установках переменная среды $TERM будет инициализирована для типа терминала в вашей линии tty, как указано в /etc/ttytype.

Также может быть выполнен сценарий инициализации; проверьте документацию вашего командного интерпретатора для получения информации о сценариях инициализации.

Логин подсистемы обозначается наличием "*" в качестве первого символа оболочки входа. Данный домашний каталог будет использоваться как корень новой файловой системы, в которой пользователь фактически вошел в систему.

Синтаксис

Параметры

< /tr>

Конфигурация

Следующие переменные конфигурации в /etc/login.defs изменяют поведение этого инструмента:

По умолчанию владельцем терминала является основная группа пользователя, а разрешения установлены на 0600.

TTYGROUP может быть либо именем группы, либо числовым идентификатором группы.

Файлы

-f Не выполнять аутентификацию; пользователь проходит предварительную аутентификацию. В этом случае имя пользователя является обязательным.
-h Имя удаленного хоста для этого входа в систему.
-p Сохранить среду.
-r Выполнить протокол автоматического входа в систему для rlogin.
< td>Системное сообщение файла дня.
/var/run/utmp Список текущих сеансов входа в систему.
/ var/log/wtmp Список предыдущих сеансов входа в систему.
/etc/passwd Информация об учетной записи пользователя.
/etc/shadow Защитить информацию об учетной записи пользователя.
/etc/motd
/etc/nologin Запретить вход пользователям без полномочий root.
/etc/ttytype Список типов терминалов.
$HOME/.hushlogin Подавить печать системных сообщений.
/etc/login.defs Конфигурация набора теневых паролей.

Параметры -r, -h и -f используются только в том случае, если вход в систему вызывается пользователем root.

Примеры

Связанные команды

csh — интерпретатор команд оболочки C.
exit — выход из командной оболочки.
init — родитель всех процессов в системе.
ksh — интерпретатор команд оболочки Korn.< br />mail — чтение, создание и управление почтой.
mailx — обработка почтовых сообщений.
newgrp — вход в новую группу.
passwd — изменение пароля пользователя.
rlogin — начать сеанс в удаленной системе.
rsh — выполнить команду в удаленной оболочке.
sh — интерпретатор команд оболочки Bourne.
telnet — подключиться к удаленной системе с помощью telnet. протокол.
umask — получить или установить маску режима создания файла.

логин [ -h Имя хоста ] [ -p ] [ -f Пользователь ] [ Пользователь [ Среда ] ]

Описание

Команда входа в систему (часть команды tsm) инициирует сеансы в системе для пользователя, указанного в параметре User . Вы также можете указать переменные среды, которые будут добавлены в среду пользователя. Это строки вида Переменная = Значение. Команда входа в систему обычно не вводится в командной строке.

<ПР>
  • Переменные среды PATH , IFS , HOME и SHELL нельзя инициализировать из командной строки.
  • Команда входа поддерживает многобайтовые имена пользователей. Системному администратору рекомендуется ограничить имена пользователей символами из переносимого набора символов, чтобы устранить любую двусмысленность.
  • Если файл /etc/nologin существует, система запрещает пользователю вход в систему и отображает содержимое файла /etc/nologin. Система позволяет пользователю root войти в систему, если этот файл существует. Файл /etc/nologin удаляется при перезагрузке системы.
  • Команда входа может обрабатывать имена пользователей распределенной вычислительной среды (DCE) длиной до 1024 символов. Имена пользователей DCE хранятся в переменной среды LOGIN. Поскольку имена пользователей DCE не соответствуют стандартным требованиям к операционной системе, первые 8 символов имени пользователя DCE хранятся во всех стандартных файлах и средах операционной системы.

    Команда входа выполняет следующие функции:

    Проверка учетных записей Команда входа в систему проверяет учетную запись пользователя, обеспечивая порт, используемый для входа в систему.
    Аутентифицирует пользователей Команда входа проверяет личность пользователя, используя методы аутентификации, определенные системой для каждого пользователя. . Если срок действия пароля истек, пользователь должен ввести новый пароль. Если определены вторичные методы аутентификации, эти методы вызываются, но не обязательно должны быть успешными для входа в систему.
    Установляет учетные данные Команда входа в систему устанавливает начальные учетные данные для пользователя из пользовательской базы данных. Эти учетные данные определяют права доступа и ответственность пользователя в системе.
    Инициирует сеанс Команда входа в систему инициализирует пользовательскую среду из пользовательской базы данных, из командной строки и из файла конфигурации /etc/environment; изменяет текущий каталог на домашний каталог пользователя (обычно); и запускает начальную программу пользователя.

    Эти функции выполняются в указанном порядке; в случае сбоя последующие функции не выполняются.

    Когда пользователь успешно входит в систему, команда входа в систему создает записи в файле /etc/utmp, который отслеживает текущие входы пользователей в систему, и в файле /var/adm/wtmp, который используется для целей учета. Команда login также устанавливает переменные среды LOGIN и LOGNAME.

    Информация о каждом неудачном входе в систему записывается в файл /etc/security/failedlogin. Сохраняемая информация такая же, как и в файле /etc/utmp, за исключением того, что неузнаваемые имена пользователей регистрируются как UNKNOWN_USER. Это гарантирует, что пароль, случайно введенный, например, как имя пользователя, не будет допущен в систему в незашифрованном виде.

    После успешного входа в систему команда входа отображает сообщение дня, дату и время последних успешных и неудачных попыток входа для этой учетной записи, а также общее количество неудачных попыток входа для этой учетной записи с момента последнего успешного входа. . Эти сообщения подавляются, если есть файл . hushlogin в вашем домашнем каталоге.

    Команда входа в систему также изменяет право собственности на порт входа в систему. Сюда входят любые порты, отмеченные как синонимы в файле /etc/security/login.cfg.

    Чтобы сохранить целостность системы, одновременно можно войти в порт только для одного сеанса. Это означает, что команда входа в систему, введенная из приглашения оболочки, не может быть успешной, так как исходный сеанс и новый сеанс входа будут на одном и том же порту. Однако команда exec login завершается успешно, потому что новая оболочка заменяет текущую. Команда входа в систему обычно является встроенной командой оболочки, заставляющей оболочку заменить себя.

    Примечание. Если ваш терминал не отображает только прописные буквы, ваше имя пользователя не должно состоять исключительно из прописных букв.

    Чтобы войти в систему с многобайтовыми именами пользователей, необходимо сначала открыть окно на японском языке (aixterm) и инициировать новый вход в систему из окна на японском языке.

    Флаги

    -f User Идентифицирует пользователя, который уже прошел аутентификацию. Если реальный идентификатор процесса входа в систему — root (0), то пользователь не аутентифицирован.
    -h HostName Идентифицирует логин как удаленный логин и указывает с помощью переменной HostName имя машины, запрашивающей логин. Эта форма входа используется только демонами telnetd и rlogind.
    -p Сохраняет текущий тип терминала, установив для него значение переменной среды $TERM вместо типа, содержащегося в базе данных классов объектов CuAt/PdAt.

    Безопасность

    Контроль доступа: эта команда устанавливает разрешение setuid для пользователя root, предоставляет разрешение на выполнение ( x ) любому пользователю и входит в доверенную вычислительную базу.

    Примеры

    Чтобы войти в систему как пользователь jamesd , введите в строке входа следующее:

    Если задан пароль, появится запрос на ввод пароля. Введите свой пароль в этом запросе.

    Файлы

    < TD>Содержит сообщение дня.
    /usr/sbin/login Содержит команду входа в систему.
    /etc/utmp Содержит учетную информацию.
    /var/adm/wtmp Содержит учетную информацию.
    /etc/motd
    /etc/passwd Содержит пароли.
    $HOME/.hushlogin Подавляет сообщения о входе в систему.
    /etc/environment Содержит информацию о конфигурации среды пользователя.
    /etc/security/логин.cfg Содержит синонимы портов.
    /etc/security/lastlog Содержит информация о последних успешных и неудачных попытках входа в систему.
    /etc/security/failedlogin Содержит информация о каждом неудачном входе в систему.

    Дополнительная информация

    Команда getty, команда setgroups, команда setsenv, команда su, команда tsm.

    Подпрограмма аутентификации, подпрограмма setuid.

    Подавление сообщений о входе в систему AIX версии 4.3. Руководство пользователя: Операционная система и устройства.

    Обзор входа и выхода из системы в AIX версии 4.3: Руководство пользователя системы: Операционная система и устройства.

    Обзор оболочек в AIX Version 4.3 System User's Guide: Operating System and Devices описывает, что такое оболочки, различные типы оболочек и как оболочки влияют на интерпретацию команд.

    Читайте также: