Урок09.html

Описание команды TASKLIST

Команда TASKLIST отображает список приложений и служб с кодом процесса (PID) для всех задач, выполняющихся на локальном или удаленном компьютере. А для завершения процессов используется команда TASKKILL.

Cron — один из часто используемых инструментов для Unix-систем. Его используют для планирования выполнения команд на определённое время. Эти «отложенные» команды или задания принято называть «Cron Jobs». Такой инструмент отлично подходит для регулярных бэкапов, мониторинга дискового пространства, удаления файлов (например, логов) и много чего ещё. В этой статье будет рассказано о работе с Cron на Linux.

Описание команды taskkill

Команда taskkill завершает одну или несколько задач либо процессов. Процессы могут быть завершены по идентификатору процесса или именам исполняемых файлов на локальной или удаленной системе. Вы можете использовать команду tasklist, чтобы определить идентификатор процесса (PID) для завершения процесса. Например:

— отобразит информацию для процессов с именем, содержащим строку «notepad» и в ответ будет выдано сообщение:


Урок09.html

Где 13000 и 1684 — это идентификаторы процессов PID с именем, содержащим строку «notepad».

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

Для использования в многопользовательской конфигурации системы, например на сервере терминалов, вместо команды TASKKILL, удобнее и безопаснее использовать команду TSKILL, адаптированную для завершения процессов в среде конкретных пользователей удаленного рабочего стола (RDP).

Команда taskkill заменяет средство Kill .

Используя параметр /FI можно указать следующие фильтры:

Фильтры WINDOWTITLE и STATUS не поддерживаются, если указана удаленная система.

Символ ‘*’ для параметра /IM применим только совместно с фильтрами.

Завершение удаленного процесса всегда выполняется принудительно, независимо от того, указана ли опция /f.

Указание имени компьютера для фильтра имени узла приводит к завершению работы и остановке всех процессов.

Команду taskkill можно использовать в операционных системах Windows XP и старше.

Введение

Шаблон задания для Cron выглядит примерно так:

Минуты(0-59) Часы(0-24) День(1-31) Месяц(1-12) День недели(0-6) Команда

Вот иллюстрация этого же шаблона, которую можно сохранить себе:


Урок09.html

Звёздочками обозначены конкретные блоки времени.

Для отображения содержимого crontab-файла текущего пользователя используйте команду:

$ crontab -l

Для редактирования заданий пользователя есть команда:

$ crontab -e

Если эта команда выполняется в первый раз, вам предложат выбрать редактор для Cron:

Выбирайте на своё усмотрение. Вот так изначально выглядит crontab-файл:


Урок09.html

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

Чтобы изменить crontab-файл другого пользователя (например, ostechnix):

$ crontab -u ostechnix -e

Ниже приведены несколько примеров cron-заданий:

Ещё существуют готовые задания:

Чтобы выполнять команду каждый раз после перезапуска сервера, используйте это задание:

Команда для очистки всех заданий текущего пользователя:

$ crontab -r

Чтобы узнать о подробностях, есть команда:

$ man crontab

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


Урок09.html

Вывод без опций

PS (process state) — стандартная утилита всех дистрибутивов Linux, используемая через консоль. Ее основное предназначение — отображение информации обо всех запущенных процессах. Количество и детально показываемых сведений зависит от установленных опций, которые выбираются при непосредственной активации самой команды. Об опциях мы поговорим немного позже, а сейчас давайте просто введем ps в «Терминале» и нажмем на Enter.


Урок09.html

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


Урок09.html

Вывод списка всех процессов

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


Урок09.html

В итоге отобразится огромное количество строк, с которыми следует разобраться. Делятся сведения на несколько столбцов. P ID отображает идентификационный номер процесса и может использоваться, например, для быстрого завершения работы этой программы или проверки дерева задач. T TY — имя терминала, где запущен текущий процесс. T IME — время работы, а CMD — название команды задачи.


Урок09.html

Дополнительно можно использовать команду ps -e, чтобы отобразить список всех процессов, если предыдущий вариант вас не устраивает.


Урок09.html

Как видно, выдача после активации опции -e получилась точно такая же, как и при вводе аргумента -A.


Урок09.html

Существует формат вывода BSD, отвечающий за отображение связанных с пользователями процессов, а также отображает более детальные сведения о работе задач, нагрузке их на процессор и точное расположение. Для получения таких сведений следует использовать ps au.


Урок09.html

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


Урок09.html

Рассмотренные выше примеры позволяли отобразить практически все необходимые сведения, которые могут быть полезны начинающим пользователям. Однако иногда требуется получить более детальный листинг, например, чтобы определить источник вызова процесса. Тогда на помощь придет строка такого вида: ps -ef.

