- Очистка файловых систем в Linux
- Временные и ненужные файлы
- Как удалить не нужные файлы
- unixforum.org
- Временные файлы и всякий мусор
- Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- Re: Временные файлы и всякий мусор
- ИТ База знаний
- Полезно
- Навигация
- Серверные решения
- Телефония
- Корпоративные сети
- Как автоматически очистить неиспользуемые временные файлы в Linux
- Автоматическое очищение неиспользуемых временных файлов в Linux
- Как временные файлы очищаются с помощью таймера Systemd
- Как вручную очистить временные файлы
- 2.1.7. Временные файлы
- Читайте также
- Временные характеристики процесса
- Пример: временные характеристики процессов
- Временные серверы для Linux
- 7. Временные рамки
- Временные диаграммы усилителей
- Временные диаграммы
- R.12.2 Временные объекты
- 7.2.6.1. Временные файлы
- 7.2.6.1. Временные файлы
- Исходные файлы и выполняемые файлы
- Временные значения
- Временные таблицы
- Постоянные «временные» таблицы
- Временные файлы проектов
Очистка файловых систем в Linux
В любых системах со временем и в процессе работы уменьшается свободное пространство. А это один из тех важнейших ресурсов, за которым системные администраторы должны следить особенно пристально. Порой после установки небольшого пакета оказывается, что за время своей работы этот пакет сгенерировал временных файлов. По объёму в несколько раз больше, чем сам этот пакет. Обычные текстовые log-файлы также могут занимать значительный объём. Если их генерация и хранение не настроены должным образом. Поэтому в системном администрировании очень важно регулярно проводить очистку файловых систем (ФС) от бесполезного объёма данных. Которые отъедают драгоценное дисковое пространство.
Временные и ненужные файлы
Как уже отмечалось, в любой работающей ОС (в особенности в активно работающей) всегда имеются ненужные и/или временные файлы. Так, к примеру в случае каких-либо сбоев системное ядро создаёт файлы с информацией об адресном пространстве программы (дампы памяти) на момент сбоя. Такие файлы обычно имеют имя core, core.pid или program.core. В зависимости от ситуации, в которой произошёл сбой и последующая генерация подобных файлов, их размер может быть в несколько мегабайт, а если сбои не учитывались администратором и происходили часто, то в совокупности теряется внушительный объём свободного пространства, который крайне расточительно отводить для хранения core-файлов, представляющих интерес только для разработчиков и специалистов по отладке программного обеспечения (ПО). В некоторых системах работу системных ядер можно сконфигурировать таким образом, чтобы дампы памяти вообще не генерировались, либо, чтобы они помещались в отдельный каталог и это очень удобно и для разработчиков, отладчиков, а также и для системных администраторов. Для уточнения этой информации следует обратиться к страницам справочного руководства используемой системы с помощью команды man core для Linux или man coreadm для Solaris.
В Linux-системах существуют также каталоги, специально предназначенные для хранения временных файлов — /tmp и /var/tmp. В этих каталогах программы сохраняют свои данные, актуальные только во время сеанса их запуска, например кеш закачек и т. д. Также эти каталоги используются текстовыми редакторами для хранения резервных копий документов и истории редактирования. И хотя в современных системах и существуют специализированные скрипты (обычно запускаются при старте системы), очищающие эти каталоги, однако не всегда ненужная информация может быть очищена таким образом, особенно это касается работающих длительное время серверов.
Естественно, подобные скрипты можно запускать и по расписанию, не дожидаясь плановой перезагрузки или технического обслуживания (ТО) серверов, используя cron, что часто и делают многие системные администраторы. Конечно, в таком случае скрипты очистки должны быть тщательно протестированы и соответствовать техническим регламентам, принятым в организации, чтобы исключить вероятность удалить что-то действительно нужное в системе, а также как можно меньше мешать основной работе системы.
Когда используется сетевая ФС NFSv3, то на серверах, которые её обслуживают также могут накапливаться внушительные объёмы ненужных файлов, которые обычно имеют имена, соответствующие «.nfsxxx», где xxx – некоторый числовой код.
Как удалить не нужные файлы
Самым эффективным средством по избавлению от «мусора» в системе по праву считается команда find. Для многих системных администраторов это вторая по частоте использования команда после sudo.
Для удаления неиспользуемых за прошедшие семь дней файлов с именем core можно воспользоваться командой следующего вида:
В данном примере следует обратить особое внимание на параметр -xdev (в некоторых системах -x), который ограничивает использование команды find строго в пределах корневой файловой системы. Всё-таки излишняя осторожность не помешает. Да и вообще такой метод более удобен, когда в системе монтируются множество ФС. В таком случае нужно выполнять приведённую команду отдельно для каждой из файловых систем, поскольку, как правило каталог /var (в котором собирается много ненужных и временных файлов) часто является отдельной ФС — об этом нужно помнить. Параметр type -f указывает удалять только файлы, поскольку в каталоге с исходными кодами есть каталог core (с исходными кодами ядра), имя которого совпадает с маской в приведённой команде find, однако каталог core удалять крайне не желательно.
Для избавления от ненужных и временных файлов, создаваемых различными текстовыми редакторами можно использовать такую команду:
В результате будут удалены файлы с именами, начинающимися на .#, # и .nfs, а также те, которые имеют расширение *.CKP и
Важно помнить и о том, что если ФС была смонтирована с опцией noatime (для команды mount), то все вышеприведённые команды будут малоэффективны, поскольку опция noatime заставляет смонтированную ФС не хранить временные метки доступа к файлам, а все вышеприведённые примеры учитывают условие, отражающее время доступа к файлам. Поэтому в данном случае нужно усложнять условия поиска для команды find.
Следующая команда удаляет все подкаталоги каталога /tmp, причём только те, к которым не было обращений более трёх дней:
В данном примере присутствует маска для исключения подкаталога lost+found. Это очень важно, т. к. этот подкаталог будет присутствовать в /tmp, в том случае, если /tmp является отдельной файловой системой. Естественно каталог lost+found ни в коем случае не должен быть удалён.
Если после проделанных выше действий у вас в системе не освободилось необходимого места, то ищем большие каталоги и файлы как это сделать читаем в этой статье
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
unixforum.org
Форум для пользователей UNIX-подобных систем
- Темы без ответов
- Активные темы
- Поиск
- Статус форума
Временные файлы и всякий мусор
Модератор: Bizdelnick
Временные файлы и всякий мусор
Сообщение Ринальдус » 24.07.2007 00:37
Re: Временные файлы и всякий мусор
Сообщение Liksys » 24.07.2007 00:43
Re: Временные файлы и всякий мусор
Re: Временные файлы и всякий мусор
Сообщение Ринальдус » 24.07.2007 00:46
Re: Временные файлы и всякий мусор
Re: Временные файлы и всякий мусор
Сообщение Rootlexx » 30.07.2007 17:36
Re: Временные файлы и всякий мусор
Сообщение CyberMax » 26.07.2009 13:57
Re: Временные файлы и всякий мусор
Сообщение nill » 26.07.2009 16:03
Re: Временные файлы и всякий мусор
Сообщение RAbbYt » 27.07.2009 12:21
Временные файлы обычно хранятся:
К сожалению, не всегда они удаляются. В mandriva даже специальный скрипт прикручен к cron-у, который очищает эти папки от файлов, к которым не было доступа 10 дней ($HOME/tmp) и 30 дней (/tmp/ и /var/tmp).
Источник
ИТ База знаний
Курс по Asterisk
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Как автоматически очистить неиспользуемые временные файлы в Linux
4 минуты чтения
Как удалить неиспользуемые файлы в Linux? В этой статье вы узнаете, как настроить таймер, управляющий временными файлами. В большинстве современных систем Linux для оптимальной обработки требуется большое количество временных файлов и каталогов. В совокупности они могут потреблять гигабайты дискового пространства, если их не чистить часто. Поэтому необходимо удалить старые файлы, чтобы они не занимали место на диске.
Мини — курс по виртуализации
Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена
Некоторые пользователи или приложения будут использовать каталог /tmp для хранения временных данных, в то время как другие используют более специфичное для задачи расположение, такое как каталоги демонов и непостоянных (volatile) пользовательских файлов в /run .
Непостоянные означает, что файлы существуют только в памяти. Если система перезагружается или происходит потеря питания, все содержимое энергозависимой памяти исчезнет.
Автоматическое очищение неиспользуемых временных файлов в Linux
В Red Hat Enterprise Linux 7 и новее включен новый инструмент systemd-tmpfiles . Этот инструмент предоставляет структурированный и настраиваемый метод управления временными каталогами и файлами.
Проверить запущенные сервисы можно командой:
При запуске служебного модуля systemd-tmpfiles-setup он запускает команду systemd-tmpfiles –create –remove . Команда проверяет файлы конфигурации из:
Если есть файлы и каталоги, отмеченные для удаления в указанных выше файлах конфигурации, они будут удалены. Для файлов и каталогов, отмеченных как для создания, они при необходимости создаются с правильными разрешениями.
Как временные файлы очищаются с помощью таймера Systemd
Блок таймера systemd , называемый systemd-tmpfiles-clean.timer , запускает службу systemd-tmpfiles-clean.service с регулярным интервалом, которая затем выполняет команду systemd-tmpfiles –clean .
В разделе [Timer] указывается, как часто следует запускать службу.
В приведенном выше примере служба systemd-tmpfiles-clean.service будет запущена через 15 минут после загрузки системы. Любой другой запуск происходит через 24 часа после последнего запуска службы. Вы можете настроить значения по своему вкусу.
Если вы внесете изменения, убедитесь, что вы перезагрузили сервис.
Как вручную очистить временные файлы
Давайте настроим systemd-tmpfiles для очистки каталога /mytmp . Это гарантирует, что в каталоге не будет файлов, которые не использовались последние 3 дня.
Вы можете скопировать пример файла конфигурации и обновить его — /usr/lib/tmpfiles.d/tmp.conf
Отредактируйте файл, как показано ниже.
Если вы хотите, чтобы каталог существовал с правильной принадлежностью, создайте конфигурацию, как показано ниже.
Любой файл в этом каталоге, который остается неиспользованным в течение последних 60 секунд, должен быть очищен.
После создания файла используйте следующую команду, чтобы убедиться, что файл содержит соответствующую конфигурацию.
Если вы не видите никаких ошибок в выводе, значит, это подтверждает правильность настроек конфигурации. Вы можете вызвать ручную очистку в любое время с помощью команды:
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Источник
2.1.7. Временные файлы
2.1.7. Временные файлы
Иногда программе требуется создать временный файл, например для промежуточного хранения большого объема данных или для передачи данных другой программе. В системах GNU/Linux временные файлы хранятся в каталоге /tmp. Работая с временными файлами, необходимо помнить о следующих ловушках.
? Одновременно может быть запущено несколько экземпляров программы (одним и тем же пользователем или разными пользователями). Все они должны использовать разные имена временных файлов, чтобы не было конфликтов.
? Права доступа к временным файлам должны задаваться таким образом, чтобы неавторизованные пользователи не могли влиять на работу программы путем модификации или замены временного файла.
? Имена временных файлов должны генерироваться так, чтобы посторонние пользователи не могли их предугадать. В противном случае хакер может воспользоваться задержкой между проверкой факта использования данного имени файла и открытием нового временного файла.
В Linux имеются функции mkstemp() и tmpfile(), решающие все вышеперечисленные проблемы. Выбор между ними делается на основании того, должен ли временный файл передаваться другой программе и какие функции ввода-вывода будут применяться при работе с файлом: низкоуровневые (read(), write() и т.д.) или потоковые (fopen(), fprintf() и т.д.).
Функция mkstemp() генерирует уникальное имя файла на основании переданного ей шаблона, создает временный файл с правами, разрешающими доступ к нему только для текущего пользователя, и открывает файл в режиме чтения/записи. Шаблон имени — это строка, оканчивающаяся последовательностью «XXXXXX» (шесть прописных букв «X»). Функция mkstemp() заменяет каждую букву произвольным символом таким образом, чтобы получилось уникальное имя, и возвращает дескриптор файла. Запись в файл осуществляется с помощью функций семейства write().
Временные файлы, создаваемые функцией mkstemp(), не удаляются автоматически. Ответственность за это возлагается на того, кто запускает программу. (Программисты должны внимательно следить за удалением временных файлов, иначе файловая система /tmp рано или поздно переполнится, приведя всю систему в нерабочее состояние.) Если файл создан для внутреннего использования и не предназначен для передачи другой программе, по окончании работы с ним нужно сразу же вызвать функцию unlink(). Она удаляет из каталога ссылку на файл, но сам файл остается до тех пор, пока не будут закрыты все ссылающиеся на него дескрипторы. Таким образом, программа может продолжать использовать временный файл; он будет удален автоматически сразу после закрытия дескриптора. Операционная система закрывает дескрипторы файлов по окончании работы программы, так что временный файл будет удален даже в случае аварийного завершения программы.
В листинге 2.5 показаны две функции, работающие с временным файлом. Будучи примененными в связке, они позволяют легко переносить содержимое буферов из операторной памяти во временный файл (это дает возможность освобождать и повторно использовать память), а затем загружать данные из файла обратно в память.
Листинг 2.5. (temp_file.c) Использование функции mkstemp()
/* дескриптор временного файла, созданного в функции
typedef int temp_file_handle;
/* Запись указанного числа байтов из буфера во временный файл.
Ссылка на временный файл немедленно удаляется. Возвращается
дескриптор временного файла. */
temp_file_handle write_temp_file(char* buffer, size_t length) <
/* Создание имени файла и самого файла. Цепочка XXXXXX будет
заменена символами, которые сделают имя уникальным. */
char temp_filename() = «/tmp/temp_file.XXXXXX»;
int fd = mkstemp(temp_filename);
/* немедленное удаление ссылки на файл, благодаря чему он будет
удален сразу же после закрытия дескриптора файла. */
/* Сначала в файл записывается число, определяющее размер
/* теперь записываем сами данные. */
write(fd, buffer, length);
/* Возвращаем дескриптор файла. */
/* Чтение содержимого временного файла, созданного в функции
write_temp_file(). Создается и возвращается буфер с содержимым
файла. Этот буфер должен быть удален в вызывающей подпрограмме
с помощью функции free(). В параметр LENGTH записывается размер
буфера в байтах. В конце временный файл удаляется. */
char* read_temp_file(temp_file_handle temp_file, size_t* length) <
/* TEMP_FILE — это дескриптор временного файла. */
int fd = temp_file;
/* переход в начало файла. */
lseek(fd, 0, SEEK_SET);
/* Определение объема данных, содержащихся во временном файле. */
read(fd, length, sizeof(*length));
/* Выделение буфера и чтение данных. */
read(fd, buffer, *length);
/* Закрытие дескриптора файла, что приведет к уничтожению
Если в программе используются функции потокового ввода-вывода библиотеки языка С и передавать временный файл другой программе не нужно, то для работы с временным файлом больше подойдет функция tmpfile(). Она создает и открывает временный файл, возвращая файловый указатель на него. Ссылка на файл уже оказывается удаленной, благодаря чему он уничтожается автоматически при закрытии указателя (с помощью функции fclose()) или при завершении программы.
В Linux есть ряд других функций, предназначенных для генерирования временных файлов или их имен, в частности mktemp(), tmpnam() и tempnam(). Работать с ними нежелательно, поскольку возникают упоминавшиеся выше проблемы, связанные с надежностью и безопасностью.
Читайте также
Временные характеристики процесса
Временные характеристики процесса Воспользовавшись функцией GetProcessTimes, которая в Windows 9x отсутствует, можно получить различные временные характеристики процесса, а именно: истекшее время (elapsed time), время, затраченное ядром (kernel time), и пользовательское время (user time). BOOL
Пример: временные характеристики процессов
Пример: временные характеристики процессов Наш следующий пример (программа 6.2) представляет собой команду timep (от time print — вывод временных параметров), аналогичную UNIX-команде time (поскольку команда time поддерживается процессором командной строки, мы должны использовать для
Временные серверы для Linux
Временные серверы для Linux Сервер NTP для работы в Linux реализуется с помощью программы ntp или ее разновидностей: xntp, xntp3 и xntpd. Символ x в начале имени означает «экспериментальный» (experimental), что не совсем верно, так как эти программы успешно используются в течение нескольких лет.
7. Временные рамки
7. Временные рамки «Как сделать что-то за 15 минут» – это может быть небольшая статья, где вы даете алгоритм решения той или иной проблемы за три минуты. Это очень хорошее название для статей и видео. Вы планируете записать бесплатный каст на 15 минут, в котором
Временные диаграммы усилителей
Временные диаграммы усилителей Чтобы получить временные диаграммы синусоидального входного напряжения и напряжения на стоке, необходимо несколько изменить входной файл. Входное напряжение задается синусоидальной функциейvi 1a 0 sin (0 1mV 5kHz)Анализ переходных процессов
Временные диаграммы
Временные диаграммы Чтобы получить временные диаграммы входного и выходного напряжений, необходимо слегка изменить входной файл. Как и в предыдущем примере, будет использовано синусоидальное входное напряжение:Vi 1 0 sin (0 0. 5V 5kHz)Наряду с анализом переходных процессов
R.12.2 Временные объекты
R.12.2 Временные объекты В некоторых ситуациях транслятору бывает необходимо или удобно создавать временные объекты. Использование временных объектов зависит от реализации. Если транслятору понадобился временный объект типа класса с конструктором, он должен обеспечить
7.2.6.1. Временные файлы
7.2.6.1. Временные файлы Использование временных файлов в качестве буферов обмена данными является старейшей из существующих IPC-методик. Несмотря на недостатки, она остается удобной в сценариях командных интерпретаторов и одноразовых программах, где более сложный и
7.2.6.1. Временные файлы
7.2.6.1. Временные файлы Использование временных файлов в качестве буферов обмена данными является старейшей из существующих IPC-методик. Несмотря на недостатки, она остается удобной в сценариях командных интерпретаторов и одноразовых программах, где более сложный и
Исходные файлы и выполняемые файлы
Исходные файлы и выполняемые файлы Наша замечательная программа, несмотря на свою лаконичность и простоту, для компьютера является совершенно бессмысленным набором символов, так как он «не понимает» директив типа #include или printf. Он понимает только специальный язык,
Временные значения
Временные значения CURRENT_CONNECTION и CURRENT_TRANSACTION не имеют смысла вне текущего соединения и контекста транзакции соответственно. Сервер Firebird сохранит самые последние значения этих идентификаторов в заголовочной странице базы данных. После восстановления базы данных из
Временные таблицы
Временные таблицы Firebird не поддерживает временные таблицы, которые управляются системой. Здесь они меньше нужны, чем в других СУБД. Например, у Firebird есть возможность получать виртуальные таблицы напрямую через хранимую процедуру, написанную с использованием
Постоянные «временные» таблицы
Постоянные «временные» таблицы Популярная модель хранения временных данных для доступа приложений — определить постоянную структуру данных, которая включает «идентификатор сессии» или «идентификатор пакета», получающие значение от генератора, или, в Firebird 1.5,значение
Временные файлы проектов
Временные файлы проектов В ходе работы над проектом Studio создает дополнительные файлы, в которые сохраняет промежуточные данные, такие как результат просчета видеоэффектов, переходов и т. д. Впоследствии данные в этих файлах используются для предварительного просмотра и
Источник