суббота, 10 февраля 2007 г.

Популярные Linux и Unix форумы.

Сегодня в своем RSS ридере Akregator я увидел довольно-таки интересную статью под названием Most popular GNU/Linux, Unix forums. Просмотрев ее, я захотел написать что-нибудь подобное, но с добавленными русскоязычными форумами.

Наверное это не будет новым, если я скажу, что одним из главных помощников начинающему пользователю Linux являются форумы. Фо́рум (от лат. forum) — это площадь для массового тематического общения. Слово произошло от первоначального Римского Форума, по подобию которого затем появились форумы по всей Римской империи; это слово также часто используется для обозначения мест публичного общения — в частности, интернет-форумов (wikipedia). На данный момент в Интернете существует огромное количество форумов, посвященных Linux. Это могут быть официальные форумы самих дистрибутивов Linux или же неофициальные, созданные любителями, чтобы помогать друг другу.

Начнем пожалуй с русскоязычных форумов.

Linuxforum.ru - наверное, самый популярный из русских форумов. Он работает уже почти три года и за это время на сайте оставлено порядка 330 тысяч сообщений и зарегистрировано почто 10 тысяч пользователей!. Этот форум является общим для таких сайтов как rus-linux.net, linuxforum.ru и linuxcenter.ru. Здесь можно найти информации буквально обо всем, касающемся Linux.

linux.org.ru - (сокращённо LOR). Одной из главных особенностей этого форума являются острые флеймы, возникающие при обсуждении практически каждой новости. Так что, если Вы являетесь фанатом какого-нибудь определенного дистрибутива (десктопа, оконного менеджера, браузера, плеера....) и хотите высказаться в его защиту - Вам определенно сюда.

lafox.net - это форум при одноименном украинском сайте. На сайте можно заказать диски дистрибутивов Linux. Удобно для жителей Украины. Что касается форума, то он тоже радует количеством постов - почти 120 тыс., и участников - 3634.

forum.opennet.ru - форум проекта OpenNet, предоставляющего информацию о Unix системах и открытых технологиях для администраторов, программистов и пользователей. На сайте можно найти много хороших статей, а в форуме - обсудить.

forum.posix.ru - форум сайта Posix.ru, созданного для пропаганды POSIX'ивизма и идей Open Source среди широких кругов прогрессивной общественности.

forum.oszone.net - вообще это общий форум, посвященный компьютеру вообще и операционным системам в частности. Для пользователей *nix систем работает ветка Linux-FreeBSD.

forum.ubuntu.ru - как видно из названия, форум посвящен самому популярному дистрибутиву - Ubuntu. Здесь зарегестрировано более 3 тыс. пользователей. Так что, думаю, новичок, установивший себе Ubuntu, без проблем сможет получить помощь на этом форуме.

slackware.pp.ru/forum/YaBB.pl - форум пользователей Slackware.

archlinux.org.ru/forum - форум пользователей ArchLinux.

Англоязычные форумы.

Linux Questions.org - Один из самых активных форумов, посвященных Linux, в мире. Количество постов и зарегистрированных посетителей просто поражает - 2.6 миллиона и 280 тысяч соответственно. Наверное здесь можно найти ВСЕ!

Ubuntu Forums - форум дистрибутива Ubuntu.


Linux Forums.org - даже не знаю что сказать. Еще один хороший Linux форум.

HowToForge.com - это сайт, который постоянно радует очень хорошими статьями, посвященными работе в GNU/Linux. А форум, собственно находится при этом сайте. Таким образом, если у Вас возникли вопросы по статьям сайта, можно всегда спросить на форуме.

SuSE Forums - форум, призванный помочь пользователям SuSE Linux.

Debian Forums - Я не смог найти официального форума Debian. Приведенный здесь является ближайшим кандидатом. Очень хороший форум пользователей Debian Linux.


BSD Forums - форум для пользователей BSDs.

Unix Forums - форум в основном ориентирован на различные юниксы - Solaris, HP-UX и AIX. Хотя есть и посты о Linux.
`
* Open Solaris Forum - Open Solaris форум.
`
Конечно, это не все форумы, посвященные операционной системе Linux. Почти каждый дистрибутив имеет свои. Поэтому, для Вас может быть полезным найти форум дистрибутива, установленного на Вашем компьютере. Однако большинство из рассмотренных здесь не относятся к какой-нибудь системе в отдельности, а охватывают все дистрибутивы. Таким образом, они будут полезны всем.

По мере расширения моего кругозора, информация о Linux форумах будет меняться. Может быть (скорей всего), я что-нибудь пропустил или (не дай Бог) какой-нибудь форум перестанет существовать.

Читать дальше...

Linux. Мониторинг системы.

Данная статья написана в основном для новичков в Linux. Большинство информации, представленной здесь, может быть найдено в страницах man. Если Вы опытный пользователь Linux - большинство из написанного здесь Вам должно быть знакомо. Так что можете спокойно переходить к другим статьям или же, если хотите проверить свои знания - можете просмотреть мельком. Но а в случае если Вы являетесь новичком в Linux, если Вам нудно читать страницы man и хочется узнать обо все этом побыстрей - эта статья для Вас.


Команда: top

