Заметки по созданию предустановленного linux

http://habrahabr.ru/post/104029/

Posted in Без рубрики | Leave a comment

Закладка на тему PXE

http://www.wonkity.com/~wblock/docs/html/pxe.html

Posted in Без рубрики | Leave a comment

Утилита freebsd-update

Обновление FreeBSD с помощью freebsd-update

С недавних пор FreeBSD поддерживает бинарное обновление системы, то есть не нужно теперь ждать пока соберутся все исходники. Для обновления нужно использовать утилиту freebsd-update.

Для обновления в текущем релизе (то есть получать только исправления применимые к текущей установленной версии) используйте следующие команды:

freebsd-update fetch
freebsd-update install
reboot

Для перехода на следующую версию:

freebsd-update -r 8.2-RELEASE upgrade
freebsd-update install
reboot
freebsd-update install
reboot
Posted in FreeBSD, Безопасность, Программы | Tagged , | Leave a comment

Заводим нового пользователя при помощи скрипта

echo "Password" | pw useradd -h 0 -n  Username -L wheel -s /bin/csh -d /home/username

Через echo «Password» мы передаем пароль, при помощи pw создаем нового пользователя. Флаг -h 0 создает пароль переданный через echo, -n Username указываем имя пользователя,  -L wheel задаем группу пользователя, -s /bin/csh указываем шелл пользователя, -d /home/username указываем домашний каталог пользователя.

Posted in FreeBSD, Безопасность, Программы | Tagged , , , , | Leave a comment

PHP-функция для парсинга страниц

<?php

$page = "адрес сайта с которого будем парсить";
$start = "Начало парсинга>";
$end = "Конец парсинга";

function parser($page, $start, $end) {
	// Страница с которой нужно получить контент
	$content = file_get_contents($page);

	// Ищем первую позицию
	$pos = strpos($content, $start);

	// Отрезаем все, что идет до нужной нам позиции
	$content = substr($content, $pos);

	// Точно таким же образом находим позицию второй строки
	$pos = strpos($content, $end);

	// Отрезаем нужное количество символов от нулевого
	$content = substr($content, 0, $pos);

	$format = strip_tags($content);
	$format = trim($format);

	$search = "'&(nbsp|#160);'e";
	$replace = "";
	$format = preg_replace($search, $replace, $format);

	echo $format;
}

// выводим полученную строку.
echo parser($page, $start, $end);
?>
Posted in PHP | Tagged , | Leave a comment

Debian

Просмотр установленных пакетов:
dpkg -l ‘*php*’

Posted in Debian | Leave a comment

http://break-people.ru/cmsmade/index.php?page=translate_squid_reference

Posted on by Labor | Leave a comment

http://forum.ubuntu.ru/index.php?topic=47894.0

http://www.spohelp.ru/forums/13-drayvery-i-linux/topics/294-resheno-printer-hp-laserjet-p1005-v-altlinuks-5

Posted on by Labor | Leave a comment

OpenNTPd — сервер синхронизации время

openntpd_enable="YES"
openntpd_flags="-s"

OpenNTPD — демон, реализующий протоколы SNTP версии 4 и NTP версии 3 для синхронизации локального системного времени с удалёнными NTP серверами или сенсорами отклонения локального времени. Может выступать в качестве NTP сервера для клиентов, совместимых с данными протоколами.

Демон разработан Хеннингом Брауэром в рамках проекта OpenBSD. Основные цели проекта — это создание безопасного, лёгкого в настройке, достаточно точного и свободно распространяемого сервера точного времени.

Установка:

# cd /usr/ports/net/openntpd
# make search install clean

Настройка достаточно тривиальна:

# ee /etc/ntpd.conf
# На каких интрефейсах будет висеть сервис, в данном случае
# будет слушать все интерфейсы, но можно указать и конкретные,
# например listen on 127.0.0.1 или listen on 192.168.0.1. Опция
# rtable указывает какую маршрутизацию использовать
listen on *

# Сервера с которых будет синхронизироваться машина, можно
# перечислить несколько серверов, а можно указать пул серверов
server ru.pool.ntp.org

# Так же существует еще одна деректива, она служит коррекции дельты
# времени интерфейса в миллисекундах, максимальная коррекция 127 секунд.
# sensor udcf0 correction 70000

