Страница 1 из 2

FREEBSD Навести порядок

Добавлено: 2020-11-02 17:50:33
Гость
Приветствую господа, по рекомендации с другого форума пришел к Вам. С просьбой о помощи.
Досталось мне в управление и полный контроль
Сервер с фрибсд выполняющий роль интернет сервера
Есть доменный сервер на винде
И сервер с сервером 1с
Пару десятков пользователей
История
29.10.2020
Пропал отклик от ряда сайта к примеру webwatsapp ,яндекс диск
Сослался на провайдера
30.10 Улучшений не заметил
При смене днс доступ к сайтам появился (но начали у некоторых пользователей отваливаться общие папки)
В этот же момент перестал по путти пускать за юникс сервер
Поставил монитор на прямую к серверу и увидел ошибку о не достаточном месте на диске под логи
Вечером тоого же дня перезагрузил все оборудование - ошибка ушла
В течение минут 20 восстановился доступ на ватсап веб ,затем и на яндекс диск
Полазив на парочке еще сайтов ,убедился что доступ остался ушел домой.
В субботу и воскресенье периодически поглядывал, все было стабильно.
Но сегодня утром наблюдаю тот же момент с доступом на некоторые сайты ,но яндекс диск работает.
Так же ощущается увеличение отклика в сети и везде

Код: Выделить всё

След. инфу буду вставлять так
- с сервера фрибсд не пингуется тоже
Размеры дисков
http://prntscr.com/vbwx52
Версия фри
https://prnt.sc/vbwzd4
var
https://prnt.sc/vbx1iz
Нагрузка сервера
https://prnt.sc/vbx2up
Прошу помочь разобраться в чем заморочка

FREEBSD Навести порядок

Добавлено: 2020-11-02 18:08:12
medvedwait
Тема моя, не понял почему разлогинелся при отправке.
Модераторы если возможно перенести на данный аккаунт.

FREEBSD Навести порядок

Добавлено: 2020-11-03 0:12:26
snorlov
попробуйте сначала сделать

Код: Выделить всё

umount /var
посмотреть что получилось т.е. подключился ли /var от диска, после чего

Код: Выделить всё

 du -h -d 1 /var
ну и анализировать, что у вас переполнил диск...
вы /etc/rc.conf приведите, что бы было понятно что у вас там пашет

FREEBSD Навести порядок

Добавлено: 2020-11-03 6:45:59
medvedwait
При монтаже ничего не отвалится?
По поводу rc.conf не вижу файла такого
https://prnt.sc/vc9yuu

FREEBSD Навести порядок

Добавлено: 2020-11-03 7:32:41
Neus
medvedwait писал(а):
2020-11-03 6:45:59
По поводу rc.conf не вижу файла такого
не там смотришь
надо
snorlov писал(а):
2020-11-03 0:12:26
/etc/rc.conf

FREEBSD Навести порядок

Добавлено: 2020-11-03 8:29:22
medvedwait
Понял, вот /etc/rc.conf

Код: Выделить всё

hostname="" -указана почта была
inetd_enable="YES"



### gateway ###
gateway_enable="YES"
rinetd_enable="YES"

### Reason ###
ifconfig_rl0="inet 194.186.190.30 netmask 255.255.255.252"
#ifconfig_bfe0="inet 192.168.16.254 netmask 255.255.255.0"
ifconfig_sis0="inet 192.168.16.254 netmask 255.255.255.0"


### ifconfig_rl0="inet 192.168.10.243 netmask 255.255.255.0"

#ifconfig_bfe0="DHCP"
defaultrouter="194.186.190.29"
### defaultrouter="192.168.10.100"

natd_enable="YES"
natd_interface="rl0"
natd_flags="-m -s -u"
firewall_enable="YES"
firewall_script="/etc/rc.firewall"
#firewall_script="/root/ipwf"

### dhcp ###
dhcpd_enable="YES"
#dhcpd_ifaces="bfe0"
dhcpd_ifaces="sis0"

### dns ###
named_enable="YES"
named_flags="-u bind -s"
mpd_enable="YES"
mpd_flags="-b"

### vpn ###
openvpn_enable="YES"
openvpn_if="tun"
openvpn_configfile="/usr/local/etc/openvpn/server.conf"
openvpn_dir="/usr/local/etc/openvpn"