Это одна из чаще всего используемых комманд раздела мониторинга системы. Команда top предоставляет информацию о запущенных процессах, включая данные об использовании процессом CPU и памяти, пользователях, запустивших процесс и их pid (Process ID), а также о времени, прошедшем с момента запуска процесса. Данные все время обновляются с определенной частотой (по умолчанию 3 сек). Изменить частоту можно нажав клавишу "s" - ввести нужное число - Enter.

Вывод команды top показан ниже:

$ top - 12:39:28 up 2:20, 1 user, load average: 0.09, 0.14, 0.09
Tasks: 131 total, 1 running, 130 sleeping, 0 stopped, 0 zombie
Cpu(s): 1.7% us, 0.5% sy, 0.0% ni, 97.5% id, 0.0% wa, 0.2% hi, 0.2% si
Mem: 1028144k total, 911324k used, 116820k free, 28604k buffers
Swap: 530104k total, 20268k used, 509836k free, 396324k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5144 root 16 0 119m 63m 6452 S 1 6.3 3:07.04 Xorg
7867 serhiy 16 0 102m 18m 13m S 1 1.9 0:01.15 konsole
6379 serhiy 15 0 162m 35m 24m S 1 3.5 0:25.17 ktorrent
3666 root 15 0 0 0 0 S 0 0.0 0:00.82 kjournald
5393 serhiy 15 0 162m 33m 18m S 0 3.3 0:13.74 stardict
7885 serhiy 16 0 10700 1300 952 R 0 0.1 0:00.49 top
1 root 16 0 2640 564 476 S 0 0.1 0:00.89 init
2 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/0
3 root 34 19 0 0 0 S 0 0.0 0:00.00 ksoftirqd/0
4 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/0
5 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/1
6 root 34 19 0 0 0 S 0 0.0 0:00.00 ksoftirqd/1
7 root RT 0 0 0 0 S 0 0.0 0:00.00 watchdog/1
8 root 10 -5 0 0 0 S 0 0.0 0:00.06 events/0
9 root 10 -5 0 0 0 S 0 0.0 0:00.00 events/1
10 root 10 -5 0 0 0 S 0 0.0 0:00.00 khelper

Вы можете модифицировать вид выводимой информации. Так, нажав "i" можно отключить вывод неработающих процессов. Повторное нажатие "i" вернет все в прежнее положение. "M" - отсортирует по количеству используемой памяти, а "P" - по использованию процессора.
Приведенные опции вводились при запущенной команде top. В дополнение к этому, существуют опции, которые можно вводить при запуске команды. Например, с помощью "u" можно задать вывод только процессов, принадлежащих определенному пользователю:
$ top -u serhiy
top - 12:56:54 up 2:37, 1 user, load average: 0.08, 0.10, 0.09
Tasks: 137 total, 1 running, 136 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.7% us, 0.2% sy, 0.0% ni, 98.8% id, 0.0% wa, 0.2% hi, 0.2% si
Mem: 1028144k total, 972308k used, 55836k free, 33260k buffers
Swap: 530104k total, 20268k used, 509836k free, 445252k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6379 serhiy 15 0 162m 35m 25m S 1 3.6 0:30.55 ktorrent
5393 serhiy 15 0 162m 33m 18m S 0 3.3 0:15.96 stardict
7867 serhiy 15 0 102m 18m 13m S 0 1.9 0:03.91 konsole
8109 serhiy 16 0 10696 1304 952 R 0 0.1 0:00.24 top
5210 serhiy 17 0 7584 1896 1188 S 0 0.2 0:00.09 startkde
5260 serhiy 16 0 20144 852 492 S 0 0.1 0:00.00 ssh-agent
5263 serhiy 16 0 10084 696 528 S 0 0.1 0:00.00 dbus-launch
5264 serhiy 17 0 8448 888 744 S 0 0.1 0:00.00 dbus-daemon
5296 serhiy 18 0 74596 5720 2120 S 0 0.6 0:00.27 kdeinit

С помощью опции "k" можно убить процесс, а "r" (renice) изменит его приоритет (колонка PR в выводе команды top).
Для того, чтобы выйти из программы, нужно нажать клавишу "q".

Для более подробной информации о системных процессах следует обратиться к псевдофайловой системе /proc. Здесь информация о процессах представлена в виде файлов.
Будьте осторожны, поскольку это не обычные файлы, а лишь текущее состояние устройства, эти файлы редактировать НЕЛЬЗЯ!

Команда: ps

'ps' отображает список запущенных процессов.

$ ps
PID TTY TIME CMD
11065 pts/2 00:00:00 bash
11082 pts/2 00:00:00 ps

По умолчанию информация дается только о процессах, ассоциированных с данным терминалом. Выводятся идентификатор процесса, идентификатор терминала, истраченное к данному моменту время ЦП и имя команды. Если нужна иная информация, следует пользоваться опциями. Следует заметить, что данная команда может работать как в стандартном виде записи опций (-опция), так и в режиме BSD (знака "-" между командой и опцией нет).

Так, чтобы просмотреть информацию о всех запущенных в системе процессах можно воспользоваться как

ps -e
ps -ef
ps -eF
ps -ely

так и

ps ax
ps axu

Обычно используется команда ps axu. Она выдает практически всю информацию о системе.