:/>  Сброс пароля windows 7 командная строка. Как узнать пароль учётной записи. На этапе подготовки


Урок09.html

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


Урок09.html

Отображение пользовательских процессов

Опция -x отвечает за отображение процессов, которые были отсоединены от терминала, то есть запущены лично пользователем. Если вы хотите узнать, какие именно задачи были открыты от имени текущей учетной записи, в консоли достаточно будет ввести строку ps -x и нажать на Enter.


Урок09.html

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


Урок09.html

Если же требуется получить информацию о данных другого пользователя, измените строку на ps -fU lumpics, где lumpics замените на необходимое имя.


Урок09.html

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


Урок09.html

Фильтр по root

В каждом сеансе Linux имеется отдельный список задач, выполняемых с правами root. Если требуется отобразить только такие процессы, следует задать команду ps -U root -u root и активировать ее нажатием на клавишу Enter.


Урок09.html

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


Урок09.html

Отображение групповых задач

Опытные пользователи знают, что некоторые процессы принадлежат к конкретной группе, то есть имеется главная задача и ее зависимости, формирующие общее древо. При необходимости отображения только строк, попадающих под данный критерий, задействуйте команду ps -fG 48, где 48 — идентификатор группы (его можно заменить на название родительского процесса).


Урок09.html

Отображение по PID

Из приведенных выше сведений вы уже знаете, что каждый процесс имеет свой PID, то есть определяющий его идентификатор. Если имеется желание выполнить поиск по конкретным PID, следует задействовать команду ps -fp 1178, заменив число на требуемое. Имеется и критерий PPID. При определении такого формата строка обретает вид ps -f –ppid 1154, с соответствующим изменением идентификатора на нужный.


Урок09.html

Это были все основные примеры команды PS в Linux, о которых мы хотели поговорить в рамках сегодняшней статьи. К сожалению, объема одного руководства не хватит для того, чтобы детально описать взаимодействие со всеми доступными опциями и их комбинациями. Вместо этого мы предлагаем изучить официальную документацию команды, выполнив ps –help, чтобы получить те подсказки, которые вы не нашли выше. Дополнительно на нашем сайте имеются развернутые описания основных команд рассмотренной операционной системы. Рекомендуем начинающим пользователям изучить их, чтобы быстрее освоиться в управлении консолью Линукс.

Работа с дисковыми накопителями.

лекция, практическое занятие.

1. Понятие планирования заданий.

2. Команда at.

3. Демон cron. Команда crontab.

4. Работа с дисковыми накопителями, команда mount

1. Системная справочная служба Linux Man

Армстронг (мл.) Джеймс. Секреты : 2-е изд.: Пер. с

англ.: Уч. пос. – М.: Издательский дом Вильямс, 2000. – 1072

с.: ил. – Парал. тит. англ.

1. Очень часто в Linux администратор встречается с проблемой, когда выполнение какой-либо программы (или shell-сценария) может происходить и без его присутствия, но необходим инструмент, реализующий эту возможность.

В современных Linux-системах для этой цели принято использовать механизмы планирования заданий. Реализованы эти механизмы с помощью демонов планирования заданий – at и cron.

С помощью этих программ появляется возможность установить выполнение программы на заранее известное время. Команда at используется в тех случаях, когда выполнение задания  – разовая процедура. Если же задание предполагается выполнять с какой-либо периодичностью, то лучше всего использовать демон cron и команду crontab.

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

Составляется расписание на каждый день месяца. Совместно с ней составляется форма по дням недели, которая позволяет планировать выделенные 2 часа (или больше, если это потребуется). Пример такой формы для понедельника:

Эти формы позволят оптимально использовать время работы сервера и грамотно планировать задания.

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

2. Семейство команд at (at, atq, atrm) представляет собой инструменты для выполнения задания в определенное время по таймеру.  Для правильного функционирования данной команды в системе должен быть запущен демон atd. Демон atd поддерживает очередь заданий, которые должны быть выполнены в то или иное время.

:/>  Перемещение по документу производится с помощью клавиш

Для постановки задания (или нескольких заданий в очередь на одно и то же время) вам необходимо выполнить команду at:

job 1 at 2004-12-01 13:01

Результат выполнения команды, указанной демоном at будет записан в Ваш почтовый ящик linux (/var/spool/mail/student). Но система планирования at позволяет и управлять поставленными в очередь заданиями. Просмотреть очередь заданий можно используя команду atq:

1       2004-12-01 13:01 a student

Команда at позволяет поставить в очередь несколько заданий, который будут последовательно выполнены друг за другом. Сделать это можно как в интерактивном режим (набрав команду at в командной строке), так и указав команде at параметр -f:

