пятница, 30 октября 2009 г.

Linux, конвертирование из ape в ogg

Скачал музыку, она оказалась в ape-формате. Более того, одним файлом с cue в комплекте. Ужас.
Итак, надо разбить на отдельные файлы и сконвертировать... ну, например, в ogg

Для счастья нам понадобятся:
mac, lame, mp3splt, oggenc (входит в vorbis-tools), cuetools, shntool
Это я до кучи всё что можно написал, хотя тот же lame как бы не нужен тут, я думаю =)

Самое интересное mac. В репозиториях дебиана я такой пакет не нашёл. Однако, нашёл ссылку на сторонний:

wget http://members.iinet.net.au/~aidanjm/mac-3.99-u4_b3-1_i386.deb
sudo dpkg -i mac-3.99-u4_b3-1_i386.deb

Ставим и радуемся =)

Далее надо:

а) сконвертировать ape во flac, разбитый на отдельные файлы. Это можно сделать командой:

cuebreakpoints *.cue | shnsplit -a track -o flac *.ape

б) сконвертировать *.flac в *.ogg, что удобно было бы сделать через простенький скрипт:

#!/bin/sh
find -iname '*.flac' | while read fname; do
oggenc -b 256 -o $fname.ogg $fname;
done

...где "-b 256" это битрейт; Ну, тут смотрите man и сами разбирайтесь что к чему =)

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

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

Linux, поиск и переименование файлов

Вообще, вот ответ, который мне в своё время подсказали. Но код недавно снова понадобился для другого скрипта. Так что дабы не забыть и 100 раз не искать по инету - напишу ссылку сюда. Ну и, до кучи, на "правах рекламы", сам код:

find -iname '*.jpg' | while read i; do mv "$i" "$(dirname "$i")/cover.jpg"; done

Суть проста: находит все файлы '*.jpg' в каталоге и даже его подкаталогах (если не ошибаюсь) и переименовывает их в 'cover.jpg'.
(Только вот где папка поиска? - она же должна быть сразу после слова find? Надо разобраться)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

Авторские права на код принадлежат diesel.

воскресенье, 25 октября 2009 г.

Linux, dictd-словари для Gnome

Я уже писал, как добавить En-Ru словарь в Гнома. Делалось это очень просто, через aptitude.

Однако, можно добавлять и руками, главное найти в интернете подходящие словари. Благодаря /dev/random с ЛинуксФорума я нашёл это рыбное место ^_^

Итак, словари можно скачать здесь (каждый словарь - 2 файла):
http://dict.xdsl.by/dicts/

Дальше нужно скопировать их в папку:
/usr/share/dictd/

Наконец, отредактировать файл:
/var/lib/dictd/db.list

Добавив туда примерно такой кусок кода:

database ozhegov
{
data /usr/share/dictd/ozhegov.dict.dz
index /usr/share/dictd/ozhegov.index
}

Всё, готово, можно перезапускать /etc/init.d/dictd

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

За ссылку на список словарей спасибо /dev/random.

воскресенье, 23 августа 2009 г.

Linux, Восстанавливаем загрузчик

Итак, допустим вы поставили Windows. Она перезаписала вам ваш линуксовый загрузчик (GRUB\LILO) и Линукс не грузится. Что делать?

Можно, конечно, переустановить Линукс - хороший путь для новичков. Понятный :-D
А можно просто переустановить загрузчик, что гораздо правильнее.

(замечу, что самый правильный путь - вообще не давать Windows устанавливать свой загрузчик; как это сделать подскажет Google)

На самом деле всё просто. Достаточно иметь LiveCD любого Linux'а и дорваться в нём до консоли из-под рута. После чего сделать следующие шаги:

а) Проверить где там живёт Линукс командой:
df -h

предположим, что он монтируется в /media/linux с раздела /dev/sda5

* если нигде не живёт - примонитровать руками :)

б) Примонтировать в каталог с Линуксом ваши устройства:
mount -o bind /dev/ /media/linux/dev/

в) Сделать chroot на эту папку:
chroot /media/linux/

г) Собственно, запустить процедуру восстановления

Для GRUB'a:
grub-install /dev/hda
(возможно sda?)

Для LILO (а вот это не знаю - вычитал в инете, не пробовал сам):
/sbin/lilo

Готово =)

