Linux учебное пособие

Регион РФ: Москва

Для того, чтобы оценить ресурс, необходимо авторизоваться.

Книга представляет собой второе, исправленное и дополненное, издание курса «Введение в ОС Linux» Г.В. Курячего и К.А. Маслинского. Курс охватывает все темы, традиционно рассматриваемые в учебной литературе по операционным системам семейства UNIX. Он состоит из двух основных частей. В первой части вводятся основные понятия и навыки, необходимые пользователю для того, чтобы начать грамотно работать в Linux. Здесь рассмотрены: пользователи с точки зрения системы, понятие терминал и работа с командной строкой, устройства файловой системы и работа с ней, права доступа в Linux, возможности командной оболочки, текстовые редакторы. Вторая часть посвящена тем понятиям и навыкам, которые требуются для администрирования ОС Linux. Сюда входит обсуждение этапов загрузки системы, технологий работы с внешними устройствами, файловыми системами и сетью в Linux, администрирование системы посредством конфигурационных файлов, управление пакетами. В завершающей лекции курса даётся обзор истории возникновения и развития Linux. Здесь же приведён обзор социального контекста, существенного для понимания ОС Linux и работы в ней: сообщество пользователей, лицензирование свободного программного обеспечения, место свободного ПО на современном рынке, дистрибутивы Linux и решения на базе Linux. Данный курс может рассматриваться как учебник для студентов, начинающих обучение по специальностям в области информатики и ещё не знакомых с ОС Linux. Электронная версия содержит полный текст книги, представленный в html.

Содержание страницы:

Курячий, Маслинский: Операционная система Linux. Курс лекций. Учебное пособие

Аннотация к книге «Операционная система Linux. Курс лекций. Учебное пособие»

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

Мы пришлем письмо о полученном бонусе, как только кто-то воспользуется вашей рекомендацией. Проверить баланс всегда можно в «Личном пространстве»

Мы пришлем письмо о полученном бонусе, как только кто-то воспользуется вашей ссылкой. Проверить баланс всегда можно в «Личном пространстве»

Введение в LINUX. Учебное пособие

  • Название: Введение в LINUX. Учебное пособие
  • Автор: Тихомиров В.О.
  • Издательство: МИФИ
  • Год: 2007
  • Метки: Linux
  • Размер: 1.21 МБ

БУМАЖНАЯ ВЕРСИЯ КНИГИ

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

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

Учебное пособие по команде env в Linux для начинающих (5 примеров)

Главное меню » Операционная система Linux » Учебное пособие по команде env в Linux для начинающих (5 примеров)

Но прежде чем мы это сделаем, стоит отметить, что все команды и инструкции, упомянутые в данном руководстве, были протестированы на оболочке Bash, работающие на Ubuntu 16.04 LTS.

Команда env в Linux

По определению, команда env позволяет запускать программу в измененной среде. Ниже приведен синтаксис команды, как уже упоминалось на странице man:

И вот что страница man говорит о env:

Примеры должны дать вам лучшее представление о том, как эта команда работает:

Q1. Как получить доступ ко всем переменным окружения, используя команду env?

Bash среда, как вы уже знаете, состоит из записей VARNAME = VALUE. Чтобы получить доступ ко всем переменным окружения, а также значения, связанные с ними, выполните команду env без опции.

Вот вывод из приведенных выше команд в нашем случае:

Q2. Как временно изменить окружающую среду с помощью env?

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

Вот вывод в обычном сценарии:

Теперь, то что мы сделали, мы использовали команду ENV временно изменить значение переменной окружения USER c «destroyer» на «HTF» для исполняемого процесса. Ниже приводится команда, которую мы использовали в этом случае:

А вот выход производится в этом случае:

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

Q3. Как сделать, чтобы процесс игнорировал существующую среду с помощью env?

Если вы хотите, вы можете также сделать, чтобы процесс игнорировал существующую/унаследованную среду, и начать с пустой вместо этого. Это может быть сделано с помощью вариант -i или –ignore-environment.

Q4. Как сделать при помощи команды env использовать NUL вместо символа новой строки при выходе?

В первом примере выше, был вывод строк, полученные с помощью команды env разделяются символом новой строки. Тем не менее, если вы хотите, вы можете сделать env использовать символ NUL как разделитель. Эта функция может быть доступна с помощью опции –null в командной строке.

Ниже приведен пример экрана:

Q5. Как узнать ошибку, основываясь на состоянии команды вывода env?

Команда env производит следующие коды вывода: 0, 125, 126 и 127. Ниже приведены описания ошибок, связанных с ними:

В этом случае, если вы получите код ошибки, кроме упомянутых выше, то это состояние вывода возвращается в процессе/команде, которая была выполнена в модифицированной среде.

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

ArcGIS Enterprise

В данном руководстве представлен обзор настройки базового развертывания ArcGIS Enterprise на отдельном компьютере. Эта конфигурация обычно используется для прототипирования и тестирования. Это самодостаточное картографическое приложение, которое можно использовать вместе с ArcGIS Pro , ArcMap и другими клиентскими приложениями. Хотя эта конфигурация и может быть использована в производственной системе, определять шаблон развертывания необходимо с учетом вашей производительности, архитектуры системы и других требованиям.

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

  • Компьютер ArcGIS Server , лицензированный как ArcGIS GIS Server и использующийся в качестве сервера хостинга
  • Portal for ArcGIS
  • ArcGIS Data Store настроено как реляционное хранилище данных и хранилище данных полистного кэша.
  • Два адаптера ArcGIS Web Adaptor

Процесс установки и настройки базового развертывания ArcGIS Enterprise может быть выполнен вручную или автоматически, с помощью ArcGIS Enterprise Builder. В данном разделе приводится описание установки и настройки компонентов вручную. Чтобы установить и настроить компоненты в автоматическим режиме с помощью мастера, обратитесь к обзору ArcGIS Enterprise Builder.

Предварительные условия

Для создания базового развертывания ArcGIS Enterprise потребуется следующее:

  • Установочные файлы для ArcGIS Server , Portal for ArcGIS , ArcGIS Data Store и ArcGIS Web Adaptor .
  • Файлы лицензии для авторизации программного обеспечения. В них входят файл авторизации для ArcGIS Server и файл для авторизации участников Portal for ArcGIS .
  • Убедитесь, что порт 80 включен для связи по протоколу HTTP.
  • Доверенный сертификат для активизации HTTPS.
  • Оперативная память и дисковое пространство в достаточном количестве. Для установки перечисленных выше компонентов на одно устройство рекомендуется иметь как минимум 16 Гб оперативной памяти и по крайней мере 10 Гб свободного дискового пространства. Вы можете посмотреть все системные требования для каждого конкретного компонента в его руководстве по установке.
  • .zip файл, содержащий шейп-файл с меньше чем 1000 пространственных объектов.

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

  1. Установите и авторизуйте Portal for ArcGIS . Более подробная информация имеется в руководстве по установке Portal for ArcGIS .
  2. Выберите создание нового портала. Создайте учетную запись основного администратора и задайте директорию ресурсов портала.
  3. Вам будет предложено установить ArcGIS Web Adaptor . Прежде чем это сделать, вам потребуется включить HTTPS на веб-сервере.
  4. Установите Web Adaptor. Поскольку этот прототип будет включать два Web Adaptor, назовите этот portal . Настройте Web Adaptor на вашем портале, используя учетную запись основного администратора. См. Об ArcGIS Web Adaptor для более детальной информации по установке и настройке.
  5. Установите и авторизуйте ArcGIS Server . Убедитесь, что вы оформляете лицензию для этого сервера как на ArcGIS GIS Server . В руководстве по установке ArcGIS Server содержатся подробные сведения о процессе установки программного обеспечения.
  6. Создайте сайт и запомните имя пользователя и пароль учетной записи основного администратора сайта. Подробнее об этом процессе см. в разделе Создание нового сайта в документации ArcGIS Server .
  7. Установите второй Web Adaptor с названием server и настройте этот Web Adaptor со своим ArcGIS Server . Вам не нужно разрешать административный доступ.
  8. Установите ArcGIS Data Store и создайте реляционное хранилище данных и хранилище полистного кэша, которые будут использоваться на вашем сайте ArcGIS Server . Более подробно см. в Справке по ArcGIS Data Store.
  9. Войдите в портал, используя учетную запись основного администратора.
  10. Перейдите в Организация > Изменить настройки > Серверы .
  11. Щелкните Добавить сервер и введите URL-сервиса . По этому URL будет выполняться доступ к ГИС-сервисам. Это для Web Adaptor, названного server . В качестве Административного URL-адреса добавьте URL-адрес, который портал будет использовать для связи с сервером. Там должно быть 6443 в URL. Затем введите имя пользователя и пароль учетной записи основного администратора сайта или любого администратора ArcGIS Server .
  12. Установите ваш только что добавленный сервер как хост сервер портала и щелкните Сохранить .
  13. Чтобы проверить корректность работы полученного развертывания, добавьте свой архивированный шейп-файл на портал. Перейдите в Map Viewer , нажав Карта . Щёлкните Добавить > Добавить слой из файла и укажите местоположение файла .zip. Щёлкните Импортировать слой , и содержимое шейп-файла должно появиться на карте.