### nfs ###
nfs_client_enable="YES"
nfs_server_enable="YES"

### batva ###
rpcbind_enable="YES"
sshd_enable="YES"
webmin_enable="YES"

### web ###
mysql_enable="YES"
apache22_enable="YES"


FREEBSD Навести порядок

Добавлено: 2020-11-03 8:52:31
Neus
ну как я понял произошло у тебя следующее
/var переполнился, ты ребутнул сервер, поскольку /var оказался недоступным на запись система создала его в памяти (/dev/md0)
ну это мое предположение, может зачем-то у тебя это в /etc/fstab есть (покажи его тут)
отмонтируй /dev/md0 и чисти свой /var

FREEBSD Навести порядок

Добавлено: 2020-11-03 9:09:38
medvedwait
Да выглядело примерно так,
В var обнулил пару логов. Но они весят копейки.

Код: Выделить всё

fstab              [----]  0 L:[  1+ 0   1/  7] *(0   / 167b)= /  47 0x2F
/dev/ad1s1b<--->none<-->swap<-->sw<---->0<----->0
/dev/ad1s1d<--->/tmp<-->ufs<--->rw<---->1<----->2
/dev/ad1s1e<--->/var<-->ufs<--->rw<---->1<----->2
/dev/ad1s1f<--->/usr<-->ufs<--->rw<---->1<----->2
/dev/ad1s1g<--->/home<->ufs<--->rw<---->1<----->2
/dev/ad1s1a<--->/<----->ufs<--->rw<---->1<----->1
Логи
https://prnt.sc/vcbsa0

FREEBSD Навести порядок

Добавлено: 2020-11-03 9:15:46
Neus
чего ты в мс смотришь
du -h -d 1 /var
ищи чем у тебя 5гб забито

FREEBSD Навести порядок

Добавлено: 2020-11-03 9:25:55
medvedwait
Тут ничего объемного

Код: Выделить всё

mail# du -h -d 1 /var
2.0K    /var/.snap
2.0K    /var/account
6.0K    /var/at
2.0K    /var/audit
 16K    /var/backups
2.0K    /var/crash
4.0K    /var/cron
 25M    /var/db
2.0K    /var/empty
2.0K    /var/games
2.0K    /var/heimdal
706K    /var/log
2.0K    /var/mail
4.0K    /var/msgs
117K    /var/named
2.0K    /var/preserve
 64K    /var/run
2.0K    /var/rwho
 16K    /var/spool
4.0K    /var/tmp
2.0K    /var/yp
 26M    /var
mail#

FREEBSD Навести порядок

Добавлено: 2020-11-03 9:40:42
Neus
пилять...
medvedwait писал(а):
2020-11-03 9:25:55
Тут ничего объемного
тебе что сказали?!
Neus писал(а):
2020-11-03 8:52:31
отмонтируй /dev/md0
иначе ты не увидишь свой /var который лежит тут
medvedwait писал(а):
2020-11-03 9:09:38
/dev/ad1s1e<--->/var

FREEBSD Навести порядок

Добавлено: 2020-11-03 10:26:31
medvedwait
Log

Код: Выделить всё

mail#  du -h -d 1 /var
2.0K    /var/.snap
2.0K    /var/account
6.0K    /var/at
2.0K    /var/audit
 30K    /var/backups
4.0K    /var/crash
6.0K    /var/cron
421M    /var/db
2.0K    /var/empty
2.0K    /var/heimdal
1.7G    /var/log
2.6M    /var/mail
4.0K    /var/msgs
168K    /var/named
2.0K    /var/preserve
 64K    /var/run
2.0K    /var/rwho

FREEBSD Навести порядок

Добавлено: 2020-11-03 10:30:03
medvedwait
Это var/log
https://prnt.sc/vcd6yn

FREEBSD Навести порядок

Добавлено: 2020-11-03 10:41:39
Neus
чота мало насчитало, у тебя же почти 5г занято, почисти логи и посмотри еще сколько там инодов свободно df -hi

FREEBSD Навести порядок

Добавлено: 2020-11-03 10:54:15
medvedwait
Neus писал(а):
2020-11-03 10:41:39
df -hi

Код: Выделить всё