Всякие вариации этой процедуры можно прочесть тут.

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

суббота, 22 августа 2009 г.

Linux, Настройка DirectX под wine

Скажу сразу - у меня так и не заработало :(
Как сказал yaleks с linuxforum: "D3D нормально работает только с драйверами nVidia". Не знаю - прав он или нет, но у меня на встроенной Intel GMA 950 явные проблемы с Direct3D.

Хочу похвалиться - моё руководство, наверное, одно из полных в интернете =D
Ну, это я для виду, конечно. На самом деле тут фактически текст любого стандартного руководства установки DirectX в wine, но с парой моих замечаний.
Руководств в интернете много, в том числе и на blogspot.com, так что не буду цитировать что откуда взял - надеюсь они GNU GPL ^_^

Итак, поехали.

Способ 1, Простой
Подсказал yaleks с linuxforum. Заключается он в общем-то в двух командах:

wget http://www.kegel.com/wine/winetricks
sh winetricks d3dx9

Первая - скачивает на ваш компьютер свежую версию файла winetricks. Вторая запускает его с параметром установки DirectX. Можно запустить без параметра - тогда вам будет список приложений на выбор. Кроме d3dx9 советую ещё выбрать Gecko.

* для работы скрипта нужны такие утилиты как unzip и ещё парочка - при запуске скрипта он вам напишет об отсутствующих

Вот и всё - теперь осталось подождать, пока скрипт скачает свежий DirectX и установит его. А дальше проверяйте на работоспособность в играх :)

Способ 2, Ручками, ручками, ручками...
Ну тут всё понятно. Когда автоматика подводит - переходим в ручной режим управления :)
Все команды выполняются от имени пользователя, который будет работать с wine. Никаких sudo и прочих консолей из под root'a.

а) Для надёжности часто рекомендуют удалить все ваши текущие настройки wine. Что ж - давайте сделаем это:
rm -dr ~/.wine

б) Запустите из консоли WineConfigurator:
winecfg
Закройте его :)

* если у вас проблемы со шрифтами не забудьте скопировать их из "/windows/fonts" вашей Windows в папку "~/.wine/drive_c/windows/fonts", а лучше в "/usr/share/wine/fonts"

в) Заходим в "~/.wine/drive_c/windows/system32"
Туда, во-первых, копируем из папки Windows два файла:
mscoree.dll и streamci.dll
Во-вторых, удаляем оттуда такие файлы:
d3d8.dll d3d9.dll ddraw.dll dsound.dll dsound.vxd quartz.dll dxdiagn.dll

г) Снова запустите из консоли WineConfigurator:
winecfg
Откройте вкладку "Библиотеки" (Librares). В списке найдите (впишите) файл d3d8 и нажмите "Добавить". После чего выделите файл в списке и нажмите редактировать. В открывшемся окне выберите "Сторонняя (Windows)" (native).

После чего вы должны проделать это с этими библиотеками:
d3d9, d3dim, d3drm, d3dx8, d3dxof, dciman32, ddrawex, devenum, dinput, dinput8, dmband, dmcompos, dmime, dmloader, dmscript, dmstyle, dmsynth, dmusic, dplay, dplayx, dpnaddr, dpnet, dpnhpast, dswave, dxdiagn, mscoree, quartz и streamci

Страшно? :)
Тогда можно попробовать обойтись без этой ручной работы. Закройте конфигуратор. Откройте файл:
~/.wine/user.reg
И в конец файла добавьте такой кусок:

[Software\\Wine\\DllOverrides] 1196330736
"d3d8"="native"
"d3d9"="native"
"d3dim"="native"
"d3dx8"="native"
"d3dxof"="native"
"dciman32"="native"
"ddrawex"="native"
"devenum"="native"
"dinput"="native"
"dinput8"="native"
"dmband"="native"
"dmcompos"="native"
"dmime"="native"
"dmloader"="native"
"dmscript"="native"
"dmstyle"="native"
"dmsynth"="native"
"dmusic"="native"
"dplay"="native"
"dplayx"="native"
"dpnaddr"="native"
"dpnet"="native"
"dpnhpast"="native"
"dswave"="native"
"dxdiagn"="native"
"mscoree"="native"
"quartz"="native"
"streamci"="native"

