(c) Павел Беляев

При использовании статей с сайта добавляйте в копирайт © Блог Павла Беляева http://pavelb.ru

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

страница сгенерирована за

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


в начало PHP кода
define("START_TIME", microtime(true));

в конец страницы
printf("Время выполнения: %.5f с", microtime(true)-START_TIME);





(с)http://www.codenet.ru/webmast/php/Seconds.php

Dell 2209wa бюджетный монитор на e-ips матрице

Продал я свой недавно купленный монитор на TN матрице, уж очень он мне не нравился своей цветопередачей на углах отличных от 90 градусов.

Долго читал различные обзоры и новости и мой выбор остановился на мониторе Dell 2209WA, монитор имеет встроенный USB-хаб, подставку, которая поворачивает монитор на 90 градусов, крутит его вокруг своей оси, меняет высоту монитора и наклон. Но самое главное достоинство этого монитора - e-IPS матрица, это аналог IPS матрицы (которая используется фотографами), но с использованием более дешевых компонентов. Искажения при самых экстримальных углах обзора минимальные, подсветка почти как у ЭЛТ мониторов по равномерности и яркости.

В общем покупкой очень доволен, если этот монитор окажется еще и долговечным, то это будет вообще супер!


монитор стоит около 11100..11600руб, за такую цену и TN то не купить хороших.




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

Cyber Power мониторинг ИБП в Linux

Данный UPS можно мониторить и в линуксе, для этого есть специальная утилита скачать можно тут.

Утилита есть и в rpm и в deb пакетах и для 32х и для 64х битных ОС

После ее установки набираем команду

# pwrstat -status

The UPS information shows as following:

    Properties:
        Model Name................... UPS VALUE
        Rating Voltage............... 230 V
        Rating Power................. 360 Watt

    Current UPS status:
        State ....................... Normal
        Power Supply by ............. Utility Power
        Utility Voltage ............. 232 V
        Output Voltage............... 232 V
        Battery Capacity ............ 100 %
        Load ........................ 17 %
        Remaining Runtime ........... 25 min.
        Line Interaction............. None

И видим статистику нашего бесперебойника
Load 17% означает то что текущая нагрузка 17% от 360 ватт, следовательно 61,2W

Данная утилита позволяет не только мониторить состояние но и делать кое какие настройки бесперебойника, чтобы узнать все возможности наберите команду
# pwrstat -help

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

Отправка уведомления о заказе админу в Virtuemart, если покупатель не указал свой email

Если делать в своем магазине процедуру покупки без всяких регистраций и с минимум усилий то скорей всего вам захочется сделать поле e-mail в данных пользователя необязательным, ведь не все имеют свою электронную почту да и не все хотят ее оставлять, вполне достаточно написать в регистрационной форме ФИО и Телефон, а e-mail по желанию.

Но вот ведь незадача! Если пользователь не введет своего емэйла, то и админу тоже не прийдет письмо с уведомлением о заказе. А почему? Сейчас попытаюсь разъяснить.

Открываем файл administrator/components/com_virtuemart/classes/ps_checkout.php

примерно на строках 2160-2162 находим такие две строки
$shopper_mail = vmMail( $from_email, $mosConfig_fromname, $shopper_email, $shopper_subject, $shopper_mail_Body, $shopper_mail_AltBody, true, null, null, $EmbeddedImages);
 
$vendor_mail = vmMail( $shopper_email, $shopper_name, $vendor_email, $vendor_subject, $vendor_mail_Body, $vendor_mail_AltBody, true, null, null, $EmbeddedImages);



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


Удаляем эти две строки и вместо них вставляем следующее содержимое


if (!$shopper_email)

{
$vendor_mail = vmMail( "robot@domain.ru", $shopper_name, $vendor_email, $vendor_subject, $vendor_mail_Body, $vendor_mail_AltBody, true, null, null, $EmbeddedImages);
}


else
{
$shopper_mail = vmMail( $from_email, $mosConfig_fromname, $shopper_email, $shopper_subject, $shopper_mail_Body, $shopper_mail_AltBody, true, null, null, $EmbeddedImages);


$vendor_mail = vmMail( $shopper_email, $shopper_name, $vendor_email, $vendor_subject, $vendor_mail_Body, $vendor_mail_AltBody, true, null, null, $EmbeddedImages);

}


Где robot@domain.ru - адрес, от которого будет отправляться уведомление админу

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

Не заходит под гостем

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

Если вам нужны просто папки, то при входе в папку еще сможете вводить в поле пользователь Гость.

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

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

Тыкаем правой кнопкой на рабочем столе Создать -> Ярлык



пишем в поле размещение объекта   
net user \\192.168.0.144\printer /USER:Гость

далее-далее
этот ярлык размещаем в папке Автозагрузка нужного пользователя и готово)))


воскресенье, 19 сентября 2010 г.

Подкатегории + категории на главной странице VirtueMart

Появилась задача вывести на сайте на главной странице не просто главные категории
  • Посуда
  • Одежда
  • Электроника
Но и вложенные в них подкатегории, для ускорения навигации


*Посуда
  -Тарелки
  -Кружки
  -Стаканы

*Одежда
  -Брюки
  -Шапки

.....


Для этого пришлось малость перепилить VirtueMart

файл
/components/com_virtuemart/themes/default/templates/common/categoryChildlist.tpl.php



<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
mm_showMyFileName(__FILE__);

$iCol = 1;
if( !isset( $categories_per_row )) {
    $categories_per_row = 4;
}
$cellwidth = intval( 100 / $categories_per_row );

if( empty( $categories )) {
    return; // Do nothing, if there are no child categories!
}
?>
<br/>
<table width="100%" cellspacing="0" cellpadding="0">




<?php



function category_l2 ($id_cat) {global  $sess; require_once( CLASSPATH . 'ps_product_category.php'); $ps_product_category = new ps_product_category();
$categories_l2 = $ps_product_category->get_child_list($id_cat);
foreach( $categories_l2 as $category2 ) {
echo "<a class=\"minicategory\"href=\"";
$sess->purl(URL."index.php?option=com_virtuemart&amp;page=shop.browse&amp;category_id=".$category2["category_id"]);
echo "\"> ".$category2["category_name"]."</a><br>";}}






