,

17 июля, 2010

javascript как узнать все свойства объекта

Небольшая функция на javascript, которая позволяет узнать все свойства объекта

Вот сама функция:

function fnShowProps(obj, objName) {
    var result = "";
    for (var i in obj) // обращение к свойствам объекта по индексу
        result += objName + "." + i + " = " + obj[i] + "\n";
    document.write(result);
}

Вот пример исползования:

fnShowProps(window.location, "location")

Результат:

location.pathname = /JavaScript/
location.protocol = http:
location.search = ?8
location.hash =
location.hostname = htmlcssjs.ru
location.href = http://htmlcssjs.ru/JavaScript/?8
location.host = htmlcssjs.ru
location.port =
location.reload = function reload() { [native code] }
location.replace = function replace() { [native code] }
location.assign = function assign() { [native code] }

Источник: http://htmlcssjs.ru/JavaScript/?8

 

,

foreach в javascript

Во несколько способов реализации foreach в javascript

Вариант 1:

for (var key in some_array) {
            var val = some_array [key];
	    alert (key+' = '+val);	
}

Вариант 2:

for(i=0, c=arr.length; i<c; i++) {
	my_func(arr[i]);
}

Нужно отметить, что второй вариант не совсем реализует foreach, так как перебираются только значения массива без ключей.

15 июля, 2010

Немного об svn

Вот небольшой мануал по использованию svn

Создать репозитарий можно вот так:

$ svnadmin create new_repo

Настраиваем svn вот так:
Идем в new_repo/conf и открываем в любимом редакторе файл svnserve.conf.
В нём мне пригодилось исправить только секцию [general] вот так:

[general]<br>anon-access = none<br>password-db = passwd

anon-access = none — этим сообщаем, что анонимный доступ нужно запретить
password-db = passwd — этим сообщаем, что пароли и логины пользователей svn находится в файле passwd

Файл passwd правим таким образом:

[users]<br>user = password


Запуск серванта svn в FreeBSD:
Если уже запущен, то убиваем процесс (скорее всего прекращать работу сервера через killall -9 не совсем правильно, да простит меня Джа)

$ killall -9 svnserve<br>$ svnserve -d -r ./new_repo

Чекаем свой проджект вот так:

$ svn co svn://my_name_user@host_svn/new_repo project_dir

my_name_user — пользователь svn
host_svn — хост с svn
new_repo — наша директория с репозитарием
project_dir — локальная папка проекта

Далее svn спросит пароль, имя ползователя и возможно задаст ещё пару вопросов, отвечаем..
Если всё правильно, то svn выдаст сообщение типа — Checked out revision n,
где n — номер версии (если репозитарий чекается первый раз, то версия будет 0)

Далее добавляем файлы своего проекта в папку проекта (project_dir) и делаем вот так :

$ svn add * Отправляем обновление на svn сервер:
$ svn commit -m "Добавляем файло в нашу репу ;) "

Вот и все! Кратко, дёшево и сердито, как и должно быть у бадлокодера %)))

З.Ы. Не забывайте про руководства svn и google! Всем удачи!

,

14 июля, 2010

Поиск файла по содержимому этого файла

То что давно хотел узнать :)

Вот так можно найти строку по содержимому файла.

$ find /etc -type f -exec grep -Hn "nameserver" {} \; 2&gt;/dev/null

Вот так можно найти все файлы в каталоге /etc в которых есть слово «nameserver»
Опции grep:

H — выводим имя файла со строкой.
n — номер строки в файле.

Ошибки перенаправляем в /dev/null
При желании можно написать вот такой скрипт:

#/bin/sh

dir='.';
if [ -z $1 ] 
then
	echo 'Команду нужно запускать вот так: find.str  [dir]';
else
	if [ -z $2 ]
	then
		dir=$2
	fi
	
	find . -type f -exec grep -Hn $1 {} \; 2>/dev/null
fi

 

,

13 июля, 2010

Unix — пример работы с текстом

Скачал тут недавно книгу из двух текстовых файлов в koi8-r и с переводами строки в стиле Win (^M)

Решил поправить это дело таким вот образом:

$ cat book_p1.txt book_p2.txt | sed 's/\r//' | iconv -f koi8-r -t utf8 > book.txt

Вот так вот :) Unix — это круто!

9 июля, 2010

Немного о шифровании

Шифрование

Если нужно зашифровать отдельный файл (к примеру архив или документ) — можно воспользоваться утилитой openssl.
Шифрование файла file будет выглядеть так:

$ openssl enc -e -aes-256-cbc -k ПАРОЛЬ -in ./file -out ./file.encoded

или так:

$ cat ./file | openssl enc -e -aes-256-cbc -k ПАРОЛЬ &gt; file.encoded

Параметр -k и пароль можно не указывать, тогда он будет запрошен во время выполнения команды.

вот ещё варианты:

$ openssl aes-128-cbc -salt -in file -out file.aes
$ openssl aes-128-cbc -d -salt -in file.aes -out file

Дешифрование

Расшифровать обратно файл можно будет командой:

<span style="font-family: monospace;">$ </span>openssl enc -d -aes-256-cbc -k ПАРОЛЬ -in ./file -out ./file.encoded

(параметр -e меняется на -d) ну или соответственно:

$ cat ./file.encoded | openssl enc -d -aes-256-cbc -k ПАРОЛЬ &gt; ./file

Параметр -k и пароль можно не указывать, тогда он будет запрошен во время выполнения команды.

Комбинирование (Создание шифрованого архива, разбиение на тома)

Естественно команды можно комбинировать, и к примеру создание архива директории dir со сжатием gzip и шифрованием openssl aes будет выглядеть так:

$ tar -czf - ./dir | openssl enc -e -aes-256-cbc -k ПАРОЛЬ > archive.tar.gz.encoded

Рашифровываем (в обратном порядке):

$ openssl enc -d -aes-256-cbc -in ./archive.tar.gz.encoded | tar -xz

Плюс если шифрованный архив надо разбить на куски — добавляем split, все ограничивается только вашей фантазией :)

$ tar -czf - ./dir | openssl enc -e -aes-256-cbc -k ПАРОЛЬ | split -db 4M - arc

Склеиваем, дешифруем, разжимаем, разворачиваем:

$ cat arc* | openssl enc -d -aes-256-cbc | tar -xzf - 

Шифрование GPG

GnuPG очень известный способ шифрования и подписи электронных писем или других данных, кроме того gpg предоставляет расширенную систему управления ключами. В данных примерах рассматривается только шифрование файлов
Самым простым является симметричный шифр. В этом случае файл шифруется с помощью пароля, соответственно расшифровать его може тот, кто знает этот пароль, никаких ключей не требуется. Gpg добавляет расширение «*.gpg» к имени зашифрованного файла.

$ gpg -c file                        # Зашифровать файл по паролю
$ gpg file.gpg                       # Расшифровать файл ( -o другой файл) 

8 июля, 2010

Немного о правах в Unix

[announce]Чтобы было понятно и не забыть самому, что значат циферки в правах :)[/announce]
Итак, основы Unix, но я всегда  забываю как формируются цифры прав доступа в Unix, поэтому и решил написать сюда об этом. чтобы в случае  чего можно было подглядеть.

Вот примерная схема:

-r-w-x—r-w-x—r-w-x-
——-   ——-  ———
    U         G         O

Легенда:
U — Владелец файла
G — Группа владельца файла
O — Все остальные

-r- — Разрешение на чтение
-w- -Разрешение на запись
-x- -Разрешение на использование

Теперь о том как формируются цифры:

Каждое разрешение представляет из себя ,если грубо, булевое значение т.е может быть равно 0 (выключено) или  1(включено)
Таким образом получаем двоичный код   -111-111-111- что значит -rwx-rwx-rwx, а как мы знаем  из курса информатики 111 в двоичной системе счисления есть 7 в восьмеричной, значит запись -111-111-111- в двоичной системе счисления будет равна -7-7-7- в восьмеричной. Кажется все логично и просто :)

Нембольшая таблица, чтобы было понятно наглядно.