д) Снова запустите из консоли WineConfigurator (если добавляли список через файл user.reg):
winecfg

Запустите установщик DirectX. Внимание! Он должен лишь распаковать файлы DirectX в нужную папку для последующей установки. Т.е. файл "directx_***200*_redist.exe".

Теперь в конфигураторе wine на вкладке "Приложения" выберите файл DXSETUP.exe из папки, в которую вы распаковали. И укажите внизу в качестве системы Windows2000.

е) Далее, собственно, надо запустить установщик DirectX из консоли:
wine DXSETUP.exe

Но! Тут у многих возникает ошибка - вы нажимаете Установить, Далее и установщик пишет что-то типа "Не могу найти файл mscorees.dll, переустановите framework". Файла такого, к слову, в Windows не существует вовсе.
Решается это проблема запуском файла DXSETUP.exe из консоли вот таким образом:
WINEDLLOVERRIDES=mscoree="" wine dxsetup.exe

Так что если у кого появилась ошибка - переустановите ещё раз.

ж) Снова запустите из консоли WineConfigurator:
winecfg

Снова перейдите на вкладку библиотеки и выставьте вот этим пяти файлам статус "Встроенная (Wine)" (builtin):
d3d8, d3d9, ddrawex, dinput, dinput8

з) Собственно всё. Если всё встало правильно - у вас должен появиться файл
~/.wine/drive_c/windows/system32/dxdiag.exe
Запустите его из консоли. И попробуйте пройти тесты на DirectDraw и Direct3D.

Ещё диагностика DirectX у многих пишет нет файла "ddrawex.dll". Скачать его можно отсюда: www.dlldump.com
Поместить нужно сюда:
~/.wine/drive_c/windows/system32/

Разные советы:
а) Запускать игры лучше всего с "диска С:". Т.е. из вашей папки "~/.wine/drive_c".
Поэтому если вы хотите запустить уже установленную игру на ваш NTFS-диск, надо примонтировать каталог игр на NTFS-диске в папку wine, такой командой:
mount -o bind /games/on/ntfs/disk ~/.wine/drive_c/Games

б) DaemonTools'a в Линуксе наверное нет (без понятия), но если вам надо виртуальный CD - зайдите в winecfg, там в раздел Дисков и создайте новый диск. В расширенных свойствах укажите тип CD-ROM и выберите любую папку, например "/media/virtual-cd". После чего останется примонтировать в неё ваш iso-образ с игрой:
mount -t iso9660 /your/cd/image.iso /media/virtual-cd -o loop


Если что-то так и не получилось или что-то не работает - не пишите мне в комментариях. Обратитесь на linuxforum.ru - вам там наверняка помогут ;)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

За совет по быстрой установке спасибо yaleks.

пятница, 14 августа 2009 г.

Linux, Настройка словаря в Gnome

Так, чтобы не забыть.

Чтобы настроить в Гноме словарь, надо поставить "dictd", а потом "mueller7-dict" (en->ru).

После чего создать словарь, в котором в качестве адреса указать 127.0.0.1 (порт можно любой, наверное).

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

Linux, Добавляем индикатор-флажок раскладки клавиатуры в Gnome

Как добавить индикатор раскладки в Gnome? Очень просто!

Сам индикатор путём: правой кнопки на панели задач, там "Добавить на панель", выбрать "Индикатор раскладки".

А вот чтобы было флажками - надо в папку "~/.icons/flags" положить картинки: ru.svg & us.svg (ну или какие у вас там раскладки).

Картинки, к примеру, можно взять в Википедии:
Flag_of_Russia.svg
Flag_of_the_United_States.svg

Наконец, выполнить команду:
gconftool-2 --type bool --set \
/desktop/gnome/peripherals/keyboard/indicator/showFlags true

Решение нашёл тут.

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

воскресенье, 19 июля 2009 г.

Linux. Конвертирование с помощью lame

Понадобилось сконвертировать .wav в .mp3
Делается просто. Ставится пакет "lame", пишется в командной строке "lame file.wav new.mp3" и получается сконвертированный файл.

А вот целую кучу файлов переименовать так не выйдет с помощью всяких "lame *.wav *.mp3".
Нашел в интернете простой скрипт. Вот он (в моей редакции):

