четверг, 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