Как каждый находит, какие файлы поднимают 80% пространства на веб-сервере Linux?

Вы уверены, что тип MIME явно устанавливается на "текст/плоскость", когда сообщение отправляется?

Например, в.NET можно установить формат сообщения на простой текст или HTML явно, например:

msgMail.BodyFormat = MailFormat.Text;

В Java необходимо смочь явно отправить сообщение простого текста путем установки типа MIME на "текст/плоскость", например:

  MimeMessage message = new MimeMessage(mailSession);
  message.setSubject("Testing javamail plain");
  message.setContent("This is a test", "text/plain");

15
задан 22 February 2016 в 03:50
10 ответов

Я нахожу, что ncdu (http://dev.yorhel.nl/ncdu) довольно полезен для этого.

9
ответ дан 2 December 2019 в 20:45
  • 1
    Прекрасно. Блестящий интерфейс и способность управлять файлами из программы. Удачи! –  Gareth 4 August 2009 в 02:24

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

du --max-depth=1 -h /

Теперь возьмите каталог, который израсходовал большую часть пространства (du --max-depth=1 -h /yourdir) и пойдите глубже, пока Вы не найдете своего преступника.
Если хотят Ваш вывод, отсортированный по размеру, и не заботятся о человекочитаемом формате, Вы могли также сделать du --max-depth=1 /your_dir | sort -n

23
ответ дан 2 December 2019 в 20:45
  • 1
    Да. Я делаю в значительной степени то же самое " du-S | вид-n-r |less". я действительно хотел бы видеть программу, которая была похожа на htop и cron' d как mlocate, но то, когда работал, дало Вам точную и современную информацию о файлах в Вашей системе. –  Gareth 21 July 2009 в 04:17
  • 2
    Вместо того, чтобы начать с / на веб-сервере пытаются начать с http_root. Если нет никакого успеха там затем, можно пойти для '/'. каталог, работающий du на '/' возьмет партию времени. –  Saurabh Barjatiya 21 July 2009 в 08:43

Я использую баобаб программы Gnome. Можно выполнить это на рабочем столе, и t может соединиться через SSH с сервером. Это показывает легкое для чтения графической карты использования дискового пространства. Это установлено под Gnome как "Использование диска Анализатор"

4
ответ дан 2 December 2019 в 20:45

Дайте gt5 попытку.

3
ответ дан 2 December 2019 в 20:45
  • 1
    Я второй это, замечательно для отслеживания, куда пространство идет, потому что это показывает diffs. –  Josh 21 July 2009 в 06:38
  • 2
    Прекрасно. Это должно быть правильным ответом. Какая супер находка. Спасибо. –  PKHunter 15 November 2014 в 14:35

df-k шоу, какие фс являются проблемой. Затем CD к высокоуровневому dir для него и выполненному du-xk | вид-n | хвост-25 это покажет лучшие 25 dir, отсортированных, для солнца 9 или ранее, заменит x d.

2
ответ дан 2 December 2019 в 20:45
  • 1
    Да, подобный тому, что я просто упомянул в @Marie Fischer' s ответ. Почему использование-k (размер блока), хотя, а не-h для человека? –  Gareth 21 July 2009 в 04:24
  • 2
    - k используется так, чтобы обо всех размерах сообщили в Кбите. Это еще полезно для вида, вид поместил бы 10 КБ перед 20 МБ при сортировке. –  Saurabh Barjatiya 21 July 2009 в 08:41

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

Это делает это unfindable с обычными инструментами - можно использовать lsof для исследования, какие процессы имеют открытые файлы.

1
ответ дан 2 December 2019 в 20:45
  • 1
    Я использую /usr/sbin/lsof | grep deleted для получения этого. –  Kevin M 21 July 2009 в 15:10

Если можно запустить программное обеспечение в системе, то xdiskusage графически покажет Вам, какие каталоги/файлы едят Ваше пространство. Чрезвычайно полезный.

Я полагаю, что KDE содержит что-то подобное.

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

0
ответ дан 2 December 2019 в 20:45

вот что-то, что я починил для разыскивания некоторых процессов жулика на наших серверах баз данных: rabbitfinder

#!/bin/sh
tree -s -f > /tmp/out1 && sleep 5 && tree -s -f > /tmp/out2; diff /tmp/out1 /tmp/out2 | egrep "\|--" | awk -F[ '{print $2}' | awk -F] '{print $2 }' | sort | uniq | xargs fuser -f | xargs ps -lFp

это - вид kludgey и не очень устойчивое, но это работает таким образом:

  1. генерируйте рекурсивный древовидный список текущего каталога
  2. ожидайте 5 секунд
  3. генерируйте другой список
  4. сравните эти два вывода
  5. термофиксатор файлы, которые изменили размер и
  6. ps -lFp покажет файлы, какой процесс владеет ими

    user@poseidon:~$ tree -s -f > /tmp/out1 && sleep 5 && tree -s -f > /tmp/out2; diff /tmp/out1 /tmp/out2 | egrep "\|--" | awk -F[ '{print $2}' | awk -F] '{print $2 }' | sort | uniq | xargs fuser -f | xargs ps -lFp
    ./tmp/output:       
    F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN    RSS PSR STIME TTY          TIME CMD
    0 R 1000     14310 14275 23  80   0 -  1072 -        748   1 22:19 pts/2    00:00:06 dd if /dev/zero of ./output bs 1024 count 10000000
    
0
ответ дан 2 December 2019 в 20:45
  1. cd в домашний каталог веб-серверов (домашний каталог apache)
  2. запустите команду «du -a | head -30 | sort -nr»
  3. , это даст вам 30 самых больших файлов / каталогов, занимающих диск
  4. вы можете найти их и удалить (если не полезно)
0
ответ дан 2 December 2019 в 20:45

Вы можете использовать следующие команды, чтобы найти, какие файлы или папки занимают слишком много места.

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

du -ah . | sort -rh | head -20

или:

du -a . | sort -rn | head -20

Для 20 самых больших файлов в текущей папке (рекурсивно):

ls -1Rs | sed -e "s/^ *//" | grep "^[0-9]" | sort -nr | head -n20

или с размерами, читаемыми человеком:

ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20

Вторая команда для корректной работы с OSX/BSD (так как сортировка не имеет -h), необходимо установить сортировку из coreutils. Затем добавьте папку bin в ваш PATH.

Вы можете определить эти команды как псевдонимы (например, добавить в ваши rc файлы, такие как . bash_profile):

alias big='du -ah . | sort -rh | head -20'
alias big-files='ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20'

Затем запустите большие или большие файлы внутри папок, которые, как Вы думаете, имеют место (например, в /home).

.
0
ответ дан 2 December 2019 в 20:45

Теги

Похожие вопросы