LINUX.ORG.RU

Пожалуйста помогите с экзаменом!!!

 ,


0

1

1. Как найти пользователя лидирующего по потреблению CPU , учитывая все его запущенные процессы (основываясь на данных ps)

2. Вам необходимо обеспечить максимальную доступность сервиса mysql. Напишите программу на sh, обеспечивающую автоматический запуск/перезапуск сервиса в случае его внештатного завершения.

3. База данных database. Таблицы: 1. user(id1, name) 2. security(id2, password) 3. site(id3, url). Cоставить один запрос, который выводит пользователей, для которых не указан пароль и url сайта начинается с «www» в формате «name, password, url». P.S.: Считаем, что для пользователя не указан пароль, если в поле password таблицы security установлено значение NULL.

За ранее спасибо

Запостите в раздел job с указанием своих контактных данных и суммы, которую вы готовы заплатить за услугу.

newpunkies
()

1. ps -u user -o %cpu
ну и складывай
2. наверное, надо в логи смотреть, как завершился процесс
3. читай про джойны

ii343hbka ★★★
()
Ответ на: комментарий от fosterx

Подумать и решить самостоятельно мало того что полезно, так ещё и бесплатно.

1 вопрос достаточно просто решается при помощи AWK

Dark_SavanT ★★★★★
()
Ответ на: комментарий от newpunkies

И не стыдно помогать человеку мухлевать с образованием? Может он потом станет врачом и отпилит тебе ногу не в том месте!

vurdalak ★★★★★
()
Ответ на: комментарий от fosterx

получилось вот что: ps aux | awk '{print($1" «$4);}' | grep -v „0,0“

а как вывести в сумме загрузку каждого юзера не могу понять(

fosterx
() автор топика
Ответ на: комментарий от vurdalak

Может он потом станет врачом и отпилит тебе ногу не в том месте!

Он напишет скрипт на sh, который сделает это за него. Чай, не 20-й век на дворе.

i-rinat ★★★★★
()
Ответ на: комментарий от fosterx

кто нибудь скажет по делу? ps aux | awk '{print($1" «$3);}' | grep -v „0,0“ как вывести в сумме загрузку каждого юзера?

fosterx
() автор топика
Ответ на: комментарий от fosterx

кто нибудь скажет по делу?

Скажу. Чемодан, вокзал, ВС РФ.

Deleted
()

По вопросу 1) надо уточнить,делать поиск по суммарному времени потребления или по занятию процессора в момент времени.
В первом варианте задача решается легко,во втором можно поиграться с порядком вывода столбцов,что далее делать не ясно(поизучал по этому случаю man ps)

torvn77 ★★★★★
()
Ответ на: комментарий от MKuznetsov

может он за прошлый раз спасибо говорит

anonymous
()

1.

ps ax --sort=uid --no-header -o "user,pcpu" | awk '{a[$1]+=$2}END{for(i in a) print a[i],i}' | sort -nr | sed -n 1p

MegaDNO
()

2. Вам необходимо обеспечить максимальную доступность сервиса mysql.
Напишите программу на sh, обеспечивающую автоматический запуск/перезапуск сервиса в случае его внештатного завершения.

#!/bin/nash

cat >/etc/systemd/system/mysqld.service <<__END__
[Unit]
Description=MariaDB database server
After=syslog.target

[Service]
User=mysql
Group=mysql

ExecStart=/usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid 
ExecStartPost=/usr/bin/mysqld-post

Restart=always
PrivateTmp=true

[Install]
WantedBy=multi-user.target
__END__

systemctl daemon-reload
systemctl enable mysqld
systemctl start mysqld
user_id_68054 ★★★★★
()
Последнее исправление: user_id_68054 (всего исправлений: 1)
Ответ на: комментарий от anonymous

посмотрел бы я на тебя, если бы кто-то из лор-овцев вырос и подался в преподы

он бы научил бы меня тогда? :)

[ну это если бы — а я стал бы студентом... да?]

или в чём суть этого сообщения?

--------------------------------------------------

а мы можем предположить другой сценарий? например, я выполняю роль препода, а красивая половозрелая девушка выполняет роль студентки и не подготовилась к практическому заданию, и за это я должен принять меры по её воспитанию, весьма неподобающим способом... :-)

user_id_68054 ★★★★★
()
Ответ на: комментарий от user_id_68054

в твоём случае всё так плохо? есть же варианты проще

anonymous
()
Ответ на: комментарий от torvn77

по занятию процессора в момент времени

fosterx
() автор топика

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

Все есть в книгах и в интернете.

newpunkies
()
Ответ на: комментарий от newpunkies

вы каждому так отвечаете на форуме? или я вопрос неправильно задал? ps aux | awk '{print($1" «$3);}' про суммарное потребление проца каждым юзером?

мне нужно суммировать эти данные и вывести каждый юзер сколько загрузки CPU

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

fosterx
() автор топика
Ответ на: комментарий от vurdalak

как раз тот кто убил жену был доктором наук.

erzent ☆☆
()
Ответ на: комментарий от fosterx

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

Ты до сих пор не знаешь, где ты находишся?