serhiy@kubuntu:~$ ps axu
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 2640 564 ? S 10:19 0:00 init [2]
root 2 0.0 0.0 0 0 ? S 10:19 0:00 [migration/0]
root 3 0.0 0.0 0 0 ? SN 10:19 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S 10:19 0:00 [watchdog/0]
................................................
Вывод команды очень большой. Поэтому я привел лишь начало. Если же нужна информация о запущенных Вами процессах - воспользуйтесь.
ps cxu
или
ps cx
В первом случае информация будет выведена в более подробном виде. Обычно данную программу запускают для того, чтобы узнать PID (первая колонка) команды, с последующим ее уничтожением с помощью команды kill -9.

Команда: free

'free' показывает информацию о памяти компьютера, включающей в себя физическую память (RAM), swap, разделяемую память и буферы, используемые ядром. Вся информация выдается в килобайтах.
$ free
total used free shared buffers cached
Mem: 1028144 1020468 7676 0 16316 379828
-/+ buffers/cache: 624324 403820
Swap: 530104 21644 508460

В строке Mem: показано использование физической памяти, в строке Swap: — использование пространства подкачки, а в строке -/+ buffers/cache: — объем физической памяти, выделенный в настоящее время для буферов системы. Команда free выводит лишь единоразово информацию о задействованной памяти. Для того, чтобы просматривать показатели каждые n секунд, нужно воспользоваться опцией -s n, где n - число в секундах. Но это может быть неудобно. Строки пробегают по экрану и человеку тяжело уловить разницу. Поэтому следует воспользоваться командой watch:
$watch free
Вы можете менять задержку между обновлениями (по умолчанию 2 сек.) с помощью параметра -n или сделать так, чтобы любые отличия результатов выделялись, указав параметр -d, как показано в следующей команде:
$watch -n 1 -d free
Команда: du

'du' используется для того, чтобы узнать размер директории
$ du
Без дополнительных опций команда du выдает список директорий, находящихся в текущей директории, и их размеры. Последняя строка показывает общий размер текущей директории. По умолчанию информация отображается в килобайтах. Во многих случаях это может быть неудобно. Поэтому воспользуемся некоторыми дополнительными опциями.
$ du -h /home/serhiy/pic/
4,0M /home/serhiy/pic/from_sky
1,1M /home/serhiy/pic/smoke
11M /home/serhiy/pic/mini_world
16M /home/serhiy/pic/

В приведенном примере видно, что папка pic в домашней директории пользователя serhiy содержит три вложенных папки, размерами 4.0, 1.1, и 11 мегабайт. Размер всей папки - 16 Мб. Опция -h задает отображение в более удобном виде.
$ du -ah

du -ah /home/serhiy/pic/
148K /home/serhiy/pic/from_sky/1.jpg
144K /home/serhiy/pic/from_sky/2.jpg
168K /home/serhiy/pic/from_sky/3.jpg
100K /home/serhiy/pic/from_sky/4.jpg
..............................

136K /home/serhiy/pic/mini_world/mini_world_84.jpg
152K /home/serhiy/pic/mini_world/mini_world_85.jpg
11M /home/serhiy/pic/mini_world
16M /home/serhiy/pic/
С помощью опции -a можно задать вывод размера каждого файла. Информация о полном размере вложенных папок также выводится.
$ du -mc /home/serhiy/pic/ | grep total
16 total
Здесь опция -m задает, чтобы размер выводился в мегабайтах, а -c добавляет дополнительную строку, показывающую полный размер директории (total). Таким образом мы можем воспользоваться командой grep, чтобы оставить лишь информацию о размере директории /home/serhiy/pic/. Это будет полезно, если директория содержит много вложенных поддиректорий и файлов, а Вам нужно знать лишь ее полный размер. Хотя это можно сделать и проще:
$ du -s /home/serhiy/pic/
16028 /home/serhiy/pic/

Если же Вам нужно узнать размер директории без входящих в нее директорий, воспользуйтесь опцией -S.
$ du -Sh /home/serhiy/pic/
4,0M /home/serhiy/pic/from_sky
1,1M /home/serhiy/pic/smoke
11M /home/serhiy/pic/mini_world
4,0K /home/serhiy/pic/

Как видно, директория pic/ содержит три поддиректории и ничего больше. Поэтому ее размер 4,0K.
Еще один пример из серии исключений:
$ du -h --exclude=*.jpg /home/serhiy/pic/
4,0K /home/serhiy/pic/from_sky
4,0K /home/serhiy/pic/smoke
4,0K /home/serhiy/pic/mini_world
16K /home/serhiy/pic/

Опция --exclude=*.jpg - исключает из отображения полной иформации о размере директории /home/serhiy/pic/ и ее поддиректории файлы, имеющие в своем названии .jpg. Поскольку в указанной директории и поддиректориях находятся лишь изображения в формате .jpg, все папки занимают 4,0K. Вместо .jpg можно вставить любую последовательность символов.
Например:
serhiy@kubuntu:~/pic/from_sky$ du -h --exclude=1?.jpg
2,8M .
serhiy@kubuntu:~/pic/from_sky$ du -h
4,0M .

В первом случае я исключил все файлы, состоящие из двух символов, первый из которых 1.

Команда: df

'df' - показывает информацию об использовании дискового пространства.
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda6 9629880 5732280 3408424 63% /
varrun 514072 112 513960 1% /var/run
varlock 514072 4 514068 1% /var/lock

