Зачем нужен системный администратор
Конспект лекции
Лекция 1.
Знакомство. Введение в системное администрирование. Список рекомендуемой литературы. Задание которые нужно сделать дома и на паре.
Что такое системное администрирование
Многое из того, что необходимо для работы системного администратора, и первые сведения можно получить, если рассмотреть следующие вопросы.
• Взаимодействие между администратором и машиной; очередная попытка разрешить извечный спор на тему "Кто в доме хозяин?".
• Зачем нужен системный администратор? (Как вы помните, формально системные администраторы считаются обслуживающим персоналом.)
• Что делать, если администратору пришлось начать работу с системой, конфигурация которой оставляет желать лучшего?
Итак, вы приступили к выполнению обязанностей системного администратора (или по крайней мере, вступили в эту должность). Какие обязанности вы на себя взяли? Мы рассмотрим, что разрешается делать системному администратору и что он обязан делать. Если слова "системный администратор" уже сами по себе вызывают у вас восторг, вы, возможно, будете несколько разочарованы. Однако, не подумайте, что мы собираемся уговаривать вас свернуть с избранного вами пути. Несмотря на огромные трудности, работа системного администратора — чрезвычайно увлекательное занятие для того, кто любит технику и получает удовольствие, решая сложные и нетривиальные задачи. Заметим также, что многих трудностей можно попросту избежать, однако для этого необходимо обладать достаточными знаниями и, конечно же, внимательно следить за работой системы.
Возможно, вы скажете: "На этой машине работаю только я, поэтому я могу делать все, что захочу". Увы, это не так. Если ваш компьютер подключен к сети, вы несете ответственность перед остальными пользователями и не вправе делать то, что может помешать их работе. Независимо от того, сколько компьютеров подключено к сети, можно сказать наверняка, что система, конфигурация которой тщательно спланирована и работа которой постоянно контролируется, функционирует надежно и доставляет минимум забот системному администратору.
Из сказанного можно сделать простой вывод: постоянно следите за системой и, если вы можете сделать что-либо, что улучшит ее работу, — обязательно сделайте это. На сегодняшнем занятии начинающий администратор узнает, с какими проблемами ему, возможно, придется столкнуться и что сделать, чтобы свести перечень возникающих проблем к минимуму. Вполне вероятно, что о некоторых вопросах, которые рассмотрены, вы даже не задумывались ранее. Работа системного администратора имеет много особенностей
Что может системный администратор
Задумывались ли вы когда-либо, что бы вы сделали, если бы получили неограниченные полномочия? Нет? Напрасно, потому, что, как системный администратор вы весьма близки к этому. По долгу службы вы можете стать суперпользователем, или пользователем root. После того как вы зарегистрируетесь под именем root, для вас станет возможно абсолютно все! Вы сможете создавать учетные записи новых пользователей или удалять существующие. Вы сможете принудительно завершить процесс, запущенный кем бы то ни было. Вы сможете выступать от имени любого из пользователей, даже не зная его пароля. Вы сможете восстановить работу программы в случае сбоя. В то же время вы сможете навредить себе так, как никто иной, — например, вы сможете случайно стереть с диска ядро операционной системы. Образ мыслей хорошего системного администратора — неразрешимая загадка для психолога. Это невероятный сплав чувства собственного превосходства над остальными во всех системных вопросах и готовности терпеть капризы окружающих его пользователей и даже компьютеров.
Будьте осторожны.
Прежде чем взять на себя обязанности администратора, хорошо подумайте. Я не пытаюсь запугать вас, однако, вы должны быть уверены в том, что действительно готовы к этой работе. Не забывайте, что системный администратор - это не просто работа, а стиль жизни. Задачи, возникающие при выполнении повседневных обязанностей чрезвычайно увлекательны; вы получаете ни с чем несравнимое удовольствие, наблюдая, как сложные системы подчиняются вашему приказу. С другой стороны, на решение некоторых задач вам придется затратить чрезвычайно много времени и, возможно вы будете глубоко разочарованы, увидев, что пользователи даже не заметили, как вы справились с проблемой, казавшейся на первый взгляд неразрешимой.
Помните, что занимаясь администрированием системы, предоставляющей услуги другим пользователям, вы отвечаете за ее исправность и стабильную работу. Однако, не думайте, что меры, принимаемые вами, будут с пониманием встречены пользователями. Скорее всего, пользователи попросту не поймут, что вы действуете в их же интересах и воспримут неизбежные при этом ограничения с явным неудовольствием.
Не забывайте также, что вам придется отвечать и за безопасность машин, подключенных к сети. Недостатки в защите вашей машины автоматически ставят под угрозу все остальные компьютеры в сети, а, следовательно, угрожают интересам пользователей. И если вы обнаружили брешь в системе безопасности, работы по ее устранению нельзя откладывать ни на минуту.
Нельзя забывать о том, что дополнительные полномочия автоматически влекут за собой дополнительную ответственность. Вы должны знать, как следует устанавливать систему и как обеспечить ее безопасность и стабильную работу. Вам предстоит применять полученные знания на практике и отвечать за результаты ваших действий.
Выводы.
Рассмотрены следующие вопросы:
• Богатые возможности системы ОС удалось реализовать в основном благодаря наличию механизма абстрагирования. Помните, что ваши обязанности как системного администратора состоят в том, чтобы обратить возможности системы и механизмы, реализующие их, на пользу абонентам.
• Права пользователя root не ограничены. Вы как системный администратор, можете пользоваться всеми правами, предоставляемыми суперпользователю. Однако большие права предполагают большую ответственность. Одна неверная команда может разрушить всю операционную систему.
• Системному администратору приходится решать самые разнообразные задачи. Вам придется не только сидеть за экраном компьютера, но и подключать новые устройства, заказывать оборудование, помогать пользователям в работе, заниматься расстановкой мебели и компьютеров в комнате и выполнять другую работу. Вы должны быть готовы ко всему. Если должность, предусматривающая такие разнообразные обязанности, вам под душе — добро пожаловать в системные администраторы!
Некоторые задачи может выполнить только пользователь root. В качестве примера подобной задачи можно привести добавление устройств в систему. Помните, что чем меньше пользователей знают пароль root, тем меньше шансов, что кто-то случайно разрушит систему.
• Ваши пользователи также имеют определенные обязанности. Конечно же, вы должны обеспечивать им условия для высокопроизводительной работы, но пользователи также должны прилагать определенные усилия для создания этих условий. Так, например, желательно, чтобы они хранили копии своих данных. Руководство также должно содействовать вам в вашей работе — предоставлять возможность приобретать аппаратные средства и дистрибутивные пакеты, участвовать в разработке системной политики — набора правил, регламентирующих работу системы.
• Основная задача системного администратора — обслуживание пользователей. Помните, что существование вашей системы и вашей должности имеет смысл только в том случае, если в системе работают пользователи. При обслуживании запросов пользователей руководствуйтесь системной политикой. Если соответствующий набор правил еще не разработан — сделайте это поскорее.
• Стремитесь к взаимовыгодному сотрудничеству. Если совместные действия нескольких подразделений приносят выгоду всем, пользователи автоматически оказываются в выигрыше. Иногда бывает на удивление просто создать пользователям дополнительные возможности для работы, однако для этого необходимо уметь анализировать текущую ситуацию оценивать последствия предпринимаемых действий.
• Обращайтесь за помощью, если в этом есть необходимость. Не тратьте время, пытаясь во что бы то ни стало решить проблему самостоятельно. Обратитесь к более опытным коллегам либо отправляйте вопрос в группу новостей.
Список рекомендуемой литературы
1. Лимончелли Т. А. Системное и сетевое администрирование. Практическое руководство / Т. А. Лимончелли К. Хоган, С. Чейлап - М. Символ-Плюс, 2009. - 944
2. Лимончелли Т. А. Тайм-менеджмент для системных администраторов / Т. А. Лимончелли - М. Символ-Плюс, 2014. - 240
3. МинасиМ. Windows Server 2012 R2. Полное руководство. Том 1. Установка и конфигурирование сервера, сети, DNS / М. Минаси, K. Грин, К. Бус, Р. Батлер - М. Вильямс, 2014. - 960 с.
4. МинасиМ. Windows Server 2012 R2. Полное руководство. Том 2. Дистанционное администрирование, установка среды с несколькими доменами, виртуализация, мониторинг и обслуживание сервера / М. Минаси, К. Бус, К. Грин, Р. Батлер, Дж. Мак-Кейб, Р Панек, М. Райс, С. Рот- М. Вильямс, 2015. - 864 с.
5. Эффективное программирвоание на PowerShell - URL: https://blogs.technet.microsoft.com/abeshkov/2008/12/31/655/
6. Немет Э. Unix и Linux. Руководство системного администратора / Э. Немет, Г. Снайдер, Т. Р. Хейн, Б. Уэйли, -М. Вильямс, 2014. - 1312 с.
7. Роббинс А. Bash. Карманный справочник системного администратора / А. Роббинс -М. Вильямс, 2017. - 152 с.
8. Sander van Vugt Red Hat RHCSA/RHCE 7 Cert Guide: Red Hat Enterprise Linux 7 (EX200 and EX300) / Sander van Vugt — Pearson IT Certification, 2015. — 1008 p.
9. TechNet - URL: https://technet.microsoft.com/ru-ru/
10. Документация по Debian GNU/Linux - URL: https://www.debian.org/doc/index.ru.html
Задание которые мы должны сделать дома и практическая работа на паре.
Все задания мы можем прочитать на сайте: https://edu.vsu.ru/
На сайте справа показывает кнопка вход, а наверху написано логин и пароль. Логин это номер свой студенческий билет, а пароль свой дата рождения.
Лекция 2.
Чем занимается систем администрация.
1- Развитие и поддержка работы сети
2- Поддержка работоспособности ЭВМ (обновление/установка, покупка/ремонт оборудование), а для серверов: поддержка определенного ПО
3- Обеспечение безопасности
4- Периферийные устройства (печать, сканирование и т.д.)
Задачи:
· Закупка (функционал -> требуемое качество)
· Введение в эксплуатацию (установка/обучение софта, проверка работоспособности)
· Ремонт/мониторинг/ведение документации, резервные копии
· Модернизация
· Автоматизация
(подробнее) К обязанностям системного администратора обычно относят следующие задачи:
- подключение и настройка аппаратных устройств;
- установка и обновление программного обеспечения;
- запуск и настройка общесистемных сервисов (конфигурирование системы);
- управление пользователями;
- управление процессами;
- распределение ресурсов;
- обеспечение безопасности.
Вопросы подключения и настройки аппаратных средств, а также процедуры установки и обновления программного обеспечения мы рассмотрим в двух последующих главах. Остальные задачи системного администрирования будут кратко рассмотрены в настоящем разделе. Начнем с рассмотрения того, как происходит процесс загрузки ОС. Дело в том, что этот этап во многом определяет режим последующей работы системы и ее конфигурацию. Если вы умеете влиять на процесс загрузки, значит, вы уже сможете добиться желаемой конфигурации системы после загрузки.
Но для понимания процедуры начальной загрузки необходимо иметь самое общее представление о том, что такое процесс в системе, поскольку это понятие будет постоянно использоваться в дальнейшем.
В самом первом приближении можно считать, что процесс — это загруженная в оперативную память программа. Но это не совсем точно, правильнее было бы сказать, что "процесс выполняет программу". Дело в том, что в Linux вначале запускается процесс, который загружает в оперативную память программу из указанного ему файла и начинает ее выполнять. Это означает, что каждый процесс должен быть запущен (как говорят — "порожден") каким-то другим процессом. То есть для каждого процесса однозначно определен его "родитель" (или "предок"), для которого данный процесс является "дочерним" (или "потомком"). Если вы хотите увидеть "дерево" запущенных в вашей системе процессов, выполните команду pstree. Вывод этой команды позволяет увидеть, что "отцом" всех процессов в системе (или "корнем дерева процессов") является процесс init, который первым запускается после загрузки ядра.
Каждый процесс в системе имеет уникальный идентификатор — PID, назначаемый процессу при запуске. Процесс с идентификатором 1 выполняет программу init. Именно по этим идентификаторам система различает процессы. Каждый запущенный процесс в любой момент времени находится в одном из следующих состояний: активен (R), приостановлен (T) или "спит" (S). Текущее состояние процесса называют статусом процесса.
Кроме идентификатора и статуса для каждого процесса в специальных структурах ядра сохраняются следующие данные (приводимый ниже перечень является далеко не полным):
- полная командная строка запуска выполняемой процессом задачи;
- информация об отведенном процессу адресном пространстве;
- ссылка на текущий рабочий каталог и корневой каталог процесса (последний служит для ограничения доступа процесса к файловой структуре);
- таблица открытых процессом файлов;
- так называемое окружение процесса, т. е. перечень заданных для данного процесса переменных с их текущими значениями;
- атрибуты, определяющие права и привилегии процесса,
- таблица обработчиков сигналов;
- указание на родительский процесс;
- пользовательская маска (umask) или маска доступа — указание на то, какие права надо удалить при создании нового файла или каталога из стандартного набора прав, присваиваемых файлу (каталогу).
Поскольку Linux — система многозадачная, одновременно может быть запущено много процессов. Впрочем, слово "одновременно" здесь применено не совсем корректно, поскольку на самом деле в каждый момент времени выполняется только один процесс. (Для точности следует заметить, что в многопроцессорных системах, на которых Linux тоже может работать, одновременно могут выполняться несколько процессов, но мы рассматриваем только однопроцессорные системы). Планировщик процессов выделяет каждому процессу небольшой квант времени и по истечении этого кванта передает управление следующему процессу. Кванты времени, выделяемые каждому процессу, так малы, что у пользователя создается иллюзия одновременного выполнения многих процессов. А для того, чтобы некоторые, наиболее важные процессы, получали больше процессорного времени, для каждого процесса установлен приоритет.
Пользователи могут "общаться" с процессами путем посылки им сигналов. Процессы тоже общаются друг с другом посредством сигналов. Когда мы нажимаем комбинацию клавиш <Ctrl>+<C>, чтобы завершить выполнение какой-то программы, мы фактически посылаем соответствующему процессу сигнал "Завершить работу". Завершаясь, процесс посылает родительскому процессу сигнал о своем завершении. Но бывают случаи, когда родительский процесс завершается раньше дочернего. Процессы, не имеющие родителя, называются "сиротами". "Сироты" автоматически усыновляются процессом init, который и принимает сигналы об их завершении. Если процесс-родитель по каким-то причинам не может принять сигнал о завершении дочернего процесса, то процесс-потомок превращается в "зомби" и получает статус Z. Процессы-зомби не занимают процессорного времени (т. е. их выполнение прекращается), но соответствующие им структуры ядра не освобождаются. Уничтожение таких процессов — одна из обязанностей системного администратора. Наконец, процесс может надолго "впасть в сон", прервать который не удается. Статус таких процессов обозначается символом D. Уничтожить их удается только при перезагрузке системы.
Особым видом процессов являются демоны. Вообще-то в них нет ничего особого. Это просто процессы, выполняющиеся в фоновом режиме, без вывода каких-либо данных на терминал. Демоны обычно используются для выполнения сервисных функций, обслуживания запросов от других процессов, причем не обязательно выполняющихся на данном компьютере.
Надо еще упомянуть, что процессы могут запускать ("внутри себя") отдельные нити (thread), или потоки. Нити — это параллельно выполняемые части одной программы, которые в Linux реализованы как процессы, запускаемые со специальным флагом. С точки зрения системы они отличаются от других процессов только тем, что для них не создается отдельное окружение, они выполняются в среде родительского процесса.
Лекция 3.
Так сейчас мы расскажем про стоимость владения. Попробуем про машины.
· Новая машина: 550000 руб + аптечка/огнетушитель (раз в 2 года)
· Страховка: 8000 руб каждый год
· Регистрация в ГИБДД: 2700 руб (один раз)
· ТО: 1000 руб каждый год
· Резина (шины): 3500 руб * 4 штук + через 5 замена(лето+зима) + 2000руб ->(каждый год)
· Налог: 2500 руб каждый год
· Топливо 300р/100 км
· Мойка/штрафы, платные парковка
· Дом-работа 20 км/день 1год:20*365=7500км
· Машина 40т.р, э.р. + 70000=116000руб
· Общественный транспорт 17*2*365=12500руб
· Такси 400*365=146000 руб
· Велосипед: ?>0
· Пешком: 00
Так
Совокупная стоимость владения (ТСO - TotalCostofOwnership) информационной системой - сравнительно новое понятие, которому в последнее время уделяется самое пристальное внимание в литературе. Под совокупной стоимостью владении понимается сумма прямых и косвенных затрат, которые несет владелец системы за период жизненного цикла последней.
При анализе ТСО рассматривают жизненный цикл, включающий в себя время жизни существующей на предприятии системы, время, необходимое для проектирования нового альтернативного решения, срок эксплуатации альтернативной системы с учетом амортизации ее элементов и ориентировочного срока ожидания. Полсроком ожидания понимают время, необходимое для выхода системы на уровень доходности, при котором ее эксплуатация позволяет получить частичный (до 90%) возврат инвестиций, вложенных в систему.
При выборе новой информационной системы между альтернативными существующему решению вариантами необходимо оценить совокупную стоимость владения для каждого предлагаемого варианта. При этом жизненный цикл, на котором оцениваются прямые и косвенные затраты, должен включать:
- время жизни существующей на предприятии системы;
- время проектирования новой системы;
- время на закупку и внедрение элементов новой системы;
- время эксплуатации новой системы, которое необходимо ограничить сроком возврата 90% вложенных инвестиций за счет прибыли от эксплуатации этой системы. Вариант информационной системы с более коротким жизненным циклом предпочтителен для дальнейшего использования. На рис. 1 самым рациональным является вариант А.
Точка выбора новой системы для каждого предприятия индивидуальна. Предприятие может начать этот процесс в различных случаях, например:
- при появлении необходимости дополнить или изменить функции существующей информационной системы, чтобы они соответствовали изменившимся потребностям бизнеса и не приводили к неоправданным финансовым потерям;
- при достижении доходов от эксплуатации существующей системы порядка 90% вложенных в нее инвестиций;
- при превышении эксплуатационных затрат на систему над доходами от ее использования и др.
Прямые и косвенные затраты могут включать следующие составляющие:
Прямые затраты
1.1. Основные затраты:
- создание информационной системы;
- оборудование - серверы, клиентские места, периферия, сетевые компоненты;
- программное обеспечение (ПО);
- приложения, утилиты, управляющее ПО;
- обновление (модернизация).
1.2. Эксплуатационные затраты:
- управление задачами (сетью, системой, массивами памяти);
- поддержка работоспособности системы - персонал, функционирование справочной службы, обучение, закупки, подготовка контрактов на поддержку системы;
- разработка инфраструктуры, бизнес приложений.
1.3. Прочие затраты:
- создание коммуникаций - глобальные сети, взаимодействие с поставщиками сервиса, удаленный доступ, Internet, доступ клиента
- управление и поддержка - аутсорсинг, сопровождение, справочная система
Все затраты на создание информационной системы, которые ассоциируются с установкой оборудования и его подготовкой к эксплуатации, должны оцениваться как часть инвестиций. Эти разовые затраты могут включать в себя такие составляющие, как проектирование системы, программирование, тестирование системы, ревизия системы, приобретение оборудования, разработка и изменение руководств, обучение и передвижения в связи с установкой, тестированием и параллельным запуском системы.
Затраты на оборудование включают в себя стоимость компонент системы, затраты в течение жизненного цикла, такие, как смена оборудования, которое заменяется до истечения жизненного цикла. Затраты на оборудование могут включать и такие разовые расходы, как сопутствующая мебель для периферийных устройств. Оценки подготовительных работ должны основываться на масштабах реноваций и включать в себя изменение расположения при перемещении, добавлении или удалении оборудования. Кроме того, в эти затраты необходимо включать и изменении в электропитании, освещении и кондиционировании воздуха. Если часть оборудования берется в лизинг, то суммарные затраты на это оборудование выделяются в отдельную категорию.
В таблице перечислены основные виды затрат и их составляющие, которые необходимо учитывать при определении совокупной стоимости владения.
Эксплуатационные затраты (затраты на обслуживание и работу системы) | |
1. Затраты на сетевое управление - расходы административного персонала на решение задач, ассоциируемых с управлением сетью и клиентами |
|
2. Затраты на управление системой - расходы на управление приложениями, имуществом и миграциями |
|
| |
3. Затраты на управление устройствами хранения данных - расходы на задачи, связанные с управлением и контролем за данными и их хранением в сети |
|
Косвенные затраты | |
Затраты, связанные с оплатой действий, напрямую не являющихся рабочими функциями | Контроль, отправка и получение почты, телефонные разговоры, ввод информации, переводы, расходы n.i помещение, потери от плановых и внеплановых простоев, коммунальные услуги и поддержку административного и конторского персонала |
Давай попробуем на ПК.
· Покупка
· Электроэнергия
· Ремонт
· Подготовка помещения (столы, кондиционер, ЛВС проектировка, монтаж)
· Поддержка ПО
На дому мы должны написать в ods/xls файла с формулами стоимость владения принтера (каждому участнику разный (3-5) принтер в зависимости от печати) и скинуть в сайте https://edu.vsu.ru/
Стоимость владения печатного устройства
· Объем печати 100стр->40000 стр/мес
· Технологии (струйный, лазерный, и т.д.)
· Обзор доступных моделей
· Обоснование расходных материалов (картридж и т.д.)
И еще надо написать в другом doc документе(файл) технического задания (ТЗ) тот же принтер который очень выгодно выбирать. На это задание дают 2 месяца до срококончаия.
Техническое задание — исходный документ на проектирование технического объекта (изделия). ТЗ устанавливает основное назначение разрабатываемого объекта, его технические характеристики, показатели качества и технико-экономические требования, предписание по выполнению необходимых стадий создания документации (конструкторской, технологической, программной и т. д.) и её состав, а также специальные требования. Техническое задание является юридическим документом — как приложение включается в договор между заказчиком и исполнителем на проведение проектных работ и является его основой: определяет порядок и условия работ, в том числе цель, задачи, принципы, ожидаемые результаты и сроки выполнения. То есть должны быть объективные критерии, по которым можно определить, сделан ли тот или иной пункт работ или нет. Все изменения, дополнения и уточнения формулировок ТЗ обязательно согласуются с заказчиком и им утверждаются. Это необходимо и потому, что в случае обнаружения в процессе решения проектной задачи неточностей или ошибочности исходных данных возникает необходимость определения степени вины каждой из сторон-участниц разработки, распределения понесенных в связи с этим убытков. Техническое задание, как термин в области информационных технологий – это юридически значимый документ, содержащий исчерпывающую информацию, необходимую для постановки задач исполнителям на разработку, внедрение или интеграцию программного продукта, информационной системы, сайта, портала либо прочего ИТ сервиса.
Например:
Техническое задание ноутбук 17” процессор ,,,,
принтер
Скорость печати, и т.д.
Документация:
· Текстовый процессор
· Бумажный вариант
· Облако
· WiKi(сайт)/смс
· Стандарт оформления
· Linux
· Виртуалка с 2012 сервером
· Ядро
· Инструментарии управления
· Прикладное ПО
1. MS Office
2. 1C предприятия
3. Web серверы
4. Серверы СУБД
И т.д
· Сетевые настройка
· Устройства хранения(разбиение диска на разделы)
Лекция 4.
Интерпретатор.
Интерпретатор (interpreter) — программа или техническое средство, выполняющее интерпретацию, а также вид транслятора, осуществляющего пооперационную (покомандную) обработку и выполнение исходной программы или запроса. В отличие от компилятора, который осуществляет трансляцию всей программы высокого уровня в машинные коды один раз без ее выполнения (создает объектную программу), интерпретатор транслирует исходную программу команда за командой каждый раз при выполнении и не создает объектного модуля. За счет такого режима выполнение программы происходит медленнее, чем в случае ее обработки транслятором, однако при обработке интерпретатором программы выполняются сразу, без промежуточной стадии трансляции.
Интерпретаторы — трансляторы языков программирования, работают на отличающемся от компиляторов принципе. Интерпретаторы не производят исполняемого машинного кода. Они берут исходный текст программы на языке программирования и выполняют его сами строка за строкой. При этом интерпретатор извлекает из файла с исходным текстом одну команду, распознает ее и вызывает те или иные функции операционной системы. Интерпретатор определяет команду и переводит (интерпретирует) ее так, чтобы операционная система поняла, что от нее хотят. Скорость выполнения программ в режиме интерпретации намного ниже, чем у компилированного кода, за счет того, что работа программы идет не напрямую с центральным процессором на языке машинных команд, а через программу-посредника, которая и тратит большое количество времени на распознавание исходного текста. В отличие от интерпретаторов, компиляторы «знакомятся» с исходными текстами программы всего один раз, когда делают из текста на языке программирования машинный код.
Простые интерпретаторы анализируют и выполняют (интерпретируют) программу последовательно (покомандно или построчно). Синтаксические ошибки обнаруживаются, когда интерпретатор приступает к выполнению команды (строки) содержащей ошибку. Сложные интерпретаторы компилирующего типа перед выполнением производят компиляцию исходного кода программы в машинный или «промежуточный код». Они быстрее выполняют большие и циклические программы, не занимаются анализом исходного кода в реальном времени. Некоторые интерпретаторы для начинающих программистов (преимущественно, для языка Бейсик) могут работать в режиме диалога, добавляя вводимую строку команд в программу (в памяти) или выполняя команды непосредственно.
Интерпретация (в программировании)
Интерпретация языков программирования, один из методов реализации языков программирования на электронных вычислительных машинах (ЭВМ). При И. каждому элементарному действию в языке соответствует, как правило, своя программа, реализующая это действие, и весь процесс решения задачи представляет собой моделирование на ЭВМ соответствующего алгоритма, записанного на этом языке. При И. скорость решения задач обычно значительно ниже, чем при других методах, однако И. легче реализуется на ЭВМ, а во многих случаях (например, при моделировании работы одной ЭВМ на другой) оказывается и единственно пригодной.
В windowsкомандная строка (cmd), в Linuxтерминал.
· make – сборка исполняемого файла
· bash- стандартный командный интерпретатор линукс
· ls- содержимое текущего каталога
· --help –помощь и подсказки
· mkdir- создание каталога
· /_пробел в имени <<>>
· rmdir/ rm –r удаление
· cd_ переход в другие каталоги
· сd … каталог уровня выше
· pwd в каком каталоге
· -а скрытые файлы
с заменой
· >перенаправление потока в файл
· >> c дополнением
· cat скопировать содержимое файла в консоль
· | вывод одной команды на вход другой
· / поиск
PUTTY
Putty - это программа, посредством которой можно общаться с удаленным компьютером по протоколу SSH.
Файловые команды
· ls – список файлов и каталогов
· ls -al – форматированный список со скрытыми каталогами и файлами
· cddir – сменить директорию на dir
· cd – сменить на домашний каталог
· pwd – показать текущий каталог
· mkdirdir – создать каталог dir
· rmfile – удалить file
· rm -rdir – удалить каталог dir
· rm -ffile – удалить форсированноfile
· rm -rfdir – удалить форсированно каталог dir *
· cp file1 file2 – скопировать file1 в file2
· cp -rdir1 dir2 – скопировать dir1 в dir2; создаст каталог dir2, если он не существует
· mvfile1 file2 – переименовать или переместить file1 в file2. если file2 существующий каталог — переместить file1 в каталог file2
· ln -sfilelink – создать символическую ссылку link к файлу file
· touch file – создать file
· cat>file – направить стандартный ввод в file
· more file – вывестисодержимое file
· headfile – вывести первые 10 строк file
· tailfile – вывести последние 10 строк file
· tail -ffile – вывести содержимое file по мере роста, начинает с последних 10 строк
Управлениепроцессами
· ps – вывести ваши текущие активные процессы
· top – показатьвсезапущенныепроцессы
· killpid – убить процесс с idpid
· killallproc – убить все процессы с именем proc *
· bg – список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне
· fg – выносит на передний план последние задачи
· fgn – вынести задачу n на передний план
Правадоступанафайлы
· chmodoctalfile – сменить права file на octal, раздельно для пользователя, группы и для всех добавлением:
● 4 – чтение (r)
● 2 – запись (w)
● 1 – исполнение (x)
Примеры:
· chmod 777 – чтение, запись, исполнение для всех
· chmod 755 – rwx для владельца, rx для группы и остальных.
· Дополнительныеопции: man chmod.
· find -typed -execchmod 770 {} \; — изменить права только у папок
SSH
· sshuser@host – подключится к host как user
· ssh -pportuser@host – подключится к host на порт port как user
· ssh-copy-iduser@host – добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам
Поиск
· grep pattern files – искать pattern в files
· grep -r pattern dir – искатьрекурсивно pattern в dir
· command | grep pattern – искать pattern в выводе command
· locatefile – найти все файлы с именем file
Системнаяинформация
· date – вывести текущую дату и время
· cal – вывести календарь на текущий месяц
· uptime – показатьтекущийаптайм
· w – показатьпользователейонлайн
· whoami – имя, под которым вы залогинены
· fingeruser – показать информацию о user
· uname -a – показать информацию о ядре
· cat /proc/cpuinfo – информация ЦПУ
· cat /proc/meminfo – информация о памяти
· man command – показатьмануалдля command
· df – показать инф. о использовании дисков
· du – вывести “вес” текущегокаталога
· free – использованиепамяти и swap
· whereisapp – возможное расположение программы app
· whichapp – какая app будет запущена по умолчанию
Архивация
· tar cf file.tar files – создать tar-архив с именем file.tar содержащий files
· tar xf file.tar – распаковать file.tar
· tar czf file.tar.gz files – создатьархив tar с сжатиемGzip
· tar xzf file.tar.gz – распаковать tar с Gzip
· tar cjf file.tar.bz2 – создатьархив tar с сжатием Bzip2
· tar xjf file.tar.bz2 – распаковать tar с Bzip2
· gzipfile – сжать file и переименовать в file.gz
· gzip -dfile.gz – разжать file.gz в file
Сеть
· pinghost – пропинговатьhost и вывести результат
· whoisdomain – получить информацию whois для domain
· digdomain – получить DNS информацию domain
· dig -xhost – реверсивно искать host
· wget file – скачать file
· wget -cfile – продолжить о