Unicode4all ★★★★★
()

Напишите программу на sh, обеспечивающую автоматический запуск/перезапуск сервиса в случае его внештатного завершения.

Я считаю, что нужно наказывать людей, которые придумывают такие вопросы.

anonymous_sama ★★★★★
()
Ответ на: комментарий от dn2010

спасибо, что ты сообщи это рандомному анониму с форума. надеюсь для тебя это что-то поменяло в мире

anonymous
()
Ответ на: комментарий от anonymous

Каждый регистрант когда-то был анонимусом, но не каждый анонимус когда-то был регистрантом.

dn2010 ★★★★★
()
Ответ на: комментарий от Alyssa

Нет, просто сначала нужно разобраться с проблемой.

внештатного завершения

А потом уже что-то делать. А не добавлять тот mysql в исключения oom-killer'а и отключать overcommit (как делают некоторые, не разобравшись в ситуации, и просто скопипастя первый же совет из гугла), а тем более не писать скрипты для переподнятия сервиса в случае его внештатного завершения. В данном примере, можно испортить базу запросто.

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)

просто не упоминай в следующий раз слово «экзамен» и «помогите срочно».

dikiy ★★☆☆☆
()
Ответ на: комментарий от dikiy

Да здесь и без лишних слов понятно, что задачки учебные.

thesis ★★★★★
()

дебильный вопрос, так как на момент ps вообще может быть никто не будет эрать процесоорный ресурс, особенно если у тебя линукс на виртуалке. А вот чтоб просто ответить на вопрос то можно

ps aux --sort pcpu

CHIPOK ★★★
()
Ответ на: комментарий от CHIPOK

Первый вопрос самы замороченный показался так как не удалось весь список суммировать получить типа: user 1.6 user2 3.4 user3 4.1

а только:

user 1.1 user 1.2 user 1.3

user2 3.1 user2 3.2 ...

fosterx
() автор топика
Ответ на: комментарий от fosterx

причем тут работа и зарплата?

Скажу тебе для мотивации:
1)Троян поназапускал 10000 своих экземпляров каждый из которых занимает 0,09% процессорного времени.
При этом он меняет имя запускаемого файла,поэтому killall использовать не выйдет.
Заполнив на 10001 экземпляре всю свободную память он вызовет паралич вычислительных процессов,который можно устранить только аппаратным резетом.
Сервер на котором это происходит обслуживает десять онлайн магазинов которые должны быть доступны 24/7 и имеет многодисковый райд который инициализируется 24 ч.
Вопрос,какого пользователя надо грохнуть чтобы прекратить работу трояна?
Так что задачи о пользователе выжравшем всю память или CPU очень даже жизненные.
2)Написанием скриптов можно решать нетривиальные задачи по организации совместной работы разных сервисов,по анализу логов и пр.
3)Когда то zfs не имела скриптов инициализации при запуске системы...
4)А программа mount не создаёт прописанные в fstab точки монтирования при их отсутствии(вроде как это через pam делается)

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 4)
Ответ на: комментарий от torvn77

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

CHIPOK ★★★
()
Ответ на: комментарий от fosterx

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

CHIPOK ★★★
()
Ответ на: комментарий от fosterx

причем тут работа и зарплата?

Ты сдаешь экзамен (и вообще проходишь обучение) для того, чтобы потом работать по соответствующей специальности? Если да, то вот при этом и работа — если накануне экзамена ты не можешь самостоятельно решить поставленные в заглавном сообщении задачи, то как ты работать собираешься?

dexpl ★★★★★
()
Ответ на: комментарий от CHIPOK

Ну это же очевидно,лимит надо делать меньше чем объём памяти или 100% CPU. И тут у меня есть мысль что для этого в памяти должен быть специальный демон.
Например у себя на домашнем компьютере я в первую консоль вместо bash htop запускаю.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 2)
Ответ на: комментарий от CHIPOK

1)Слава богу я не админ а хомячёк
2)виртуальный комп не реальный и перезапуск его займёт минуту или две.
3)Если припрёт то
3,1)С учётом этой темы буду учить sed и возможно awk
3.2)Буду гонять к виртуальной машине пинг,при неудаче ронять виртуальную машину.
4)На физическом ПК поставлю скрипт запускающии mplayer с грозной музыкой при занятии памяти более чем на сколько_то процентов.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 5)
Ответ на: комментарий от torvn77

1)Троян поназапускал 10000 своих экземпляров каждый из которых занимает 0,09% процессорного времени.

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

MKuznetsov ★★★★★
()
Ответ на: комментарий от d2

а надо было сделать — «Restart=on-failure» ? :-)

ды брось ты! разумеется «Внештатное» == «не через systemctl». :-)

каким образом демон может завершиться штатно без прямого приказа от systemd ?

если systemd запустил демона, то systemd и должен его убивать (и ни кто другой, в этом случае)...

эта тема была раскрыта уже давно — в книжке «Тарас Бульба»!

user_id_68054 ★★★★★
()
Последнее исправление: user_id_68054 (всего исправлений: 4)
26 октября 2015 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.