Добро пожаловать в нашу серию вопросов для интервью по Linux. Вот первая и вторая части этой серии. В этой третьей части мы продолжим развивать ваши базовые знания с помощью 10 дополнительных важных вопросов по Linux, которые призваны улучшить ваше понимание с помощью практических примеров и понятных объяснений.
1. Как добавить нового пользователя (например, tux) в вашу систему Linux?
Вы можете добавить нового пользователя с помощью команды useradd или adduser. Обе команды используются для создания пользователей, но ведут себя немного по-разному в зависимости от дистрибутива Linux.
Использование useradd (низкоуровневая команда)
useradd
— стандартная команда, встречающаяся почти во всех дистрибутивах Linux, которая добавляет пользователя, но не настраивает автоматически домашний каталог и не запрашивает пароль, если не используются дополнительные параметры.
sudo useradd tux sudo passwd tux
Чтобы создать домашний каталог и файлы конфигурации по умолчанию, включите параметр -m:
sudo useradd -m tux
Использование adduser (дистрибутивы на базе Debian)
adduser
— более удобная для пользователя высокоуровневая команда, в основном используемая в дистрибутивах на базе Debian, таких как Ubuntu и Mint, которая на самом деле представляет собой скрипт Perl, который выполняет обертку useradd
и обеспечивает пошаговую настройку.
sudo adduser tux
Эта команда создает пользователя,tux
настраивает его домашний каталог, копирует файлы конфигурации по умолчанию и предлагает вам задать пароль и информацию о пользователе (например, полное имя).
2. Сколько основных разделов возможно на одном диске?
На одном физическом жестком диске можно создать максимум 4 основных раздела, используя традиционную схему разбиения MBR ( главная загрузочная запись ).
Объяснение :
- Система разбиения MBR (Master Boot Record) позволяет:
- До 4 основных разделов, или
- 3 основных раздела и 1 расширенный раздел
- Расширенный раздел может содержать несколько логических разделов, что обеспечивает большую гибкость.
- Если вам нужно больше 4 разделов:
- Создать 3 основных раздела
- Создать 1 расширенный раздел
- Внутри расширенного раздела создайте столько логических разделов, сколько необходимо (ограничение зависит от ОС и конфигурации)
В3: Какой порт по умолчанию для Apache/HTTP?
Порт по умолчанию для Apache ( HTTP ) — это port,80
который является стандартным портом, назначенным для незащищенного веб-трафика в соответствии с Internet Assigned Numbers Authority ( IANA ). Когда веб-сервер, такой как Apache, настроен на обслуживание веб-сайтов по HTTP, он прослушивает порт 80, если не указано иное.
Для защищенного HTTP ( HTTPS ) порт по умолчанию — 443
, но для обычного HTTP это всегда 80.
В4: Что означает GNU?
GNU означает «GNU’s Not Unix», что является рекурсивным акронимом, то есть первая буква (G)
обозначает полную аббревиатуру. Такой стиль именования — игривая традиция в сообществе разработчиков ПО с открытым исходным кодом.
Проект GNU был запущен Ричардом Столлманом в 1983 году с целью создания полностью бесплатной и открытой операционной системы типа Unix.
Хотя GNU разделяет принципы разработки с Unix, он был разработан с нуля и не содержит кода Unix, что позволяет свободно использовать, изменять и распространять его в соответствии с условиями Стандартной общественной лицензии GNU (GPL).
Сочетание инструментов GNU с ядром Linux — это то, что большинство людей обычно называют « Linux », хотя технически более точным названием является «GNU/Linux».
5. Команда mysql выдает ошибку сокета — что проверить в первую очередь?
Если выполнение команды mysql приводит к ошибке сокета, например:
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
Первое, что нужно проверить, — запущена ли служба MySQL.
sudo systemctl status mysql
Если служба не запущена, запустите ее:
sudo systemctl start mysql
Если служба MySQL запущена, но ошибка сокета все еще возникает, следующим шагом будет проверка несоответствия расположения файла сокета. Иногда клиент MySQL пытается подключиться к файлу сокета в неправильном каталоге.
Чтобы решить эту проблему, сначала проверьте путь к сокету, настроенный в настройках сервера MySQL, проверив my.cnf
файл, который обычно находится по адресу /etc/mysql/my.cnf
или /etc/my.cnf
.
mysql --socket=/path/to/mysql.sock
Другая распространенная причина — проблемы с разрешениями на каталог сокета. Убедитесь, что пользователь, запускающий команду MySQL, имеет доступ к каталогу, где находится файл сокета, обычно /var/run/mysqld/
. Без соответствующих разрешений клиент не сможет получить доступ к файлу сокета, даже если он существует.
Наконец, для более подробного устранения неполадок следует проверить журнал ошибок MySQL.
sudo less /var/log/mysql/error.log
6. Как смонтировать раздел Windows NTFS в Linux?
Чтобы смонтировать раздел Windows NTFS в системе Linux, необходимо использовать драйвер ntfs-3g
, который обеспечивает полную поддержку чтения и записи для файловых систем NTFS.
sudo apt install ntfs-3g [ #на основе Debian ] sudo yum install ntfs-3g [ #на основе REdHat ]
После установки определите раздел NTFS, который вы хотите смонтировать, с помощью:
lsblk
или
fdisk -l /dev/sdb1
Затем создайте точку монтирования и смонтируйте раздел с помощью команды:
sudo mkdir /mnt/ntfs sudo mount -t ntfs-3g /dev/sdb1 /mnt/ntfs
После монтирования вы можете получить доступ к содержимому раздела NTFS через указанный каталог. Чтобы монтирование сохранялось при перезагрузках, вы можете добавить запись в файл /etc/fstab
, используя соответствующий путь к устройству, точку монтирования, тип файловой системы ( ntfs-3g
) и желаемые параметры монтирования.
7. Какая из перечисленных ОС не является ОС на основе RPM?
- RedHat Linux
- CentOS
- Rocky Linux
- Debian
- Fedora
Debian — это операционная система, не основанная на RPM, которая использует формат DEB ( пакет Debian ), а ее инструменты управления пакетами включают dpkg, apt и apt-get.
Напротив, RedHat Linux, CentOS, Rocky Linux и Fedora являются дистрибутивами на основе RPM, то есть они используют формат RPM ( Red Hat Package Manager ) и такие инструменты, как rpm и yum или dnf для управления пакетами.
Таким образом, в то время как все остальные являются частью семейства Red Hat и используют схожие системы пакетов, Debian принадлежит к совершенно другой линейке со своей собственной экосистемой.
8. Какую команду можно использовать для переименования файла в Linux?
В Linux команда mv (переместить) используется для переименования файла. Хотя ее основная функция — перемещение файлов и каталогов из одного места в другое, она также служит стандартным способом переименования файла в пределах одного каталога.
Когда вы указываете новое имя файла в качестве назначения, mv
просто изменяет имя файла, не изменяя его содержимое. Например, чтобы переименовать файл с именем,oldname.txt
newname.txt
вы должны использовать команду:
mv oldname.txt newname.txt
Это работает, поскольку файл «перемещается» из старого имени в новое в том же месте, что является быстрым и эффективным методом переименования как файлов, так и каталогов в Linux.
9. Какая команда используется для создания и отображения файла в Linux?
В Linux команда cat обычно используется как для создания, так и для отображения содержимого файла. Название « cat
» означает « concatenate », но она широко используется для простых задач, таких как просмотр содержимого файла или создание небольших текстовых файлов непосредственно из терминала.
Чтобы создать файл с помощью,cat
вы можете использовать синтаксис,cat > filename
затем ввести содержимое, которое вы хотите добавить, и нажать, Ctrl + D
чтобы сохранить и выйти.
Чтобы отобразить содержимое файла, просто используйте cat filename
. Хотя cat не является полноценным текстовым редактором, как vi или nano, это быстрый и эффективный способ создания или просмотра файлов, особенно при работе со скриптами или базовыми операциями командной строки.
10. Какой уровень обрабатывает коммуникацию на уровне приложений в модели OSI?
В модели OSI ( взаимодействие открытых систем ) уровень 7 — это прикладной уровень, который отвечает за управление связью между программными приложениями и нижними уровнями сети.
Этот уровень действует как интерфейс между конечным пользователем и сетью, предоставляя такие услуги, как передача файлов, электронная почта, просмотр веб-страниц, удаленный вход и управление сетью. Он поддерживает протоколы уровня приложений, такие как HTTP, FTP, SMTP, DNS и многие другие.
Хотя он не представляет сами приложения, он позволяет этим приложениям эффективно взаимодействовать по сети. Уровень 7 гарантирует, что данные правильно отформатированы и доставлены в правильное приложение, что делает его критически важным для пользовательских сервисов и взаимодействий в сетевой коммуникации.
Заключение
На этом завершается Часть 3 нашей серии вопросов для интервью по Linux . Мы продолжим развивать ее более узконаправленными темами, такими как скриптинг, сервисы, системный мониторинг и сетевое взаимодействие.