Описание команды TASKLIST
Команда TASKLIST отображает список приложений и служб с кодом процесса (PID) для всех задач, выполняющихся на локальном или удаленном компьютере. А для завершения процессов используется команда TASKKILL.
Cron — один из часто используемых инструментов для Unix-систем. Его используют для планирования выполнения команд на определённое время. Эти «отложенные» команды или задания принято называть «Cron Jobs». Такой инструмент отлично подходит для регулярных бэкапов, мониторинга дискового пространства, удаления файлов (например, логов) и много чего ещё. В этой статье будет рассказано о работе с Cron на Linux.
Описание команды taskkill
Команда taskkill завершает одну или несколько задач либо процессов. Процессы могут быть завершены по идентификатору процесса или именам исполняемых файлов на локальной или удаленной системе. Вы можете использовать команду tasklist, чтобы определить идентификатор процесса (PID) для завершения процесса. Например:
— отобразит информацию для процессов с именем, содержащим строку «notepad» и в ответ будет выдано сообщение:

Где 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) Команда
Вот иллюстрация этого же шаблона, которую можно сохранить себе:

Звёздочками обозначены конкретные блоки времени.
Для отображения содержимого crontab-файла текущего пользователя используйте команду:
$ crontab -l
Для редактирования заданий пользователя есть команда:
$ crontab -e
Если эта команда выполняется в первый раз, вам предложат выбрать редактор для Cron:
Выбирайте на своё усмотрение. Вот так изначально выглядит crontab-файл:

В этом файле как раз нужно перечислять одну за другой все команды.
Чтобы изменить crontab-файл другого пользователя (например, ostechnix):
$ crontab -u ostechnix -e
Ниже приведены несколько примеров cron-заданий:
Ещё существуют готовые задания:
Чтобы выполнять команду каждый раз после перезапуска сервера, используйте это задание:
Команда для очистки всех заданий текущего пользователя:
$ crontab -r
Чтобы узнать о подробностях, есть команда:
$ man crontab
Вышеперечисленного уже должно хватить для базовой работы с Cron и составления заданий.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это были все основные примеры команды 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 10? Открытите и настройка параметров в Windows 10 производится следующим образом: Пуск – Средства администрирования Windows – Назначенные задания. Но лично я открываю планировщик более коротким путем – В панели задач (таскбаре) во вкладке “Поиск” ввожу название программы “Планировщик”, далее Windows 10 находит его. Задания в планировщике могут быть назначены на однократный, поминутный запуск, запуск через определенный интервал, т.е. можно настроить автозапуск программы по расписанию.
Schtasks – планировщик заданий командной строки
Schtasks – планировщик заданий Windows через командную строку, это продвинутая утилита позволяет запускать задания через командную строку Windows 10. Утилита выполняет те же операции что и графическая, но управляется из командной строки, что позволяет через командные файлы запускать задания на выполнение. Хорошая возможность, не правда ли?
Параметры командной строки taskkill
Далее приведены примеры использования команды taskkill:
Синтаксис crontab-генераторов
Процесс написания заданий сильно упрощают веб-инструменты. Они не требуют знаний синтаксиса Cron, потому что у них графический интерфейс, а задания генерируются в соответствии с вводимыми данными. Сайт генерирует задание, которое можно будет просто скопировать и вставить в crontab-файл.
Crontab. guru
crontab.guru — отличный сайт, чтобы изучить различные примеры cron-заданий. Просто введите данные и сайт самостоятельно сгенерирует конечное задание.

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

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

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






Утилита командной строки Taskkill
Чтобы остановить процессы в локальной или удаленной системе, применяйте утилиту командной строки Taskkill. Процесс можно остановить по его идентификатору при помощи параметра /Pid или по имени образа, используя параметры. Если вам нужно остановить несколько процессов по их идентификатору или имени образа, укажите несколько параметров /Pid соответственно. Но будьте осторожны с именами образов, так как Taskkill останавливает все процессы, образы которых имеют данное имя.
Мониторинг назначенных заданий
Как администратору, вам, вероятно, приходится выполнять одни и те же или похожие задачи практически каждый день. Возможно, вы даже вынуждены приходить на работу раньше или оставаться допоздна, чтобы выполнять эти задачи в нерабочее время. Такими задачами могут быть рутинные операции обслуживания, например, удаление временных файлов, чтобы избежать переполнения дисков, или резервное копирование важных данных. Среди этих задач встречаются процессы и посложнее, в частности просмотр журналов событий на всех бизнес-серверах для выявления проблем, требующих решения. Хорошая новость в том, что если вы можете разбить эти задачи на этапы, есть шанс их автоматизировать. Microsoft Windows предоставляет для этого несколько способов, включая:
Автоматизация запуска заданий 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, ведется лог действий – так что запуск заданий можно будет отследить по журналу. Очень удобная программа – всем советую!




