Показаны сообщения с ярлыком ubuntu. Показать все сообщения
Показаны сообщения с ярлыком ubuntu. Показать все сообщения

четверг, 9 декабря 2010 г.

NetworkManager сломался после апдейта

Вобщем сломался у меня networkManager, не мог нажать на "Enable Networking" вайфай не работает, по проводам смог подцепится только прописав настройки в /etc/network/interfaces
в логе примерно такое
Dec  9 09:03:34 xps NetworkManager: <info>  Found wlan radio killswitch rfkill1 (at /sys/devices/virtual/rfkill/rfkill1) (driver <unknown>)
Dec  9 09:03:34 xps NetworkManager: <info>  WiFi enabled by radio killswitch; enabled by state file
Dec  9 09:03:34 xps NetworkManager: <info>  WWAN enabled by radio killswitch; enabled by state file
Dec  9 09:03:34 xps NetworkManager: <info>  (eth0): carrier is ON
Dec  9 09:03:34 xps NetworkManager: <info>  (eth0): new Ethernet device (driver: 'sky2')
Dec  9 09:03:34 xps NetworkManager: <info>  (eth0): exported as /org/freedesktop/NetworkManager/Devices/0
Dec  9 09:03:34 xps NetworkManager: <info>  (eth1): driver supports SSID scans (scan_capa 0x01).
Dec  9 09:03:34 xps NetworkManager: <info>  (eth1): new 802.11 WiFi device (driver: 'wl')
Dec  9 09:03:34 xps NetworkManager: <info>  (eth1): exported as /org/freedesktop/NetworkManager/Devices/1
Dec  9 09:03:34 xps NetworkManager: <WARN>  device_creator(): /sys/devices/virtual/net/pan0: couldn't determine device driver; ignoring...
Dec  9 09:04:05 xps NetworkManager: <WARN>  nm_signal_handler(): Caught signal 15, shutting down normally.


Для починки не помогало ни переустановка его самомго ни wpasuplicant ни чего то другого.

а помогло вот это

sudo service network-manager stop
sudo rm /var/lib/NetworkManager/NetworkManager.state
sudo service network-manager start

суббота, 4 декабря 2010 г.

Ubuntu удаляем ненужные ядра.

Накопилось у меня целая толпа разных ядер.
$ dpkg -l |grep ii|grep -E 'linux-headers|linux-image'          
ii  linux-headers-2.6.32-21              2.6.32-21.32                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-21-generic      2.6.32-21.32                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-2.6.32-24              2.6.32-24.43                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-24-generic      2.6.32-24.43                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-2.6.32-25              2.6.32-25.45                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-25-generic      2.6.32-25.45                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-2.6.32-26              2.6.32-26.48                                          Header files related to Linux kernel version 2.6.32
ii  linux-headers-2.6.32-26-generic      2.6.32-26.48                                          Linux kernel headers for version 2.6.32 on x86/x86_64
ii  linux-headers-generic                2.6.32.26.28                                          Generic Linux kernel headers
ii  linux-image-2.6.32-21-generic        2.6.32-21.32                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-2.6.32-24-generic        2.6.32-24.43                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-2.6.32-25-generic        2.6.32-25.45                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-2.6.32-26-generic        2.6.32-26.48                                          Linux kernel image for version 2.6.32 on x86/x86_64
ii  linux-image-generic                  2.6.32.26.28                                          Generic Linux kernel image
И решил я их подчистить, тоесть удалить все кроме текущего
$ uname -r                                                                                                                                                     
2.6.32-26-generic
можно конечно руками в synaptic или каждый копипастить, но "мы не ищем простых путей - нам лень"(c) поэтому вот небольшой скрипт, который можно скопировать в командную строку и выполнить, на каждую операцию удаления спросит подтверждения
$ VERSION=$(uname -r|sed -r "s|-[^-]*$||;s|-|.|"); PACKAGES=$(dpkg -l |grep ii|grep -E 'linux-headers|linux-image' |grep -rv "$VERSION" | awk '{print $2}'); for i in  $PACKAGES;do sudo apt-get remove $i;done

Если у кого есть более красивый вариант, предлагайте :), буду рад.

четверг, 16 сентября 2010 г.

Медиа дека для Anki

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

Создавать деки можно самому, так и брать готовые с сайта.
Тема же сегоднешнего заняти, натырить картинок с тырнета и сделать из них красивую деку(набор карточек).
итак поехали
1. выберем жертв, в моем случае стали 2 сайта http://www.my-english-dictionary.com и www.pdictionary.com скачаем их через wget
$mkdir sites && cd sites
$wget -pdrc http://www.my-english-dictionary.com
$wget -pdrc www.pdictionary.com

