С Новым годом! Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
6 / 5 / 1
Регистрация: 12.11.2019
Сообщений: 153

Список удаленных файлов в лог

03.05.2022, 17:35. Показов 1528. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть задание - очистка каталога /tmp.
1Удаляться должны файлы с расширением bak
2)Файлы, изменённые последний раз более 3х дней назад
3)Каталоги размером более 10 Мб

4)Список удалённых файлов дописывать в /var/log/tmp_clean.log

Bash
1
2
3
4
5
6
7
#!/bin/bash
 
cd /tmp
 
sudo find /tmp -name '*.bak' -delete #1
sudo find /tmp/ -mtime +3 -exec rm {} \;  #2
sudo find /tmp/ -size +100 -delete #3
Не уверен, что 3е правильно, но вопрос в том, как можно сделать 4 - список удаленных файлов в /var/log/tmp_clean.log
Просто если указывать :
Bash
1
sudo find /tmp -name '*.bak' -delete  >> /var/log/tmp_clean.log
то, появляется ошибка: /var/log/tmp_clean.log: Permission denied
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.05.2022, 17:35
Ответы с готовыми решениями:

Лог удаленных файлов
А где нибудь логируется какие файлы были удалены ?

С клавиатуры вводится “маска” файлов, которые надо удалить из списка и вывести список удаленных файлов
Помогите пожалуйста решить хоть одну задачу такую 1-- Во входном файле находится список файлов с расширениями. С клавиатуры вводится...

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

15
505 / 158 / 49
Регистрация: 27.02.2016
Сообщений: 818
03.05.2022, 17:58
Лучший ответ Сообщение было отмечено Lapys как решение

Решение

Code
1
sudo find /tmp -name '*.bak' -delete -print | sudo tee -a /var/log/tmp_clean.log
1
6 / 5 / 1
Регистрация: 12.11.2019
Сообщений: 153
18.05.2022, 23:45  [ТС]
/var/log/tmp_clean.log: Permission denied
0
Windows must die
665 / 836 / 102
Регистрация: 23.11.2021
Сообщений: 4,865
Записей в блоге: 15
19.05.2022, 01:19
1. Понятие "расширение" умерло вместе с "досом". Большинство типов современных файлов определяются по MIME, хоть чайником обзови.
2. Для указанных задач есть демон logrotate, который можно настроить и на частоту удаления, и на максимальные размеры файлов, и на дополнительные действия. Правда, каталоги он не умеет - это придется самому.
3. sudo в скриптах никто не пишет. Если тебе нужно от пользователя его запускать, то запускай сам скрипт через su/sudo. Не надоедает пароль постоянно вводить? Еще можно suid-бит этому скрипту сделать - и будут у любого, имеющего права на запуск, права рута.
4. Выхлоп find действительно проще всего заодно при помощи tee в файл отправлять, если нужно, чтобы и на stdout был виден. В man find указано, как параметру size задавать единицы размера.
/var/log/tmp_clean.log: Permission denied
А есть ли директория /var/log?
0
505 / 158 / 49
Регистрация: 27.02.2016
Сообщений: 818
19.05.2022, 02:17
вряд ли ТС сумел удалить
Code
1
/var/log
из системы


тут какая то тайна

у обычных людей все получается
Code
1
2
3
4
5
6
7
8
9
10
11
12
touch /tmp/a.bak
 
sudo find /tmp -name '*.bak' -delete -print | sudo tee -a /var/log/tmp_clean.log
 
[sudo] password for sergueik:
Sorry, try again. (опечатался)
[sudo] password for sergueik:
 
/tmp/a.bak
 
cat /var/log/tmp_clean.log
/tmp/a.bak
0
6 / 5 / 1
Регистрация: 12.11.2019
Сообщений: 153
19.05.2022, 12:55  [ТС]
Все получается, если путь до лога указать в "" -
Bash
1
 sudo find /tmp -name '*.bak' -delete -print | sudo tee -a "/var/log/tmp_clean.log"
Вопрос, а как можно запустить скрипт bash в терминале? Просто:
Bash
1
 bash script.sh
не помогает, т.к. не достаточно прав и требуются права root. А я бы хотел добавить этот скрипт в KTimer
0
Эксперт NIX
3303 / 932 / 200
Регистрация: 14.01.2013
Сообщений: 4,768
19.05.2022, 14:37
Цитата Сообщение от Lapys Посмотреть сообщение
А я бы хотел добавить этот скрипт в KTimer
В крон рута не вариант?
0
Windows must die
665 / 836 / 102
Регистрация: 23.11.2021
Сообщений: 4,865
Записей в блоге: 15
19.05.2022, 14:50
Цитата Сообщение от Lapys Посмотреть сообщение
не помогает, т.к. не достаточно прав и требуются права root.
Мамма миа! Я ж в самом начале об этом писал: выкинь все суды из скрипта, а скрипту сделай suid-бит. Тогда сможешь без всяких su/sudo запускать.
sudo, кстати, в системе хоть правильно настроено? Набор команд пользователь может выполнять без ввода пароля, а все остальное - только после ввода пароля рута — это единственно правильный вариант использования sudo. Иначе sudo лучше снести и оставить только su (во многих дистрах, кстати, "из коробки" sudo нет, т.к. нафиг не нужно).
Цитата Сообщение от Kubuntovod Посмотреть сообщение
В крон рута не вариант?
Да зачем в крон рута? Можно же прямо в системный crontab прописать. Или, скажем, в cron.daily…
0
6 / 5 / 1
Регистрация: 12.11.2019
Сообщений: 153
19.05.2022, 14:55  [ТС]
Я новичок в Linux, поэтому не понимаю многого. Как понять сделать suid-бит скрипту?Крон рута не получится, т.к. по заданию KTimer
0
Windows must die
665 / 836 / 102
Регистрация: 23.11.2021
Сообщений: 4,865
Записей в блоге: 15
19.05.2022, 15:13
Цитата Сообщение от Lapys Посмотреть сообщение
не понимаю многого
Тогда нужно начать с чтения "The Linux Bible", потом по башу всякие руководства. Вообще о современных системах - как и что устроено…
suid-бит ставится командой chmod u+s file (от рута, понятное дело). Сначала проверь "на кошках" - в других директориях - работу скрипта. Если все ОК, залогинься под рута и проверь, как работает. Если ОК, то просто в /etc/crontab добавь строчку запуска своего скрипта по требуемому расписанию.
Что такое ktimer? Первый раз слышу! Если это - какая-то поделка из кед, то я тебя расстрою: она запустится от твоего имени, т.е. суды твои никак не помогут, ты не сможешь ввести пароль (разве что воспользуешься кедовым каким-нибудь приложением, которое окно с запросом выведет). Кроме того, как только ты выйдешь из системы, твой ktimer тоже сдохнет! Хуже и придумать нельзя!
0
Эксперт NIX
3303 / 932 / 200
Регистрация: 14.01.2013
Сообщений: 4,768
19.05.2022, 18:02
Цитата Сообщение от Eddy_Em Посмотреть сообщение
Можно же прямо в системный crontab прописать. Или, скажем, в cron.daily…
Можно и так. А можно запустить sudo crontab -e и вбить всё, что душе угодно.

