
- •Основные понятия операционных систем.
- •Основные понятия, концепции ос
- •2. Классификация ос.
- •3. Функции операционных систем, сравнительный анализ операционных систем.
- •4. Ядро операционной системы, понятие, состав.
- •5.Архитектура ос. Преимущества и недостатки различных архитектур.
- •4 Преимущества и недостатки архитектуры ос с микроядром
- •Эволюция развития операционных систем.
- •Серверные операционные системы. Особенности.
- •Логическая организация файловой системы Linux. Структура и назначение каталогов.
- •Информация о группах и пользователях.
- •10.Разделы диска и таблица разбиения диска. Имена разделов в Linux.
- •Первичный (основной) раздел
- •Расширенный (дополнительный) раздел
- •Этапы загрузки операционных систем. Mbr.
- •Виды совместимостей операционных систем
- •Загрузчики. Оболочки. Утилиты. Репозиторий.
- •Классификация прикладного и системного программного обеспечения.
- •Процессы. Состояния процессов. Операции над процессами. Контекст и дескриптор процесса. Команды управления процессами.
- •Состояние процессов
- •Процесс init и файл /etc/inittab. Жизненный цикл процесса, приоритеты
- •Фоновый режим в Linux. Демоны. Запуск демонов.
- •Нити. Семафоры. Потоки. Жизненный цикл потока. Операции над потоками.
- •Перенаправление команд. Понятие конвейера.
- •Распределение памяти.
- •22. Критерии планирования
- •23. Классификация методов распределения памяти.
- •24. Схема с фиксированными разделами
- •Перемещаемые разделы
- •Свопинг
- •26. Управление ресурсами. Освобождение дискового пространства.
- •29. Монтирование и демонтирование файловой системы
- •30. Основные типы файлов. Права доступа к файлу. Операции над файлами
- •31. Перенаправление ввода-вывода, каналы и фильтры. Категории средств обмена информацией
- •32.Работа в командном режиме.Скрипты. Среда переменных.
- •33.Параметры и переменные. Окружение оболочки. История команд.
- •34.Квотирование. Особенности квотирования в Linux.
- •35. Основные конфигурационные файлы. Конфигурационный файл.
- •36.События, системные вызовы, прерываний, исключительные ситуации.
- •37. Команды управления сетью.
- •39.Безопасность в Linux. Администрирование системы Linux.Взлом Linux
- •40.Защитные механизмы ос.
33.Параметры и переменные. Окружение оболочки. История команд.
Понятие параметра в оболочке bash подобно понятию переменной в обычных языках программирования. Именем (или идентификатором) параметра может быть слово, состоящее из алфавитных символов, цифр и знаков подчеркивания (только первый символ этого слова не может быть цифрой), а также число или один из следующих специальных символов: *, @, #, ?, - (дефис), $, !, 0, _ (подчеркивание).
Говорят, что параметр задан или установлен, если ему присвоено значение. Значением может быть и пустая строка. Чтобы вывести значение параметра, используют символ $ перед его именем. Так, команда [user]$ echo name выдаст на экран слово name, а команда [user]$ echo $name выдаст значение переменной name.
Параметры разделяются на три класса: позиционные, специальные (именами которых как раз и служат спецсимволы) и переменные оболочки.
Имена (идентификаторы) позиционных параметров состоят из одной или более цифр (только не из одиночного нуля). Значениями позиционных параметров являются аргументы, которые были заданы при запуске оболочки (первый аргумент является значением позиционного параметра 1, и т. д.). Изменить значение позиционного параметра можно с помощью встроенной команды set. Значения этих параметров изменяются также на время выполнения оболочкой одной из функций.
Специальные параметры. Параметры - ? # $ ! устанавливаются только Shell. Они позволяют с помощью команды echo получить следующую информацию:
- – текущие флаги интерпретатора (установка флагов может быть изменена командой set);
# – число аргументов, которое было сохранено интерпретатором при выполнении какой-либо команды;
? – код возврата последней выполняемой команды;
$ – числовой идентификатор текущего процесса PID;
! – PID последнего фонового процесса.
Переменная с точки зрения оболочки - это параметр, обозначаемый именем. Значения переменным присваиваются с помощью оператора следующего вида: [user]$ name=value, где name - имя переменной, а value - присваиваемое ей значение (может быть пустой строкой). Имя переменой может состоять только из цифр и букв и не может начинаться с цифры. Значением может быть любой текст. Если значение содержит специальные символы, то его надо взять в кавычки. Если переменная задана, то ее можно удалить, используя встроенную команду оболочки unset.
Набор всех установленных переменных оболочки с присвоенными им значениями называется окружением (environment) или средой оболочки. Можно просмотреть его с помощью команды set без параметров (либо следует организовать конвейер "set | less"). В выводе этой команды все переменные окружения перечисляются в алфавитном порядке. Для того чтобы просмотреть значение одной конкретной переменной, можно вместо команды set (в выводе которой нужную переменную еще искать и искать) можно воспользоваться командой: [user]$ echo $name.
Среди переменных, которые вы увидите в выводе команды set, встречаются интересные переменные. Напр., переменная RANDOM. [user]$ echo $RANDOM возвращает случайное целое из интервала 0 - 32 768.
Сводка команд, позволяющих редактировать командную строку, а также вообще оказывать какое-то влияние на поведение оболочки с помощью клавиатуры Примечание
Приводимые ниже описания команд относятся к оболочке GNU bash версии 1.14.7(1). Думается, что они будут верны и для последующих версий этой оболочки.
Таблица 1. Клавиши редактирования командной строки
Примечание:Если вы работаете не просто в оболочке bash, а запустили программу Midnight Commander, то такие клавиши как <Стрелка вправо>, <Стрелка влево>, <Home>, <End>, <Del> не могут использоваться так, как указано в приведенной таблице, поскольку они используются для перемещения подсветки в текущей панели. Но указанные выше в скобках комбинации символьных клавиш с клавишами <Ctrl> и <Esc> по-прежнему действуют для редактирования командной строки. Список возможных команд не ограничивается только приведенными в табл. 1, но из-за ограниченности объема книги невозможно привести здесь полный перечень клавиатурных команд. Для получения дополнительной информации воспользуйтесь командой info bash.
Заметим, что оболочка bash имеет встроенную подпрограмму, предназначенную для облегчения ввода команд в командной строке. Эта подпрограмма вызывается по клавише <Tab> после того, как вы уже ввели некоторое число символов. Если эти символы являются началом названия одной из стандартных команд, которые известны оболочке, то возможны два варианта реакции оболочки на нажатие клавиши <Tab>. Если по введенным символам команда определяется однозначно, оболочка просто добавляет окончание команды в командную строку.