Архив заметок

FreeBSD

Подписаться на эту рубрику по RSS

ZFS. Отваливается диск после загрузки.

Просмотров: 6960Комментарии: 9
FreeBSDZFS

Намедни обзавелся тремя дисками WD Caviar Green по 3 ТБ. Счастья полные штаны smile Но за счастьем следовало разочарование. Итак, немного предыстории.

Диски были куплены для организации файлового хранилища, как бы пафосно это не звучало smile

Тазик используется как медиа сервер. Весь медиа контент воспроизводится через dune hd tv101 приставочку по протоколу SMB.

Естественно, я решил использовать ZFS для организации массива RAID5, RAID0 для таких дел как бе нелепо, а RAID1 из трех дисков не сложится, да и четвертый покупать пока не имеет смысла.

Я без задней мысли штампую:

# zpool create storage raidz ada1 ada2 ada3

Потом я создал каталоги и радостный стал переносить всякое добро с системного диска на новый массив.

После нескольких минут копирования, я увидел это в /var/log/messages:

(aprobe0:ahcich1:0:0:0): NOP. ACB: 00 00 00 00 00 00 00 00 00 00 00 00
(aprobe0:ahcich1:0:0:0): CAM status: ATA Status Error
(aprobe0:ahcich1:0:0:0): ATA status: d1 (BSY DRDY SERV ERR), error: 04 (ABRT )
(aprobe0:ahcich1:0:0:0): RES: d1 04 ff ff ff ff ff ff ff ff ff
(aprobe0:ahcich1:0:0:0): Error 5, Retries exhausted
(aprobe1:ahcich1:0:15:0): NOP. ACB: 00 00 00 00 00 00 00 00 00 00 00 00
(aprobe1:ahcich1:0:15:0): CAM status: ATA Status Error
(aprobe1:ahcich1:0:15:0): ATA status: d1 (BSY DRDY SERV ERR), error: 04 (ABRT )
(aprobe1:ahcich1:0:15:0): RES: d1 04 ff ff ff ff ff ff ff ff ff
(aprobe1:ahcich1:0:15:0): Error 5, Retries exhausted
(aprobe0:ahcich1:0:0:0): NOP. ACB: 00 00 00 00 00 00 00 00 00 00 00 00
(aprobe0:ahcich1:0:0:0): CAM status: ATA Status Error
(aprobe0:ahcich1:0:0:0): ATA status: d1 (BSY DRDY SERV ERR), error: 04 (ABRT )
(aprobe0:ahcich1:0:0:0): RES: d1 04 ff ff ff ff ff ff ff ff ff
(aprobe0:ahcich1:0:0:0): Error 5, Retries exhausted

Что показывал camcontrol devlist:

beast# camcontrol devlist
<SAMSUNG HD160JJ ZM100-47>         at scbus0 target 0 lun 0 (pass0,ada0)
<WDC WD30EZRX-00MMMB0 80.00A80>    at scbus2 target 0 lun 0 (pass2,ada2)
<WDC WD30EZRX-00MMMB0 80.00A80>    at scbus3 target 0 lun 0 (pass3,ada3)
<Generic- SD/MMC 1.00>             at scbus6 target 0 lun 0 (da0,pass4)
<Generic- Compact Flash 1.01>      at scbus6 target 0 lun 1 (da1,pass5)
<Generic- SM/xD-Picture 1.02>      at scbus6 target 0 lun 2 (da2,pass6)
<Generic- MS/MS-Pro 1.03>          at scbus6 target 0 lun 3 (da3,pass7)

Хм, первый диск отвалился. Читать далее...

SVN обновление портов и исходных текстов

Просмотров: 4094Комментарии: 6
FreeBSD

Всем привет. Пока не забыл, напишу маленькую заметку на память про SVN. Что это за шляпа?

Subversion[1] (также известная как «SVN»[2]) — свободная централизованная система управления версиями, официально выпущенная в 2004 году компанией CollabNet Inc.

Итак SVN это будущее, а CVS это прошлое smile Конечно, если бы не это сообщение на офф. сайте Фряхи:

Warning: As of late 2012, the FreeBSD Ports Project is in the process of migrating revision control systems from CVS to Subversion. As a result, these instructions are in a state of change. The preferred mechanism for general ports use is Portsnap. Users requiring local customization of ports (that is, maintaining additional local patches) will probably prefer to use Subversion directly. The CVSup service is being phased out as of February 28, 2013, and further use is discouraged.

я бы и дальше использовал CVSup или его аналог в поставке с Фрей - csup. Но, времена меняются, а динозавром быть не хочется. В общем, все это лирика. Мне надо было обновить порты с помощью SVN и, что я сделал для этого?

Правильно, установил сначала клиент svn. Читать далее...

Отключение ipfw

Просмотров: 7638Комментарии: 0
FreeBSD

Понадобилось мне отключить файерволл(который зашит в ядро) ipfw на тазике. Поменял в /etc/rc.conf:

firewall_enable="NO"

Перезагрузился и в итоге машинка перестала отвечать на запросы. Порыл интернеты и обнаружил, что для полного отключения необходимо добавить еще строки в /etc/sysctl.conf:

net.inet.ip.fw.enable=0
net.inet6.ip.fw.enable=0

Перегружаем настройки:

# /etc/rc.d/sysctl restart

Файер отключен более, чем полностью.

FreeBSD. Температура HDD. SMART

Просмотров: 5337Комментарии: 0
FreeBSDСтатистика