На рисунке ниже показана созданная вами конфигурация ArcGIS Enterprise .

Для доступа к различным частям вашей конфигурации можно использовать приведенные ниже URL-адреса.

Учебное пособие по созданию пакета в ядре Linux

Я пытаюсь понять, как часть данных проходит через ядро ​​linux из прикладного уровня на провод подробно через ядро. Кто-нибудь знает хорошее место для начала или хороший учебник?

В книге «Понимание ядра Linux» есть определенные ответы для вас.

но если вы ищете более глубокую ссылку на мертвые деревья, я бы рекомендовал Понимание внутренних сетей Linux

Я действительно не знаю, но большая картина выглядит примерно так:

Первое: Приложение → Ядро (через гнездо, полученное в результате привязки к порту)

Внутри ядра: NetFilter Стек TCP/IP → драйвер сетевого адаптера

После ядра: Прошивка NIC → Провод

Позже: после небольшого поиска, посмотрите, что я нашел:

Планирование задач с помощью cron и at

Как радоваться жизни, пока система работает

Этот контент является частью # из серии # статей: Полезные советы по Linux

Этот контент является частью серии: Полезные советы по Linux

Следите за выходом новых статей этой серии.

Системы Linux® и UNIX® позволяют планировать как однократное, так и периодическое выполнение задач. В этой статье, взятой из учебного пособия Подготовка к экзамену LPI 102: Задачи администрирования (LPI exam 102 prep: Administrative tasks), показано, как это делать.

В системе Linux многие административные задачи должны выполняться часто и регулярно. К таким задачам относится ротация log-файлов для предотвращения переполнения файловых систем, создание резервных копий и подсоединение к серверу времени с целью синхронизации системы. Узнать подробнее об этих административных задачах можно, заглянув в упомянутое выше учебное пособие. Из этой статьи вы узнаете о возможностях функций cron и anacron и команд crontab и at , которые служат для планирования в Linux. Даже если система бездействует или выключена, anacron поможет ей наверстать упущенное, когда она заработает в следующий раз.

Выполняйте задачи через равные промежутки времени

Выполнение задач через равные промежутки времени управляется функцией cron, которая состоит из демона crond и набора таблиц, описывающих, какая работа и как часто должна выполняться. Демон просыпается каждую минуту и проверяет файлы расписаний (crontabs), чтобы определить, что нужно сделать. Пользователи управляют этими файлами с помощью команды crontab . Демон crond обычно запускается процессом инициализации (init) при загрузке системы.

Для простоты давайте представим, что вы хотите регулярно запускать команду, показанную в листинге 1. Она всего лишь сообщает дату и время, но на ее примере можно понять, как использовать crontab для установки заданий для cron, а из вывода мы узнаем, когда она была выполнена. Создание записей в файле расписаний требует строки со скрытыми метасимволами программной оболочки, поэтому лучше будет сделать это с помощью простых команд и параметров. В настоящем примере команда echo будет запускаться из скрипта /home/ian/mycrontab.sh, которому не нужны параметры. Таким образом, не потребутся кропотливая работа со скрытыми символами.

Листинг 1. Пример простой команды

Создание файла расписаний

Для создания файла расписаний можно воспользоваться командой crontab с ключом -e (для редактирования, «edit»). В результате откроется редактор vi , если вы не указали другое приложение в переменной среды EDITOR или VISUAL.

Каждая запись в файле расписаний состоит из шести полей:

  1. Минута
  2. Час
  3. День месяца
  4. Месяц
  5. День недели
  6. Строка, которая должна быть запущена при помощи sh

Минуты и часы должны быть в пределах от 0 до 59 и от 0 до 12 соответственно, а день месяца и месяц — от 1 до 31 и от 1 до 12, соответственно. День недели меняется от 0 до 6, где 0 соответствует воскресенью. Также он может обозначаться как sun, mon, tue и т.д. Шестое поле — это все, что идет за пятым и интерпретируется как строка для передачи в sh . Знак процента (%) передается как начало строки, поэтому если вы хотите использовать % или любой другой специальный символ, ставьте перед ним обратный слэш (\). Строка до первого % передается в программную оболочку, а все, что после %, идет в стандартный ввод.

Различные поля, относящиеся к времени, могут иметь одно конкретное значение, интервал значений, например 0-10 или sun-wed, или разделенный запятыми список отдельных значений или интервалов. В некоторой степени искусственно созданная запись в файле расписаний для команды из нашего примера может выглядеть как в примере из листинга 2.