2. Исследуем скачаные дириктории
2.1 в случае с pdictionary все просто , картинки лежат в папке images и носят названия того что на них изображено
$ls www.pdictionary.com/images/
a  b  c  d  e  f  g  h  i  j  k  l  m  misc  n  o  p  q  r  s  t  u  v  w  x  y  z
$ls www.pdictionary.com/images/z
zebra.gif  zero.gif  zigzag.gif  zipper.gif

2.2. c my-english-dictionary все гораздо интереснее
$ ls |head
eng100.htm
eng100.jpg
eng101.htm
eng101.jpg
eng102.htm
eng102.jpg
eng103.htm

тоесть на каждую картинку по отдельной страничке и с именем eng???.htm с картинкой eng???.jpg
слазив внутрь заметим что название картинок лежит в теге img с сылкой на наше изображение а имя картинки в атрибуте alt
$cat eng100.htm |grep 100.jpg
<img src = "eng100.jpg" alt= "drawer" border = 0>

Ну так как видно что все идет строго попарядку можно в цикле пройти по всем htm страничкам и переименовать файлы в вид name.jpg и положим их в папки result и result_small (кто его знает может thumbnail-ы тоже кому пригодятся)
$mkdir result&&mkdir result_small
$for i in `seq 1 408`;do NAME=`cat eng$i.htm|grep eng$i.jpg|sed 's|.*alt= "||g;s|".*||g'`;echo $NAME;cp eng$i.jpg result/$NAME.jpg;cp s-eng$i.jpg result_small/$NAME.jpg; done

итак.. мы получили картинки, но о боже.. большие картинки с большими черными подсказками :)

что же делать... "Доктор, нужно резать!"... да.. будем резать.. и резалку мы возьмем imagemagic, и резултат трудов положим еще в одну поддирикторию result
$mkdir result
$for i in *;do convert $i -crop 400x265+0+0 result/$i;done

