пятница, 19 ноября 2010 г.

/proc/kcore - что это такое, и как его удалить?

Освобождал место на сервере, и столкнулся со следующим: неведомый файл /proc/kcore занимает около 2 гигабайтов на винчестере:
-r-------- 1 root root 2.1G 2010-11-20 03:18 /proc/kcore
Место кончалось, и хотелось почистить как можно больше, но не станешь же просто так удалять файл, находящийся в /proc. Вдруг там что-то мегаважное храниться.
Оказалось, и не его надо трогать, удалять и вообще обращать внимание на его размер и то, сколько он места занимает. Если почитать man 5 proc, то увидим там следующее:
This file represents the physical memory of the system and is stored in the ELF core file format.  With this  pseudo-file,  and  an  unstripped
              kernel (/usr/src/linux/vmlinux) binary, GDB can be used to examine the current state of any kernel data structures.

              The total length of the file is the size of physical memory (RAM) plus 4KB.
Т.е. он просто напросто представляет собой физическую память сервера/компьютера. А его размер = размеру физической памяти + 4 килобайта. А реального места на винчестере он вообще не занимает.

Отличная статья по сборке deb-пакетов в Debian и Ubuntu

Хотелось разобраться, как собирать свои deb-пакеты в Debian и Ubuntu. Нашёл такую статью: http://habrahabr.ru/blogs/linux/78094/

вторник, 16 ноября 2010 г.

Хоткеи (Горячие клавиши) браузера Google Chrome

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

понедельник, 15 ноября 2010 г.

Настройка bind для работы c доменами в зоне РФ

На самом деле, нет никаких проблем в том, чтоб dns для  доменов зоны РФ в bind9.
В реальности никаких таких русскоязычных доменов нет, браузеры просто перекодируют русские буквы с помощью punycode. Онлайн кодировщик есть тут, например: http://www.rlnic.ru/technology/encode.pl
Вбиваете свой домен, например, "Президент РФ", и получаете xn--d1abbgf6aiiy.xn--p1ai.
Далее прописываем этот xn--d1abbgf6aiiy.xn--p1ai как самый обычный домен.
Таким образом, алогритм такой:
1) Перекодируем свой РФ-домен из русских букв в punycode.
2) Прописываем за-"пуникоде"-нный домен в bind
3) Всё работает.

суббота, 13 ноября 2010 г.

Делаем табличку в HTML

Итак, как делать табличку в HTML?
Вот так:
Заголовочек
Поле левоеПоле правое
Как же выглядит html код этой таблицы?
Вот он:
<table border="1" style="border-collapse: collapse;">
<tr><th colspan="2">Заголовочек</th></tr>
<tr><td>Поле левое</td><td>Поле правое</td></tr>
</table>
Итак, что здесь что:
<table ..>....</table> - это основной тег таблицы, который говорит браузеру, что мы делаем таблицу.
border="1" style="border-collapse: collapse;" - толщина границ таблицы будет равна 1-му пикселю, при этом смежные границы будут объединяться.
<tr>...</tr> - тег - строка таблицы.
<th ...>...</th> - тег, обозначающий столбец заголовка.
colspan="2" означает, что этот столбец будет по ширине как 2 нормальных столбца.
<td>...<td> - обычный столбец таблицы.
Собственно, вот и всё, основное. За подробностями можете сходить сюда: http://htmlbook.ru/html/table/ и сюда http://www.w3schools.com/html/html_tables.asp.

суббота, 6 ноября 2010 г.

Мой HOW-TO по установке LDAP на Linux Debian (Ubuntu)


Решил я разобраться, как же всё-таки ставить и настраивать ldap в Debian.


1. Установка
Установка - это самая простая часть, всего 1 команда:
sudo aptitude install slapd ldap-utils
slapd - это пакет, который предоставляет сервер OpenLDAP в Debian.
ldap-utils - программы-клиенты для этого сервера.
По ходу установки нужно будет 2 раза ввести пароль записи admin.
2. Настройка
Я настраивал следующей командой:
sudo dpkg-reconfigure slapd
.
Вам зададут еще несколько вопросов, на которые нужно будет честно ответить:)
3. Заводим пользователей
Пользователи (да и не только пользователи, а вообще всё: юзеры, компьютеры, серверы; но для краткости буду использовать слово пользователи) в LDAP добавляются следующим образом:
Во-первых, все данные о пользователях заносятся в ldif-файлы, такие файлы специального формата, о них ниже.
Во-вторых, сам этот файл импортируется в LDAP.
Итак, создадим следующий ldif-файл (Можете скопировать и сохранить где-либо у себя на компьютере):
dn: ou=people,dc=example,dc=com
objectClass: organizationalUnit
ou: people

dn: ou=groups,dc=example,dc=com
objectClass: organizationalUnit
ou: groups

dn: uid=john,ou=people,dc=example,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: john
sn: Doe
givenName: John
cn: John Doe
displayName: John Doe
uidNumber: 1000
gidNumber: 10000
userPassword: password
gecos: John Doe
loginShell: /bin/bash
homeDirectory: /home/john
shadowExpire: -1
shadowFlag: 0
shadowWarning: 7
shadowMin: 8
shadowMax: 999999
shadowLastChange: 10877
mail: john.doe@example.com
postalCode: 31000
l: Toulouse
o: Example
mobile: +33 (0)6 xx xx xx xx
homePhone: +33 (0)5 xx xx xx xx
title: System Administrator
postalAddress:
initials: JD

dn: cn=example,ou=groups,dc=example,dc=com
objectClass: posixGroup
cn: example
gidNumber: 10000
Здесь мы создаем 2 сущности - people и groups, в которых мы будем добавлять соотвественно людей и группы, и затем создаем пользователя John Doe и группу example.
Теперь заносим этот файл в LDAP-каталог. Для этого делаем следующее:
1) Останавливаем slapd:
sudo /etc/init.d/slapd stop
2) Вносим изменения:
sudo slapadd -l example.ldif
где example.ldif - имя нашего ldif файла.
3) Запускаем slapd:
sudo /etc/init.d/slapd start
Чтобы проверить, что все успешно добавилось, можно выполнить следующую команду:
$ ldapsearch -xLLL -b "dc=example,dc=com" uid=john sn givenName cn
dn: uid=john,ou=people,dc=example,dc=com
cn: John Doe
sn: Doe
givenName: John
В следующей статье расскажу про то, как настраивать LDAP-аутентификацию.

В основном использовались материалы этой статьи.

P.s. И да, о том, как добавить этого юзера в эту группу:
Создаем еще один ldif-файл следующего содержания:
dn: cn=example,ou=groups,dc=example,dc=com
changetype: modify
add: memberUid
memberUid: john
и выполняем команду:
ldapmodify -x -D cn=admin,dc=example,dc=com -f ex2.ldif
,
где ex2.ldif - это наш файл.

четверг, 4 ноября 2010 г.

И снова о Java: что такое footprint?

Разбирался в работе Java Garbage Collector'а, и столкнулся с понятием footprint. Так вот:
Footprint (или Memory Footprint) - это количество всей памяти, используемой и относящейся к процессу (программе)
. Подробнее можно почитать на английской википедии.