job 8 at 2004-12-05 14:50

Команда  atrm удаляет из очереди задание:

7       2004-12-05 14:48 a root

8       2004-12-05 14:50 a root

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

3. В отличие от команд at, демон cron и команда управления планированием crontab позволят Вам точно планировать задания. Как в случае с at, задания запускает программа-демон crond. Команда crontab служит лишь для управления заданиями. Перед использованием команды необходимо создать файл, описывающий таблицу заданий. Формат файла таков:

минуты часы дни_месяца месяц дни_недели

минуты – числа от 0 до 59, или *

часы – числа от 0 до 23, или *

дни_месяца – числа от 1 до 31, или *

месяц – числа от 1 до 12, или *

дни_недели – числа от 0 до 6, причем 0 – воскресенье, или *; например:

0 10 * * *  /home/student/bin/script   #запуск в 10:00 ежедневно

15 * * * 1  /home/student/bin/script2  #в 15 минут каждого часа

Команда crontab позволяет использовать периоды:

10-15/5 * * * * /home/student/bin/script3 #ежедневно, каждый час, с 10 до 15 минут

#с периодичностью в 5 минут

После создания файла заданий необходимо вызвать команду crontab и указать ей в качестве параметра имя файла с заданиями :

Просмотреть список заданий, установленных Вами можно с помощью параметра -l :

# DO NOT EDIT THIS FILE – edit the master and reinstall.

# (/tmp/crontab.1333 installed on Sat Dec  4 15:56:57 2004)

# (Cron version — $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)

10 * * * * /home/student/bin/script

Очистить список заданий можно с помощью параметра -r :

no crontab for student

Команда crontab позволяет также и редактировать список заданий с помощью параметра -e. В качестве редактора будет использоваться редактор, указанный (в порядке очередности) в переменной окружения $VISUAL, $EDITOR или /bin/vi. После сохранения файла, crontab автоматически переинициализирует таблицу заданий.

4. Очень часто планирование заданий связано с созданием резервных копий. Как правило, резервные копии создаются на внешние носители (магнитные ленты, диски и прочее). Сегодня мы с вами попробуем научиться монтировать различные внешние устройства. – подключение файловых систем внешних накопителей в один из каталогов корневой ФС (точку монтирования). Для монтирования устройств в Unix применяется команда . При запуске без параметров mount покажет все ФС, смонтированные на текущий момент, а такжде параментры, используемые при монтировании.

/dev/sda1 on / type ext3 (rw,errors=remount-ro)

proc on /proc type proc (rw,noexec,nosuid,nodev)

/sys on /sys type sysfs (rw,noexec,nosuid,nodev)

varrun on /var/run type tmpfs (rw,noexec,nosuid,nodev,mode=0755)

varlock on /var/lock type tmpfs (rw,noexec,nosuid,nodev,mode=1777)

procbususb on /proc/bus/usb type usbfs (rw)

udev on /dev type tmpfs (rw,mode=0755)

devshm on /dev/shm type tmpfs (rw)

devpts on /dev/pts type devpts (rw,gid=5,mode=620)

lrm on /lib/modules/2.6.20-15-generic/volatile type tmpfs (rw)

binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

Эта команда принимает много параметров, но мы с вами поговорим о следующих:

-t FS – указывает файловую систему, которая используется на внешнем устройстве

-r – смонтировать ФС в режиме только чтение

-w – смонтировать ФС в режиме чтение/запись

-o – указать дополнительные опции монтирования, такие как кодировку, набор символов, под каким пользователем монтировать и прочие. Параметры зависят от типа файловой системы, и их стоит уточнять в man. Общий синтаксис man выглядит как:

man -t FS -w/-r device mountpoint -o external_fs_options

Планирование заданий на локальных и удаленных системах

Расписание можно настроить для всего, что можно запустить в командной строке, включая утилиты командной строки, сце­нарии, приложения, ярлыки и документы. Также можно ука­зывать аргументы командной строки. Иногда задания назна­чаются для компьютера, с которым вы работаете в данный мо­мент (т. е. для локальной системы). Однако чаще при плани­ровании заданий вы делаете это для удаленных систем через сеть со своего локального компьютера (т. е, для удаленных компьютеров).

Событийно-управляемые задания заслуживают особого вни­мания, поскольку не всегда работают, как ожидается; к ним относятся задания, инициируемые при следующих событиях.

Планирощик заданий Windows 10

Планировщик заданий Windows – это графическая утилита встроенная в операционную систему Windows 10, которая служит для запуска команд, сценариев и программ.

:/>  Восстановление загрузчика Windows 7 — 3 способа