Доступ Двоичное число Восьмеричное число
000 0
—x 001 1
-w- 010 2
-wx 011 3
r— 100 4
r-x 101 5
rw- 110 6
rwx 111 7

Вот небольшая программка, которую я написал на js. Может кому-нибудь она поможет лучше понять принцип прав доступа в Unix

При написании статьи пользовался книгой — Маслякова В.Г, Linux на 100%(+DVD), СПб.:Питер,2009, 336c.

7 июля, 2010

настройка sudo

[announce]Настраиваем sudo в ARCHLinux..[/announce]
Программа sudo предназначина для запуска команд с привелегиями root пользователя:
например:

$ sudo halt

Для настройки рекомендуеться запустить команду visudo от ползователя root, которая запустит редактор vi с файлом для редактирования — /etc/sudoers

Немного о синтаксисе файла.

Чтобы разрешить пользователю выполнять все команды от root  нужно ввести строку:

  

user ALL=(ALL) ALL

Если нужно дать возможность запускать на машине только несклько команд, то можно искользовать такой синтаксис:

user ALL=/usr/sbin/halt

Эта строка позволит запускать пользователю user команду halt. Для того,  чтобы позволить пользователю запускать несколько  команд от  пользователя root нужно перечислить команды, включая абсолютный путь к команде, через запятую.

user      ALL=/usr/sbin/halt,  /bin/mount

Эта строка позволит запускать от полззователя root команды halt и mount

Итак, примерно получается такой синтаксис как я понял:

первое поле user — имя пользователя от которого будет запускаться команда sudo
второе поле ALL= — это имя машины на которой разрашено запускать каоманды через sudo
третье поле (ALL) — это пользователь от кого будет запущена команда через sudo, по-умолчанию root
четвертое поле — список команд с абсолютным путем к команде.

Еще пара любопытных опций.
Немного юмора от разработчиков sudo. Если в /etc/sudoers есть эта строка, то вместо стандартного сообщения о введенном неверно пароле будет выводиться шутливое предупреждение:

Defaults insults 

Данная строка укажет на то что sudo будет хранить пароль 10мин.

Defaults:ALL timestamp_timeout=10

*Примечание: каждая запись занимает одну строку, поэтому некоторые записи могут быть большими, для переноса можно ипользовать символ \ тобишь как-то так:

user      ALL=/usr/sbin/halt,  \
/bin/mount

Это будет одна строка.

Источники:

$ man sudo
$ man sudoers

http://wiki.archlinux.org/index.php/Sudo_(Русский)
http://wiki.archlinux.org/index.php/Sudo

конечно же :)

Очень странный сайт с какими-то ошибками и неправильной кодировкой (сразу видно НАШ былокодерский! :) ) — http://www.infocity.kiev.ua/os/content/os299_2.phtml 

6 июля, 2010

Поднимаем Samba

Поднимаем Samba в FreeBSD 8.1
Итак, для того, чтобы подружить windows с FreeBSD поднимаем самбу

# cd /usr/ports/net/samba3 && make install clean

Далее добавляем в /etc/rc.conf строку — inetd_enable=»YES»

Запускаем —
# /etc/rc.d/inetd start

Открываем браузер и вводим в адресную строку: <domain_samba_server>:901 где  <domain_samba_server> имя или ip машины на которой запустили самбу, например http://localhost:901 или http://127.0.0.1:901
После ввода пароля и логина можем управлять настройками самбы из браузера.

Проще как мне кажется отредактировать файл /usr/local/etc/smb.conf при помощи любимого текстового редактора ( конечно же vi :) )

После сохранения настроек запускаем Самбу —
/etc/rc.conf — сюда по традиции добавляем строки:

winbindd_enable="YES"
nmbd_enable="YES"
smbd_enable="YES"

И запускаем скрипт запуска самбы:

# /usr/local/etc/rc.d/samba start

 

LAMP для FreeBSD

[announce]Ставим на фрю LAMP ну или тогда уж FAMP ))[/announce]
Нужно поставить Apache+Mysql+php на FreeBSD 8.1, который в народе заветься LAMP я буду назвать FAMP так как в качестве ОС системы буду использовать не Linux а FreeBSD
Вот как делать:

Для начала поставим Apache:*

# cd  /usr/ports/www/apache13 && make install clean

Затем ставим php и mysql

# cd /usr/ports/lang/php5 && make install clean

В меню config выбираем модуль Apache
Ставим mysql

# cd /usr/ports/databases/mysql50-server && make install clean

прописываем в в rc.conf строки для автоматического старта серверов Apache и Mysql:

apache_enable=»YES»
mysql_enable=»YES»

Запускаем:

# /usr/local/etc/rc.d/mysql-server start &
# apachectl start

можно попробовать сделать скрипт типа такого —

# vim install-lamp.sh

#!/bin/sh
cd  /usr/ports/www/apache13 && make install clean
cd /usr/ports/lang/php5 && make install clean
cd /usr/ports/databases/mysql50-server && make install clean
echo ‘apache_enable=»YES»‘ >> /etc/rc.conf
echo ‘mysql_enable=»YES»‘ >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server start &
apachectl start

Делаем скрипт запускаемым:

# chmod 775 install-lamp.sh

или запускаем так:

# /bin/sh install-lamp.sh

Зупускать нужно из под пользователя root или используя команду sudo

Вот FAMP и готов )))

* примечание: сначала хотел поставить сервер apache22, но возникли ошибки при установки с пакетом db чего-то там.. так как версия сервера для меня была не принципиальна и не очень много желания было ковырять в сторону исправления этой ошибки, я поставил версию 1.3

PS. В процессе установки FreeBSD я по нехватки опыта отметил php и apache для установки из коробки, все поставилось хорошо, вот только php установился не как модуль apache, а отдельно о чем мне после запуска сервера apache, сообщил inpdex.php, который отобразился как текст в браузере :) Мне пришлось удалить все пакеты связанные с php через pkg_delete и затем собрать php из портов с поддержкой модуля для Apache.

Источник информации: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-apache.html
Привожу англоязычную документацию не из-за понтов (с английским у меня не очень..) просто дело в том, что в локализованном хэндбуке вариант настройки и установки не подошёл мне (скорее всего из-за устаревшей информации, которая приводится в русскоязычной документации)

**Пока не поменял владельца /var/db/mysql вот так — chown -R mysql:mysql /var/db/mysql/ mysql скрвер не стартавала (решение подглядел вот тут в комментариях — http://chrv.ru/?p=11)

1 июля, 2010

FreeBSD

[announce]Ставлю и кручу фряку (очень увлекательно :) ) Подробности читайте в http://killercoder.ru/zennix/ [/announce]

