[freebsd] Re[2]: [freebsd] Re: [freebsd] Бездисковые роутеры
Предлагаю вашему вниманию мою методику создания загрузочной флешки... (в конце) К ней хочу добавить что GPT разбитие диска чревато тем что резервная копия раздела лежит в последнем секторе диска... Из-за этого если флешку скопировать на винчестер или на другую флешку - при загрузке будет ругань что резервная копия битая, посему предпочитаю MBR. С восстановлением резервной копии заморачиваться не стал... Если вносить изменения - обязательно нужно чтобы в конечном итоге флешка была в режиме ro, так как при перезагрузке (power down) системы большая вероятность того что флешка не прочекается... только ручками... Приношу свои извинения в случае нахождения ошибок в методике... всё уже автоматом Но вот одна проблема появилась с 9.1: после перевода из режима rw в режим ro - mount -r / система "подвисает" на некоторое время разной продолжительности... т.е. всё что не требует диска - работает: туннели, роутинг, демоны... но в тоже время зайти на неё нельзя... Максимум через 2-3 минуты всё приходит в норму, но в этом промежутке gstat показывает 100% утилизацию da0... До 9.1 такой проблемы нет. 8.4 не пробовал. Пробовал и последний стейбл 9.1, разные разметки MBR или GPT доходило до того что беру машину, вставляю флешку, загружаюсь (машина от сети отключена), с консоли ввожу mount -rw / потом через секунду другую mount -r / и курю бамбук... > > Первое время пугала необходимость при внесении каких-либо изменений > > перемонтировать root из ro в rw, а потом обратно, потому что в одном из > > давних > > мануалов прочитал, что, мол, ходили слухи, что это чревато развалом UFS, но > > пока что подтверждения этих слухов не встречал. > > Полная чушь тот "мануал", никакими развалами это не чревато. --- Монтируем образ диска mkdir -p /dist mdconfig -a -f ./FreeBSD-9.1-RELEASE-amd64-disc1.iso mount -t cd9660 /dev/md0 /dist Подгатовка флешки gpart show gpart delete -i 1 da0 ... gpart destroy da0 размечаем GPT gpart create -s GPT da0 boot раздел gpart add -s 64k -t freebsd-boot da0 рабочий раздел gpart add -s 900M -t freebsd-ufs -l flash0 da0 ставим загрузчик gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 da0 формат newfs -n -L FreeBSDonFLASH /dev/da0p2 -- 4k винты Чё там рассчитывать, запомнить одну константу - 504=63*8. Первый раздел в MBR создаём с -b 504, и дальше всё получается автоматически. Установка системы mount /dev/da0p2 /mnt sh cd /dist/usr/freebsd-dist export DESTDIR=/mnt for file in base.txz doc.txz kernel.txz lib32.txz; do (cat $file | tar --unlink -xpJf - -C ${DESTDIR:-/}); done Также нужно собрать новый кернел со всем что надо (см. в конце) Тюнинг chroot /mnt mkdir home # пароль для рута passwd root vipw quagga:*:101:101::0:0:Quagga Daemon:/usr/local/etc/quagga:/sbin/nologin # создаём аккаут adduser admin Тюним .profile echo 'PS1="`hostname -s`: "'>>/home/admin/.profile echo 'clear'>>/home/admin/.profile echo 'echo "save_pkg - sohranenie /var/db/pkg"'>>/home/admin/.profile echo 'echo "save_dns - sohranenie /var/named"'>>/home/admin/.profile echo 'echo'>>/home/admin/.profile --- mkdir /home/admin/conf mkdir /mnt/usr/home/admin/pkg mkdir /usr/local/sbin rm sys rmdir tmp ln -s /var/tmp echo "autoboot_delay=3" >>/boot/loader.conf echo 'loader_logo="beastie"' >>/boot/loader.conf echo "Welcom to FreeBSD!" >/etc/motd echo "ALL : ALL : allow" >/etc/hosts.allow Редактируем vi /etc/mtree/BSD.var.dist после ppp gname=network mode=0770 .. вставляем quagga uname=quagga gname=quagga mode=0700 ... Создаем файл fstab cd /etc vi fstab /dev/gpt/flash0 / ufs rw 0 0 Потом поставить ro Создаём rc.conf vi rc.conf keyrate="fast" hostname="TEST" varmfs="YES" varsize="256m" populate_var="YES" fsck_y_enable="NO" background_fsck="NO" gateway_enable="YES" update_motd="NO" dumpdev="NO" icmp_drop_redirect="YES" icmp_log_redirect="NO" firewall_enable="YES" firewall_quiet="YES" firewall_type="OPEN" named_
Re: [freebsd] Re: [freebsd] Бездисковые роутеры
On Monday 22 July 2013, Eugene Grosbein wrote: > On 21.07.2013 22:58, Alexander Melnik wrote: [..] > > давних мануалов прочитал, что, мол, ходили слухи, что это чревато > > развалом UFS, но пока что подтверждения этих слухов не встречал. > > Полная чушь тот "мануал", никакими развалами это не чревато. Сейчас-то я это знаю, а вот тогда это было не столь очевидно, а мануал, как я указал, даже тогда уже был "антиком". -- Bye! A.M.
[freebsd] Re: Бездисковые роутеры
On Monday 22 July 2013, Warrior wrote: > Предлагаю вашему вниманию мою методику создания загрузочной флешки... (в > конце) Тоже вариант. > К ней хочу добавить что GPT разбитие диска чревато тем что резервная копия А зачем там GPT? Обычного bsdlabel вполне достаточно, как мне кажеться. #очистка начала флешки (на всякий случай) dd if=/dev/zero of=/dev/da0 bs=1m count=1 #запись BSD label и bootcode bsdlabel -Bw /dev/da0 #создание/ редактирование раздела(ов) bsdlabel -e /dev/da0 Да и достаточно. Или у вас флешки в несколько терабайт? PS. Широко распостранено мнение, что для работы bsdlabel нужно сначала создать MBR fdisk'ом. Это справедливо только для случая, когда на диск ставится несколько операционок. В случае, если весь диск используется только FreeBSD, MBR необязателен. -- Bye! A.M.
[freebsd] Re: [freebsd] Re: Бездисковые роутеры
22 июля 2013 г., 12:26 пользователь Alexander Melnik <0...@ukr.net> написал: > On Monday 22 July 2013, Warrior wrote: > > Предлагаю вашему вниманию мою методику создания загрузочной флешки... (в > > конце) > > Тоже вариант. > > > К ней хочу добавить что GPT разбитие диска чревато тем что резервная > копия > > А зачем там GPT? Обычного bsdlabel вполне достаточно, как мне кажеться. > GPT, если он не вешает глючный биос материнки, даёт хоть какую-то надежду на то что система бутнётся, если в неё понатыкано ещё других usb девайсов. рут будет пытаться маунтнутся с /dev/gpt/blabla, которое, если не будет конфликтов, будет всегда вне зависимости какой это будет da*. > > #очистка начала флешки (на всякий случай) > dd if=/dev/zero of=/dev/da0 bs=1m count=1 > #запись BSD label и bootcode > bsdlabel -Bw /dev/da0 > #создание/ редактирование раздела(ов) > bsdlabel -e /dev/da0 > > Уже рекомендуют привыкать к gpart create -s MBR da0 gpart add -t freebsd-ufs da0 gpart set -a active -i 1 da0 gpart bootcode -b $mountdir/boot/boot0 da0 gpart bootcode -b $mountdir/boot/boot da0s1 > Да и достаточно. Или у вас флешки в несколько терабайт? > > > > PS. Широко распостранено мнение, что для работы bsdlabel нужно сначала > создать > MBR fdisk'ом. Это справедливо только для случая, когда на диск ставится > несколько операционок. В случае, если весь диск используется только > FreeBSD, > MBR необязателен. > > -- > Bye! A.M. > -- Regards, Alexander Yerenkow
Re: [freebsd] Re: [freebsd] Re: Бездисковые роутеры
On Mon, Jul 22, 2013 at 12:48:56PM +0300, Alexander Yerenkow wrote: > 22 июля 2013 г., 12:26 пользователь Alexander Melnik <0...@ukr.net> написал: > > > On Monday 22 July 2013, Warrior wrote: > > > Предлагаю вашему вниманию мою методику создания загрузочной флешки... (в > > > конце) > > > > Тоже вариант. > > > > > К ней хочу добавить что GPT разбитие диска чревато тем что резервная > > копия > > > > А зачем там GPT? Обычного bsdlabel вполне достаточно, как мне кажеться. > > > > > GPT, если он не вешает глючный биос материнки, даёт хоть какую-то надежду > на то что система бутнётся, если в неё понатыкано ещё других usb девайсов. > рут будет пытаться маунтнутся с /dev/gpt/blabla, которое, если не будет > конфликтов, будет всегда вне зависимости какой это будет da*. /dev/ufs/blabla ничем не хуже в этом плане.
Re: [freebsd] Re: Бездисковые роутеры
On Monday 22 July 2013, Alexander Yerenkow wrote: [..] > > А зачем там GPT? Обычного bsdlabel вполне достаточно, как мне кажеться. > > GPT, если он не вешает глючный биос материнки, даёт хоть какую-то надежду > на то что система бутнётся, если в неё понатыкано ещё других usb девайсов. > рут будет пытаться маунтнутся с /dev/gpt/blabla, которое, если не будет > конфликтов, будет всегда вне зависимости какой это будет da*. Разве что, хотя я в таких случаях юзаю GEOM labelization, тем более, что "options GEOM_LABEL" уже пару (или больше) лет, как вкомпилена в GENERIC. И да, при такой схеме меньше шансов на глюки биоса, хотя это более критично для "разъездных" флешек, чем для стационарных роутеров. -- Bye! A.M.
Re[4]: [freebsd] mpd (pppoe) + VMWare возможно?
Hello Vitaly, Saturday, July 20, 2013, 11:12:30 AM, you wrote: VD> Фря подключенная в настроенный по дефолту vSphere standard switch VD> прекрасно работала pppoe концентратором. VD> Если на esxi ничего специально не резать проходят и виланы и пппое и все прочее. 1. Promiscuous mode включили - положительного результата нет. :( 2. Сервера пока включены в один сегмент. Для теста туда же включили второй модем. Товарищ включается нубуком в свитч при сервере, смотрит wireshark-ом пакеты в интерфейсе. Я на старом шлюзе через два свича по команде tcpdump -npi bge0 ether host 00:0c:29:d6:7e:87 and port not ssh вижу PPPoE: 16:47:47.334121 PPPoE PADI [Host-Uniq 0x8040D3C8] [Service-Name] 16:47:51.354961 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] 16:47:53.354004 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] 16:47:57.354316 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] А в это же время товарищ, включенный в свитч рядом с новым сервером с фильтром в wireshark-e: eth.addr matches 00:0c:29:d6:7e:87 не видит ничего. :( Свитчи D-Link DES 1026G. Т.е., получается, PPPoe таки работает и наружу просится, но вот свитч его заворачивает на "аплинка"? Как его "повернуть" в нужное русло? -- Best regards, Alexandermailto:albor...@gmail.com
Re: [freebsd] mpd (pppoe) + VMWare возможно?
On 22.07.2013 21:11, Alexander wrote: > Hello Vitaly, > > Saturday, July 20, 2013, 11:12:30 AM, you wrote: > > VD> Фря подключенная в настроенный по дефолту vSphere standard switch > VD> прекрасно работала pppoe концентратором. > VD> Если на esxi ничего специально не резать проходят и виланы и пппое и все > прочее. > 1. Promiscuous mode включили - положительного результата нет. :( > > 2. Сервера пока включены в один сегмент. Для теста туда же включили > второй модем. Товарищ включается нубуком в свитч при сервере, смотрит > wireshark-ом пакеты в интерфейсе. Я на старом шлюзе через два свича по > команде tcpdump -npi bge0 ether host 00:0c:29:d6:7e:87 and port not ssh > вижу PPPoE: > 16:47:47.334121 PPPoE PADI [Host-Uniq 0x8040D3C8] [Service-Name] > 16:47:51.354961 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > 16:47:53.354004 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > 16:47:57.354316 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > > А в это же время товарищ, включенный в свитч рядом с новым сервером с > фильтром в wireshark-e: eth.addr matches 00:0c:29:d6:7e:87 не видит > ничего. :( Свитчи D-Link DES 1026G. Т.е., получается, PPPoe таки > работает и наружу просится, но вот свитч его заворачивает на "аплинка"? > Как его "повернуть" в нужное русло? Эти пакеты PADI - ethernet broadcasts, по умолчанию свич должен их доставлять во все порты сегмента. Может быть, на нём включено что-то типа port isolation / protected ports?
Re: Re: [freebsd] mpd (pppoe) + VMWare возможно?
Hi! On Mon, Jul 22, 2013 at 09:46:10PM +0700, Eugene Grosbein writes: >> 2. Сервера пока включены в один сегмент. Для теста туда же включили >> второй модем. Товарищ включается нубуком в свитч при сервере, смотрит >> wireshark-ом пакеты в интерфейсе. Я на старом шлюзе через два свича по >> команде tcpdump -npi bge0 ether host 00:0c:29:d6:7e:87 and port not ssh >> вижу PPPoE: >> 16:47:47.334121 PPPoE PADI [Host-Uniq 0x8040D3C8] [Service-Name] >> 16:47:51.354961 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] >> 16:47:53.354004 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] >> 16:47:57.354316 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] >> А вы пробовали включить модем в отдельный порт и пробросить его в гостевую систему? У меня аналогичная ситуация была без всякого VMW. Три PON модема, pppoe. Два работают через свитч (Cisco SMB), один только если включить в порт сервера. Система 9.1. Пофиксить не удалось, так и живёт. Точнее, дело было не во фре. Это же включение с маршрутизатора циско через свитч не поднималось, а включенное прямо в маршрутизатор завелось. -- WBR, Yuriy B. Borysov YOKO-UANIC | YOKO-RIPE
[freebsd] Re: Re[4]: [freebsd] mpd (pppoe) + VMWare возможно?
22 июля 2013 г., 18:11 пользователь Alexander написал: > Hello Vitaly, > > Saturday, July 20, 2013, 11:12:30 AM, you wrote: > > VD> Фря подключенная в настроенный по дефолту vSphere standard switch > VD> прекрасно работала pppoe концентратором. > VD> Если на esxi ничего специально не резать проходят и виланы и пппое и > все прочее. > 1. Promiscuous mode включили - положительного результата нет. :( > > 2. Сервера пока включены в один сегмент. Для теста туда же включили > второй модем. Товарищ включается нубуком в свитч при сервере, смотрит > wireshark-ом пакеты в интерфейсе. Я на старом шлюзе через два свича по > команде tcpdump -npi bge0 ether host 00:0c:29:d6:7e:87 and port not ssh > вижу PPPoE: > 16:47:47.334121 PPPoE PADI [Host-Uniq 0x8040D3C8] [Service-Name] > 16:47:51.354961 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > 16:47:53.354004 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > 16:47:57.354316 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > > А в это же время товарищ, включенный в свитч рядом с новым сервером с > фильтром в wireshark-e: eth.addr matches 00:0c:29:d6:7e:87 не видит > ничего. :( Свитчи D-Link DES 1026G. Т.е., получается, PPPoe таки > работает и наружу просится, но вот свитч его заворачивает на "аплинка"? > Как его "повернуть" в нужное русло? > -- > Best regards, > Alexandermailto:albor...@gmail.com > > По дефолту promisc у vmware выключен, у меня работало без него. Между виртуалками пппое работает?
Re: [freebsd] Бездисковые роутеры
20.07.2013 16:52, Vladislav V. Prodan пишет: Есть несколько 1U серверов, у которых умерли scsi винты, но есть встроенные 2х1 гигабит сетевухи. Поделитесь опытом разворачивании и эксплуатации бездисковых роутеров на FreeBSD. У меня есть 2 стойки бездисковых серверов. Не роутеры, но адаптировать для роутеров тоже не проблема. Все сервера отличаются только MAC-адресом (ну и наклеечкой, чтобы знать, кого ребутать если что), по которому в конфиге dhcp сервера им присваивается имя и IP (да, можно было заморочиться с option 82, но мне тогда что-то показалось проще в конфиге прописать). Далее есть один на всех конфигурационный файл, который каждый сервер парсит после загрузки и ищет свою строчку/строчки. Корневая FS (в которой также usr) - ro var, tmp - md. Памяти - по 4G. в /etc/portsnap.conf: WORKDIR=/usr/portsnap Если надо обновить порты/пакеты - на любом сервере mount -o rw / И дальше как обычно. Всё сделано практически по мануалу из хендбука. Из нюансов - штатный tftpd не успевает обслужить 4 десятка серверов при одновременной загрузке, используется atftpd из портов. Система сначала была 8.1, сейчас - 9.1. Понятно, что у каждого сервера может быть своя система, которая лежит в отдельной директории на любом доступном сервере (всё определяется в конфиге dhcp). На NFS сервер нагрузка только во время старта. С одного NFS сервера грузятся, другой монтируется для работы. В сети есть минимум 2 dhcp/tftp/nfs сервера. Можно ли в dhcp указывать несколько NFS серверов, для гарантированного монтирования FS ? Или все-таки лучше использовать USB-flash со скоростью чтения 20MB/s и выше? Если у кого-то был опыт эксплуатации, поделитесь мнениями и возможными проблемами/узкими местами. Заранее благодарю. -- Vladislav V. Prodan System & Network Administrator http://support.od.ua +380 67 4584408, +380 99 4060508 VVP88-RIPE
[freebsd] Re: [freebsd] mpd (pppoe) + VMWare возможно?
22 июля 2013 г., 17:46 пользователь Eugene Grosbein написал: > On 22.07.2013 21:11, Alexander wrote: > > Hello Vitaly, > > > > Saturday, July 20, 2013, 11:12:30 AM, you wrote: > > > > VD> Фря подключенная в настроенный по дефолту vSphere standard switch > > VD> прекрасно работала pppoe концентратором. > > VD> Если на esxi ничего специально не резать проходят и виланы и пппое и > все прочее. > > 1. Promiscuous mode включили - положительного результата нет. :( > > > > 2. Сервера пока включены в один сегмент. Для теста туда же включили > > второй модем. Товарищ включается нубуком в свитч при сервере, смотрит > > wireshark-ом пакеты в интерфейсе. Я на старом шлюзе через два свича по > > команде tcpdump -npi bge0 ether host 00:0c:29:d6:7e:87 and port not ssh > > вижу PPPoE: > > 16:47:47.334121 PPPoE PADI [Host-Uniq 0x8040D3C8] [Service-Name] > > 16:47:51.354961 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > > 16:47:53.354004 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > > 16:47:57.354316 PPPoE PADI [Host-Uniq 0x003AD3C8] [Service-Name] > > > > А в это же время товарищ, включенный в свитч рядом с новым сервером с > > фильтром в wireshark-e: eth.addr matches 00:0c:29:d6:7e:87 не видит > > ничего. :( Свитчи D-Link DES 1026G. Т.е., получается, PPPoe таки > > работает и наружу просится, но вот свитч его заворачивает на "аплинка"? > > Как его "повернуть" в нужное русло? > > Эти пакеты PADI - ethernet broadcasts, по умолчанию свич должен их > доставлять > во все порты сегмента. Может быть, на нём включено что-то типа > port isolation / protected ports? > Так DES 1026G - вроде, тупой, как бревно - никаких внутренних настроек/интерфейсов... По крайней мере, я не помню. Одна радость - два порта гигабитных. Даже в стек не сопрягается. PS: возникла мысля ещё попробовать какой-нибудь простенький свитчик между новым сервером и сетью воткнуть, а в уже в тот - модем для проверки процесса...