Вывод команды df состоит из 6 колонок. Fylesystem - физический раздел, Mounted on - точка монтирования этого раздела, 1K-blocks - размер раздела в килобайтах, Used - сколько занято, Available - свободно, Use% - сколько занято места в процентах.
$ df -h
Как и в случае с командой du, опция -h задает вывод в удобном для человека виде. Обычно это мегабайты и гигабайты. (-m - вывести только в мегабайтах)
Команда df имеет и другие опции, но большинство пользователей ограничиваются лишь приведенными, поэтому я их рассматривать не буду. Если Вам интересно знать больше. обратитесь к man df.

Если хочется узнать лишь информацию о том, сколько места в процентах используется на заданном диске, то можно воспользоваться утилитами grep и cut.
$ df -h | grep /dev/sda8 | cut -c41-43
83%
Здесь grep из вывода команды df -h вырезает лишь строку, где встречается /dev/sda8 (на этот раздел у меня примонтирована директория /home), а cut-c41-43 обрезает лишь 41-43 символы строки (именно там находится информация о процентном использовании разделов).

Команда: who

Поскольку операционная система Linux является многопользовательской, количество пользователей компьютера может быть больше чем один. Для того чтобы узнать, кто работает за компьютером в данный момент, и предназначена команда who. Эта команда показывает, кто работает за компьютером, сколько времени прошло с момента, когда он вошел в систему, и когда он это сделал.
$ who
serhiy tty2 2007-02-04 13:50
root tty3 2007-02-04 13:50
serhiy :0 2007-02-01 10:19

С помощью этой команды можно узнать и информацию о себе:
$ whoami
serhiy

Команда: w

'w' - это собранный воедино вывод команд 'uptime', 'who' и 'ps a' для более подробной информации о системе. Для того, чтобы задать информацию для одного пользователя, а не для всех, допишите имя пользователя к команде:
w serhiy
14:05:12 up 3 days, 3:46, 1 user, load average: 0,35, 0,32, 0,33
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
serhiy :0 - Thu10 ?xdm? 9:06 0.09s /bin/sh /usr/bin/startkde

Команда: vmstat
vmstat - показывает информацию о процессах , виртуальной памяти, физических томах и активности ЦПУ . По умолчанию выдается полный список статистики с момента загрузки системы, что не очень полезно с точки зрения анализа ситуации в данный момент. Поэтому, стоит запускать vmstat с аргументом interval, указанным в секундах.

$ vmstat 5
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 21680 22248 16480 416000 0 0 99 45 166 3 3 1 95 1
0 0 21680 21872 16504 415976 0 0 0 34 1250 3087 2 1 98 0
0 0 21680 25388 16520 416436 0 0 96 11 1209 3458 3 1 95 1


(вывод может отличаться в зависимости от используемой системы)

Каждая последующая линия показывают параметры системы за предыдущие 5 секунд.
Рассмотрим поля вывода команды vmstat:

procs - число процессов, которые: r - находятся в очереди на выполнение;
b - заблокированы в ожидании ресурсов.

memory - информация о памяти: swpd - количество используемой виртуальной памяти;
free - незадействованная память; buff - количество памяти, используемой в качестве буфера, cache - в качестве кэш.

swap: si - количество свап-памяти взятой с диска, so - записанной на диск (/s).

IO: bi - количество блоков взятых с блочного устройства (жесткий диск), b0 - отправленных на блочное устройство.

System: in - количество прерываний за секунду, cs - количество контекстных переключений за секунду.

CPU: процент цикла процессора, затрачиваемый на различные режимы: us - пользователь; sy - система; id - ожидание; wa - ввод/вывод.

Команда: iostat
(входит в пакет sysstat).
iostat (input/output statistics) - без аргументов показывает краткую статистику использования процессора и дисковых операций ввода/вывода:
$ iostat
Linux 2.6.15-23-amd64-generic (kubuntu) 21.02.2007

avg-cpu: %user %nice %system %iowait %steal %idle
1,64 0,87 0,84 1,33 0,00 95,32

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
hda 0,00 0,00 0,00 152 0
sda 9,97 399,79 182,30 18796197 8570744

В первой строке представлены версия ядра системы, имя узла и текущая дата. Во второй - усредненная информация использования процессора после загрузки системы. В поле Device - данные использования дисковых устройств (hda и sda):

tps - число операций передачи данных (или операций ввода/вывода) в секунду;
Blk_read/s - число блоков (обычно 512 байт), прочитанных за секунду;
Blk_wrtn/s - число блоков, записанных за секунду;
Blk_read - общее число прочитанных блоков;
Blk_wrtn - общее число записанных блоков.

Если Вам не удобно возиться с блоками, можете воспользоваться ключами -k - для отображения в килобайтах и -m - мегабайтах.

Надеюсь, данный обзор поможет Вам быстро освоиться с работой с основными командами по мониторингу системы Linux. Конечно, здесь рассмотрены не все программы из этой области, но я надеюсь, что для новичка в Linux этого будет вполне достаточно.


Читать дальше...

среда, 7 февраля 2007 г.

Howto: Установка Beryl в Ubuntu (Kubutu) 64-bit.

Просмотрев видео-ролики о том, как красив Linux с установленным Beryl и попробовав его на ноутбуке со стандартной i386 архитектурой, захотелось запустить это украшательство и на компьютере с 64-битным процессором. На компьютере установлен Kubuntu 6.06 LTS Dapper Drake 64-bit Linux. Погуглив немного, я узнал, что поскольку в репозиториях Dapper Drake пакета Beryl нет, обычной установкой не отделаешься. Но я так просто не сдался и нашел почти то, что мне нужно - HOWTO: Build beryl from source, gnome. Правда, вместо Gnome у меня KDE, но это не суть важно - разберемся.

