| Apache+chroot |
[30th April, 10:58] |
| [ |
mood |
| |
angry |
] |
| [ |
music |
| |
NTL - Никaкого просвета.mp3 |
] |
Установленный по умолчанию в OpenBSD Apache, "чрутится" в /var/www. Отсюда у многих возникают вопрос : как мне перенести корень чрут окружения? Эти же многие решают проблему кардинально - лезут в исходники и правят #define там. А не логично ли посмотреть man и увидеть там флаг -d ? echo 'httpd_flags="-d /new/root"' >> /etc/rc.conf.local Отличие способов лишь в том, что при последующем обновлении, первый способ придется применять повторно. Согласитесь это не есть гуд :-)
Поехали дальше... Не менее распространненый вопрос : Почему у меня не запускаются cgi-скрипты на php,perl, python и etc, конфиг настроен правильно!
Граждане, ну гда вам интерпретатор в чруте, если вы его туда заранее не поместили ?! Опять же можно посметить в чрут необходимый интерпретатор, либо исползовать флаг -u, пуская apache без чрут окружения. Я выбираю выход номер два. Почему ? А нужен ли этот чрут ? :)
|
|
|
| Xристос Воскресе |
[23rd April, 10:03] |
| [ |
mood |
| |
good |
] |
| [ |
music |
| |
A Bugged Out Mix By Miss Kitten [2CDs][House][2006] |
] |
C праздником!
|
|
|
| Жду... |
[20th March, 22:26] |
Заказал книгу "Advanced programming" и жду, жду и жду. Уже рученки то горят почитать ;) Когда же её принесут
|
|
|
| Cкрываем отображаемую версию OpenSSH |
[10th February, 17:07] |
В /usr/src/usr.bin/ssh/version.h для OpenBSD или в /usr/src/crypto/openssh/version.h для FreeBSD меняем :
#define SSH_VERSION_BASE "OpenSSH_ver" на #define SSH_VERSION_BASE "OpenSSH"
и пересобираем :
make depend && make && make install
|
|
|
| OpenBSD |
[28th January, 19:14] |
$ uname -a OpenBSD mr129-92.awk.lan 3.9 MALISHKA#0 i386 $ date Sat Jan 28 19:14:32 MSK 2006
|
|
|
| Запуск Apache в jail окружении под FreeBSD |
[4th December, 0:03] |
| [ |
mood |
| |
мертвое существо |
] |
| [ |
music |
| |
Карандаш - Почему Ты Не Спишь.mp3 |
] |
Не буду вдаваться в подробности как, что и зачем. Просто мне охота пострадать фигней.
И так. Структура сети примерно такая
<*>Internet<*> - (xl0)[FreeBSD](xl1)-(Jail)+(int_network)
Есть выход в Интернет через внешний интерфейс xl0 и внутренняя сеть
10.0.0. Так как свободного внешнего IP под рукой не было, пришлось
повесить jail на «серый адрес». Недолго думая, выбрал внутренний ифейс
и повесил на него через alias jail-вый ип (в моем случае 172.16.0.3)
( Read more... )
|
|
|
| Тестим ОЗУ в обход memtest |
[24th November, 17:20] |
Получим кучу несжимаемых данных dd if=/dev/urandom of=random.dat bs=1M count=БОЛЬШЕРАЗМЕРАОЗУ bzip2 -c < random.dat > random2.dat.bz2
Распакуем в /dev/null (можно и на диск конечно) bzip2 -dc < random2.dat.bz2 > /dev/null
Сбой обычно выглядит так: bzcat: Data integrity error when decompressing
|
|
|
| Легкий тюнинг |
[20th November, 16:27] |
Черные дыры.
net.inet.tcp.blackhole=2 net.inet.udp.blackhole=1 Это превращает машину в черную дыру при попытке подключиться к портам, которые не слушают. Nmap по настоящему не любит это. ( Read more... )
|
|
|
| Монтируем NTFS в режиме чтения-записи |
[20th November, 16:20] |
По умолчанию NTFS монтируется только в режиме чтения, ее можно попробовать смонтировать для чтения-записи, но за последствия никто не отвечает. Сейчас попробую рассказать, как это сделать без особого вреда, хотя и du работать не будет. Есть такой проект - Captive-Ntfs, они только и занимаются тем, что монтируют ntfs ные партиции, и достигли в этом определенных успехов. итак, запасемся их дистрибутивом и попробуем смонтировать нтфс, 1. монтируем просто нтфс в режиме чтения: # mkdir /mnt/win # mount -o ro -t ntfs /dev/ad1s1 /mnt/win 2. копируем виндовозовские дрова: # cp /mnt/win/WINDOWS/system32/drivers/ntfs.sys /usr/compat/linux/var/lib/captive # cp /mnt/win/WINDOWS/system32/ntoskrnl.exe /usr/compat/linux/var/lib/captive 3. возвращаем взад как было # cd / ; umount /mnt/win 4. теперь все равно, есть ли жизнь на марсе а на диске с нтфс нужные драйвера или их нет # mount.captive-ntfs /dev/ad1s1 /mnt/win # cd /mnt/win # touch мой_файл_удали_меня_скорее если честно, то вышеописанный типс пробовал только в live-cd Gentoo, когда нужно было "вспомнить" забытый пароль администратора, хотя теоретически во FreeBSD должно сработать без накладок.
|
|
|
| Вывод изображения отдельно взятых программ на TV |
[20th November, 16:17] |
Одно из решений -настроить сразу два экрана в XFree86. При этом один экран (:0.0), это рабочий монитор. На нем отображается десктоп, панели и все остальное, а второй экран (:0.1), это телевизор. Изображение на телевизоре при загрузке остается пустым, но на нем в любой момент можно запускать программы с указанием выводить изображение на телевизор (например, mplayer).
( Read more... )
|
|
|
| Работаем с потоком: обработка строк |
[20th November, 16:16] |
grep '/regex/' # ищем строчку в тексте grep -v '/regex/' # находим все, кроме заданной строки sed '/закат/,/рассвет/d' # отрезаем данные от заката до рассвета sed -n '/закат/,/рассвет/p' # выводим текст от заката до рассвета awk '/start/,/finish/{print}' # тоже самое, что и строчкой выше, только вид сбоку sed '/ВЕРХ/,/НИЗ/!d' | sed '1d;$d' # выделить секцию между ВЕРХ и НИЗ sed '/закат/,/рассвет/!b;s/Вася/Петя/;s/Пупкин/Иванов/' # замена от заката до рассвета sed -n 's/.*\(regex\).*/\1/p' # вывести найденное perl -ne 'if(/regex/){print "$ and \n"}' # тот же вариант с использованием перла sed 's/^/ /' # добавим три пробела перед строкой sed 's/$/ /' # добавим три пробела в конце строки sed 's/^ *//;s/ *$//' # убираем пробелы sed '/^$/q' # выводим до первой пустой строки sed 1d # печатаем первую строку sed '$d' # печатаем последнюю строку nl -ba # нумеруем строки awk '{print NR " " $0}' # тоже самое с помощью awk cut -c -79 # урежем строку до 79 символов awk '{ for (i = NF; i > 0; --i) printf("%s ",$i); print }' # реверс слов (часто подобные программки просят написать на зачете по паскалю) awk '{ for (i = length($0); i > 0; --i) printf("%s",substr($0,i,1)); print }' # реверс символов awk -F',[ \t]*' '{ print $2, $1 }' # меняем местами два символа sort -u # сортируем уникальные записи sort -r # сортируем в обратном порядке sort -k 3,2 -t: # сортируем по второй буковке третьего поля, где двоеточие - символ разделителя полей paste - - # разбить текст на 2 колонки sed -e 's/^\([^,]*\)\(.*,\)\([^,]*\)$/\3\2\1/' # меняем местами первое и последнее поле как видите, фантазировать можно бесконечно - пример практического применения: -------- скриптец делает бекап каталога -------- #!/bin/sh - fname='всякая_хрень.'`date | cut -f 2,3,4 -d ' ' | sed -e 's/\ /\./g'`".tar.gz" tar -zcf /home/pavel/$fname /home/pavel/mydocs /home/pavel/src # ------- такой вот коротенький скрипт --------
|
|
|
| Как посмотреть, имея рутовые права что набирают на терминалах? |
[20th November, 16:13] |
Очень просто. 1. Компилим ядро с поддержкой snp для параноиков - его можно просто загрузить командой kldload snp.ko 2. Создаем устройство cd /dev ./MAKEDEV snp0 (для разных целей можно создать кучу таких устройств) 3. Kомандой w смотрим какие терминалы используются и начинаем мониторинг: watch p0 4. Выход из мониторинга Ctrl-G
|
|
|
| Автомонтирование сидирома |
[20th November, 16:02] |
Скажите честно - каждый раз когда переключаетесь в режим суперпользователя и потом набираете команду mount -t cd9660 /dev/cd0c /cdrom ну или mount_cd9660 /dev/cd0c /cdrom - никогда не возникало мысли делать это автоматически? Попробуем сделать автомонтирование средствами FreeBSD. 1. Проверьте присутствие следующей строчки в конфигурации ядра: options NFS 2. Cмотрим а есть ли сидиром в системе: # dmesg | grep cd0 acd0: CD-RW <TOSHIBA ODD-DVD SD-R1512> at ata1-master PIO4 3. Пробуем монтируется ли он вообще: (вставить диск не забываем) # mount_cd9660 /dev/acd0c /cdrom # umount /cdrom флопик можно проверить таким же способом. 4. Редактируем /etc/fstab - записываем следующие строчки /dev/acd0c /cdrom cd9660 ro,noauto,nodev,nosuid 0 0 /dev/fd0c /floppy msdos rw,noauto 0 0 (монтирую в корневом каталоге - каталоги можно по желанию выбрать любые) 5. Теперь попробуем примонтировать сидиром и флопик еще раз: # mount /cdrom # mount /floppy 6. В файл /etc/rc.conf добавляем строчки: portmap_enable=YES amd_enable=YES amd_flags="-a /.amd_mnt -c 3636 -l syslog /host /etc/amd.map" (цифры 3636 обозначают время таймаута до попытки автоматического размонтирования каталога, если про каталог забыли) 7. Создаем каталог /.amd_mnt (с правами root:wheel) 8. Редактируем файл amd.map: /defaults type:=host;fs:=${autodir}/${rhost};rhost:=${key} * opts:=rw,grpid,resvport,nfsv2 localhost type:=auto;fs:=${map};pref:=${key}/ localhost/cdrom type:=program;fs:=/cdrom;\ mount:="/sbin/mount mount /cdrom";\ unmount:="/sbin/umount umount /cdrom" localhost/floppy type:=program;fs:=/floppy;\ mount:="/sbin/mount mount /floppy";\ unmount:="/sbin/umount umount /floppy" 9. Оформляем ссылочку на сидиром: # ln -s /host/localhost/cdrom /cdrom 10. Перезагружаемся, делаем проверку того, что сделали: $ mount $ amq
|
|
|
|
[20th November, 15:53] |
Вот создал журнал и не знаю что в нем писать...
Скорее всего буду писать здесь простенькие заметки о собственной жизни и работе с BSD
|
|
|
| navigation |
| [ |
viewing |
| |
most recent entries |
] |
|
|
|
|