#!/bin/bash
for file in *.wav
do
MP3=`basename "$file" ".wav"`".mp3"
#Converting to mp3
`lame -b 256 "$file" "$MP3"`
done
exit 0

P.S.: потом еще понадобился скрипт массового перевода имён файлов в нижний регистр (имена с пробелами). Кучу всяких скриптов попробовал - ничего не вышло. Если у кого есть рабочий - киньте ссылку в комментарий или напишите скрипт там же.

Если надо сконвертировать из flac в mp3, тогда можно воспользоваться такой составной командой (нашёл тут):
for file in *.flac; do $(flac -cd "$file" | lame -h - "${file%.flac}.mp3"); done

Кстати, тут можно указать директорию вывода таким способом:
for file in *.flac; do $(flac -cd "$file" | lame -h - /your/directory/"${file%.flac}.mp3"); done

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

суббота, 18 июля 2009 г.

Linux. Разделяем большие файлы с .cue

Знаете как разделить ваш огромный flac\mp3 файл на кучку маленьких по композициям, если есть .cue?
Очень просто.

Для этого вам понадобятся пакеты:
cuetools mp3splt shntool

А дальше надо в консоли перейти в папку с .cue файлом и в зависимости от расширения выполнить одну из команд:

*.ape
cuebreakpoints *.cue | shnsplit -a track -o flac *.ape

*.flac
cuebreakpoints *.cue | shnsplit -a track -o flac *.flac

*.mp3
mp3splt -no "@n @p - @t (split)" -c *.cue *.mp3

*.ogg
mp3splt -no "@n @p - @t (split)" -c *.cue *.ogg

*.wav
cuebreakpoints *.cue | shnsplit -a track -o flac *.wav

*.wv
cuebreakpoints *.cue | shnsplit -a track -o flac *.wv

Придумал не я, вычитал тут =)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

среда, 15 июля 2009 г.

Linux. Установка kqemu в Debian

Поставил себе Гном в Дебиане. Ткнулся в VirtualBox и получил в ответ необходимость заиметь qt. Решил да ну их нафиг и поставил qemu. Всё прекрасно, но kqemu после установки пакета kqemu-common (иль как его там) так и не появилась в системе.

Вот что надо было сделать:

#apt-get install module-assistant
#module-assistant prepare
#module-assistant auto-install kqemu
#vim /etc/udev/rules.d/60-kqemu.rules
в него пишем
KERNEL=='kqemu', NAME='%k', GROUP='kqemu', MODE='0660'
в конце оставляем пустую строку.
#vim /etc/modprobe.d/kqemu
пишем
options kqemu major=0
хотя эта строка обычно генерится сама
#addgroup --system kqemu
#adduser ваш_юзер kqemu
#/etc/init.d/udev reload
#update-modules
#modprobe kqemu
затем пишем
#vim /etc/modules
дописываем строку
kqemu
#chmod 777 /dev/kqemu

Это решение подсказал AlexFilth вот тут.

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

четверг, 30 апреля 2009 г.

Linux. Slax, еще раз про mount

Активно использую Slax.
Возникла проблема - надо примонтировать по сети каталог, в котором, конечно же, есть русские файлы/папки.

Решил по простому:
mount -t cifs //192.168.0.1/Data /mnt/Data -o user=guest,password=mypass

Примонтировал. Русский язык отображался мягко говоря криво. Потому что он все-таки отображался, но в каждом слове было много лишних буков. Ужас... Читать короче не возможно.

Начал эксперементировать с nls, charset - ничего не помогло в итоге: nls=utf8, iosharset=ru_RU.KOI8-R и т.д.

Нашел где хранятся кодировки:
/usr/share/i18n/locales/

Пробовал примонтировать с iocharset и названием кодировки - не помогло. Потом нашел еще одну папку:
/usr/share/X11/locale/

Попробовал оттуда название iso8859-5 и... о, чудо - свершилось, оно примонтировалось =)

Итого команда:
mount -t cifs //192.168.0.1/Data /mnt/Data -o user=guest,password=mypass,iocharset=iso8859-5

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

воскресенье, 19 апреля 2009 г.

Linux. KDE раскладка переключения языка ввода текста

Вот так вот заумно - раскладка переключения ввода текста! =)

Суть в чем. Есть проблема, когда язык не переключается в KDE.

1) Решение нашел тут.