foreach( $categories as $category ) {
    if ($iCol == 1) { // this is an indicator wether a row needs to be opened or not
        echo "<tr>\n";
    }
    ?>
   
   
    <td align="center" width="<?php echo $cellwidth ?>%" >
        <br />
         <a title="<?php echo $category["category_name"] ?>" href="<?php $sess->purl(URL."index.php?option=com_virtuemart&amp;page=shop.browse&amp;category_id=".$category["category_id"]) ?>">
            <?php
            if ( $category["category_thumb_image"] ) {
                echo ps_product::image_tag( $category["category_thumb_image"], "alt=\"".$category["category_name"]."\"", 0, "category");
                echo "<br /><br/>\n";
            }
            echo $category["category_name"];
            echo $category['number_of_products'];
           
            ?>
         </a><br/>
<?php category_l2 ($category["category_id"]);?>
    </td>
   
   
    <?php
    // Do we need to close the current row now?
    if ($iCol == $categories_per_row) { // If the number of products per row has been reached
        echo "</tr>\n";
        $iCol = 1;
    }
    else {
        $iCol++;
    }
}
// Do we need a final closing row tag?
if ($iCol != 1) {
    echo "</tr>\n";
}
?>
</table>





Теперь при выводе категорий на главной странице ниже в список будут выводиться подкатегории, класс для этих подкатегорий a.minicategory {}
В стилях прописываете для них оформление и готово

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

flash player 64bit linux

Adobe выпустили 64х битную версию флэш-плагина версии 10.1, для Windows, Mac и Linux
скачать его можно тут http://labs.adobe.com/downloads/flashplayer10.html


Установить плагин на Ubuntu 64 можно таким скриптом
#!/bin/bash
# Script  created by
# Romeo-Adrian Cioaba romeo.cioaba@spotonearth.com

echo "Stopping any Firefox that might be running"
sudo killall -9 firefox