Теперь осталось добавить в rc.conf:

Posted in Без рубрики, Программы | Tagged , | Leave a comment

Скрипт сборки ядра

#!/bin/sh

kernel="${1}"
archit="${2}"

cd /usr/src/sys/${archit}/conf/
config ${kernel}
#cd ../compile/${kernel}
cd /usr/src/sys/${archit}/compile/${kernel}
make cleandepend && make depend && make -j8 -B && make install
Posted in FreeBSD, Программы | Tagged | Leave a comment

Самописный бот для игры

#comments-start
Бот для игры Мир танков
Код:
Графический интерфейс
Запуск бота
Релогин
Выбор танка(на дороботке)
Выход из боя(После смерти)
#comments-end
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

; Определяем параметры окна
Opt("PixelCoordMode", 2)
Opt("MouseCoordMode",2)

; Рисуем GUI интерфейс для управления ботом
$WoT = GUICreate("BoT", 200, 220, 192, 124)
$Client = GUICtrlCreateGroup("Управление клиентом", 8, 8, 185, 129)
$AutoRelog = GUICtrlCreateCheckbox("Авто вход в игру", 16, 24, 169, 17)
$ChangTank = GUICtrlCreateCheckbox("Поиск свободного танка", 16, 40, 169, 25)
$SortLabel = GUICtrlCreateLabel("В каком порядке выбирать танк", 16, 64, 169, 17)
$SortTank = GUICtrlCreateInput("123", 16, 104, 169, 21)
$StartBot = GUICtrlCreateButton("Запуск", 32, 154, 129, 25, $WS_GROUP)
$SaveSet = GUICtrlCreateButton("Сохранить настройки", 32, 180, 129, 25, $WS_GROUP)
GUISetState(@SW_SHOW)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        ; попытка сохранять параметры в Ini
        Case $SaveSet
            $ARState = GUICtrlRead($AutoRelog)
            $CTState = GUICtrlRead($ChangTank)
            $STState = GUICtrlRead($SortTank)
            If $ARState = 1  Then
                IniWrite("Bot.ini", "ClConfig", "AutoRelogin", 1)
            Else
                IniWrite("Bot.ini", "ClConfig", "AutoRelogin", 0)
            EndIf
            If $CTState = 1  Then
                IniWrite("Bot.ini", "ClConfig", "ChangeTank", 1)
            Else
                IniWrite("Bot.ini", "ClConfig", "ChangeTank", 0)
            EndIf
            IniWrite("Bot.ini", "ClConfig", "SortTank", $STState)
        ; запуск бота
        Case $StartBot
            ; активируем окно игры
            WinActivate("[TITLE:W.o.T. Client]","")
            While 1
            Select
                ; Если окно не активно оповещаем
                Case WinActive("[TITLE:W.o.T. Client]","") = 0
                    MsgBox(0,"Сообщение","Окно игры не активно, бот остановлен")
                    ExitLoop
                ; Если окно активно,проверяем залогинен ли клиент
                Case Not WinActive("[TITLE:W.o.T. Client]","") = 0
                    ; Если логин не совершен, совершаем его
                    PixelSearch(0,0,500,500,0x000000,100)
                    If @error=0 Then
                        Sleep(1000)
                        MouseClick("",512,540,2)
                    EndIf

                ; Необходимо добавить проверку нахождения в ангаре   

                ; Начинаем выбор танка
                Case Not WinActive("[TITLE:W.o.T. Client]","") = 0
                ; Проверяем 1 слот
                If PixelGetColor(461,40) = 0xB02022 Then
                    Sleep(3000)
                    MouseClick("",180,657,5)
                    Sleep(3000)
                    MouseClick("",511,46,5)
                ; Проверяем 2 слот
                ElseIf PixelGetColor(461,40) = 0xB02022 Then
                    Sleep(3000)
                    MouseClick("",348,657,5)
                    Sleep(3000)
                    MouseClick("",511,46,5)
                ; Проверяем 3 слот
                ElseIf PixelGetColor(461,40) = 0xB02022 Then
                    Sleep(3000)
                    MouseClick("",511,657,5)
                    Sleep(3000)
                    MouseClick("",511,46,5)
                EndIf

                ; Параметры боя

                ; Проверка жив ли наш танк
                Case Not WinActive("[TITLE:W.o.T. Client]","") = 0
                    PixelSearch(0,0,500,500,0x000000,100)
                    If @error=0 Then
                        Sleep(3000)
                        Send("{R 2}")
                    EndIf
                ; Если танк убит выходим из боя
                Case Not WinActive("[TITLE:W.o.T. Client]","") = 0
                    Sleep(3000)
                    Send("{ESC}")
                    Sleep(3000)
                    MouseClick("",510,372,5)
            EndSelect
            WEnd
    EndSwitch