666666666666666666666666666666666666666666666666626666666666666666666666666666666666666666666666666666666666666666666666
6666666666666666666666666666666666666666666
6624 4666666666666666666666666666666666666666666666666666666666666666666666
66666666666666666666666666666666666666666
62445 466666666666666666666666666666662222666666666666666666666666666666666666
66666666666666666666666666666666666666
6244225 56666666666666666666666666666666666524 42666666666666666666666666666666666
666666666666666666666666666666666666
6244224 4666666666666666666666666666666666666424 466666666666666666666666666666666
6666666666666666666666666666666666
62422224 466666666666666666666666666666666666666425 2666666666666666666666666666666
666666666666666666666666666666666
622222225 56662224455 554226666666666666666422 466666666666666666666666666666
66666666666666666666666666666666
642222224 5 42222455 5426666666666664225 46666666666666666666666666666
66666666666666666666666666666666
222222225555555542225555 526666666624225 2666666666666666666666666666
66666666666666666666666666666666
52222245422244222224222225 566622454222 5666666666666666666666666666
66666666666666666666666666666666
4222254224422252222444442225 5544442222225 666666666666666666666666666
66666666666666666666666666666666
22225424266662522426666254225 55555 5222222222225 5666666666666666666666666666
66666666666666666666666666666666
64254446666665222666666625222244555 542222222455 2666666666666666666666666666
666666666666666666666666666666666
45442666666422266666666625222225 544445 26666666666666666666666666666
666666666666666666666666666666666
4542666666242666666666662 2222245 5266666666666666666666666666666
66666666666666666666666666666666
65426224266422666666666666542222255 526666666666666666666666666666666
66666666666666666666666666666666
2542465 5644 52 5266666666542222254 52666666666666666666666666666666666
66666666666666666666666666666666
5455 5 524 22 66666662522222224 4266666666666666666666666666666666666
666666666666666666666666666666
62525 44 55 26666662522222224 4266666666666666666666666666666666666666
66666666666666666666666666666
2242225 425 26666665422222225 26666666666666666666666666666666666666666
666666666666666666666666666
6242222244444424 56666665522222222 56666666666666666666666666666666666666666
66666666666666666
6666666666242222242222222245 466666655222222224 46666666666666666666666666666666666666666
66666666666666666
6222266666522222242222222245555222244555422224555 26666666666666666666666666666666666666666
666666666666666666
6222222662422222444222224 522222222222222225 466666666666666666666666666666666666666666
6666666666666
666666622422266222222224555555555422222222222222225 5666666666666666666666666666666666666666666
6666666666666
222266662662226624222555222222222222222222222222225 46666666666666666666666666666666666666666666
6666666666666
622224266666222666244445 4222222222222222245 555 266666666666666666666666666666666666666666666
66666666666666
642222222622246666662245 542222222222455 554445 26666666666666666666666666666666666666666666666
6666
622666666666666222222242666666666624 5555555 542222445 52666666666666666666666666666666666666666666666666
66666
62222222666666622222222662222224266622555444422224455 466666666666666666666666666666666666666666666666666
6666666
662222222222222222222252222225 466666625 55555 266666666666666666666666666666666666666666666666666
6666666666
6222222222226666242542224 566666662224444422222222244 266666666666666666666666666666666666666666666666666
6666666666666
666666666666662444445 54222666242222222222222222225 26666666666666666666666666666666666666666666666666
66666666666666666666666666
242222225 422222222222222222225 2666666666666666666666666666666666666666666666666
66666666666666666666666666
422222225 544444444422222224 525 5666666666666666666666666666666666666666666666666
66666666666666666666666666
62244445 522222222245555455 525 266666666666666666666666666666666666666666666666
6666666666666666666666666666
62555444 422222222222455 24 466666666666666666666666666666666666666666666666
666666666666666666666666666666
6224445 4222222222222225 566666666666666666666666666666666666666666666666
666666666666666666666666666666666666
625 54222222222222455 566666666666666666666666666666666666666666666666
66666666666666666666666666666666666666
6 5442222222244 466666666666666666666666666666666666666666666666
666666666666666666666666666666666666666
65 5 5555 5666666666666666666666666666666666666666666666666
666666666666666666666666666666666666666
645 2666666666666666666666666666666666666666666666666
666666666666666666666666666666666666666
222255 5666666666666666666666666666666666666666666666666
666666666666666666666666666666666666666
422222245 522245 266666666666666666666666666666666666666666666666
666666666666666666666666666666666666666
242222222224555 54222445 66666666666666666666666666666666666666666666666
666666666666666666666666666666666666666
6442222222222224 542225 56666666666666666666666666666666666666666666666
66666666666666666666666666666666666666666
25222222222224 55 5266666666666666666666666666666666666666666666
666666666666666666666666666666666666666666
2 5554444455 46666666666666666666666666666666666666666666
666666666666666666666666666666666666666666
2 5 526666666666666666666666666666666666666666
666666666666666666666666666666666666666666
65522245 555 5 5426666666666666666666666666666666666666
6666666666666666666666666666666666666666
662452224455 5444444 55 5 2624 542266666666666666666666666666666666
666666666666666666666666
66666662222222244452224244 5422455 445 26662245 544226666666666666666666666666
66666666666666666
66666666266625 422445444554555555555 56666666622255 5544422266666666666666
66666666666666
66666666666666662 5 542222622224 5442555555 266666666666666222455 554266666666
66666666666666
2666666666666666222666666666666625 422445 6666666666666666666666662222222244555 5466666
66666666666666
2666666666666252666666666666666662 56666666666666666666666666666666666662244 4666
666666666666666
62222666666645266666666622222224 5426666666666666666666666666666252666666666245 466
6666666666666666666
6666666666666666666666666625 542266666666666666666666666666666244445266666624 266
6666666666666666666666666666666
666666622222225 555544222666666666666666666666666666666662244222224 44555 46666
66666666666666666666666666666666666666666
6666666666666666666666666666666666666666666666622442222222225 55426666666
66666666666666666666666666666666666666666666666666666666666666666666666666666666666
6624444444455555 5266666666666666
6666666666666666666666666666666666666666666666666666666666666666666666666666666666
62222222222266666666666666666666666666
666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666