можно посмотреть результат наших трудов - что все ок. ну и двинем дальше.
Насколько помнится мы загрузили изображения еще со 2го сайта, и внимательный телепат наверняка разглядел что изображения то там не jpg а gif - ну не будем портить всю малину через тот же image magic сконвертим их в jpg и двинем в текующую фотку где у нас уже есть изображения(перейдем в тот сайт и из дириктории image вфполним следующее
$cp */*.gif ../../www.my-english-dictionary.com/result/result/

это мы так скопировали, а теперь их переделаем в jpg (вернемся в ..../result/result и выполним вот это колдовство
$for i in *.gif;do convert $i ${i/gif/jpg};done

ну и избавимся от наших гифок

$rm *.gif

3. Самое интересное.. файлы у нас есть все называются как надо - осталось их загнать в деку анки. ну и конечно руками мы это делать не будем. что нам в конце концов - делать чтоль нечего
топаем на страничку http://ichi2.net/anki/wiki/FileImport которая нам рассказывает как можно создать файл вида
caption [tab] x-ray <img src="x-ray.jpg">[sound:x-ray.ogg]

левая часть это одна сторона карточки, а правая "Сюрприз!!!!" не только изображение но еще и произношение.
Я вспомнил про когда то скачаные словари для stardict с произношением, и подумал что вот он!, тот шанс :)... но на этом не остановился когда узнал что слов многих нету и на помощь пришел сайт http://www.answers.com который любезно согласился предоставить отсутствующие звуки.
упуская подробности (одной строкой выполнять все эти операции было тяжело) и я наваял небольшой скрптик, правда не отладил но главное работает
#!/bin/bash

DIRECTORY=/home/nikolay/sites/www.my-english-dictionary.com/result/result
EXTENSION=jpg
SOUND_EXTENSION="ogg mp3 wma wav"
SOUND_DIRS="(stardict|$DIRECTORY)"
SITE='http://www.answers.com'
OUT_MEDIA_DIR=$DIRECTORY/media
OUT_FILE=import

rm $OUT_FILE
if [ -d "$OUT_MEDIA_DIR" ];
then
rm -Rf "$OUT_MEDIA_DIR"
fi

mkdir "$OUT_MEDIA_DIR"


cd $DIRECTORY
for i in *$EXTENSION;
do
FULL_NAME=$i;
NAME="${i/.jpg/}";

SOUND_FILE_NAME=$(ls $NAME.*|egrep '(ogg|mp3|wma|wav)')
if [ -z "$SOUND_FILE_NAME" ];
then
for i in $SOUND_EXTENSION;
do
SOUND_FILE_PATH=$(locate "/$NAME.$i"|egrep "$SOUND_DIRS")

if [ -n "$SOUND_FILE_PATH" ];
then
SOUND_FILE_NAME=$NAME.$i
cp "$SOUND_FILE_PATH" "$SOUND_FILE_NAME"

break
fi
done
if [ -z "$SOUND_FILE_NAME" ];
then
#truing download from answer.com                            loca
wget -q $SITE/$NAME --output-document $NAME.tmp
SERVER_FILE_PATH=$(cat $NAME.tmp |grep playIt|grep wav|sed "s/.*playIt('//g;s/'.*//g"|sed q)
if [ -n "$SERVER_FILE_PATH" ];
then
wget -q $SERVER_FILE_PATH --output-document $NAME.wav
SOUND_FILE_NAME="$NAME.wav"
fi
rm $NAME.tmp
fi
fi
STRING="$NAME$(echo -e '\t')<img src=\"$FULL_NAME\">"
cp "$FULL_NAME" "$OUT_MEDIA_DIR/"
if [ -n "$SOUND_FILE_NAME" ];
then
STRING="$STRING[sound:$SOUND_FILE_NAME]"
cp "$SOUND_FILE_NAME" "$OUT_MEDIA_DIR"
fi
echo $STRING>>$OUT_FILE    
done;


эхх шит фокус с echo -e "\t" не удался.. придется подправить .. заменить все пробелы на таб
$ sed -i 's| |\t|' import


смысл в том что нужно поменять значение переменной DIRECTORY на то куда вы выложили файлы, SOUND_DIRS - это то где скрипт ищет произношение (не бязательно полный путь, так как идет все через grep)
ну и результат получаем файл import и папку media

открываем anki
жмем на create (name=mediadeck)
file->import выбираем наш файл "import"
saveas (mediadeck)
теперь нужно зайти в :~/.anki/decks
и создать там дирикторию mediadeck.media
$mkdir ~/.anki/decks/mediadeck.media

и копируем
$cp media/* /home/nikolay/.anki/decks/mediadeck.media/

после этого в анки нужно выполнить Tools>Advanced>Check Media DB (tag cards)

ну вот вобщем то и все.
Я понимаю что инструкция тяпляп. :) - поэтому если это действительно кому то еще понадобится - пишите письма :). постораюсь ответить (главная тут проблема что я не указывал из какой дириктории что делал, так что кофейная гущя вам в помощ)
а вот скриншот того что получилось (картинка и значек проигрывателя который произносит слово)


ну а это готовая дека, которая получилась, распаковать зип и импортировать shared.anki

вторник, 18 мая 2010 г.

Ubuntu softraid initramfs fail

3 дня я трахался с этим soft raid сначала с fakeraid intel (убунту его не смогла увидеть) но так как винду я пользовать не буду, так что в моем случае softraid - это тоже самое :).
Но проблема была в том, что после инстала меня выкидывала в initramfs с ошибкой типа
mounting /dev on /root/dev failed
или
mount: mounting /dev/disk/by-uuid/ on /root/ failed: Invalid argument
после долгого гугления наконецто нашел решение, заключается в том что нужно осставить неразмеченой области >3 Gb и проблема встречается только с винтами в 500Gb, с 250 и 750 должно быть все ОК.

воскресенье, 28 сентября 2008 г.

Palm & Evolution

Ухх.. до чегож я ленивый и неповоротливый, стоило только заболеть, как на палме составил график приема лекарств, ну и соответственно после синхронизации с убунтой, в календаре это все выглядело ужас как нечитаемо, и чтоб наш gnome-pilot правильно все синхронизовал нужно было задать всеголишь одну переменную окружнеия :)
топаем в /etc/environment
добавляем туда

PILOT_CHARSET=cp1251


перегружаемся и вуаля :)

суббота, 12 июля 2008 г.

SQL Developer on Ubuntu

скачал с оракла rpm sqldevelper поставил (

sudo apt-get install alien

) переделал rpm в .deb поставил бес проблем, но никак не коннектица к базе
выдает ошибки

ORA-12705: Cannot access NLS data files or invalid environment specified


ну и еще что то.. про ora-00604
погуглив - нашли решение на sql.ru
все что нужно сделать в sqldeveloper.conf прописать AddVMOption -Duser.region=US

whereis sqldeveloper
cd /opt/sqldeveloper/sqldeveloper/bin
nano sqldeveloper.conf


добавляем заветную строчку, и наслаждаемся работой в sqldeveloper

четверг, 10 июля 2008 г.

Oracle in Ubuntu

трахался я трахался :) все никак не мог поставить Oracle, - ну дубина я в нем, что уж поделаешь, до этого только с mysql работал, а оказалось все довольно просто
заходим вот на эту страничку :) ну и читаем
либо сразу на эту за дебиан пакетом.
опосля расширяем своп

root@kubuntu:~# dd if=/dev/zero of=/swapfile bs=1M count=600
600+0 records in
600+0 records out
629145600 bytes (629 MB) copied, 2.1237 seconds, 296 MB/s
root@kubuntu:~# mkswap /swapfile
Setting up swapspace version 1, size = 629141 kB
no label, UUID=f267d443-106e-431e-a6e5-ec2c1ebb0a37
root@kubuntu:~# swapon /swapfile


потом устанавливаем пакет

root@kubuntu:/home/todd/Desktop# dpkg -i oracle-xe_10.2.0.1-0.060128_i386.deb


ну и вобщемто после установки смотрим что нужно еще запустить конфигуратор

root@kubuntu:/home/todd/Desktop# /etc/init.d/oracle-xe configure
Oracle Database 10g Express Edition Configuration
-------------------------------------------------

This will configure on-boot properties of Oracle Database XE. The following questions will determine whether the database should
be starting upon system boot, the ports it will use, and the passwords that
will be used for database accounts. Press to accept the defaults.
Ctrl-C will abort.
Specify the HTTP port that will be used for Oracle Application Express [8080]:

Specify a port that will be used for the database listener [1521]:

Specify a password to be used for database accounts. Note that the same
password will be used for SYS and SYSTEM. Oracle recommends the use of
different passwords for each database account. This can be done after
initial configuration:

Confirm the password: (* make sure you remember this password *)

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]: y

Starting Oracle Net Listener...Done
Configuring Database...Done
Starting Oracle Database 10g Express Edition Instance...Done
Installation Completed Successfully.
To access the Database Home Page go to "http://127.0.0.1:8080/apex"


и все :)

суббота, 3 мая 2008 г.

FFmpeg ошибки и установка, а также как nwz-s618 научился смотреть видео

Вобщем сижу и делаю сайт, и тут мне понадобилось автоматом клепать иконки, в формате .gif для небольших видеороликов. Полазив по интернету остановился на ffmpeg для нарезки скриншотов. и imagemagick для собирательства скриншотов в .gif (в ffmpeg конечно есть функция преобразования сразу в гиф, но как сделать промежуток больше чем 1кадр в секунду я не смог, да и качество меня не вполне брадовало)

Все бы хорошо, но 3 часа мучался с ошибкой

ffmpeg: error while loading shared libraries: libx264.so.54: cannot open shared object file: No such file or directory

какую фигню только не пробовал, и что не пытался - все напрасно
а ведь нужно делать иконки для видеофайлов

и о чюдо - после 2х часовой пробежки на роликах наконецто решился собрать ffmpeg сам! гы гы.. :) вот такой вот я лентяй - сижу под ubuntu и собирать что то самому я не привык.

https://wiki.ubuntu.com/ffmpeg - вот это вот статья оригинал по которой у меня и получилось его собрать. - до этого пробовал с других источников, и все время натыкался на ошибку отсутствующего модуля

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

вот этой строчкой можно конвертировать видео в 320х240 x264 файл

ffmpeg -y -i INPUT.avi -threads auto -vcodec libx264 -b 250k -maxrate 768k \
-flags +loop -cmp +chroma -partitions +parti4x4+partp4x4+parti8x8+partp8x8 -flags2 \
+mixed_refs -level 13 -refs 3 -subq 7 -trellis 2 -me 6 -g 300 -s 320x240 -ab 128k -ar\
44100 -ac 2 -acodec libfaac OUTPUT.mp4

чтоб каждый раз ее не вводить можно создать вот такой вот скрипт
(модифицированный от Eric Hewwitt's)

#!/bin/bash

input_file=$1
input_x=`ffmpeg -i "${input_file}" 2>&1 | sed '/Video:/!d' | sed 's/.* \([0-9]\{3,4\}\)x\([0-9]\{3\}\).*/\1/'`
input_y=`ffmpeg -i "${input_file}" 2>&1 | sed '/Video:/!d' | sed 's/.* \([0-9]\{3,4\}\)x\([0-9]\{3\}\).*/\2/'`
echo $input_x
echo $input_y
output_dir=$PWD
declare -i crop_tmp
crop_tmp=-$input_y/3*2+$input_x/2
declare -i crop
crop=$crop_tmp+$crop_tmp%2
echo $crop

ffmpeg -y -i "${input_file}" -threads auto -vcodec libx264 -b 250k -cropleft "${crop}" -cropright "${crop}" -aspect 1.333 -maxrate 768k -flags +loop -cmp +chroma -partitions +parti4x4+partp4x4+parti8x8+partp8x8 -flags2 +mixed_refs -level 13 -refs 3 -subq 7 -trellis 2 -me 6 -g 300 -s 320x240 -ab 128k -ar 44100 -ac 2 -vol 768 -acodec libfaac "${output_dir}/${input_file}_walkman.mp4"


для использования alkman INPUT.avi

ну вот пожалуй и все :), ну а к gif-кам мы вернемся чуть чуть попозже