В кратце суть такова.
Есть файл /home/user/.kde/share/config/kdeglobals
В нём есть строка:
Switch to Next Keyboard Layout=

Так вот в конце надо прописать нужные кнопки переключения (по умолчанию вообше стоит Ctrl+Alt+K!). Например, так:
Switch to Next Keyboard Layout=Shift+Alt_L;Shift+Alt_R

После чего сохранить и перезапустить KDE (или комп), либо как-то заставить КДЕ перечитать настройки в текущей сессии.

2) А вот еще вариант, взятый с linuxforum'a.
Заключается он в том, чтобы подправить файл /etc/X11/xorg.conf так:
Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us,ru(winkeys)"
Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll,compose:rwin"
EndSection

Сам не пробовал, без понятия - работает он или нет =)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

пятница, 6 марта 2009 г.

Linux, Настройка сети через консоль

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

Появился интересный момент - настройка сети.
Вообще, всегда делал это через конфигураторы графические там, или в /etc/networks гвоздями прибивал настройки.
А вот тут (в LiveCD) надо каждый раз заново делать, да еще не всегда можно файлы сменить, да и конфигураторов может не быть.
И что делать?

Да ничего, как выяснилось - ввести 2 команды :)

1) Поднимаем нужный интерфейс (к примеру, eth0) с нужными адресом и сетевой маской:
ifconfig eth0 address 192.168.0.5 netmask 255.255.255.0 up

2) Добавляем шлюз (gateway):
route add default gw 192.168.0.1
(подразумевается, что 192.168.0.1 это адрес шлюза)

3) Ну и осталось добавить DNS. А вот как - фиг его знает. Кто знает какой командой это сделать - напишите в комментарии.
А вообще, эксперимента ради, стоит найти файл /etc/resolv.conf и отредактировать его, вписав в него DNS адрес(а) в конце. Причём можно попробовать вписать просто адрес. А можно вписать такую строку (так в KDE4.2 SuSeLiveCD):
nameserver *IP*
где вместо *IP* подставить имя DNS-сервера, конечно =)

4) Для счастливых обладателей ip посвящается.
Если у вас нет ifconfig и route, а есть ip (например как в KDE4.2 LiveCD), то тогда делать надо так.

4.1) ip address add dev eth0 192.168.0.1/24 up
где ip надо обязательно вводить с маской именно в этом формате; это мы получаем настройки eth0, как нетрудно догадаться
4.2) ip route add default via 192.168.0.2
ну и эта задает шлюз, причем без поднятого и настроенного eth0 не пашет, что в принципе, логично =)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

Linux, Сетевые маски

Вротмненоги!
Кажется я более менее разобрался в сетевых масках. Осталось понять с чем их едят =)

Поэтому сейчас вас ожидает курс молодого бойца по предмету "Сетевые маски" для тех, кто еще не понял как их высчитывать.
Многабуков - запаситесь чаем ;)

Значит сетевая маска (netmask) это такая штука, которая позволяет разделить сеть на подсети для более эффективного их использования.

Начнем с простой и популярной маски для сети класса С:
Сеть \ Маска
192.168.0.0
255.255.255.0

Итак, это сеть компов с адресами от 192.168.0.0 до 192.168.0.255, как несложно догадаться. Сеть, в которой 192.168.0.0 это адрес сети (network), а 192.168.0.255 широковещательный адрес (broadcast). Пример простой, повсеместно использующийся, потому всем понятный.

Усложним задачу:
Сеть \ Маска
192.168.0.0
255.255.255.128

Ага! А вот это уже ДВЕ подсети:
от 192.168.0.0 (network1) до 192.168.0.127 (broadcast1) первая,
и от 192.168.0.128 (network2) до 192.168.0.255 (broadcast2) вторая.

При этом адреса сети и широковещательный - зарезервированы и не подлежат использованию.

Еще усложним задачу:
Сеть \ Маска
192.168.0.0
255.255.255.192

Это четыре подсети:
от 192.168.0.0 (network1) до 192.168.0.63 (broadcast1) первая,
от 192.168.0.64 (network2) до 192.168.0.127 (broadcast2) вторая.
от 192.168.0.128 (network3) до 192.168.0.191 (broadcast3) третья,
и от 192.168.0.192 (network4) до 192.168.0.255 (broadcast4) четвертая.