Ставлю и кручу фряку (очень увлекательно :) ) Подробности читайте в http://killercoder.ru/zennix/

ASCII стянул отсюда — http://www.codeismylife.com/ascii_freebsd_daemon/3223.html

30 июня, 2010

Пересборка Мира и ядра

Пересобрал мир и ядро на только что установленной фряке. Вот как было дело


После установки Фряки мне пришла в голову мысль, что неплохо было бы персобрать мир и ядро системы.
Дальше опишу свои действия и команды, а так же укажу источники информации, которыми я пользовался в процессе.

Итак, приступим

Для оптимизации компиляции нужно отредактировать /etc/make.conf
Пример make.conf можно найти в /usr/share/examples/make.conf
У меня получился вот так — http://killercoder.ru/zennix/Nastroyka_make_conf_v_FreeBSD

Обновляемся через cvsup как тут — http://killercoder.ru/zennix/Obnovlenie_ishodnikov_cherez_cvsup

Читаем тут — http://www.freebsd.org/doc/ru/books/handbook/makeworld.html

Загружаемся в однопользовательский режим:
После загрузки вводим:

# fsck -p
# mount -u /
# mount -a -t ufs
# swapon -a

Переходим в директорию с исходниками (у меня /usr/src/)

# cd /usr/src/

На этапе выбора архитектуры мира произошла накладка, дело в том что uname -a возвратил мне i386, а
dmesg | grep CPU — Athlon64 :)

Нужно было безболезненно перейти на другую архитектуру так как make buildkernel отказался запускаться с параметром в файле конфигурации ядра cpu HAMMER — это для 64х битных атлонов.
Google нашёл по этому поводу статью вот она — http://unixfaq.ru/index.pl?req=qs&id=527

Учитывая данные сведения сделал:

# make buildworld TARGET_ARCH = amd64

Сборка, запустилась. Я не очень силён в команде make, но кажется можно было бы запустить и с параметром -j4, а для amd64 возможно и -j8 для увеличения производительности и скорости сборки.

Дальше переходим 
Копируем ядро GENERIC для нужной нам платформы в удобное место в данном случае это ~/ # cp /usr/src/sys/amd64/conf/GENERIC ~/KERNEL_`date %d_%m_%Y`  Идею с именем нового ядра подсказал lissyara вот отсюда — http://www.lissyara.su/articles/freebsd/tuning/make_kernel/

Редактируем опции ядра при помощи любимого редактора, в моем случае это vi :)

# vi  KERNEL_01_07_2010

Свой конф приводить думаю бессмысленно, могу только сказать, что ознакомится с дополнительными параметрами ядра можно в файле /usr/src/sys/amd64/conf/NOTES и в /usr/src/sys/NOTES — это если вы понимаете по-английски :) я же пользовался опять же Гуглом и http://www.freebsd.org/doc/ru/books/handbook/kernelconfig-config.html,

Собираем ядро
При сборки ядра make buildkernel TARGET_ARCH=amd64 KERNCONF=KERNEL_01_07_2010 выдал ошибку, после перезагрузки компьютера, я повторил попытку, но команда не сработала, тогда я решил пересобрать ядро с командой

# make buildkernel TARGET_ARCH=amd64

Эта команда прошла и запустилась компиляция ядра.
После компиляции запустил установку нового ядра и make выдал ошибку

Error: Please set DESTDIR

Установил DESTDIR:

# export DESTDIR=/usr/src/

Запустил
# make installkernel TARGET_ARCH=amd64

Вроде пошла установка, но выскачела опять ошибка:

cd: can’t cd to /usr/obj/amd64/usr/sys/GENERIC

 

Обновление исходников через cvsup

О том как я обновлял исходники фряки через cvsup
Ставим cvsup из портов:

# cd /usr/ports/net/cvsup/ &amp;&amp; make install clean
Тоже самое без возможности поддержки иксов - <br># cd /usr/ports/net/cvsup-without-gui &amp;&amp; make install clean

Создаем файл с настройками обновления:
# vi supfile

В файле:

*default release=cvs tag=.tag=RELENG_8                     # Версия системы, которая нам нужна
*default host=cvsup2.ru.FreeBSD.org                            # Хост откуда тянем исходники
*default prefix=/usr                                                        # Куда кладем полученные исходники (этой строкой в /usr/src/)
*default base=/var/db                                                   # Путь к base каталогу для файлов статуса
*default release=cvs delete use-rel-suffix compress     # Дополнительные опции
src-all                                                                             # Забираем все исходники

Запускаем cvsup -g -L 2 supfile

Настройка make.conf в FreeBSD

Решил завести себе домашний сервер под FreeBSD. Первое, что решил сделать после установки — оптимизировать опции сборки.
Вот мой /etc/make.conf:

CPUTYPE?=athlon64 # Процессор
CFLAGS=-01 -pipe # Флаги сборки
NO_PROFILE=true #Обход построения библиотек для профилирования

# Включать флаги обязательно
NO_CPU_CFLAGS=false
NO_CPU_COPTFLAGS=false

# Отключаем сборку ненужных пакетов
MAKE_KERBEROS4=false
MAKE_KERBEROS5=false
NO_BIND=true
NO_SENDMAIL=true
NO_GAMES=true

# Язык документаций
DOC_LANGS=en_US.ISO8859-1 ru_RU.KOI8-R

Источники информации:
http://www.lissyara.su/articles/freebsd/tuning/make.conf/
http://www.freebsd.org/doc/ru/books/handbook/
/usr/share/examples/etc/make.conf

19 июня, 2010

Отрывок из книге Ф.Г. Углова — «В ПЛЕНУ ИЛЛЮЗИЙ»

Нашел интересный отрывок из книге Ф.Г. Углова — В ПЛЕНУ ИЛЛЮЗИЙ». Вообще если будет время и желание обязательно напишу об этом человеке, а пока хочу представить отрывок из его книге для тех людей которые попали под промывку мозгов о том, что пьянство — это то что в России было всегда и естественно для нашей Родины. ( в числе тех кому промыли мозги по поводу истории употребления алкоголя у нас в стране оказался и я сам, поэтому собсвенно меня и заинтересовали подобные факты из книге )

Отрывок из книге Ф.Г. Углова — «В ПЛЕНУ ИЛЛЮЗИЙ»

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

Что можно сказать по этому поводу?

Прежде всего надо уточнить, что не все человечество и далеко не всегда употребляло спиртное. Сотни миллионов магометан почти тысячелетие совсем не употребляют вина и ничего, кроме хорошего, от этого не видят. Кроме того, известно также, что в течение веков употреблялись лишь слабые напитки типа браги, пива, медовухи и т. д., которые приготовлялись кустарно и не в таких массовых масштабах, чтобы удовлетворить всех. Пили только более обеспеченные. Основная же масса людей не имела возможности даже думать о вине. Они думали о хлебе, о том, чтобы не умереть с голоду.

Западные русофобы усердствуют в доказательстве того, что у русских, мол, особая склонность к спиртным напиткам. Отголоски этой точки зрения нет-нет да и встретятся в нашей литературе. В связи с этим мне хотелось бы кратко коснуться истории данного вопроса.

Объективное и непредвзятое изучение истории потребления спиртных напитков в России показывает, что издревле наши люди пили редко, мало и только слабые напитки домашнего производства.

В течение многих веков наш народ, истекая кровью, вел круговую оборону, отстаивая свою независимость. По 40-50 лет в столетие он находился в состоянии войны, и мирная жизнь была для него лишь короткой передышкой. В целом для России XIII-XVIII веков состояние мира было скорее исключением, а война — жестоким правилом. Воевать приходилось и на северо-западе, и на западе, и на южных, юго-восточных и восточных границах. В таких условиях требовалось невиданное напряжение сил всего народа, и именно поэтому в нашей стране намного позднее других стран потребление спиртных напитков получает широкое распространение.