mail# df -in
Filesystem  1K-blocks    Used    Avail Capacity iused   ifree %iused  Mounted on
/dev/ad1s1a  10438308 6151862  3451382    64%   32224 1333790    2%   /
devfs               1       1        0   100%       0       0  100%   /dev
/dev/ad1s1d   5215850     686  4797896     0%     232  682774    0%   /tmp
/dev/ad1s1e   5215850 3320984  1477598    69%  683005       1  100%   /var
/dev/ad1s1f  41778462 9695116 28741070    25%  531245 4885713   10%   /usr
/dev/ad1s1g  12860138   18350 11812978     0%     157 1672033    0%   /home
devfs               1       1        0   100%       0       0  100%   /var/named/dev
Удалил самые объемные логи

FREEBSD Навести порядок

Добавлено: 2020-11-03 12:31:53
Neus
medvedwait писал(а):
2020-11-03 10:54:15
/dev/ad1s1e 5215850 3320984 1477598 69% 683005 1 100% /var
у тебя иноды кончились.
откуда такая куча файлов там?
чисти все и ребутнись

FREEBSD Навести порядок

Добавлено: 2020-11-03 12:46:26
medvedwait
Neus писал(а):
2020-11-03 12:31:53
у тебя иноды кончились.
откуда такая куча файлов там?
чисти все и ребутнись
Можно подробнее как?
И какие файлы удалять?
не в мс же искать по папкам

FREEBSD Навести порядок

Добавлено: 2020-11-03 13:28:03
snorlov
Ну сначало /var/log можно безболезненно удалять все что имеет расщирение bz2, это ротационные сжатые старые логи,
потом дать

Код: Выделить всё