Как открыть планировщик задач WIndows 10? Открытите и настройка параметров в Windows 10 производится следующим образом: Пуск – Средства администрирования Windows – Назначенные задания. Но лично я открываю планировщик более коротким путем – В панели задач (таскбаре) во вкладке “Поиск” ввожу название программы “Планировщик”, далее Windows 10 находит его. Задания в планировщике могут быть назначены на однократный, поминутный запуск, запуск через определенный интервал, т.е. можно настроить автозапуск программы по расписанию.

Schtasks – планировщик заданий командной строки

Schtasks – планировщик заданий Windows через командную строку, это продвинутая утилита позволяет запускать задания через командную строку Windows 10. Утилита выполняет те же операции что и графическая, но управляется из командной строки, что позволяет через командные файлы запускать задания на выполнение. Хорошая возможность, не правда ли?

Параметры командной строки taskkill

Далее приведены примеры использования команды taskkill:

Синтаксис crontab-генераторов

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

Crontab. guru

crontab.guru — отличный сайт, чтобы изучить различные примеры cron-заданий. Просто введите данные и сайт самостоятельно сгенерирует конечное задание.


Урок09.html

Сайт Crontag buru

На сайте есть разделы, посвящённые примерам и советам.

Crontag Generator

crontab-generator.org — ещё один сайт, который помогает быстро сгенерировать crotab-выражения. Принцип такой же: нужно ввести все необходимые данные в формы и нажать кнопку «Generate Crontab Line» внизу страницы.


Урок09.html

Сайт Crontab Generator

Вот такое конечное выражение вы увидете на сайте:


Урок09.html

Помимо этого, есть веб-инструмент «Crontab UI», который обеспечивает не только простоту создания crontab-заданий, но и безопасность. Вот статья, посвящённая этому инструменту.

Перевод статьи «A Beginners Guide To Cron Jobs»

Формат командной строки taskkill


Урок09.html

Урок09.html

Урок09.html

Урок09.html

Урок09.html

Урок09.html

Утилита командной строки Taskkill

Чтобы остановить процессы в локальной или удаленной системе, применяйте утилиту командной строки Taskkill. Процесс можно остановить по его идентификатору при помощи параметра /Pid или по имени образа, используя параметры. Если вам нужно остановить несколько процессов по их идентификатору или имени образа, укажите несколько параметров /Pid  соответственно. Но будьте осторожны с именами образов, так как Taskkill останавливает все процессы, образы ко­торых имеют данное имя.

Мониторинг назначенных заданий

Как администратору, вам, вероятно, приходится выполнять одни и те же или похожие задачи практически каждый день. Возможно, вы даже вынуждены приходить на работу раньше или оставаться допоздна, чтобы выполнять эти задачи в нера­бочее время. Такими задачами могут быть рутинные операции обслуживания, например, удаление временных файлов, чтобы избежать переполнения дисков, или резервное копирование важных данных. Среди этих задач встречаются процессы и по­сложнее, в частности просмотр журналов событий на всех биз­нес-серверах для выявления проблем, требующих решения. Хорошая новость в том, что если вы можете разбить эти зада­чи на этапы, есть шанс их автоматизировать. Microsoft  Win­dows предоставляет для этого несколько способов, включая:

Автоматизация запуска заданий Windows 10

Системному администратору Windows приходится выполнять одни и те же операции каждый день – выполнять архивацию важных данных, диагностировать сеть, удалять временные файлы и т.д.

Вы хотели бы автоматизировать эти операции? Я думаю что ответ будет – Да. Специально для этих целей есть несколько возможностей в Windows 10 и в этой статье попробуем рассмотреть каждый из них.

Применение утилиты Taskkill

В Taskkill имеется дополнительный фильтр Modules с операторами EQ и NE, что позволяет исключать или включать указанные DLL. При применении фильтров не указывайте конкретное имя образа или идентификатор процесса в качестве параметров. То есть в этом случае вы останавливаете процессы, исходя лишь из их соответствия критериям фильт­ра. Например, можно указать, чтобы были остановлены все процессы, которые перестали отвечать.

Как и в случае с Tasklist, вы можете задать несколько фильтров. Строка фильтра должна быть заключена в двойные кавычки. Следующие примеры иллюстрируют применение фильтров с утилитой Taskkill.

Останов не отвечающих экземпляров Cmd.exe: taskkill /im cmd.exe /fi “status eq not responding”.

Запуск заданий в программе CronNT

CronNT – программа для запуска заданий из мира Linux. Гораздо удобнее пользоваться этой программой для запуска заданий – установить программу как службу Windows 10, настроить на автоматический запуск и наслаждаться. Параметры программы хранятся в файле CronNT.tab, ведется лог действий – так что запуск заданий можно будет отследить по журналу. Очень удобная программа – всем советую!