echo "Removing any other flash plugin previously installed:"
sudo apt-get remove -y --purge flashplugin-nonfree gnash gnash-common mozilla-plugin-gnash swfdec-mozilla libflashsupport nspluginwrapper
sudo rm -f /usr/lib/mozilla/plugins/*flash*
sudo rm -f ~/.mozilla/plugins/*flash*
sudo rm -f /usr/lib/firefox/plugins/*flash*
sudo rm -f /usr/lib/firefox-addons/plugins/*flash*
sudo rm -rfd /usr/lib/nspluginwrapper
   
echo "Installing Flash Player 10"
cd ~
wget http://download.macromedia.com/pub/labs/flashplayer10/flashplayer_square_p1_64bit_linux_091510.tar.gz
tar zxvf flashplayer_square_p1_64bit_linux_091510.tar.gz
sudo cp libflashplayer.so /usr/lib/mozilla/plugins/
   
echo "Linking the libraries so Firefox and apps depending on XULRunner (vuze, liferea, rsswol) can find it."
sudo ln -sf /usr/lib/mozilla/plugins/libflashplayer.so /usr/lib/firefox-addons/plugins/
sudo ln -sf /usr/lib/mozilla/plugins/libflashplayer.so  /usr/lib/xulrunner-addons/plugins/

# now doing some cleaning up:
sudo rm -rf libflashplayer.so
sudo rm -rf flashplayer_square_p1_64bit_linux_091510.tar.gz


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

ссылку на актуальны 64х битный флеш плеер можно получить тут http://labs.adobe.com/downloads/flashplayer10_square.html

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

как удалить Winlook баннер 400 руб на номер билайн?

Весь интернет переполнен вопросами "Как удалить порнобанер, который требует положить 400 рублей на счет билайн"


















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

Как выяснилось, пользователь этого компьютера скачал и выполнил файл vip_porno_879.avi.exe

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

Действия тут следующие
1. Жмем сочетание клавиш WIN+U
2. Запускаем там экранную лупу
3. У нас всплывет окошко, в котором будет написано что то про экранную лупу и ниже будет ссылочка Веб-узел Microsoft, жмем на нее, у нас откроется веб-браузер по умолчанию
4. Файл-Открыть, открываем файл C:\Windows\system32\regedit.exe
5. Находим следующий раздел реестра HKEY_LOCAL_MACHINE/software/microsoft/windows nt/CurrentVersion/Winlogon

В ключе shell делаем значение Explorer.exe и перезагружаемся

Буду рад, если моя статья поможет хоть кому то, с уважением, Павел Беляев

воскресенье, 22 августа 2010 г.

мини-сервер для дома (часть 1 - теория)

Появилась у меня цель собрать небольшой домашний сервачёк для своих нужд, сервер должен соответствовать следующим требованиям:
  • Энергоэкономичность - платить за электроэнергию приходится самому, денег сервер не приносит, работает сервер круглосуточно, следовательно нужно максимально снизить энергопотребление
  • Бесшумность - сервер будет стоять дома, спать тоже хочется ночами, так что нужно чтобы его не было особо слышно
  • Малогабаритность - сервер должен стоять в углу и не мешать ни кому
  • Стабильность - сервер будет работать в режиме 24/7, так что нужно предусмотреть по максимуму его стабильность, он должен хорошо охлаждаться.
1. Корпус
В качестве корпуса я выбрал INWIN EMR013 (400W FSP)
  •  У данного корпуса вентилятор на передней панели так раз будет дуть на жесткие диски, что позволит не устанавливать отдельные куллеры на них
  • Блок питания с большим бесшумным куллером
  • Под жесткие диски выделено 5 мест, что позволит разместить достаточное количество жесктких дисков в сервере





















 2. Процессор
В качестве процессора я выбрал двухядерный Pentium Dual Core E5300 2.6 Ghz, 2 ядра, поддержка 64 бит. Данный процессор просто оказался самым дешевым из боле-мене нормальных, селероны или семпроны покупать не хотелось, на Core 2 Duo денег жалко, да и плюс низкое энергопотребление и тепловыделение

3. Материнская плата
Материнскую плату тоже постарался выбрать самую дешевую и при этом пригодную для использования MSI G31TM-P21


  • 4 sata порта
  • встроенный сетевой адаптер
  • встроенная видеокарта - что позволит не покупать видеокарту и не тратить лишних 800-1000 рублей
  • применение тревдотелых конденсаторов увеличит срок службы материнской платы
 4. Оперативная память
В качестве оперативной памяти выбрал память фирмы Patriot, она оказалась самой дешевой, и при этом хочется проверить надежностьпамяти этого производителя.
я выбрал Patriot DDR-II DIMM 2Gb


















5. Жесткие диски
Для создания программного зеркального RAID-массива, я решил выбрать жесткие диски

500Gb SATA-II 300 Western Digital Caviar Green

 

Этот диск не сильно нагревается, не шумит, энергоэкономный












примерная оптимальная стоимость данных девайсов (23.08.2010 Екатеринбург):
Корпус - 1764 руб
Процессор - 1995 руб
Материнская плата - 1393 руб
Модуль оперативной памяти - 1349 руб
2 Жестких диска - 2984 руб
Итого: 9485 руб

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


Все картинки в статье были взяты с сайта nix.ru

среда, 11 августа 2010 г.

Как удалить mcafee

McAfee обычно поставляется как предустановленное ПО на компьютерах и ноутбуках. Часто встречается такое, то что после удаления этого антивируса  другие антивирусы ругаются на то что есть другой антивирус и не могут установиться. Чтобы удалить все следы после mcafee есть специальная утилитка http://download.mcafee.com/products/licensed/cust_support_patches/MCPR.exe

четверг, 29 июля 2010 г.

Доброжелательность как средство против одиночества

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

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

Если вы постоянно думаете о плохом, то это притягивает только плохое и этому есть объяснение. Когда вы видите человека, который постоянно думает о смерти, о конце света и других негативных вещах, то сомневаюсь в том что он вызовет у вас какое то восхищение и вы будете чем то притягиваться к этому человеку. Разве только жалость, но жалость это такая штука, про себя пожалеешь человека, ну постараешься ему помочь и всё.
Исходя из этого я хочу сделать вывод - если вы не хотите быть одинокими, хотите чтобы люди находили в вас что то хорошее - то будьте хорошими, прекращайте нести отрицательные эмоции людям, у них и без того много проблем, а вы еще ходите и рассказываете о том что жизнь не удалась, то что все плохо, то что весь мир обречен, в глубине души другие люди сформируют о вас мнение как о чем то плохом и негативном и на уровне подсознания будут стараться обходить вас стороной.

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

воскресенье, 25 июля 2010 г.

Диагностика HDD в линуксе

Никогда не задумывался над стабильностью своего HDD, тут задумался и оказалось то что мой винт надо бы поменять.

Старые жесткие диски нужно проверять на BAD сектора при помощи Victoria, MHDD и др

В Linuх это делается командой
sudo badblocks -v /dev/sda

Но современные винчестеры умеют сами ремапить, т.е. прятать битые сектора, чтобы увидеть количество битых и спрятанных секторов нужно посмотреть информацию из smart, для этого нужно поставить пакет smartmontools
smartctl -a /dev/sda|grep -i reallocated

В выводе видим что то вроде
5 Reallocated_Sector_Ct 0x0033 099 099 010 Pre-fail  Always - 35
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 5
Следовательно на моем жестком диске  35 битых спрятанных секторов, как бы это не совсем хорошо

четверг, 22 июля 2010 г.

Как исправить баг с Samasung N140 и Ubuntu 10.04 (ядро старее чем 2.6.34)


Существует баг с нетбуком Samsung N140 и ОС Linux, баг проявляется в кратковременном зависании системы секунд на 30, спустя 5-6 минут после включения, этот баг раньше исправляли патчами, но исправление этого бага сделали в ядре 2.6.34. Можно скачать это ядро с kernel.org, а можно взять из репозитория Debian по адресу http://packages.debian.org/experimental/i386/linux-image-2.6.35-rc5-686/download и http://packages.debian.org/experimental/linux-base, установить можно командой dpkg -i или просто двойным щелчком.

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

Информация подготовлена Павлом Беляевым, данный материал будет не актуален в скором времени, после выпуска последующей версии Ubuntu с ядром 2.6.34 и далее. Но возможно поможет всем обладателям этого нетбука.

суббота, 17 июля 2010 г.

Не заходит на сайты

У многих возникает такая проблемка - не открываются следующие ресурсы:

  • сайты антивирусов (drweb.com, freedrweb.ru, ftp.drweb.com, kaspersky.ru, kaspersky.com, avast.com avast.ru и др)
  • социальных сетей (вконтакте, одноклассники и др)
  • обновления Windows (*.microsoft.com)


Не так давно еще столкнулся с вирусом, который блокирует сайт virusinfo, на котором выкладываются скрипты для борьбы с подобной заразой.

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

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

Алгоритм лечения примерно таков
1. Необходимо избавиться от вирусов, которые делают эти блокировки, для этого подходит Cureit, DrWebLiveCD, Avast в режиме проверки при загрузке

2. Если после удаления всех вирусов на сайты так и не заходит - проверьте файл hosts (пуск -> выполнить -> C:\windows\system32\drivers\etc\hosts)
там стираем все лишнее, со строками kaspersky, drweb, odnoklassniki и др.

3. Если на сайты не заходит до сих пор, проверяем роуты командой route print
если вы обнаружили какие то лишние статические маршруты, то пишем route -f и перезагружаем компьютер

4. Если на сайты антивирусов до сих пор не заходит, то проверяем днс сервера, вводим команду ipconfig /all и смотрим чтобы DNS1 и DNS2 были те, которые назначил вам провайдер, если там не те ДНС, то вам нужно найти в реестре запись с этим днс и удалить (к сожалению забыл где она находится)


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

вирус BackDoor.Tdss.565

На днях столкнулся достаточно хитрым вирусом, который внедряется в системный драйвер обслуживающий физический диск и пока еще не удаляется обычными антивирусами (быть может эту проблему уже решили). Антивирусы обычно просто удаляют процесс, проверяют все файлы и ни чего не находят, но после перезагрузки Windows процесс вновь появляется и начинает внедряться в другие процессы, что вызывает постоянные подвисания и вылетания программ. Drweb cureit определяет этот вирус как BackDoor.Tdss.565.

Подробнее этот вирус описан тут http://vms.drweb.com/virus/?i=441481

Вирус был удален бесследно с помощью утилиты от касперского http://support.kaspersky.ru/viruses/solutions?qid=208636926


Другие вирусы рекомендую удалять при помощи Avast в режиме проверки при загрузке (на синем экране, до загрузки винды) или при помощи DrWebLiveCD, потому как находятся такие хитрые вирусы, которые успевают копироваться до того как их удалят

суббота, 10 июля 2010 г.

редирект

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






$d1 = "srv1.domain.ru";
$d2 = "srv2.domain.ru";
$prf="http://";
$site="";
$rdsite="";
$title = "error"; 
$mess =  "server ne dostupen"; 
$to = '79500000000@sms.ycc.ru'; 
$from='robot@domain.ru'; 


function tst ($site) {error_reporting(0); return (fsockopen($site, 80, $errno, $errstr, 2));}
function rdr ($rdsite) {header ("Location: $rdsite");}


if (tst($d1)) {rdr ($prf.$d1);} else if (tst ($d2)) {rdr ($prf.$d2);} else {mail($to, $title, $mess, 'From:'.$from); echo ("administrator poluchil sms");}
?>






Данный скрипт сперва пингует веб сервер по адресу srv1.domain.ru, если он не доступен, то он пингует этот же веб сервер через другого провайдера по адресу srv2.domain.ru, если первый сервер доступен то он делает на него редирект, если первый не доступен то проверяет на доступность второй и редиректит на него, а если оба провайдера не доступны, то сисадмину отправляется мыло, в данном случае через мэйл шлюз отправляется смс

вторник, 22 июня 2010 г.

Ubuntu 10.04 и строка адреса

Для того чтобы включить строку адреса в проводнике ubuntu 10.04, нужно выполнить в консоли следующую команду


gconftool-2 --set /apps/nautilus/preferences/always_use_location_entry --type bool 1


источник
http://faq4u.ru/?p=147

суббота, 22 мая 2010 г.

Установка охлаждения на чип материнской платы

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

Порылся я в шкафу, нашел парочку материнских плат, снял с одной из них радиатор, но он ни как не хотел помещаться на тесной материнской плате.

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


Радиатор был приклеен на термоклей к чипу






На снимке хорошо видно, что даже уменьшенный радиатор упирается с одной стороны в конденсатор и сата-порт, а с другой стороны находится совсем недалеко от конденсатора, PCI и PCI-E портов.

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

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


Если кому то интересно, то модель моей материнской платы Asus P5KPL-AM IN G31

четверг, 20 мая 2010 г.

Ubuntu 10 и регулятор громкости

В интернете нашумел вопрос о том, что регулятор громкости в гноме пропадает после обновления с 9.10 на 10.04, это не баг а фича, дело в том, что в новой убунте новый апплет регулировки громкости, который находится в Апплете уведомлений, именно в апплете а не в области уведомлений.

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

gnome-volume-control-applet


Чтобы регулятор громкости появлялся всегда, данную команду надо добавить в автозапуск (Система->Параметры->Запускаемые приложения)

суббота, 8 мая 2010 г.

Вымогатели

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



Уважаемый администратор сайта www.domain.ru
Я, почетный член арбитражной комиссии, электронной платежной системы WebMoney, ник - FrichX, заявляю Вам, как администратору сайта domain.ru, о том, что располагаю компрометирующими материалами, относительно Вашей деятельности в сети Интернет, которые нам любезно предоставил Ваш хостинг-провайдер reg.ru.
Мною, на сайте WebMoney, уже была создана персональная страница претензий http://arbitrage.webmoney.ru/asp/claimsurl.asp?procurl=http://domain.ru/ , предназначенная для публикации жалоб на Ваш ресурс, и я предлагаю Вам, добровольно внести пожертвование, направленное на развитие платежной системы WebMoney, для приостановления этого негативного процесса.
Пожертвование от Вас, должно быть передано лично мне на e-mail frichx@meta.ua, в виде реквизитов Paymer-чеков, на общую сумму 300 WMZ, не познее 14 мая 2010 года, иначе, помимо публикации на вышеуказанной странице претензий всех поданных нам претензий на Ваш сайт, я опубликую этот компромат также и в своих личных, многочисленных блогах, таким образом, помимо блокирования вашего WMID, вместе со всеми Вашими электронными денежными средствами, я могу Вам гарантировать существенный отток Ваших клиентов, а может быть и вовсе полное блокирование домена domain.ru на стороне реестра.
Вот несколько ссылок на всего одну из многочисленных моих работ (тысячи подобных документов найдете через поиск ключевых слов "FrichX" и например "gullon"):
http://cripo.com.ua/index.php?sect_id=7&aid=89293
http://frichx.blox.ua/2010/03/LOHOTRON-ot-Gullon-Balconi-SPA-ZOTT-GMBH-CO-KG.html
http://gliffer.ru/content/0/read43806.html
http://frichx.livejournal.com/2487.html
Здесь, как видите, фигурирует ставший вдруг скандальным домен gullon.eu, некогда безупречной и процветающей испанской кондитерской фабрики Gullon, который был полностью блокирован арбитражным сервисом WebMoney и лично мною, теперь его место вполне может занять DOMAIN.RU!
Так что не затягивайте, потому что потом это будет гораздо дороже, а может быть и вовсе станет уже не возможно остановить негативный процесс, инициированный мною.
Также хочу Вас предупредить о том, что я не намерен вступать с Вами в переговоры, и в виде ответа на данное предупредительное сообщение, Вы можете отправить мне только реквизиты Paymer-чеков в выше оговоренной сумме, на выше указанный адрес, и ничего больше!

FrichX

P.S. Любителям пошуметь, и тем, кто желает обвинить меня в мошенничестве или вымогательстве, советую ознакомиться с официальным опровержением этой версии в моем личном блоге http://frichx.livejournal.com/7653.html (с коментариями). К тому же хорошие связи у меня не только в электронных СМИ, доменных регистраторах и хостингах, но и в силовых структурах Украины!




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

Анализируя письмо можно понять то что вся информация берется из сервиса whois, а ссылка на якобы страницу претензий лживая, если написать вместо http://arbitrage.webmoney.ru/asp/claimsurl.asp?procurl=http://domain.ru/ к примеру http://arbitrage.webmoney.ru/asp/claimsurl.asp?procurl=http://durak.com получим иной результат.

Если вы используете хостинг, то скорей всего прикрутили домен к днс серверам своего хостинг-провайдера и в письме будет звучать он.

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

четверг, 6 мая 2010 г.

Как убить процесс в linux

Многих новичков линукса интересует вопрос о том как убить процесс?

Ведь нет привычного вам диспетчера задач Windows (который тоже, иногда, приходится убивать  через диспетчера задач Винды).

1. По PID (Process ID - идентификатор процесса)  -  чтобы узнать список процессов нужно набрать команду
ps -e

У нас выведет очень много процессов, чтобы найти среди них нужный, надо перенаправить вывод в grep, например
ps -e| grep X

Нам выведет процессы которые с таким именем, мы узнаем их номерки процессов, чтобы убить процесс, вводим

kill -9 1234
(где 1234 - номер процесса)

2. По имени процесса
команда ps выводит помимо номера (PID) процесса, его название, можно убить все процессы с таким именем командой

killall gdm 
 

среда, 5 мая 2010 г.

Raid и его мониторинг

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

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

В данной статье я рассмотрю использование mailutils
apt-get install mailutils

Чтобы отправить сообщение нужно сделать такую команду
echo "сервер упал!!!"|mail -s "тема письма" address@host --append="Content-Type:text/plain charset=UTF8; Content-Transfer-Encoding:8bit"

Многие провайдеры поддерживают СМС через e-mail так что вместо почты можно отправлять смс, указывая в адресе к примеру

7XXXXXXXXXX@sms.ycc.ru (мотив)
7XXXXXXXXXX@sms.ugsm.ru (мегафон-урал)
7XXXXXXXXXX@sms.beeonline.ru (билайн)

Итак, вернемся к тому, с чего я начал данную статью - мониторинг RAID массива.


При команде  cat /proc/mdstat выводится примерно такой текст

Personalities : [raid1]
md3 : active raid1 hda7[0] hdb7[1]
      154336320 blocks [2/2] [UU]
     
md2 : active raid1 hda6[1] hdb6[0]
      19534912 blocks [2/2] [UU]
     
md1 : active raid1 hda1[0] hdb1[1]
      19534912 blocks [2/2] [UU]
     
md0 : active raid1 hda5[0] hdb5[1]
      1951744 blocks [2/2] [UU]
     
unused devices:



Тут видно из каких разделов реальных дисков составлены рэйдовские массивы, а из [UU] можно понять что все диски в массиве в норме, если какой то из дисков повредится, то вывод будет к примеру такой



Personalities : [raid1]
md3 : active raid1 hda7[0] hdb7[1]
      154336320 blocks [2/2] [U_]
     
md2 : active raid1 hda6[1] hdb6[0]
      19534912 blocks [2/2] [U_]
     
md1 : active raid1 hda1[0] hdb1[1]
      19534912 blocks [2/2] [U_]
     
md0 : active raid1 hda5[0] hdb5[1]
      1951744 blocks [2/2] [U_]
     
unused devices:
из листинга видно что второй диск завален (hdb, так как на месте него вместо U находится _)

Следовательно понять о слетевшем рэйд-массиве можно по наличию знака нижнего подчеркивания в файле /proc/mdstat

Команда
grep _ /proc/mdstat && echo "Raid упал"
выведет сообщение о том что рэйд упал, если это так. 
Вам осталось только повешать в кронтаб данную команду и вместо echo "Raid упал" 
написать
echo "RAID УПАЛ!!!"|mail -s "raid" address@host --append="Content-Type:text/plain charset=UTF8; Content-Transfer-Encoding:8bit"


С Уважением, Павел Беляев

воскресенье, 2 мая 2010 г.

Удаленное управление VNC + PPTP

Исходные данные
Имеется сервер в офисе, раздающий интернет
Внутренняя сеть сервера - 192.168.8.0/24 (eth1)
Внешний IP сервера 915.915.915.915 (eth0)
На сервере ОС Debian 5.04, на клиентских машинах - Ubuntu 9.10 (gnome)

1. Настраиваем VPN - сервер

Пробрасывать порты со внехи на каждый внутренний комп не только нудно, но и опасно, а при использовании ВПН вы не будете чувствовать ни каких отличий и будете чувствовать себя как будто бы вы находитесь в офисе и можете напрямую обращаться ко всем локальным ресурсам по внутренним адресам


Алгоритм примерно следующий
apt-get install pptpd ppp


Далее правим конфиг /etc/pptpd.conf, в конце дописываем
# IP-адрес сервера в локальной сети 
localip 192.168.8.1 
# Адреса, которые будут выдаваться подключенным клиентам 
remoteip 192.168.8.200-250


правим конфиг /etc/ppp/pptpd-options, в конце дописываем
# требуем авторизацию у клиентов
auth
# Используем шифрование 
require-mppe

создаем учетку для юзера в файле /etc/ppp/chap-secrets (вводим свои значения вместо login и password)
login pptpd password "*"

2. Делаем необходимые изменения в файерволе на шлюзе
#разрешаем обращаться со внехи по порту 1723 (pptp)
iptables -A INPUT -p tcp -m tcp -m multiport -i eth0 --destination-ports 22,1723 -j ACCEPT
#разрешаем форвардинг во внутреннюю сеть из виртуальных интерфейсов и
iptables -A FORWARD -i eth1 -o ppp+ -j ACCEPT iptables -A FORWARD -i ppp+ -o eth1 -j ACCEPT


3. Перезагружаем pptpd
/etc/init.d/pptpd restart

4. Настраиваем nm-applet для того чтобы подцепиться к нашему серверу
apt-get install network-manager-pptp
/etc/init.d/network-manager restart

Заходим в настройки VPN - создаем подключение PPTP
В поле шлюз вводим адрес нашего сервера
Имя и пароль это логин и пароль


















Далее жмем кнопку "дополнительно"
Настраиваем там дополнительные параметры нашего подключения























Теперь пытаемся подключиться к офисной сети попинговать внутренние адреса

5. Настраиваем VNC-server на клиентском компе
Ставим сервер командой
apt-get install vnc4server
Далее открываем файл юзера, который у нас сидит за этим компом
nano /home/user/.vnc/xstartup

Там пишем


#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
gnome-session &


Чтобы запустить VNC клиент наберите команду

vnc4server
После этого нам выведет запрос на пароль (новый) и что то вроде

Starting applications specified in /home/user/.vnc/xstartup 
Log file is /home/user/.vnc/user-desktop:1.log

Смотрим в этот log файл и узнаем порт

vncext: VNC extension running! 
vncext: Listening for VNC connections on port 5901 
vncext: created VNC server for screen 0

Из листинга видно, то что сервер загрузился на порту 5901


6. Подключаемся к VNC серверу со своего админского компа
Ставим на нашем админском компе xvnc4viever
apt-get install xvnc4viewer

Далее запускаем его командой
xvnc4viewer











В открывшемся окне вводим ip:port компа, которым вы хотите поуправлять










Вводим пароль, который вводили при первом запуске vnc сервера (чтоб сменить пароль нужно набрать vnc4passwd)

воскресенье, 25 апреля 2010 г.

Debian Squeeze

Сегодня в ходе очерезных экспериментов убил систему на своем компе, это и стало поводом для того, чтобы установить Debian 6.0 (Squeeze), я его впервые пробовал ставить примерно в октябре-ноябре 2009 года, в то время он был крайне нестабилен, куча программ не работали так как нужно и т.д. и т.п.

Алгоритм примерно следующий
1. Ставим с диска NET-INSTALL систему, при выборе по убираем даже галочку у пункта "базовая система"

2. Прописываем в /etc/apt/sources.list
deb http://ftp.de.debian.org/debian sid main contrib non-free
deb-src http://ftp.de.debian.org/debian sid main contrib non-free

(Если для вас стабильность важнее чем новизна ПО, то вместо sid пропишите squeeze - это очередной будущий стабильный дистрибутив)

3. Обновляем список пакетов и обновляем систему
apt-get update & apt-get dist-upgrade

после чего перезагружаемся и начинаем ставить нужны пакеты (я начал с apt-get install gnome)

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

Вот только в Audacious пришлось поставить вывод не в Pulse Audio, а в ALSA

Приятные мелочи
1. Gedit - научился автоматически распознавать кодировки и открывает виндовые текстовые файлики

2. Ядро 2.6.32 - поддерживает новое оборудование, к примеру моя USB-WIFI сетевушка не работала на Debian lenny а сейчас работает, и что радует - без всяких перебоев или дисконектов

3. В дистрибутиве поставляется Firefox 3.5.9, который имеет приятные доработки

4. flashplugin-nonfree на 64 битном Debian работает гораздо стабильнее, чем на Ubuntu 9.10

5. В новом выпуске поставляется новая версия nm-applet, который умеет работать не только в режиме DHCP

пятница, 23 апреля 2010 г.

iptables - скрипт для раздачи инета, проброса портов и контроля портов на сервере и на локальной сети



#!/bin/sh
###################################
#БАЗОВАЯ КОНФИГУРАЦИЯ СКРИПТА
# Данный скрипт пробрасывает нужные порты на
# один компьютер из локальной сети
# открывает на сервере избранные порты и дает пользователям из локалки
# выходить в инет только по избранным портам
# скрипт создан Павлом Беляевым
###################################
EXTIF="eth1" #внешний интерфейс сервера
INTIF="eth0" #внутренний интерфейс сервера
EXTIP="999.999.999.9" #внешний IP сервера
TCPFORWARD="443,5060" #пробрасываемые TCP порты
UDPFORWARD="6000,30000:30015" #пробрасываемые UDP порты
FORWARDIP="192.168.3.101" #IP адрес компа, на который пробросим порты
SERVICES="22" #  Список портов, открытых на сервере для внешнего мира
OPENPORTS="80,443,22,5190,995,465,5222,5223" # порты, по которым пользователи могут вылазить в интернет
################################################
################################################
#      конец конфигурации скрипта              #
################################################
################################################
#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
PATH=/usr/sbin:/bin:/sbin
FW="iptables"
echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe nf_nat_ftp
#%%%%%%%%%% удалить все действующие правила %%%%%%%%%%%%%%%%%%%%%%%%
$FW -F #удаление всех правил из таблицы filter
$FW -t nat -F #удаление всех правил из таблицы nat
$FW -t mangle -F #удаление всех правил из таблицы mangle
$FW -X # удалить пользовательские цепочки
$FW -P FORWARD DROP # политика по умолчанию - форвард запрещен
$FW -P INPUT DROP # политика по умолчанию - входящие пакеты (для локального приложения) запрещены
###################################################################################################
#
#%%%%%%%%%%%%правила для сервера (фаервола)%%%%%%%%%%%%%%%%%%%%
$FW -A INPUT -p tcp -m tcp -m multiport -i $EXTIF --destination-ports $SERVICES -j ACCEPT # со внехи к серверу можно обратиться только по избранным портам
$FW -A INPUT -i $INTIF -j ACCEPT # из локальной сети к серверу можно обращаться по всем портам
$FW -A OUTPUT -j ACCEPT # сервер может вылазить в инет по всем портам
########################################################################

#Разрешить соединения, которые инициированы изнутри (local)
$FW -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$FW -A INPUT -m state --state NEW -i ! $EXTIF -j ACCEPT
$FW -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
#
#Фильтрация форварда
$FW -A FORWARD -s $FORWARDIP -i $INTIF -o $EXTIF -j ACCEPT
$FW -A FORWARD -d $FORWARDIP -i $EXTIF -o $INTIF -j ACCEPT
$FW -A FORWARD -p tcp -m tcp ! -s $FORWARDIP -m multiport -i $INTIF -o $EXTIF --destination-ports $OPENPORTS -j ACCEPT
$FW -A FORWARD -p tcp -m tcp ! -d $FORWARDIP -m multiport -i $EXTIF -o $INTIF --source-ports $OPENPORTS -j ACCEPT
#
# Masquerade.
$FW -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE # исходящие пакеты с внешнего интерфейса отправляются c внешним IP отправителя

#forward udp and tcp
$FW -t nat -A PREROUTING -p tcp -d $EXTIP -m multiport --dport $TCPFORWARD -j DNAT --to-destination $FORWARDIP #forward tcp
$FW -t nat -A PREROUTING -p udp -d $EXTIP -m multiport --dport $UDPFORWARD -j DNAT --to-destination $FORWARDIP #forward udp
$FW -t nat -A PREROUTING -i $INTIF -p tcp --dport 80 -j REDIRECT --to-port 3128 # входящие пакеты с 80 портом с внутреннего интерфейса перенаправляются на прокси



воскресенье, 18 апреля 2010 г.

Настройка даты и времени на Linksys pap2t

Я купил телефон TEXET TX-D4400A и у меня возникла следующая проблемка - с некоторой переодичностью у меня сбивается дата и время на телефоне, я уже начал грешить на фирму TEXET но оказалось то что этот умный телефон умеет синхронизировать время с телефонной станцией, мой телефон подключен через VoIP шлюз Linksys PAP2T, следовательно появилась необходимость в настройке даты и времени на этом девайсе.

В общем делается это так:
1. Входим в веб интерфейс
2. Нажимаем "Admin Login"
3. Переходим на вкладку "Regional"
4. В поле Set Local Date пишем дату в формате ММ/ДД/ГГГГ (например 04/25/2010)
5. В поле Set Local Time пишем время в формате ЧЧ/ММ (например 23/59)

четверг, 8 апреля 2010 г.

Расшаривание принтеров по сети в Linux

В убунту 9,10 64 я столкнулся с тем, что веб интерфейс не работает, ну и фиг с ним :)

В общем у нас есть внутренняя сеть, защищенная фаерволом, в сети все компьютеры принадлежат подсети 192.168.1.0/24. В общем алгоритм предельно прост

1. Ставим принтеры на всех компах как обычно (это выходит за пределы данной статьи), чтобы они могли печатать локально.

2. На каждом из компов, который учавствует в сетевой печати правим конфигурацию /etc/cups/cups.conf вот такой

LogLevel debug
SystemGroup lpadmin
# Allow remote access
Port 631
# Enable printer sharing and shared printers.
Browsing On
BrowseOrder allow,deny
BrowseAllow all
BrowseAddress @LOCAL
DefaultAuthType Basic
<Location />
Allow From localhost
Allow From 192.168.1.*
# Allow shared printing and remote administration...
Order allow,deny
Allow @LOCAL
</Location>
<Location /admin>
Allow From localhost
Allow From 192.168.1.*
# Allow remote administration...
Order allow,deny
Allow @LOCAL

</Location>
<Location /admin/conf>
AuthType Default
Require user @SYSTEM
# Allow remote access to the configuration files...
Order allow,deny
Allow @LOCAL
</Location>
<Policy default>
<Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job>
Require user @OWNER @SYSTEM
Order deny,allow
</Limit>

<Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
AuthType Default
Require user @SYSTEM
Order deny,allow
</Limit>
<Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>
AuthType Default
Require user @SYSTEM
Order deny,allow
</Limit>
<Limit Cancel-Job CUPS-Authenticate-Job>

Require user @OWNER @SYSTEM
Order deny,allow
</Limit>
<Limit All>
Order deny,allow
</Limit>
</Policy>



3. Перезагружаем cups
sudo /etc/init.d/cups restart

Повторяем это на всех компьютерах и в итоге у нас все принтеры сетевые и со всех компьютеров можно печатать на всех принтерах по сети

Если на каком то из компьютеров нужно расшарить принтер для ограниченного круга людей, то вместо 192.168.1.* пишем нужные адреса или 127.0.0.1 - если расшаривать по сети не нужно

Canon MF4018 и Ubuntu 9.10 x64 (64bitt)

Убунту достаточно умная и современная система и как правило она определяет и скачивает драйвера на оборудование самостоятельно, но бывают такие ситуации, когда приходится "поплясать с бубном", этот расказ именно об этом

В общем купили в офисе такой принтер-копир-сканер и пришлось его настроить на компьютере под управлением Ubuntu 9.10 64bit.

На оффициальном сайте конкретно под этот принтер драйверов нет там где его обычно ищут. (Canon I-sensys MF4018). Нужно зайди в раздел загрузок для принтера Canon MF4010 и скачать там RPM пакет для 64 битных систем, далее конвертируем пакеты из рпм в деб с помощью утилиты alien

sudo apt-get install alien

Заходим в папку с пакетами для 64 битной архитектуры и делаем следующее
sudo alien *.rpm
sudo dpkg -i *.deb

Если принтер уже был установлен в системе (но не печатал), удаляем его, потом выключаем и включаем принтер, убунту сама его установит с теми дровами, которые мы сейчас установили.

Надеюсь что моя статья хоть кому то поможет, если есть какие то вопросы, то задавайте их в комментариях

вторник, 9 февраля 2010 г.

32 битный ModernForex и 64 битная UBUNTU 9.10

Сегодня я расскажу вам о том, как поставить 32 битную версию программы modernforex на 64 битную операционную систему linux, думаю то что данная статья поможет вам по аналогии поставить и другие программы, имеющие подобные проблемы.

На момент написания статьи на сайте fxclub.ru была выложена только 32х битная версия программы modernforex, скомпилированная в deb - пакет.

Чтобы поставить эту программу потребовалось установить пакет libqt-mt,
sudo apt-get install libqt3-mt

а далее поставить modernforex командой
sudo dpkg -i --force-architecture modernforex.deb
 Но тут то вот всё и началось, программа при запуске говорила

modernforex: error while loading shared libraries: libqt-mt.so.3: cannot open shared object file: No such file or directory
Из текста ошибки понятно, то что прога не видит библиотеку libqt-mt, хотя она установлена.

Я обошел эту проблему вот как, сперва скачал вручную 32х битную версию libqt-mt отсюда http://packages.ubuntu.com/karmic/i386/libqt3-mt/download  а далее поставил с теми же ключами, что и ставил modernforex (--force-architecture)

Все бы хорошо, но с данной библиотекой мог работать только modernforex, а другие программы, такие как inkscape ставились из 64 битной ветки и не могли дружить с 32х битной библиотекой, а установка 64х битной библиотеки удаляла 32х битную.

Обошел я это дело вот так:
  • Скопировал файл с 32х битной библиотекой туда, где лежат 32х битные библиотеки 
sudo cp /usr/lib/libqt-mt.so.3 /usr/lib32/
  •  Установил 64х битную библиотеку
sudo apt-get install libqt3-mt

В результате у нас работающий без проблем modernforex с 32х битной библиотекой и остальные 64х битные программы работают со своей 64х битной библиотекой.

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

Публичные DNS от Google

У моего провайдера недавно упали ДНС сервера, потом они заработали, потом опять стали тормозить, меня это реально заколебало и я поставил у себя в настройках
Основной днс: 8.8.8.8
Второй днс:     8.8.4.4

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

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

Samsung N140 и Linux

Свой первый пост я начну с недавнего решения глобальной проблемы по установке линукса на крутой нетбук Samsung N140-KA02.

Данный нетбук обладает достаточно неплохими характеристиками, в нем большой жесткий диск (что появилось на нетбуках совсем совсем недавно), в нем сетевая карта 802.11n, в нем неплохая по качеству камера, хорошее разрешение дисплея, хороший аккумулятор итд итп до бесконечности, а самое главное - этот девайс можно таскать с собой хоть куда, потому как он легкий.

Поставил я на этот нетбук Ubuntu 9.10 (думаю о том как поставить линукс с флешки и уж тем более убунту статей достаточно и на самом офф сайте убунты это описано подробно.), проблема заключается вот в таком событии

Jan 25 01:49:22 user-laptop kernel: [ 248.816170] ata1.00: exception Emask 0×0 SAct 0×0 SErr 0×0 action 0×6 frozen
 Такое событие происходит примерно спустя 4-6 минут после загрузки системы, система провисает намертво секунд на 30, а потом развисает. Так же это событие может происходить после всяких засыпаний, ожиданий итд.

Описание бага и решение описано здесь http://bugzilla.kernel.org/show_bug.cgi?id=13416

Короче решается это на данный момент только перекомпиляцией ядра (в ядре 2.6.31-17 эта проблема еще не решена), скачиваем последнее стабильное ядро (на сегодняшний день это 2.6.32.5) отсюда http://kernel.org/, ставим на него патч отсюда http://marc.info/?l=linux-ide&m=122724081603679&w=2


1. Скачиваем и распаковываем  архив с ядром  
tar -jxvf linux-2.6.32.5.tar.bz2
2. Заходим в папку с ядром  
cd  linux-2.6.32.5
3. Скачиваем готовый конфиг ядра тут http://sourceforge.net/projects/n140kernel/files/_.config/download переименовываем его в .config и кладем в папку с ядром

4. Патч сохраняем в текстовом файле с названием path-n140 и тоже кладем в папку с исходником ядра

5.Применяем патч командой  
patch -p1 -i patch-n140
6. Ставим все необходимые для этого утилиты  
sudo apt-get install build-essential kernel-package fakeroot initrd-tools libncurses-dev gcc
7. Если нужно что то поменять в параметрах, то запускаем конфигуратор
make menuconfig

8. Компилируем  
make-kpkg --initrd kernel-image kernel-headers
8. После завершения будут созданы два пакета в каталоге на уровень выше (../), ставить их командой

dpkg -i имя пакета

Для тех, кому лень компилировать или нет времени, выкладываю готовое ядро для Ubuntu (скорей всего подойдет и для Debian) данные ядра гарантированно работают на N140-ka02 в Ubuntu 9.10 http://sourceforge.net/projects/n140kernel/files/N140kernel/


Конфиг основан на том, что выкладывали на сайте archlinux.org

Если у кого то есть возможность протестировать эти ядра в N130 или других версиях N140(KA01\02\03\04) - отписываемся в комментах

Дополнение 1:
К сожалению данное решение не совсем решило проблему, я гонял ноутбук от батареи 2 дня, перезагружал его раз 10-15, переключал режимы сеть/батарея, всяко разно пытал и вот под конец 2-ых суток глюк опять всплыл, ноут провисал во время загрузки, сейчас я загрузился со стандартного ядра, удалил самопальное ядро и заново его поставил - глюк исчез.
Очень странно, если целые сутки ноут выдерживал мои испытания и не глючил не во время загрузки не спустя 5 минут. То почему он заглючил потом? Нужно выяснить что изменяется спустя 2е суток и почему портится система?

Дополнение 2:
Решение проблемы появилось в официальном ядре 2.6.34, чтобы его скомпилировать, нужно поставить на kernel-package v12 чтобы скомпилировать ядро и необходимо поставить новый биос 05CU, выпущенный 5 января 2010 года (биос обновляется через винду) скачать можно тут. Новый kernel-package качаем тут.

В общем компилируем и тестим.