1) Начнем с того, что добавим источники в файл /etc/apt/sources.list.
sudo vi /etc/apt/sources.list
в самом конце списка добавляем следующее
deb http://www.beerorkid.com/compiz dapper main main-amd64
deb-src http://www.beerorkid.com/compiz dapper main main-amd64

2) Установка драйверов видеокарты.

Nvidia:
sudo aptitude update
sudo aptitude dist-upgrade
sudo aptitude install nvidia-glx



Ati: (поскольку у меня Nvidia, установку драйверов Ati я не проверял)
Устанавливаем fglx, как описано здесь.
Запускаем:
glxinfo
И смотрим вывод. Если видите direct rendering: yes - можно идти дальше.


3) Редактируем xorg.conf.

Начнем с создания копии:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_backup
Только для Nvidia:
sudo vi /etc/X11/xorg.conf
В открытом файле ищем секцию "Module". Если в этом разделе присутствуют Load "dri" и(или) Load "glcore" - комментируем их (ставим # в начале строки):
# Load "dri"
# Load "glcore"

Убедитесь что присутствует запись:
Load "glx"
Опускаемся дальше к секции "Device" и смотрим чтобы все было как указано ниже:
Section "Device"
Identifier "NVIDIA Corporation NV41.0"
Driver "nvidia"
BusID "PCI:1:0:0"
Option "RenderAccel" "true"
EndSection

Не изменяйте значение BusID, вверху приведен лишь пример, у Вас может быть другое значение. Если нет Option "RenderAccel" "true" - допишите.

(конец только Nvidia)

4) Установка xgl
sudo aptitude install xserver-xgl libgl1-mesa libglitz-glx1
Настройка запуска xgl.

Gnome:
sudo gedit /etc/gdm/gdm.conf-custom
В конец секции servers добавляем следующее:

Для Nvidia:
[servers]
0=Xgl

[server-Xgl]
name=Xgl server
command=/usr/bin/Xgl :0 -fullscreen -ac -accel glx:pbuffer -accel xv:pbuffer
flexible=true

Для Ati:
[servers]
# Override display 1 to use Xgl (DISPLAY 1 IMPORTANT FOR ATI FGLRX).
1=Xgl

[server-Xgl]
name=Xgl server
command=/usr/bin/Xgl :1 -fullscreen -ac -accel glx:pbuffer -accel xv:pbuffer
flexible=true

Только ATI:

Изменяем /etc/gdm/gdm.conf:
sudo gedit /etc/gdm/gdm.conf-custom
следующим образом
#0=Standard
1=Standard

Идем к строке 198 и изменяем GdmXserverTimeout=10 на (это очень важно!!!):
GdmXserverTimeout=50
KDE:

Nvidia:
sudo vi /etc/kde3/kdm/kdmrc
Ищем строку ServerCmd=/usr/X11R6/bin/X -br, комментируем ее и добавляем следующее:
#ServerCmd=/usr/X11R6/bin/X -br
ServerCmd=/usr/bin/Xgl -fullscreen -ac -accel xv:fbo -accel glx:pbuffer


Для Ati попытайтесь модифицировать, то что было сделано для Gnome.


5) Установка Beryl с исходников.

Начнем с того, что удалим compiz (если он установлен)
sudo aptitude remove compiz-core compiz-gnome cgwd csm
Если выдает, что не знает таких пакетов - это нормально. Не обращайте внимания.

Ну а теперь самая важная и самая тяжелая часть. Ниже будет приведен листинг. Все команды запускайте построчно, как указано там. Уделяйте внимание сообщениям об ошибках. Особенно это касается пунктов ./autogen.sh --prefix=/usr. Если видите надписи типа unmet зависимости и названия пакетов, установите указанные пакеты через sudo apt-get install пакет и запустите ./autogen.sh --prefix=/usr еще раз.

Проделываем все как здесь:
cd ~/
sudo aptitude update
sudo aptitude dist-upgrade
sudo apt-get update
sudo apt-get build-dep compiz
sudo aptitude install fakeroot libtool automake1.9 librsvg2-dev x11proto-gl-dev subversion libneon25-dev libapr0-dev libsvn0-dev
sudo update-alternatives --config automake
svn co svn://svn.beryl-project.org/beryl/tags/release-0.1.4/

ln -s ~/release-0.1.4/distro-specific-build-files/bdock/debian ~/release-0.1.4/bdock/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-core/debian ~/release-0.1.4/beryl-core/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-plugins/debian ~/release-0.1.4/beryl-plugins/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-dbus/debian ~/release-0.1.4/beryl-dbus/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-manager/debian ~/release-0.1.4/beryl-manager/
ln -s ~/release-0.1.4/distro-specific-build-files/beryl-settings/debian ~/release-0.1.4/beryl-settings/
ln -s ~/release-0.1.4/distro-specific-build-files/emerald/debian ~/release-0.1.4/emerald/
ln -s ~/release-0.1.4/distro-specific-build-files/emerald-themes/debian ~/release-0.1.4/emerald-themes/
ln -s ~/release-0.1.4/distro-specific-build-files/heliodor/debian ~/release-0.1.4/heliodor/

cd ~/release-0.1.4/beryl-core
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-core*.deb beryl-dev*.deb