На балконе стоит ацкий тазик, используемый под файлопомойку и dlna сервер. Понадобилось тут следить за температурой жесткого диска и его состоянием, дабы быть в курсе работы девайса. Естессно для фряхи описаны кучи руководств по мониторингу системы. Эта статья на память, чтоб не копаться в гуглах и интернетах в поисках команд smile

beast# pkg_info | grep smart
smartmontools-5.43 S.M.A.R.T. disk monitoring tools
beast#

Это я поставил тулзу для мониторинга жестких дисков.

Теперь посмотрим включена ли поддержка smart:

beast# smartctl -i /dev/ada0
smartctl 5.43 2012-06-30 r3573 (local build)
Copyright (C) 2002-12 by Bruce Allen, https://smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Model Family: SAMSUNG SpinPoint P80 SD
Device Model: SAMSUNG HD160JJ
Serial Number: S08HJ1MP207824
Firmware Version: ZM100-47
User Capacity: 160 041 885 696 bytes
Sector Size: 512 bytes logical/physical
Device is: In smartctl database
ATA Version is: 7
ATA Standard is: ATA/ATAPI-7 T13 1532D revision 4a
Local Time is: Mon Sep 17 15:01:57 2012 MSK
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Включен. Если нет, то включить smart можно в биосе. В этом веке все диски должны поддерживать эту фичу. Далее, в конфиге я расскомментил только одну строчку:

beast# cat smartd.conf | grep ada0
/dev/ada0 -a -m mail@mail -o on -S on -s (S/../.././02|L/../../6/03)
beast#

Вместо mail@mail указываете свой ящик, туда будут сыпаться уведомления о проблемах и ошибках, если таковые возникнут.

Чтобы узнать текущую температуру жесткого, пишите команду:

beast# smartctl -a /dev/ada0 | grep 194
194 Temperature_Celsius 0x0022 142 064 000 Old_age Always - 32
beast#

Если указать просто:

beast# smartctl -a /dev/ada0

То программка выведет всю инфу по жесткому диску.

Бэкап и восстановление FreeBSD

Просмотров: 4148Комментарии: 2
FreeBSD

Накопал видео на youtube от startnetworkings c подробным описанием бэкапа и восстановления ОС FreeBSD по сети. В видео для хранения бэкапа используется ОС Windows 2008, но это не суть важно smile

P.S. Видео на русском с разжевыванием каждого шага.

Дамп exim'а

Просмотров: 3247Комментарии: 0
FreeBSDExim

На память публикую sql дамп почтового сервера exim. Взял отсюда. Дамп ниже подразумевает, что БД для екзима создана и юзер назначен smile

USE `exim`;
CREATE TABLE `admin` (
  `username` varchar(255) NOT NULL default '',
  `password` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`username`),
  KEY `username` (`username`)
);
CREATE TABLE `alias` (
  `address` varchar(255) NOT NULL default '',
  `goto` text NOT NULL,
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`address`),
  KEY `address` (`address`)
);
CREATE TABLE `domain` (
  `domain` varchar(255) NOT NULL default '',
  `description` varchar(255) NOT NULL default '',
  `aliases` int(10) NOT NULL default '0',
  `mailboxes` int(10) NOT NULL default '0',
  `maxquota` int(10) NOT NULL default '0',
  `transport` varchar(255) default NULL,
  `backupmx` tinyint(1) NOT NULL default '0',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`domain`),
  KEY `domain` (`domain`)
);
CREATE TABLE `domain_admins` (
  `username` varchar(255) NOT NULL default '',
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  KEY `username` (`username`)
);
CREATE TABLE `log` (
  `timestamp` datetime NOT NULL default '0000-00-00 00:00:00',
  `username` varchar(255) NOT NULL default '',
  `domain` varchar(255) NOT NULL default '',
  `action` varchar(255) NOT NULL default '',
  `data` varchar(255) NOT NULL default '',
  KEY `timestamp` (`timestamp`)
);
CREATE TABLE `mailbox` (
  `username` varchar(255) NOT NULL default '',
  `password` varchar(255) NOT NULL default '',
  `name` varchar(255) NOT NULL default '',
  `maildir` varchar(255) NOT NULL default '',
  `quota` int(10) NOT NULL default '0',
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`username`),
  KEY `username` (`username`)
);
CREATE TABLE `vacation` (
  `email` varchar(255) NOT NULL default '',
  `subject` varchar(255) NOT NULL default '',
  `body` text NOT NULL,
  `cache` text NOT NULL,
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`email`),
  KEY `email` (`email`)
);

SSH bruteforce. Некоторые элементы на заметку.

Просмотров: 15348Комментарии: 9
FreeBSDPF

Каким-то мудреным образом мой ip попал в таблицу негодяев на моем удаленном тазике. Вспоминал команду для очистки таблицы заблокированных ip адресовsmile В итоге сдался и нагуглил решение.

Привожу часть конфига pf.conf:

pass in on $ext_if  proto tcp from any to $ext_if port ssh \
synproxy state ( max-src-conn-rate 1/60, \
overload <BRUTEFORCERS> flush global )

Чтобы просмотреть заблокированные ip адреса в таблице BRUTEFORCES:

pfctl -t BRUTEFORCES -T show

Удалить адреса:

pfctl -t BRUTEFORCES -T del *тут ip адрес*

Добавить негодяя:

pfctl -t BRUTEFORCES -T add *ip негодяя*

Ну в общем-то и все.