Утверждение о том, что потребление опьяняющих напитков известно давно, верно, однако никогда это потребление не достигало таких размеров, как в последние два столетия, ибо до этого времени хмельные напитки изготовлялись в слабой концентрации, кустарно. Фабричное производство чистого спирта, а вместе с ним и потребление крепких напитков, получило широкое распространение лишь с начала 19-го столетия. Последнее обстоятельство и оказало огромное влияние на степень и быстроту распространения пьянства во всем мире и в нашей стране.

Вскоре после начала заводского изготовления спирта алкоголь стал одним из важных способов наживы, так как потребность в нем как в наркотике нарастала, а его Производство с ростом техники становилось все более доступным и дешевым. Появилась целая армия виноделов и виноторговцев, которые, используя свойства алкоголя, в том числе свойство легкого привыкания к нему людей, превратили виноторговлю в один из самых отвратительных способов ограбления трудящихся. В условиях антагонистически классового общества промышленное производство и торговля спиртным явились, по существу, двойной эксплуатацией людей — экономической и психической. Человек, привыкая к спиртному, бКатарактаыстро попадает в зависимость от него, теряет чувство самостоятельности и собственного достоинства, у него становится дряблой и слабой воля, он легче поддается влияниюнравственно обезличенных людей…

26 мая, 2010

Подключение tinymce

[announce]Постоянно забываю как подключать его.. Пусть будет здесь![/announce]
Подключение TinyMCE к textarea по классу

tinyMCE.init({	
...
mode : "specific_textareas",
editor_selector : "mceEditor"
});

Подключение TinyMCE к textarea по ID

tinyMCE.init({
...
mode : "exact",
elements : "elm1,elm2"
});

...

<textarea id="elm1" ...

Источник: http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/mode

23 февраля, 2010

Монтируем ISO в Linux

[announce]Из-за слабой памяти сделал себе заметку о том как примонтировать iso в linux, чтобы лишний раз не тревожить гугл, может кому еще пригодиться[/announce]
Для того, чтобы примонтировать iso в Linux нужно для начало создать место куда будем монтировать

mkdir /mnt/iso

И дать команду

mount fileiso.iso /mnt/iso/ -t iso9660 -o ro,loop=/dev/loop0

fileiso.iso — образ

Своровано с blogpost.am9.ru

22 февраля, 2010

Куда пропал mkfs.vfat в ARCHLinux ??

[announce]Недавно понадобилось отформатировать раздел в fat под арчи, на команду mkfs.vfat получил многозначительный ответ — command not found: mkfs.vfat[/announce]
  Собственно суть в том, что под archlinux не оказалось команды для форматирования разделов в fatmkfs.vfat
Гугл подсказал мне страницу на которой я нашел решение. Выкладываю его сюда, что бы те у кого возникнет та же проблема, смогли найти ее решение на моем сайте. Все дело в двух пакетах, которые по-умолчанию не установлены в системе: dosfstools, ntfsprogs.

Устанавливаем —

pacman -S dosfstools
pacman -S ntfsprogs

Первый пакет даст нам команду mkfs.vfat, mkfs.msdos Второй пакет даст нам команду mkfs.ntfs

Источник

9 февраля, 2010

На сайте заработал раздел ‘Кодинг-медитация’

[announce]По мере возможностей буду выкладывать в раздел то что у меня накодилось за время функционирования. Начну с класса на php, который был написан одним из первых. Думаю в ближайшем будущем выложить самописный класс с пэджлистером и частично сворованные класы [/announce]
По мере возможностей буду выкладывать в раздел то что у меня накодилось за время функционирования. Начну с класса на php, который был написан одним из первых. Думаю в ближайшем будущем выложить самописный класс с пэджлистером и частично сворованные класы шаблонизатора и работы с мускулом.
Ссылка на раздел http://killercoder.ru/coding/