cd beryl-plugins
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-plugins-data*.deb beryl-plugins*.deb

cd emerald
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i emerald*.deb

cd emerald-themes
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i emerald-themes*.deb

cd beryl-settings
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-settings*.deb

cd beryl-manager
make clean
./autogen.sh --prefix=/usr
fakeroot dpkg-buildpackage
cd ..
sudo dpkg -i beryl-manager*.deb *.deb

Если все прошло без проблем - значит, Beryl установлен.

Проблемы, которые возникли у меня.
1.
sudo dpkg -i beryl-core*.deb beryl-dev*.deb
не поставило, а потребовало библиотеки libberylsettings0*, но они были в той же папке. Поэтому поставил их, а потом уже без проблем пакеты указанные выше:

sudo dpkg -i libberylsettings0*.deb
sudo dpkg -i beryl-core*.deb beryl-dev*.deb
2.
sudo dpkg -i emerald*.deb
Выдало, что пакеты зависят от libemeraldengine0*. Фокус, проделанный выше, не прошел, так как при установке libemeraldengine0* выдало, что пакеты зависят от emerald*. Какой-то замкнутый круг. Не знаю, что нужно делать в таких случаях. Сделал по своему. Поставил emerald*, указав игнорировать зависимости от libberylsettings0* и после этого поставил без проблем libberylsettings0*:

sudo dpkg -i --ignore-depends=libberylsettings0 emerald*.deb
sudo dpkg -i libberylsettings0*.deb
Со всем остальным проблем не было.

6) Автозапуск при старте KDE (GNOME):

Для KDE:
ln -s /usr/bin/beryl-manager ~/.kde/Autostart/beryl-manager
Для Gnome:
В Control Center -> Sessions -> Startup Programs добавляем:
beryl-manager
Перегружаем иксы (Ctrl + Alt + Backspace) и с умилением смотрим на работу Beryl :).

При написании данного Howto главным образом использовался материал отсюда

http://www.ubuntuforums.org/showthread.php?t=281613
и дополнительно
http://www.linuxjournal.com/node/1000081
http://linuxforum.ru/index.php?showtopic=30208&st=0


Если у Вас возникли какие-нибудь проблемы при установке или предложение сделать все это более рационально - пишите в комментарии. С удовольствием все рассмотрю.

Читать дальше...

пятница, 2 февраля 2007 г.

Запись интернет радио в Linux.

Простой пример, показывающий, как можно записать mp3 с интернет радио:


$ mplayer http://85.214.51.87:8128 -dumpstream -dumpfile recorded_music.mp3 -vc dummy -vo null


Все, что нужно - это установить mplayer (если не установлен).
В Debian или Ubuntu:


sudo apt-get install mplayer

Затем найти адрес сайта, предоставляющего "радиовещание".
Список некоторых сайтов можно найти здесь http://www.shoutcast.com. Нужно нажать на "Tune It" --> открыть радио в xmms --> нажать Ctrl + 3 --> скопировать адрес в поле Filename.
Еще один пример. Сайт - http://polytones.ru/radio/. Кликаем на любое радио и в запущенном окне проигрывателя смотрим адрес. Вставляем в приведенную выше команду. Так, для Европа Плюс Москва - это http://stream.fluendo.com:8846.
Надеюсь, здесь проблем не возникнет.

Идея взята отсюда.

В Windows для Winamp есть специальный плагин Streamripper 1.61.27, который полученные файлы автоматически разбивает и называет именем исполнителя и песни, в итоге вы получаете обычные MP3 файлы.

Читать дальше...

понедельник, 29 января 2007 г.

Add to Search Bar.

Интересно, а каким поисковиком и браузером Вы пользуетесь? Что касается меня, то это Google и Firefox, соответственно. Тем более, учитывая то, что Google Search Bar встроен в Firefox. В случае, если я захочу воспользоваться другим поисковиком, можно добавить и его. Нужно только нажать мышкой на Manage Search Engines -> Get more search engines. Зайдя на указанную страничку, выбрать расширения для поиска на интересующем нас сайте. Так я добавил поиск в wikipedia.ru. Ну а как быть с сайтами, для которых данные расширения недоступны? Существует два выхода из этой ситуации. Первый - написать его самому. Для этого нужно зайти в папку /usr/share/firefox/searchplugins и посмотреть примеры уже готовых решений и после этого подредактировать под свои нужды. Второй - воспользоваться специальным расширением - Add to Search Bar.


После установки расширения, идем на интересующий нас сайт (например linuxforum.ru), ищем форму для поиска, жмем правой кнопкой мыши в поле поиска и выбираем "Add to Search Bar..."



Следующий пункт должен появиться в меню "search box" - Linuxforum.ru:



Нажав на нем правой кнопкой мыши (или без мыши - CTRL + K и дальше CTRL + стрелка вниз / CTRL + стрелка вверх), задайте слово для поиска. Поиск будет осуществлен на нужном Вам сайте.

Удачного поиска!

Читать дальше...

Установка .rpm в Debian(Ubuntu).

Представьте себе, что нужная Вам программа доступна только в виде .rpm пакета, а вы используете Debian или Ubuntu. Как быть в таком случае? Можно поискать исходники и скачать, но для новичка это может быть затруднительно. О том, как можно решить данную проблему, не прибегая к установке или созданию .deb пакета из исходников, я и хочу сегодня написать.