Цитата Сообщение от Lapys Посмотреть сообщение
Крон рута не получится, т.к. по заданию KTimer
А просто под рутом нельзя работать? Вбить sudo -s и поехали.

Цитата Сообщение от Eddy_Em Посмотреть сообщение
Что такое ktimer? Первый раз слышу!
Тоже не знал. Загуглил
KTimer is a countdown timer for running commands after a delay. The countdown can be paused or set to loop continuously.
Хрень какая-то. Вроде, была же команда at. Чем не угодила ...
0
Windows must die
665 / 836 / 102
Регистрация: 23.11.2021
Сообщений: 4,865
Записей в блоге: 15
19.05.2022, 18:10
Цитата Сообщение от Kubuntovod Посмотреть сообщение
А можно запустить sudo crontab -e и вбить всё, что душе угодно.
Это и вызовет $EDITOR для редактирования /etc/crontab ☺
Цитата Сообщение от Kubuntovod Посмотреть сообщение
Вбить sudo -s и поехали.
Да шо вы все к этой убогой суде прилипли? Почему не su? Все равно же пароль рута вводить надо!
Я сильно сомневаюсь, что из всех любителей sudo хотя бы 0.01% наберется, у кого эта sudo настроена правильно! А 99.9% вообще почти из-под рута работают (т.к. на sudo чтоугодно или вообще не вводят пароль, или вводят свой, что аналогично)!
0
Эксперт NIX
3303 / 932 / 200
Регистрация: 14.01.2013
Сообщений: 4,768
19.05.2022, 18:14
Цитата Сообщение от Eddy_Em Посмотреть сообщение
Это и вызовет $EDITOR для редактирования /etc/crontab
Кстати, если оно не настроено, можно невзначай пройти квест "как выйти из vi"

Цитата Сообщение от Eddy_Em Посмотреть сообщение
Почему не su? Все равно же пароль рута вводить надо!
Да просто привычка.
0
1133 / 390 / 85
Регистрация: 30.08.2017
Сообщений: 2,399
19.05.2022, 19:49
Цитата Сообщение от Eddy_Em Посмотреть сообщение
Да шо вы все к этой убогой суде прилипли? Почему не su? Все равно же пароль рута вводить надо!
А кто сказал что рута пароль вообще есть? о_О
0
Windows must die
665 / 836 / 102
Регистрация: 23.11.2021
Сообщений: 4,865
Записей в блоге: 15
19.05.2022, 19:56
Цитата Сообщение от _sg2 Посмотреть сообщение
А кто сказал что рута пароль вообще есть?
Тогда это называется "мастдайка" ☺
В мастдайке пользователь "из-под админа" всю жизнь и сидит...
Если вдруг вам нужно поставить бунту, прямо-таки никак не получается нормальный линукс, то перво-наперво нужно сделать sudo passwd, потом отключить все ненужные службы и приступить к кастомизации (ядро пересобрать и т.д., и т.п.; правда, systemd удалить не удастся, к сожалению).
И, естественно, либо удалить sudo вообще, либо настроить его правильно (с группами, разрешениями и, конечно, TARGETPW).
0
1133 / 390 / 85
Регистрация: 30.08.2017
Сообщений: 2,399
19.05.2022, 21:26
Кому нужно? о_О Отлично всё работает и так. Дебьян в этом вопросе даше красношапку совратил.
А что значит "мастдайка"?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.05.2022, 21:26
Помогаю со студенческими работами здесь

Восстановление удаленных файлов
Люди, спасите-помогите, вы же все можете. Есть ли возможность восстановить удаленные из корзины файлы? Очень надо. Говорят, что они...

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

Восстановление удалённых файлов
На клиентской машине есть диск смапированный на одну из директорий сервера. Пользователь удалил от туда файл. Как его найти и восстановить...

Восстановление удаленных файлов.
Здравствуйте! Помогите, пожалуйста! Можно ли востановить файлы, удаленные мимо корзины. Папка была на 50Гб. Жизненно важно!

Восстановление удаленных файлов!
Здравствуйте! Я где-то 3 месяца назад удалил файл, размеров где-то в 2.5 gb! Как мне его вернуть, пожалуйста помогите! Пробовал много...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru