В Centos-а е малко интересен в сетъпа на bridge адаптери. Приемам че вече е инсталиран bridge-utils пакета и eth0 (в това е в моя пример) е конфигуриран, така че нека да разгледаме основните стъпки
Копираме настройките на eth0 в br0 (тук вече ако ви трябват друго именуване на адаптерите си го коригирате)
Занествате записите за eth0 в конфигурационният файл на br0
замествате типа на адаптера от Ethernet на Bridge
Махате MAC адреса от br0 конфигурацията
Задавате в eth0 конфигурацията че ще се имаме мостов адаптер br0
За да спестя време си го разписах като елементарно bash скриптче
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg-br0
sed -i 's/eth0/br0/' ifcfg-br0
sed -i 's/Ethernet/Bridge/' ifcfg-br0
sed -i '/HWADDR/d' ifcfg-br0
echo 'BRIDGE="br0"' >> ifcfg-eth0
Днес сутинрта започнах да си правя стандартния dist upgrade на един Debian сървър и Dovecot умря със следната грешка 🙂
[….] Starting IMAP/POP3 mail server: dovecotError: socket() failed: Address family not supported by protocol
Error: service(pop3-login): listen(::, 110) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(pop3-login): listen(::, 995) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(imap-login): listen(::, 143) failed: Address family not supported by protocol
Error: socket() failed: Address family not supported by protocol
Error: service(imap-login): listen(::, 993) failed: Address family not supported by protocol
Fatal: Failed to start listeners
failed!
Ако се загледате внимателно в нея грешката вади очите на човек listen(::, 993) failed очевидно се опитва да слуша на ipv6 адрес който съм забранил 😈 . Решението е също толкова очевдино колкото и самата грешка – трябва да накараме dovecot да работи само на ipv4, което се постига с следният ред в /etc/dovecot/dovecot.conf listen=0.0.0.0
След което удряме един бърз рестарт на Dovecot и всичко е по реда си и можем да продължим с дистрибутивният ъпгрейд
По подразбиране когато си инсталирате Munin в Cpanel липсват няколко благи конфига които трябва да си ги направим на ръка. За мен един от тях е мониторинга на температурата на дисковете.
В общи линии конфигурацията е тривиална
1. Трябва да определим типа на нашите дискове – той може да бъде един от следните : ata, scsi, sat[,auto][,N][+TYPE], usbcypress[,X], usbjmicron[,x][,N], usbsunplus, marvell, areca,N/E, 3ware,N, hpt,L/M/N, megaraid,N, cciss,N, auto, test. Най лесният начин за това е чрез cat на „/proc/ide“ или „/proc/scsi“. При мен:
2. За да почнем да следим температурата трябва да опишем в munin node дисковете ни. В файла /etc/munin/plugin-conf.d/hddtemp_smartctl добавяте записи от следният тип
# cat /etc/munin/plugin-conf.d/hddtemp_smartctl
[hddtemp_smartctl]
user root
env.drives sda sdb
env.args_sda -d ata
env.args_sdb -d ata
Можем да ударим тест на нашият бъдещ конфиг по следният начин
Ако получите стойности значи всичко е ок. Ако получите грешка трябва да проверите дали всичко правилно описано. Следва да рестартирате munin nod-а ви и да изчакте 10-15 мин да се популират малко данни и да почне да се чертае графика. Можете да проверите /var/log/munin/munin-node.log за грешки и по лесното им отстраняване.
Ако искате да получавате email при критична температура на дисковете трябва да добавите описание за критична такава:
Днес реших да направя няколко теста върху чиста Cpanel инсталация за която имах необходимост от няколко потребителя. Тъй като не исках да натоварвам работещите сървъри с пакетиране архивиране и трансфер на файловете използвах архивите от предишната вечер. Трансферирах си всички архиви в /home и установих че Cpanel не предлага възстановяването на повече 1 акаунт едновременно както през GUI така и през CLI. През GUI тъй като нямаше как да се получи номера реших да се изхитря с cli скрипта restorepkg. Използването му е безкрайно просто
/scripts/restorepkg username.tar.gz
Като действието се повтаря за всеки потребител по отделно. При опит да използвам * вместо името на потребителя скрипта деректно ме отряза затова трябва да се подходи малко по елегантно –
archives=$(ls /home/ | grep tar.gz)
for archive in $archives
do
/scripts/restorepkg --force $archive
done
Сега бързо обяснение. Правим си списък с всички архиви и го блъскаме в променливата archives след това обхождаме списъка елемент по елемент като стартираме разпакетирането за всеки архив по отделно. Нищо кой знае колко сложно интересно защо пичовете от Cpanel не са изплзвали подобно решение за множество файлове.
Да приемем следната ситуация правили сте нещо и сте и си смазали MBR записа. И след това въобще нямате или просто получавате съобщение за грешка в GRUB. Възстановяването си е тривиална операция от където и да се погледне
1. Направете си Live CD/DVD/USB каквото имате под ръка с каквото и да било дистро
2. Преминаване в chroot на старта ви OS така ще си запазите настройките и ще използвате версията на grub с която те си били при мен и имам доста неща описани в CMD-то на Grub
mount /dev/sda1 /mnt
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt
3. Вече сме chroot на вашето дистро остана само да се преинсталира груб и да се ъпдейтне (за всеки случай)
grub-install /dev/sda
update-grub
Воала рестартираме и сме готови да работи както преди и всичко е непокътнато ни лук яли ни лук мирисали 😉 Възстановяване на GRUB