Как так получается и как узнать кол-во подсетей по маске? Очень просто - надо отнять размер маски от 256 и вы получите размер одной подсети (кол-во подсетей при этом надо считать в голове).

Маска \ размер подсети:
255.255.255.0 -- 256-0 = 256 компов
255.255.255.128 -- 256-128 = 128 компов
255.255.255.192 -- 256-192 = 64 компа
255.255.255.224 -- 256-224 = 32 компов
255.255.255.240 -- 256-240 = 16 компов
255.255.255.248 -- 256-248 = 8 компов
255.255.255.252 -- 256-252 = 4 компа
255.255.255.254 -- 256-254 = 2 компа
255.255.255.255 -- 256-255 = 1 комп
(вроде нигде не ошибся =/)

Маска, как видите, меньше 128 не бывает, потому что кол-во подсетей должно быть кратным 256. Т.е. маска 192.168.0.64 обозначала бы 192 компа, а 256 ровно на 192 че-то как-то не делится :)

Запишем те же маски в том же порядке, но в виде двоичной записи:
255.255.255.0 -- 11111111.11111111.11111111.00000000
255.255.255.128 -- 11111111.11111111.11111111.10000000
255.255.255.192 -- 11111111.11111111.11111111.11000000
255.255.255.224 -- 11111111.11111111.11111111.11100000
255.255.255.240 -- 11111111.11111111.11111111.11110000
255.255.255.248 -- 11111111.11111111.11111111.11111000
255.255.255.252 -- 11111111.11111111.11111111.11111100
255.255.255.254 -- 11111111.11111111.11111111.11111110
255.255.255.255 -- 11111111.11111111.11111111.11111111

Видали фишку? Единички прибавляются по одной слева-направо. А теперь самое интересное, что будет если их посчитать:
255.255.255.0 -- 24
255.255.255.128 -- 25
255.255.255.192 -- 26
255.255.255.224 -- 27
255.255.255.240 -- 28
255.255.255.248 -- 29
255.255.255.252 -- 30
255.255.255.254 -- 31
255.255.255.255 -- 32

Получатся числа, которые часто можно встретить в записях адресов. И значат эти числа простую вещь - кол-во единичек слева направо в маске.
Т.е. зная это число и умея преобразовывать в уме двоичные записи в десятичные - можно вычислить маску. Вот примеры:
8 -- 255.0.0.0
13 -- 255.248.0.0
15 -- 255.254.0.0
18 -- 255.255.192.0

т.е. самый первый пример можно записать как, сеть \ маска:
192.168.0.0 \ 24

где 24 это: 11111111.11111111.11111111.00000000 или 255.255.255.0

Вот такая арифметика ^_^

Ах, да, вот два нюанса:

1) Такие маски как 255.255.192.128 или 255.128.224.0 не допускаются. Т.е. если какое-то число в маске не равно 255., то все остальные числа в маске за ним должны быть равны 0. Т.е. касательно этих двух примеров возможны лишь маски: 255.255.192.0 и 255.128.0.0 соответственно

2) Использовать маску 255.255.255.254 смысла нет, так как это 2 компа, и оба адреса зарезервированы, один под сеть, второй как широковещательный. По крайней мере я так понял

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

пятница, 13 февраля 2009 г.

Linux. Ставим SQL, phpmyadmin, форумы, блоги

Так. В этот раз кратко. Подробно - в бесчисленных мануалах на просторах интернета :)

Значит сначала про установку MySQL (тут и далее все действия как обычно происходят в Debian).

Установка проста как два пальца об ...
1) Не забываем обновиться:
aptitude update
2) Ставим server-пакет (~100Mb):
aptitude install mysql-server
3) Ставим client-пакет (~мало Мб):
aptitude install mysql-client

Готово. После установки сервер-пакета не забудьте ввести пароль :)

Далее - теперь это надо админить через phpmyadmin
Ну, ставится банально просто:
aptitude install phpmyadmin

В конце установки предложит пред-настроить прогу на один из ваших web-серверов (у меня в списке apache lighttpd на выбор). Чтобы начать с ним работать - откройте в браузере ссылку:
http://127.0.0.1/phpmyadmin

Так, форумы.
Я больно не искал, но нашел два популярных: PunBB и phpBB
Официальная страница PunBB вот: http://punbb.informer.com/
Ну а phpBB обитает вот тут: http://www.phpbb.com/

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

