|
|
www.lissyara.su
—> статьи
—> FreeBSD
—> Мелочи
—> LiveCD
LiveCD
Автор: Morty.
Решился наконец написать еще одну статью на тему LiveCD.
В какой-то мере она основана на докладе Коли Маржана с
конференции kiyvbsd09, за что ему отдельное спасибо.
А где-то на старой статье. Но методика и идея сохранилась старая.
Тоесть у нас будет два ключевых этапа: 1) сам LiveCD от которого мне нужно
только возможность загрузиться с него, определить устройства, подготовить
жесткий диск для дальнейшего разворачивания на него дампа системы и
базовая настройка системы которую мы развернем. 2) сам дамп предустановленной
системы.
Данная картинка представляет приблизительную "схему"
того что мы будем дальше делать. А делать все будем скриптами ;)
iso -> -----------------
|1) LiveCD | |
|----------
| 2) dump |
  -----------------
Немного о файлах и их значении
1) 1.minsys - главный скрипт который и будет собирать исошку
./1.minsys
--> Specify arch - amd64 or i386
--> Example: ./1.minsys i386 or ./1.minsys amd64
| при таком запуске он попросит указать архитектуру.
По большому счету здесь имееться ввиду файл конфиг ядра
для amd64 или i386.
Файлы ядра находяться в этой же папке.
GENERICamd64, GENERICi386 переименовывать их не нужно.
cvsupfile - файл конфиг который будет использовать csup
make.conf - без коментариев, на момент написания статьи практического применения
ему не нашел ,(поэтому он пустой) но оставил - ведь всё может быть :)
src.conf - опции для сборки мира...Стоит заглянуть возможно вам нужны маны
или еще что-то.
packages.sh - в данной статье не используеться.
setup - его задача развернуть дамп готовой системы и прописать базовые настройки
Итак приступим к первому этапу - созданию LiveCD
Качаем архив со скриптами
fetch ftp://ftp.lissyara.su/users/morty/isonew/isonew.tbz
isonew.tbz 100% of 8625 B 38 kBps
| и распаковываем его
Далее правим конфиг ядра amd64 или i386 в зависимости от того что вы используете.
src.conf - комментируем что-то если не устраивает, либо можно его полностью очистить.
cvsupfile - если хотим указать то зеркало cvs которое к нам ближе.
Можно запускать : (не забываем перед этим установить cdrtools)
./1.minsys i386
--------------------------
--> Dirs are present, creation don't needed
--> cvsup run not needed
--> Skiping build of world...
--> Kernel build don't needed
--> minsys.tbz, creation don't needed
--> You already have CD, /usr/iso/data/live.iso
| И пойдет процесс сборки мира, ядра и т.д. у меня этого не видно т.к. я уже это все сделал.
Для удобства я добавил файлы-флаги которые находятся тут :
ll /usr/iso/tmp/
total 0
-rw-r--r-- 1 root wheel 0 Oct 2 21:53 1_iso.world
-rw-r--r-- 1 root wheel 0 Oct 2 22:45 2_iso.kernel
-rw-r--r-- 1 root wheel 0 Oct 2 22:46 3_iso.minsys
-rw-r--r-- 1 root wheel 0 Oct 2 22:46 4_iso.livecd
| по ним можно контролировать процесс либо если нужно пересобрать
только начиная с определенного момента , например с ядра то
нужно удалить флаги 2,3,4. Либо если нужно просто перепаковать исо
то удаляем 4ый флаг и запускаем скрипт поновой.
В результате имеем следующее:
ls -lahF /usr/iso/ /usr/iso/data/
/usr/iso/:
total 16
drwxr-xr-x 8 root wheel 512B Oct 2 19:53 ./
drwxr-xr-x 17 root wheel 512B Oct 1 22:19 ../
drwxr-xr-x 3 root wheel 512B Oct 5 12:24 data/
drwxr-xr-x 3 root wheel 512B Oct 2 19:53 obj/
drwxr-xr-x 22 root wheel 512B Oct 1 22:27 src/
drwxr-xr-x 2 root wheel 512B Oct 5 12:12 stuff/
drwxr-xr-x 3 root wheel 512B Oct 1 22:19 sup/
drwxr-xr-x 2 root wheel 512B Oct 2 22:46 tmp/
/usr/iso/data/:
total 86214
drwxr-xr-x 3 root wheel 512B Oct 5 12:24 ./
drwxr-xr-x 8 root wheel 512B Oct 2 19:53 ../
drwxr-xr-x 16 root wheel 512B Oct 2 22:45 chroot_dir/
-rw-r--r-- 1 root wheel 55M Oct 2 22:46 live.iso
-rw-r--r-- 1 root wheel 29M Oct 2 22:46 minsys.tbz
| Создание CD за 5 минут
На этом первый этап заканчивается. Если нет желания(времени) собирать "подложку"
(мир и ядро)для LiveCD, пакет minsys.tbz можно скачать здесь
PS: собран он на FreeBSD 7.2-RELEASE-p4 i386
Либо использовать скрипт 9.lazy (он предпологает что СД будет с дампом на борту)
Он сам скачает minsys.tbz и попытается создать CD
в 9-ом скрипте рабочая директория задана переменной ${dir1} - для удобства
Второй этап: снятие дампа ФС с готовой системы.
Подразумеваеться что система установлена одним разделом - /
Монтируем флэшку: (Либо другое устройство куда будем снимать дамп)
и запускаем второй скрипт
mount_msdosfs /dev/da0s1 /mnt/
./2.dump
DUMP: Date of this level 0 dump: Mon Oct 5 13:08:25 2009
DUMP: Date of last level 0 dump: the epoch
DUMP: Dumping snapshot of /dev/ad0s1a (/) to standard output
DUMP: mapping (Pass I) [regular files]
DUMP: mapping (Pass II) [directories]
DUMP: estimated 5037154 tape blocks.
DUMP: dumping (Pass III) [directories]
| или так
dump -0ua -L -f- /dev/ad0s1a | bzip2 > /mnt/dump_root.img.bz2
| копируем дамп и установщик в "рут"
cp ./dump_root.img.bz2 /usr/iso/data/chroot_dir/root/
cp ./setup /usr/iso/data/chroot_dir/root/
| удаляем флаг на создание исошки и запускаем по-новой скрипт
rm /usr/iso/tmp/4_iso.livecd
./1.minsys i386
| В результате мы получаем СД
ls -lah /usr/iso/data/live.iso
-rw-r--r-- 1 root wheel 547M Oct 5 14:33 /usr/iso/data/live.iso
| загрузившись с которого вызываем наш скрипт setup
/root/setup
------------- !Warning! ---------------------
Preparing for installation...
YES - will proceed installation of system
NO - reboot the system
---------------------------------------------
Do you want to start the installation:
| разворачиваем систему с нашего дампа который был сделан ранее
На этом все ...
Далее выкладываю 2 основных скрипта : 1.minsys и setup
целиком можно скачать тут
1.minsys
#!/bin/sh
#
# October 2009
# Script of real black magic :)
#
#world_tar:
if [ $# -ge 1 ];
then echo "--------------------------"
else
echo " --> Specify arch - amd64 or i386"
echo " --> Example: ./1.minsys i386 or ./1.minsys amd64"
exit 1
fi;
arch=$1
#
if [ -d /usr/iso ]; then \
echo " --> Dirs are present, creation don't needed"; \
else
mkdir -p /usr/iso/data
mkdir -p /usr/iso/stuff
mkdir -p /usr/iso/obj
mkdir -p /usr/iso/tmp
cp ./* /usr/iso/stuff/
fi;
#
export MAKEOBJDIRPREFIX=/usr/iso/obj
export BUILDNAME=7.2-RELEASE
export RELEASETAG=RELENG_7_2_0_RELEASE
export SRCCONF=/usr/iso/stuff/src.conf
export MAKE_CONF=/usr/iso/stuff/make.conf
export CVSROOT=/usr/iso/src
#export WORLD_FLAGS='-j16'
#export KERNEL_FLAGS='-j16'
#export KERNCONF=/usr/iso/stuff/GENERIC
#export LOCAL_PATCHES /usr/iso/stuff/local.patch
#export EXTPORTSDIR /usr/ports
#
if [ -d /usr/iso/src ]; then \
echo " --> cvsup run not needed"; \
else
/usr/bin/csup /usr/iso/stuff/cvsupfile
fi;
#
if [ -f /usr/iso/tmp/1_iso.world ]; then \
echo " --> Skiping build of world..."; \
else
rm -rf /usr/iso/obj
mkdir -p /usr/iso/obj
chflags -R noschg /usr/iso/data/chroot_dir/
rm -rf /usr/iso/data/
mkdir -p /usr/iso/data
cd /usr/iso/src
cp /usr/iso/stuff/GENERIC$arch /usr/iso/src/sys/$arch/conf/GENERIC
#patch < /usr/iso/stuff/local.patch
make -j16 buildworld
mkdir -p /usr/iso/data/chroot_dir
make DESTDIR=/usr/iso/data/chroot_dir installworld
cd /usr/iso/src/etc
make DESTDIR=/usr/iso/data/chroot_dir distribution
touch /usr/iso/tmp/1_iso.world
fi;
#
if [ -f /usr/iso/tmp/2_iso.kernel ]; then \
echo " --> Kernel build don't needed"; \
else
cd /usr/iso/src
make -j16 buildkernel
make DESTDIR=/usr/iso/data/chroot_dir installkernel
touch /usr/iso/tmp/2_iso.kernel
fi;
#
cd /usr/iso/data/chroot_dir
/usr/bin/find . -name lib\*.a -delete
/usr/bin/find . -name *.pyc -delete
/usr/bin/find . -name *.pyo -delete
/usr/bin/find . -name "*~" -delete
rm -rf usr/include
rm -rf usr/local/include
rm -rf usr/share/dict
rm -rf usr/share/examples
rm -rf usr/share/doc
rm -rf usr/local/man
rm -rf usr/local/info
rm -rf usr/local/share/doc
rm -rf usr/share/man
rm -rf usr/share/groff_font
rm -rf usr/share/syscons
rm -rf usr/local/share/locale
rm -rf usr/local/share/gettext
rm -rf usr/share/locale/[^e]*
rm -rf usr/share/nls/[^e]*
rm -rf usr/share/calendar
rm -rf usr/share/sendmail
rm -rf usr/share/isdn
rm -rf usr/share/misc/[^tp]*
rm -rf usr/share/tmac
rm -rf usr/share/misc/pcvtfonts
rm -rf usr/libexec/cc*
rm -rf usr/libexec/f771
rm -rf rescue
#
if [ -f /usr/iso/tmp/3_iso.minsys ]; then \
echo " --> minsys.tbz, creation don't needed"; \
else
cd /usr/iso/data
tar -cjf minsys.tbz chroot_dir/
touch /usr/iso/tmp/3_iso.minsys
sleep 5
fi;
#world_tar_fin:
#mv /usr/iso/data/chroot_dir/boot/kernel/kernel /usr/iso/data/
#rm -rf /usr/iso/data/chroot_dir/boot/kernel/*
#mv /usr/iso/data/kernel /usr/iso/data/chroot_dir/boot/kernel/
#livecd:
if [ -f /usr/iso/tmp/4_iso.livecd ]; then \
echo " --> You already have CD, /usr/iso/data/live.iso" ; \
else
cat > /usr/iso/data/chroot_dir/boot/loader.conf << EOF
boot_cdrom="YES"
autoboot_delay="0"
beastie_disable="YES"
EOF
cat > /usr/iso/data/chroot_dir/etc/fstab << EOF
# Device Mountpoint FStype Options Dump Pass#
md /tmp mfs rw,-s32m 0 0
EOF
cat > /usr/iso/data/chroot_dir/etc/rc.conf << EOF
dmesg_file="/tmp/dmesg.boot"
sendmail_enable="NONE"
EOF
cat > /usr/iso/data/chroot_dir/etc/rc << EOF
#!/bin/sh
export TERM=cons25
export PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin
/sbin/mount /tmp
/sbin/ifconfig lo0 127.0.0.1
#FIRST_IF=\`/sbin/ifconfig | /usr/bin/head -1 | /usr/bin/cut -d : -f 1\`
#/sbin/dhclient -l /tmp/dhclient.leases \$FIRST_IF
/etc/rc.d/dmesg start
#mkdir /tmp/etc
#mount_nullfs /tmp/etc /etc
/usr/libexec/getty autologin ttyv1 &
/usr/libexec/getty autologin ttyv2 &
/usr/libexec/getty autologin ttyv3 &
/usr/libexec/getty autologin ttyv0
/sbin/reboot
EOF
#/usr/iso/stuff/packages.sh
#rsync -aHv --delete /usr/iso/data/packages/ \
#/usr/iso/data/chroot_dir/packages/
#mount -t devfs devfs /usr/iso/data/chroot_dir/dev
#chroot /usr/iso/data/chroot_dir pkg_add \
# /packages/Latest/smartmontools.tbz /packages/Latest/python25.tbz
#umount /usr/iso/data/chroot_dir/dev
#cp /usr/iso/data/minsys.tbz /usr/iso/data/chroot_dir/
#cp /usr/iso/stuff/setup.sh /usr/iso/data/chroot_dir/sbin/
mkisofs -b boot/cdboot -no-emul-boot \
-r -J -V Setup -quiet -o /usr/iso/data/live.iso /usr/iso/data/chroot_dir
touch /usr/iso/tmp/4_iso.livecd
fi;
| setup
#!/bin/sh
dist_dir="/root"
iface=`ifconfig -l | cut -f1 -d' '`
#${mdmfs} -M -s 3m md1 /mnt
#------------------
tmp_dir="/tmp"
# Destination of installation system
mnt2="/tmp/mnt2"
#root_size="256" # Mb 384
swap_size="256" # Mb 1024
#
echo "
------------- !Warning! ---------------------
Preparing for installation...
YES - will proceed installation of system
NO - reboot the system
---------------------------------------------
"
echo -n "Do you want to start the installation: "
read answer
# verify answer
case ${answer} in
[Yy][Ee][Ss])
# yes. continue....
echo""
echo "Running installation ... "
;;
*)
# perdumal:)
echo "You answered '${answer}'. Server reboots..."
shutdown -r now
exit;
;;
esac
# --------------------------
# Detect Hdd
DISK=`(dmesg | grep -E '^ar'; \
dmesg | grep -E '^ad'; \
dmesg | grep -E '^da') | \
head -1 | cut -f1 -d:`
echo "
"
##
## Full name of hdd
DISKMARK=`(dmesg | grep -E '^ar'; \
dmesg | grep -E '^ad'; \
dmesg | grep -E '^da') | \
head -1`
echo "Detected hard drive for working:"
echo $DISKMARK
echo "Detected network card:"
echo $iface
#
# fdisk
# Uto4naem razmer /
echo -n "Enter size of / (root) partition in Mbytes: "
read root_size
#
echo "Creating partitions..."
/sbin/fdisk -I -i -B /dev/${DISK}
echo "# /dev/${DISK}s1:
2 partitions:
# size offset fstype [fsize bsize bps/cpg]
a: ${root_size}M 0 4.2BSD 2048 16384 32776
b: ${swap_size}M * swap
" > ${tmp_dir}/bsdlabel.txt
# bsdlabel
/sbin/bsdlabel -R ${DISK}s1 ${tmp_dir}/bsdlabel.txt >/dev/null 2>&1
/sbin/bsdlabel -B ${DISK}s1 >/dev/null 2>&1
# newfs
echo "Creating filesystem..."
/sbin/newfs /dev/${DISK}s1a >/dev/null 2>&1
#
echo "HDD formated..."
/bin/mkdir -p ${mnt2}
#
# restore /
echo "Restoring '/' filesystem..."
/sbin/mount /dev/${DISK}s1a ${mnt2}
cd ${mnt2}
/usr/bin/bunzip2 --stdout ${dist_dir}/dump_root.img.bz2 \
| /sbin/restore -rf - >/dev/null 2>&1
#
echo "Rewriting /etc/fstab for device ${DISK}"
echo "# Device Mountpoint FStype Options Dump Pass#
/dev/${DISK}s1b none swap sw 0 0
/dev/${DISK}s1a / ufs rw 1 1
/dev/acd0 /cdrom cd9660 ro,noauto 0 0
" > ${mnt2}/etc/fstab
cp /usr/share/zoneinfo/Europe/Kiev ${mnt2}/etc/localtime
#
#
echo -n "Do you want static IP-address(YES) or use DHCP(NO) : "
read answer2
# verify answer
case ${answer2} in
[Yy][Ee][Ss])
# yes. use static IP-address
echo "Your answer '${answer2}' "
echo "Static ip-address will be used "
echo "Example for enter - 192.168.10.15 "
echo -n "Enter ip-address for this computer : "
read ipaddr
echo -n "Enter default router :"
read defroute
echo -n "Enter 1fst dns ip-address server : "
read dns1
echo -n "Enter 2nd dns ip-address server : "
read dns2
echo -n "Enter hostname (exmpl:dsk1.domain.local) : "
read hsname
echo 'ifconfig_'${iface}'="inet '${ipaddr}' \
netmask 255.255.255.0"' >> ${mnt2}/etc/rc.conf
echo "hostname=$hsname
defaultrouter=$defroute
sshd_enable=\"YES\" " >> ${mnt2}/etc/rc.conf
echo "nameserver $dns1" > ${mnt2}/etc/resolv.conf
echo "nameserver $dns2" >> ${mnt2}/etc/resolv.conf
echo "
::1 localhost localhost.my.domain
127.0.0.1 localhost localhost.my.domain
$ipaddr $hsname.
" > ${mnt2}/etc/hosts
;;
*)
# use DHCP address for network interface
echo ""
echo "You answered '${answer2}'. Now we use DHCP "
echo ""
echo ifconfig_$iface="DHCP" >> ${mnt2}/etc/rc.conf
echo "Don't forget to set(check) hostname in rc.conf and hosts file ^_^"
exit;
;;
esac
echo -n "Enter user name : "
read nickname
/usr/sbin/chroot ${mnt} id ${nickname} || echo newpass | /usr/sbin/chroot \
${mnt2} pw useradd ${nickname} -g wheel -s /bin/tcsh -m -h 0
#
echo "System restored!"
/bin/sync
bin/umount ${mnt2}
/sbin/shutdown -r now
exit;
|
Ссылка на обсуждение: http://forum.lissyara.su/viewtopic.php?f=14&t=20834.
размещено: 2009-11-12,
последнее обновление: 2009-11-12,
автор: Morty
|
|
|
|
2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS
Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT
В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat
Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp
Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration
Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster
HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS
История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire
Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной
Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server
Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs
Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec
Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash
Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT
Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3
Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
2010-08-31, Cancer
Установка и настройка OpenVPN
На днях появилась задача - объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах.
2010-08-25, manefesto
freebsd lvm
Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела
2010-04-30, gonzo111
proftpd file auth"a
Proftpd - квоты и авторизация из файлов, без использования базы данных и/или системных пользователей
2010-04-22, lissyara
tw_cli
Пошаговая инструкция по восстановлению RAID на контроллере 3ware, из которого выпал один диск. Настройка мониторинга состояния рейда и отчётов о его состоянии на email.
2010-04-14, fox
MySQL Master+Master
MySQL (Master Master) and (Master Slave) Как настроить репликацию…
2010-03-09, terminus
DNS zones
Краткий ликбез про управление DNS зонами. Примеры проведения делегирования прямых и обратных DNS зон.
2010-03-09, aspera
Squid+AD (group access)
Настройка прокси сервера SQUID с автроризацией пользователей в AD. Разделение пользователей на группы
2010-03-02, BlackCat
Шлюз: Часть 4
Настройка дополнительных сервисов: синхронизация времени (OpenNTPD), клиент DynDNS.org.
2010-03-01, BlackCat
Шлюз: Часть 3
Настройка DHCP и DNS серверов для работы внутри частной сети, c поддержкой внутренних (частных зон) DNS, а так же интеграция DHCP и DNS сервисов.
2010-03-01, BlackCat
Шлюз: Часть 2
Конфигурация МСЭ pf для проброса портов с изменением порта назначения и без, а так же поддержки активного режима FTP и ограничения максимального размера сегмента
2010-03-01, BlackCat
Шлюз: Часть 1
Быстрая настройка шлюза/маршрутизатора с установлением PPPoE-соединения, поддержкой NAT и DNS-forwarding.
2010-02-23, Morty
darkstat
Простая считалка траффика, со встроенным веб-сервером. Очень маленькая, может делать отчеты трафика по хостам, портам, протоколам, а также строить графики
2010-01-23, gonzo111
squid+sams+sqstat
Пилим squid и sams - примеры конфигов с объяснениями. Установка SqStat.
2009-12-19, schizoid
mpd5 + radius + ng_car + Abills
Настройка pppoe-сервера с биллинговой системой Abills и шейпером ng_car
2009-11-16, lissyara
UFS->ZFS
Удалённая миграция с UFS на ZFS. Загрузка с раздела zfs. Настройка для работы с малым количеством памяти под архитектурой i386.
2009-11-13, gx_ua
fusefs-ntfs
Установка, настройка и использование fusefs-ntfs, драйвер NTFS, предназанченного для монтирования NTFS разделов под FreeBSD
2009-11-12, Morty
LiveCD
Создание собственного LiveCD с необходимыми вам изменениями, автоматизирование данного процесса, а так же вариант скоростной сборки СД.
2009-09-27, lissyara
Samba как PDC
Контроллер домена - аналог M$ NT4 домена под самбой, без использования LDAP и прочей хиромантии. Просто и быстро =)
2009-08-30, terminus
ipfw nat
Подробное руководство по ipfw nat, сложные случаи конфигурации.
2009-08-24, levantuev
HotSpot
Установка Hotspot системы в общественное заведение.
2009-08-18, lissyara
diskless
Создание бездисковых терминалов под управлением FreeBSD - с загрузкой по сети. Используются для старта rdesktop и подключения к виндовому серверу терминалов.
2009-07-29, BAV_Lug
Видеонаблюдение
Настройка бюджетного варианта видеонаблюдения на удаленном объекте
|
Комментарии пользователей [3 шт.]