Листинг 2. Пример простого файла расписаний

В этом примере наша команда будет выполняться в 0-ю, 20-ю и 40-ю минуту (каждые 20 минут) в часы между десятью вечера и полночью по пятницам и субботам июля. Подробную информацию о других способах указать время можно найти в справочнике man для crontab(5).

Как насчет вывода?

Вас может заинтересовать, что происходит с выводом команды. Большинство команд, работающих с функцией cron, направляет вывод в журнал при помощи функции syslog, которая обсуждается в учебном пособии Подготовка к экзамену LPI 102: Задачи администрирования (LPI exam 102 prep: Administrative tasks). Однако любой вывод, который направляется в stdout, будет отправлен пользователю по почте. В листинге 3 показан вывод, который пользователь может получить от команды из нашего примера.

Листинг 3. Вывод cron, полученный по почте

Где находится мой файл расписаний?

Файл расписаний (crontab), который вы создали при помощи команды crontab , хранится в /etc/spool/cron под именем пользователя, создавшего его. Таким образом, файл расписаний, о котором речь шла выше, хранится в /etc/spool/cron/ian. Зная это, вы не удивитесь, что команда crontab , как и passwd , является suid-программой, которая выполняется с правами root.

В дополнение к пользовательским файлам расписаний в /var/spool/cron cron также проверяет /etc/crontab и файлы в каталоге /etc/cron.d. В этих системных файлах расписаний есть еще одно поле, между пятым, соответствующим дню недели, и командой. Оно определяет пользователя, для которого будет выполняться команда, как правило, этот пользователь — root. /etc/crontab может выглядеть, как пример из листинга 4.

Листинг 4. /etc/crontab

В этом примере фактическая работа выполняется командой run-parts , которая запускает скрипты из /etc/cron.hourly, /etc/cron.daily и т.д.; /etc/crontab просто контролирует временной режим периодических заданий. Обратите внимание, что все команды здесь выполняются с правами root. Заметьте также, что файл расписаний может содержать присваивание переменных shell, которые будут установлены перед запуском команд.

Функция cron хороша для систем, которые работают постоянно. В случаях, когда система может довольно долго находиться в выключенном состоянии, например в ноутбуках, плановый запуск задач, который обычно ежедневно, еженедельно или ежемесячно осуществляет cron, может выполнять функция anacron (что значит «анахроничный cron», «anachronistic cron»). Anacron не поддерживает ежечасное выполнение заданий.

Anacron хранит файлы с временными метками в /var/spool/anacron, делая в них записи, когда работа выполняется. При запуске anacron проверяет, сколько дней прошло с прошлого выполнения задания, и при необходимости запускает его. Таблица с заданиями для anacron хранится в файле /etc/anacrontab, формат которого немного отличается от /etc/crontab. Так же как и /etc/crontab, /etc/anacrontab может содержать установки среды. Каждому заданию соответствует четыре поля:

  1. период
  2. задержка
  3. идентификатор задания
  4. команда

Период — число дней, но можно определить его как @monthly, чтобы задание выполнялось только раз в месяц, независимо от того, сколько в нем дней. Задержка — сколько минут надо ждать от момента, когда задание готово к выполнению, до его запуска. Этим пользуются, чтобы избежать потока задач при включении системы. Идентификатор задания может содержать любой непустой символ, кроме слэшей (/).

И /etc/crontab, и /etc/anacrontab модифицируются непосредственным редактированием. Не надо использовать команду crontab , чтобы обновить эти файлы или файлы в каталоге /etc/cron.d.

Выполняйте задачи в определенное время

Бывает необходимо выполнить задачу лишь раз, а не делать это регулярно. С этой целью пользуйтесь командой at . Задания, которые должны быть выполнены, читаются из файла, указанного с флагом -f , или из стандартного ввода stdin, если -f не используется. Флаг -m отправляет письмо пользователю, даже если у команды нет стандартного вывода. Флаг -v показывает время, когда задание будет запущено перед чтением задания. Время также показывается в выводе.

В листинге 5 приведен пример работы сценария mycrontest.sh , который использовался ранее. В листинге 6 показан вывод, который отправляется пользователю после запуска задания. Обратите внимание, что он несколько более компактный, чем тот, что отсылается функцией cron.

Листинг 5. Использование команды at
Листинг 6. Вывод задачи, запущенной командой at

Указание времени может быть достаточно сложным. В листинге 7 приведено несколько примеров. Более подробную информауию можно найти на страницах справочника man, посвященных команде at , в файле /usr/share/doc/at/timespec или в файле типа /usr/share/doc/at-3.1.10/timespec, где 3.1.10 соответствует версии пакета at .