WEnd
Posted in AutoIt | Tagged , , | Leave a comment

Мой csh

# $FreeBSD: src/etc/root/dot.cshrc,v 1.30 2007/05/29 06:37:58 dougb Exp $
#
# .cshrc - csh resource script, read at beginning of execution by each shell
#
# see also csh(1), environ(7).
#

alias h         history 25
alias j         jobs -l
alias la        ls -a
alias lf        ls -FA
alias ll        ls -lA

# A righteous umask
umask 22

set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin $HOME/bin)

setenv  EDITOR  ee
setenv  PAGER   more
setenv  BLOCKSIZE       K

if ($?prompt) then
        # An interactive shell -- set some stuff up
        set prompt = "%{\33[32m%}%B[%m][`id -u -n`][%~]#%b"
        set autolist = TAB
        set filec
        set history = 100
        set savehist = 100
        set mail = (/var/mail/$USER)
        if ( $?tcsh ) then
                bindkey "^W" backward-delete-word
                bindkey -k up history-search-backward
                bindkey -k down history-search-forward
        endif
endif
Posted in FreeBSD | Tagged , | Leave a comment

Температура CPU системы(FreeBSD+mbmon)

Температура системы(FreeBSD)

Назрела задача мониторить температуру системы, немного поискав было получено несколько ответов на интересующий вопрос,из предложенных вариантов, решение пало на mbmon,почитав немного отзывов стало понятно что на удачный исход надеется не стоит,так поддерживается не все железо,ну да ладно,так как говориться попытка не пытка,тем более есть в портах Подмигивающий.Что имеем:

[2:14][gw][root][/]# uname -srm
FreeBSD 7.1-RELEASE i386
[2:14][gw][root][/]# dmesg | grep CPU
CPU: Intel(R) Pentium(R) 4 CPU 3.20GHz (3199.65-MHz 686-class CPU)
  Logical CPUs per core: 2
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
cpu0: <ACPI CPU> on acpi0
p4tcc0: <CPU Frequency Thermal Control> on cpu0
cpu1: <ACPI CPU> on acpi0
p4tcc1: <CPU Frequency Thermal Control> on cpu1
SMP: AP CPU #1 Launched!

Собственно температуру этого камушка и было задумано мерить,а то после Intel Celeron 2400 мне он ужасно горячим показался,что оказывается было зря. Улыбающийся

Continue reading

Posted in FreeBSD, Программы | Tagged , , | Leave a comment

Повышаем безопасность системы

Повышаем безопасность системы

1 В системе достаточно иметь только одну директорию для хранения временных файлов, хотя в стандартной упаковке их две /tmp и /var/tmp , поскольку разные пакеты используют разные директории. Поскольку нам достаточно одной, то ограничим их в этом свободном выборе, удалив /var/tmp.

# mv /var/tmp/* /tmp/
# rm -rf /var/tmp
# ln -s /tmp /var/tmp

Так же можно удалять все временные файлы во время загрузки системы добавив в rc.conf следующие:

clear_tmp_enable="YES"

Continue reading

Posted in FreeBSD, Безопасность | Tagged , | Leave a comment

Обновление портов

Обновление происходит при помощи утилиты csup.

Сводится примерно к следующему:

# cp /usr/share/examples/cvsup/stable-supfile /usr/local/etc/supfile
# ee /usr/local/etc/supfile
*default host=CHANGE_THIS.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_8
*default delete use-rel-suffix
*default compress
ports-all tag=.
# csup -g -h cvsup7.ru.freebsd.org -L2 /usr/local/etc/supfile
Posted in FreeBSD | Tagged | Leave a comment