Если хотите создать свой блог, можно использовать движок WordPress: http://wordpress.org/

До кучи, CMS-системы создания сайтов:
http://sitem.sourceforge.net/ (rus: http://sitemancms.info/)
http://drupal.org/ (rus: http://www.drupal.ru/)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

вторник, 27 января 2009 г.

Linux. Установка LinuxDC++ из исходников

Дано: LinuxDC++, Debian
Задание: скомпилировать

Вообще на каждую систему существует свой пакет - deb'ы, rpm'ы и т.д. Но версия там скорее всего не самая свежая. Поэтому выход - либо искать по просторам интернета, либо собирать самим.
Последнее, как выяснилось, занятие совершенно не сложное.

Сайт - https://code.launchpad.net/linuxdcpp
Все свежие ветки проекта лежат там. Задача проста - выбрать ветку, да поставить.

Для начала поставим bzr (пакет так и называется). С его помощью будем копировать себе исходники.

После установки выбираем ветку и, собственно, копируем исходники командой, которая указана на странице с выбранным проектом. Например для ветки i18n команда такая:
bzr branch lp:~individ/linuxdcpp/i18n

После чего сидим и ждем, когда они свалятся нам в home каталог. Переходим. Осталось скомпилировать и установить. Пишем дял компиляции:
scons PREFIX=/dir-to-install

В качестве папки установки можно взять "/usr/local" (говорят помогает так же от некоторых ошибок)

Команда для установки:
scons install

Все просто. Но самое веселое это всякие зависимости. Вероятно придется установить много чего, хотя и не большого при этом размера (половина из которых различные dev-пакеты). Но в процессе установки она пишет чего конкретно не хватает и проблем в общем возникнуть не должно - достаточно грамотно пользоваться aptitude search и уметь внимательно читать.
Вот тут есть примерный список нужных пакетов:
http://packages.debian.org/sid/i386/linuxdcpp

Кстати, в процессе поиска вам может помочь такая связка:
aptitude search something | grep "abc"
Ищет все пакеты со словом something в которых присутствует и подстрока abc. Например чтобы найти C++ надо написать:
aptitude search c | grep "++"

Сравните с:
aptitude search c
... и почувствуйте разницу =)

Кстати, в догонку. Если надо протестировать LinuxDC++, а искать файлы для расшаривания лень\долго\такихнету - можно создать виртуальный файл и подсунуть его программе! =)
Делается командой:
dd if=/dev/null of=/virtual-file-name bs=1 count=0 seek=нужная_длина_файла
Да, а для создания swap-файла можно написать так:
dd if=/dev/zero of=/swapfile bs=1024 count=65535
ну и потом команды mkswap, swapon

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

пятница, 9 января 2009 г.

Linux. Настройка VirtualBox в Debian

Так!
Свершилось!
Я разобрался в том, как поставить VirtualBox. А точнее нашел выход после того, как заблудился в 3 соснах =)

В общем все довольно тривиально и очень просто. Типичная проблема у многих при установке vbox'a. Значит как оно ставится в Дебиане...
(в других дистрибутивах, например в Мандриве - примерно аналогично. По крайней мере шаги настройки те же, ну а команды установки могут отличаться - тут aptitude, там urpmi ну и т.д.).
Часть инструкции можно найти тут:
http://www.virtualbox.org/wiki/Linux_Downloads
Да, кстати, шаги 1-4, наверное, можно пропустить, просто скачав пакет для вашей ОС отсюда:
http://www.virtualbox.org/wiki/Download_Old_Builds

Первое. Добавляем источник в файл "/etc/apt/sources.list"
deb http://download.virtualbox.org/virtualbox/debian lenny non-free

Второе. Добавляем ключ источника. Для чего качаем ключ-файл со странички выше, сохраняем и добавляем его командой:
apt-key add /home/vasya/sun_vbox.asc

Третье. Обновляем источники:
aptitude update

Четвертое. Ставим версию 1.6 (ну можете поставить свежее, но я 1.6):
apt-get install virtualbox

Пятое. Запускаем программу, запускаем любую вирт.машину, и скорее всего получаем ошибку:
VirtualBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. Re-setup the kernel module by executing '/etc/init.d/vboxdrv setup' as root.
VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED).