Alien - это программа, которая позволяет конвертирование между Redhat rpm, Debian deb, Stampede slp, Slackware tgz и Solaris pkg форматами. В нашем случае мы воспользуемся ею для конвертирования rpm в deb.

Стоит отметить, что эта программа еще (а может и будет всегда) находится в стадии разработки. Поэтому ее нельзя использовать для замены важных системных файлов, как sysvinit, init, libc и других.

Теперь обратимся к самой программе. Во-первых, установим ее:

$ sudo apt-get install alien

Рассмотрим некоторые опции:

file [...] - задать список файлов пакета для конвертирования.
-d, ---to-deb - конвертировать в deb (эта опция установлена по умолчанию).
-r, ---to-rpm - конвертировать в rpm
-t, ---to-tgz - сделать tgz пакет
---to-slp - сделать slp пакет
-p, ---to-pkg - сделать Solaris pkg пакет
-i, ---install - автоматически установить все сгенерированные пакеты и после этого удалить сам файл пакета
-h, ---help - показать помощь
За более подробным списком опций обратитесь к man alien.

Примеры:


alien --to-deb package.rpm

Конвертирует package.rpm в package.deb

alien --to-rpm package.deb

Конвертирует package.deb в package.rpm

alien -i package.rpm

Конвертирует package.rpm в package.deb (опция --to-deb не указана, так как она стоит по умолчанию) и устанавливает сгенерированный .deb пакет

Читать дальше...

воскресенье, 28 января 2007 г.

Установка Debian из под Windows.

Debian обзавелся новым Win32 установщиком. Данная программа предназначена в первую очередь для тех, кто не знает как (не хочет) скачивать Debian netboot installer, записывать образ на CD и устанавливать с него.

Установка данным методом сводится к тому, что пользователь запускает установщик из-под Windows. Программа скачивает на диск netboot-installer. Далее программа предлагает выбрать метод установки - графический или текстовый режимы. После этого нужно перезагрузить компьютер. Далее загружается Grub и предлагает Вам выбрать между загрузкой Windows и установкой Debian. На этом функции данной программы закончены, дальше установка ничем не отличается от стандартного метода установки Debian через Интернет.
Загрузчик можно скачать по адресу - goodbye-microsoft.com (прикольное название).
Посмотреть скриншоты можно здесь.

Стоит также отметить, что идея данного проекта была заимствована с аналогичного сервиса для Ubuntu - Installation Ubuntu From Windows.

Читать дальше...

четверг, 25 января 2007 г.

Работаем с FFmpeg.

В предыдущей статье - Как конвертировать .flv в .mpg (.avi) - я описал как конвертировать видео с .flv в .mpg (.avi). А сегодня хочу поведать о том:

как можно извлечь аудио из видео-файла;
как создать thumbnail c файла .flv;
как создать видео файл из набора изображений в формате JPG.

Все это я буду делать с помощью утилиты FFmpeg. Поэтому для начала расскажу немного о ней.


FFmpeg - это набор программ с помощью которых можно записывать, перекодировать и проигрывать аудио и видео файлы. Данные программы используют библиотеку libavcodec. FFmpeg изначально разрабатывался под Linux, но на данный момент эту программу можно использовать из-под большинства операционных систем, включая Windows. Стоит также заметить, что большинство разработчиков FFmpeg также участвуют и в разработке Mplayer, поэтому эти два проекта тесно связаны. Следовательно саму программу и документацию к ней можно найти на сервере Mplayer.

В случае Debian (Ubuntu) программу устанавливаем стандартным способом:
$sudo apt-get install ffmpeg
На самом деле это не одна программа, а пакет, состоящий из различных утилит:

ffmpeg - это утилита позволяющая конвертировать видео файлы в различные форматы. Также она позволяет захватывать и кодировать видео с TV-карт в режиме реального времени.

ffserver - это HTTP (RTSP is being developed) мультимедиа сервер для телевещания
ffplay - медиаплеер.
libavcodec, libavformat, libavutil, libpostproc, libswscale - различные библиотеки

Рассмотрим некоторые полезные примеры применения ffmpeg:

Вытягиваем аудио с видео файла:

Не буду сильно отклонятся от темы предыдущего поста, поэтому экспериментировать буду с файлами .flv.
В комментариях к предыдущему посту были упомянуты два расширения для Firefox, с помощью которых можно скачать видео файл в формате .flv, например с YouTube, а именно - UnPlug и Fast Video Download. Будем считать, что с первой половиной задания мы справились - файл скачали. Теперь извлекаем из него аудио:
ffmpeg -i video.flv -f mp3 -vn -acodec copy audio.mp3
где,
-i - задает файл, из которого будем извлекать аудио.
-f - задает формат аудио файла.
-vn - отключает запись видео.
-acodec - задает аудио кодек.

Полученный файл можно прослушать в ffplay:
$ffplay audio.mp3
Также можно перекодировать видео с .flv в .avi и после этого извлечь аудио с .avi c помощью mplayer:
mplayer -dumpaudio video.avi
(Извлечь напрямую с .flv у меня не получилось)

Еще можно воспользоваться услугами специально созданного для этого сайта http://flv2mp3.com/. Загружаем на сайт нужный файл или указываем его URL и ждем когда нам на E-mail придет аудио с этого файла.


Создаем thumbnail c видео-файла:

ffmpeg -i video.flv -an -ss 00:00:02 -an -vframes 1 -y %d.jpg
где
-an - запрещает перекодировку
-ss - время. В нашем случае это будет кадр на второй секунде (избегаем снимка черного экрана)
-vframes - устанавливает количество кадров
-y - переписать полученный файл

В результате выполнения данной программы, появится файл 1.jpg, представляющий собой кадр второй секунды видео.

Также, можно создать thumbnail и в PNG-формате:
ffmpeg -i video.flv -vcodec png -vframes 1 -an -f rawvideo  png.png
где
-vcodec - выставить видео кодек.


Создаем видео с набора JPG файлов:

Заходим в папку, в которой находятся изображения в формате JPG и запускаем следующую команду:
ffmpeg -r 5 -b 1800 -i %03d.jpg video.avi
(предполагается что названия файлов имеют следующий вид - 001.jpg, 002.jpg)

-r - задает количество кадров в секунду
-b - устанавливает видеобитрейт в килобитах в секунду (по умолчанию 200 кб/с)

Полученный файл просматриваем с помощью ffplay:
$ ffplay video.avi
Таким образом, на основе нескольких примеров я показал что можно сделать с помощью программы FFmpeg. Естественно, это лишь малая часть того, что может делать данная утилита. Для более подробной информации обратитесь к man ffmpeg или на сайте разработчика.

Используемые источники:
1.Making movies from image files using ffmpeg/mencoder.
2.Using ffmpeg to create jpg thumbnails from flv files
3. copy-mode extract of audio from youtube flv video

Читать дальше...

вторник, 23 января 2007 г.

Как конвертировать .flv в .mpg (.avi).

Вы наверное замечали, что самый популярный видео-сервис YouTube предоставляет видеофайлы в специальном Flash-формате - .flv. При попытке скачать такой ролик с YouTube с помощью плагина к Firefox VideoDownloader, последний предложил заодно скачать и FLV-Player для просмотра данного видео. К совету я не прислушался - хватит с меня уже плееров. Решил пойти другим путем. А именно - перекодировать с .flv в .mpg (.avi). Но не тут то было, VideoDownloader ролик так и не скачал. Таким образом, имея лишь ссылку на понравившееся мне видео и желание его скачать, обратился к Google. И нашел.
Программа называется GenTube. На самом деле это обычный скрипт который скачивает и перекодирует видео-файл с формата .flv в .mpg.




Для нормальной работы скрипта нужны следующие программы:
Kdialog, ffmpeg, player of mpg ( mplayer), wget. Тут вроде понятно. Kdialog осуществляет диалог скрипта с пользователем, wget - загружает, ffmpeg - перекодирует и mplayer - проигрывает.
На сайте разработчика можно найти различные версии скрипта и на разных языках. Я остановился на этой - (скачать GenTube-1.0-Jan.tar.gz ).

Работа с данной программой:

Распаковываем скачанный архив и заходим в созданную директорию:


$ tar xzvf GenTube-1.0-Jan.tar.gz
$ cd GenTube-1.0-Jan/


Просмотрев файл README (он, оказывается, на испанском) и описания на сайте - запускаем:


$ ./gentube.sh


Скрипт запускает Kdialog, где нужно выбрать сначала язык интерфейса (English), а потом - Download Video



и ввести URL видео-ролика с YouTube. Скрипт сам запустит, скачает и перекодирует видео. После этого в Kdialog можно нажать Play video и просмотреть ролик в формате .mpg.
Довольно легко и удобно!

В процессе поиска столкнулся с еще некоторыми методами.
1. Скачать видео-ролик в формате .flv и перекодировать с помощью утилиты mencoder:

mencoder input.flv -ofps 15 -vf scale=300:-2 -oac lavc -ovc lavc -lavcopts vcode c=msmpeg4v2:acodec=mp3:abitrate=64 -o output.avi

2. Скачать видео-ролик в формате .flv и перекодировать с помощью утилиты ffmpeg:

ffmpeg -i videotoconvert.flv -ab 56 -ar 22050 -b 500 -s 320x240 output.mpg

(Источник)
3. Попробовать скрипты, написанные на Perl или Bash с сайта bashscripts.org.

Все эти три метода я не проверял по двум причинам:
а. Задача была выполнена с помощью GenTube;
b. Я не смог загрузить файл .flv с YouTube вручную :(.
Вот что выдает wget:

Resolving www.youtube.com...
failed: Name or service not known.

Но GenTube также использует wget и вроде бы без дополнительных ключей. В общем, если Вы сможете загрузить файл с YouTube, то перекодировать можно любым из указанных выше способов.

Читать дальше...

Gaybuntu&Lesbian

Бывает и такое:

Lesbian
Lesbian is a free operating system (OS) for your computer. An operating system is the set of basic programs and utilities that make your computer run. Lesbian uses the Linux kernel (the core of an operating system), but most of the basic OS tools come from the GNU project; hence the name GNU/Linux.

Gaybuntu
Gaybuntu is not about segregation, str8, bi & gay are all welcome here- just leave your attitude at the door! Gaybuntu is an online community with three main objectives:

  1. Provide an online resource with a goal to teach fellow gays about the wonders of the ubuntu operating system!
  2. To provide a place for the ubuntu gay community to come and chat, gossip and bitch!
  3. A place to launch our own camp-mods, swap wallpapers etc :)
С другой стороны, а почему бы и не быть...

Читать дальше...