du -h -d 1 /var/log/*.* | more 
, там много файлов поэтому more, ну и анализируешь их...

FREEBSD Навести порядок

Добавлено: 2020-11-03 14:10:29
Neus
дай вывод

Код: Выделить всё

ls -lhS /var

FREEBSD Навести порядок

Добавлено: 2020-11-03 17:48:14
guest
- один диск: ad1
- разметка MBR, одна primary партиция "s1": ad1s1
- bsd партиций "6":
- adas1a = "/" = 10G занято 5.9G
- adas1b = swap = ?G
- adas1d = "/tmp" = 5G всегда должно быть свободно
- adas1e = "/var" = 5G занято
- adas1f = "/usr" = 40G занято 9.2G
- adas1g = "/home" = 12G занято 26M

У вас один диск ad1, на нем одна партиция MBR, на ней
6'ть bsd партиций.

Все важные директории сделаны отдельными файловыми системами,
лежащими на отдельных партициях.

прим: FS == Filesystem (файловая система)

Партиция с FS=/tmp используется системой для разнообразных
временных нужд и файлов, удалите на ней все ненужное.

На партиции с FS=/var - хранятся системные логи, базы, в том числе MySQL.
В директории /var/log/ - разнообразные логи, они должны время от времени
удаляться.
Логи ротируются, настройка ротации производится в /etc/newsyslog.conf

пример:

# ls -lAt /var/log/messages*
-rw-r--r-- 1 root wheel 525969 2 нояб. 21:50 /var/log/messages
-rw-r--r-- 1 root wheel 27507 1 янв. 2020 /var/log/messages.0.bz2
-rw-r--r-- 1 root wheel 10121 13 авг. 2019 /var/log/messages.1.bz2
-rw-r--r-- 1 root wheel 9507 2 июня 2019 /var/log/messages.2.bz2
-rw-r--r-- 1 root wheel 7439 22 мая 2019 /var/log/messages.3.bz2
-rw-r--r-- 1 root wheel 7727 15 мая 2019 /var/log/messages.4.bz2
#


все основные логи в файле /var/log/messages, старые файлы ротируются
к примеру, 5 раз в неделю и хранятся в сжатом виде.

messages.0.bz2, messages.1.bz2 ... messages.4.bz2

вот такие файлы можно смело вычищать, еще лучше - правильно настроить
ротацию.

НЕЛЬЗЯ удалять лог-файлы открытые на текущий момент приложением,
это грозит созданием разреженных файлов и в реалии, файловый
дескриптер останется занятым, а Вы будете считать что удалили.
Соответственно место НЕ ОСВОБОДИТСЯ.
Чтобы удалить активный лог-файл, нужно завершить работу приложения
которое его использует и только после этого удалить или очистить.

В Вашем случае, вероятно, это лучше сделать из single user mode,
когда нет работающих сервисов:
- загружаетесь в single-user mode
- выполняете fsck_ffs для всех файловых систем:

# fsck_ffs -y /
# fsck_ffs -y /tmp
# fsck_ffs -y /usr
# fsck_ffs -y /var
# fsck_ffs -y /home

прим: после fsck разреженных файлов не должно остаться.

- теперь монтируете:

# mount -a

- теперь можете смело выполнять df , du и удалять из
/var/log и не только, все большое и лишнее, ибо сервисы в стопе.

Как только все сделаете и увидите что df и du у Вас показывает примерно
одинаковые размеры, можно загружаться в multiuser mode или
выполнить reboot.

Итого:

- неиспользуемый /home, прямо таки совсем = 12G
- маленький /var = 5G
- не подстроена ротация логов
- fsck используется в background by default
- ну и Вы не знаете как правильно чистить /var/log
свидетельством тому огромная разница в показаниях df и du

Что нужно сделать:

1) добавить в файл /etc/rc.conf строки

#-- forced fsck-y
fsck_y_enable="YES"
fsck_y_flags="-f"
#-- disable background fsck
background_fsck="NO"

запретить работу fsck в background режиме и насильно
проверять FS при загрузке.

ps. Первый раз можно загрузиться в single user mode
и выполнить fsck_ffs руками для каждой FS. Вставил описание выше.

2) подстроить ротацию логов: /etc/newsyslog.conf

3) проверить задания в cron, возможно выполняется
бекап базы mysql, если да - найти куда

Что можно сделать:

a) объединить две партиции /home и /var в одну
или
b) вынести /var/log в /home или /usr и сделать туда
линк из /var

Все понятно или нужно что-то еще пояснить?

Ну а впереди Вас ждут проблемы с умиранием HDD, судя
по древности системы.

FREEBSD Навести порядок

Добавлено: 2020-11-03 18:06:54
snorlov
Ротацию логов, если сам демон это не делает, точнее, если у него нет соответствующих настроек, осуществляется через /etc/newsyslog.conf

FREEBSD Навести порядок

Добавлено: 2020-11-03 18:36:59
snorlov
Из всех демонов надо обратить внимание на mysql и nfs-сервер. Для первого характерно dump баз и их архивирование, а вот для nfs-сервера вполне могут забить его дисковый ресурс, особенно если он юзается и находится в /var...

FREEBSD Навести порядок

Добавлено: 2020-11-03 18:45:46
guest
Ну а впереди Вас ждут проблемы с умиранием HDD, судя
по древности системы.
да, судя по размерам FS, делов от силы на 15 мин, за пол-часа можно
успеть объединить /var и /home, причем без growfs, ибо в его работе
в 8.0-RELEASE я не уверен.

FREEBSD Навести порядок

Добавлено: 2020-11-03 18:59:26
guest
snorlov » 2020-11-03 18:36:59
Из всех демонов надо обратить внимание на mysql и nfs-сервер. Для первого характерно dump баз и их архивирование, а вот для nfs-сервера вполне могут забить его дисковый ресурс, особенно если он юзается и находится в /var...
угу, для nfs смотрим:

# cat /etc/exports

ps. здравый человек вряд ли даст монтирование /var на "rw"

FREEBSD Навести порядок

Добавлено: 2020-11-09 4:22:19
medvedwait
snorlov писал(а):
2020-11-03 13:28:03
du -h -d 1 /var/log/*.* | more

Код: Выделить всё

mail# du -h -d 1 /var/log/*.* | more
256K    /var/log/auth.log
272K    /var/log/cron.0
4.0K    /var/log/debug.log
  0B    /var/log/dmesg.yesterday
2.0K    /var/log/dovecot.log
 83M    /var/log/httpd-access.log
2.0K    /var/log/httpd-error.log
2.0K    /var/log/ipfw.yesterday
2.0K    /var/log/maillog.0
 34M    /var/log/messages.0
2.0K    /var/log/mount.today
2.0K    /var/log/mount.yesterday
148K    /var/log/mpd.log
2.0K    /var/log/ntp.log
  0B    /var/log/pf.today
  0B    /var/log/ppp.log
4.0K    /var/log/setuid.yesterday
2.0K    /var/log/wtmp.0
2.0K    /var/log/wtmp.1
2.0K    /var/log/wtmp.2
2.0K    /var/log/wtmp.3
Не особо то и много