Прекрасно. Надо выполнить команду от рута:
/etc/init.d/vboxdrv setup

У меня не выполнялась ни в Мандриве, ни в Дебиане. Лог ошибки:
Makefile:127: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR= and run Make again.  Останов.

Шестое. Надо ставить исходники ядра.
Чтобы узнать какое у вас ядро можно написать, например, команду:
uname -a

Будет что-то типа:
Linux debian 2.6.26-1-686 #1 SMP Mon Dec 15 18:15:07 UTC 2008 i686 GNU/Linux

Это значит надо поставить следующие две вещи:
i   linux-headers-2.6.26-1-686      - Header files for Linux 2.6.26-1-686
i   linux-headers-2.6.26-1-common   - Common header files for Linux 2.6.26-1

После установки которых "/etc/init.d/vboxdrv setup" выполняется и все прекрасно работает ^_^

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

За помощь по настройке большое спасибо GrayCat, без которого я бы так и продолжал блуждать в трех соснах =D

вторник, 6 января 2009 г.

Linux. Консольный ликбез

Краткая заметка о нескольких популярных консольных приложениях. Аналогов много, в которых все расписано в деталях, поэтому буду краток.
*например, подробно можно прочитать тут: http://www.computerra.ru/think/sentinel/34373/

Notepad - Nano

ICQ - Centericq

Audio-video players - Orpheus, Mplayer

Web - Links, w3m

Mail - Mutt

Downloader - wget

Graphic-Shells - GNU Screen, Twin

До кучи, цвет консоли меняется командой - setterm

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

воскресенье, 4 января 2009 г.

Linux. Добавляем новый пункт в контекстное меню KDE

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

В общем добавлять он умеет только файлы, и то - не дай бог там лежит картинка - приходится выделение убирать с неё, а то нет пункта в меню.

Достало.

Решил добавить новый пункт в меню KDE - добавление папки и вложенных подпапок в Амарок. Для этого достаточно иметь более-менее прямые руки и пару свободных минут. Даже не так. Так как это KDE - руки вообще могут расти из одного места - никаких проблем не возникнет =)

Сама инструкция лежит тут:
http://developer.kde.org/documentation/tutorials/dot/servicemenus.html

У меня только пример.
Итак, суть в том, что есть у вас папка с этими пунктами меню. Вероятно одна из трех:
/opt/kde3/share/apps/konqueror/servicemenus/
/usr/share/apps/konqueror/servicemenus/
/home/user/.kde3/share/apps/konqueror/servicemenus/

Выбираете одну. Я взял "/home/diman/.kde/share/apps/konqueror/servicemenus/"

Создаете в выбранной папке файл "bla-bla.desktop", где бла-бла любое имя. Отлично - пол-дела сделано.

Заносим в него сей текст:

[Desktop Entry]
ServiceTypes=inode/directory
Actions=addDir

[Desktop Action addDir]
Name=Add to Amarok
Icon=/usr/share/icons/hicolor/16x16/apps/amarok.png
Exec=/bin/sh -c "find %U -iname *mp3 -exec amarok -e {} \;"

Суть текста.
[Desktop Entry] это описание, указывающее что появится пункт меню только при нажатии на Папки (директории то бишь, а не файлы). А так же указывает что надо бы вызывать "процедуру" addDir при нажатии на пункт меню.
[Desktop Action addDir] это как-бы "процедура". Условно очень. В ней мы присваиваем нашему действию имя в меню (Name), выбираем картинку (Icon; я через команду find нашел перво-попавшуюся в системе). Наконец Exec - команда, которая будет выполняться, она заключена в кавычки. Если команда одна - кавычки не нужны. И вообще будет выглядеть так:
Exec=find %U -iname *mp3 -exec amarok -e {} \;

Ну да я на всякий заключил. А команда Exec это обычная bash-команда.
Сохраняете файл и KDE моментально подхватывает ваш скрипт.

Правда есть один большой нюанс - она не работает в окнах с адресом "system:/media/hda5". Т.е. путь должен быть стандартный, типа: "/home/music"

Вот так - эта штуковина добавляет mp3-файлы из нужной папки. Надо еще придумать как приделать остальные типы файлов (ogg, flac). Ну а так суть, думаю - понятна.

Удачи :)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.