Листинг 7. Значения времени в команде at

Для команды at есть также опция -q (queue — очередность). Увеличение очередности увеличивает значение nice для задания. Существует также команда batch , которая похожа на at , за исключением того, что команды выполняются только когда система достаточно мало загружена. Более подробно эти свойства описаны на страницах справочника man.

Управляйте запланированными задачами

Просмотр запланированных задач

Задачами из cron и at можно управлять. Для просмотра списка задач служит команда crontab с ключом -l , а команда atq показывает задания, поставленные в очередь при помощи at , как показано в листинге 8.

Листинг 8. Отображение запланированных заданий

Если вы хотите просмотреть фактические команды, намеченные для выполнения at , то можете воспользоваться командой at с ключом -c и номером задания. Вы заметите, что большая часть окружения, которая была активна в момент запуска команды at , сохраняется для запланированной задачи. В листинге 9 показана часть вывода для задания 15 из листингов 7 и 8. .

Листинг 9. Использование at -c с номером задания

Обратите внимание, что содержимое нашего сценария было скопировано в виде встроенного документа, который будет выполнен программной оболочкой, определенной в переменной SHELL или /bin/sh, если переменная SHELL не установлена. В учебном пособии Подготовка к экзамену LPI 101, тема 103: Команды GNU и UNIX (LPI exam 101 prep, Topic 103: GNU and UNIX commands) можно посмотреть встроенные документы, если есть необходимость.

Удаление запланированных задач

Все запланированные в cron задачи можно удалить командой cron с ключом -r , как показано в листинге 10.

Листинг 10. Отображение и удаление заданий cron

Для удаления системных задач cron или anacron отредактируйте /etc/crontab, /etc/anacrontab или отредактируйте или удалите файлы из каталога /etc/cron.d.

Одну или более задач, запланированных при помощи at , можно удалить командой atrm с указанием номера задания. Несколько заданий должны быть разделены пробелом. В листинге 11 приведен пример.

Листинг 11. Отображение и удаление заданий при помощи atq и atrm

Настройте пользовательский доступ к планировщику задач

Если файл /etc/cron.allow существует, любой пользователь, не являющийся суперпользователем root, должен быть указан в нем, чтобы иметь возможность использовать crontab и cron. Если такого файла нет, но есть /etc/cron.deny, пользователь, не являющийся суперпользователем root и попавший в список из этого файла, не сможет пользоваться crontab или функцией cron. Если нет ни того, ни другого файла, то только суперпользователю будет позволено использовать эту команду. Пустой файл /etc/cron.deny (а по умолчанию он пустой) дает возможность всем пользователям работать с функцией cron.

Аналогичные файлы для at — /etc/at.allow и /etc/at.deny.

Если вы хотите больше узнать о задачах администрирования в Linux, прочитайте учебное пособие «Подготовка к экзамену LPI 102: Задачи администрирования» («LPI exam 102 prep: Administrative tasks»), из которого была взята эта статья, или посмотрите другие Ресурсы ниже. Не забудьте оценить эту страницу.

Ресурсы для скачивания

  • Linux Tip: Job scheduling with cron and at— оригинал этой статьи на developerWorks (EN).
  • Посмотрите в учебном пособии «Подготовка к экзамену LPI 102: Задачи администрирования» («LPI exam 102 prep: Administrative tasks») (EN) (developerWorks, июль 2007) более полную информацию о других задачах администрирования в Linux, включая администрирование пользователей, резервные копии, системные журналы и сетевой протокол службы времени (Network Time Protocol). Учебное пособие является частью Серии учебных пособий по подготовке к экзаменам LPI (LPI exam prep tutorial series) , охватывающих основы Linux и подготавливающих к сертификации по системному администрированию. Другие пособия из этой серии, на которые ссылается настоящая статья: Подготовка к экзамену 101: команды GNU и UNIX (LPI exam 101 prep: GNU and UNIX commands) и Подготовка к экзамену LPI 101: Устройства, файловые системы Linux и стандарт Filesystem Hierarchy Standard .
  • В проекте документации по Linux (Linux Documentation Project) содержится несколько полезных документов, особенно HOWTO.
  • В разделе Linux на developerWorks можно найти больше ресурсов для разработчиков Linux, включая пособия по Linux (EN), а также любимые статьи и учебники наших читателей по Linux (EN) за последний месяц.
  • Свою следующую разработку в Linux создавайте с пробным ПО IBM, доступным для скачивания прямо с developerWorks.

Войдите или зарегистрируйтесь для того чтобы оставлять комментарии или подписаться на них.

Другие статьи:  Инвестиции возврат процента и