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

Контроль температуры процессора в Linux Debian (Ubuntu)

Предыстория: Сейчас в Питере очень холодно, -18 градусов при 98% влажности, включил ноутбук и надеюсь, что согрею пальцы его клавиатурой. А от чего зависит температура клавиатуры? Правильно, от температуры процессора:)
Соответственно, стало интересно, какая же сейчас температура у процессора.
Задача: Найти способ, как узнать температуру процессора в Linux Debian (Ubuntu)
Решение: Необходимо установить пакет lm-sensors.
Устанавливается он следующей командой:
sudo aptitude install lm-sensors
После того, как он установится, запускаем из-под рута приложение sensors-detect:
sudo sensors-detect
Оно определит, значения каких датчиков вы сможете контролировать. В моем случае все свелось к нажатию энтеров:)
Итак, когда все датчики определены, запускаем приложение sensors:
$ sensors
acpitz-virtual-0
Adapter: Virtual device
temp1:       +42.0°C  (crit = +98.0°C)
Вот и все, температура процессора у меня составляет 42 градуса цельсия!:)

P.s. необходимо также отметить, что существуют специализированные программы для мониторинга системы, которые показывают температуру процессора, его загрузку, скорость передачи данных по сети, заполненность жестких дисков, нагрузку на винчестеры и многое другое другое. Это conky и gkrellm

четверг, 18 февраля 2010 г.

JQuery - изучение. Часть 2. Пробы.

Продолжение этой статьи.
Еще один пример - отмена действий по умолчанию.
Теперь мы укажем в head вместо файла jquery.js, лежащего у нас на компьютере, файлик, лежащий на сайте jquery на Гугловском CDN. Таким образом, мы сможем понизить нагрузку на наш сервер, засчет того, что библиотека jquery будет запрашиваться не с нашего сервера, а с серверов гугла:)
Приведем страницу к следующему виду:
 <!DOCTYPE html>
 <html lang="en">
 <head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>
   <script type="text/javascript">
     $(document).ready(function(){
       $("a").click(function(event){
         alert("As you can see, the link no longer took you to jquery.com");
         event.preventDefault();
       });
     });
  
   </script>
 </head>
 <body>
   <a href="http://jquery.com/">jQuery</a>
 </body>
 </html>
 Строчка "event.preventDefault();" означает предотвращение дефолтного действия по событию. В данном случае это значит, что при клике по ссылке не будет осуществлен переход по ней, который является действием по умолчанию для события "клик по ссылке".
Пример - добавление и забирание CSS-класса.
На всякий случай, тем, кто не знает, что такое CSS - предлагаю ознакомиться с этой статьей в Википедии.
Добавим в head нашей страницы следующие строки:

<style type="text/css">
    a.test { font-weight: bold; }
</style>
Они описывают класс ссылок test. Ссылки, принадлежащие этому классу, будут написаны жирным шрифтом.
Далее, в нашу функцию, вызываемую при нажатии на ссылку, добавляем следующую строчку:
$("a").addClass("test");
В результат при клике по ссылки все ссылки в документе станут написаны жирным текстом.
Эффекты.
В JQuery присутствует поддержка многих эффектов, призванных сделать ваши страницы как можно более красивыми и оригинальными.
Например, заставим нашу ссылку постепенно исчезать после клика по ней.
Для этого в обработчик клика следует добавить следующую строку:

$(this).hide("slow");
И все, мы видим, как ссылка постепенно исчезает после клика.
На этом на сегодня всё, продолжим разбираться с JQuery в следующих статьях:)

среда, 17 февраля 2010 г.

JQuery - изучение. Часть 1. Что это за зверь?

Что такое JQuery
В интернете я все чаще и чаще натыкаюсь на слово JQuery почти во всем, что так или иначе связано с дизайном сайтов,  разработкой веб-приложений, AJAX-запросами и прочими интернет-фишками. Естественно, что мне захотелось разобраться, что же это за зверь такой и как его использовать в своих целях.
Итак, определение следующее:
jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.
То есть, говоря простыми словами, JQuery это библиотека на языке JavaScript, которая упрощает разработку веб-страничек (в том числе обработку событий, добавление анимации и AJAX-взаимодействий для ускорения web-разработки). Как говорят разработчики, JQuery  должна полностью изменить способ, которым  мы пишем JavaScript-код.
С чего же начать изучение этого чуда? Я решил, что лучше всего для этого подходит документация и примеры с официального сайта.

Скачиваем JQuery
С начала, разумеется, надо скачать JQuery-библиотеку.  В разделе "Скачиваем JQuery" приведены ссылки на различные релизы. Лучше всего, конечно, скачать самый последний - JQuery 1.4.1.  Скачиваем его и кладем в нужную папочку, у меня это "scripts":
wget http://code.jquery.com/jquery-1.4.js
Отлично, теперь библиотека JQuery установлена на вашем компьютере. Остается только использовать. Для этого хорошо бы понять, как она работает. На сайте JQuery этому посвящена отдельная страница.
Итак, попробуем следовать в точности их рекомендациям.
Создаем страничку со следующим кодом:
<!doctype html>
<html>
<head>
<script type="text/javascript" src="jquery-1.4.js"></script>

<script type="text/javascript">

</script>
</head>
<body>
<a href="http://jquery.com/">jQuery</a>
</body>
</html>
В строке <script type="text/javascript" src="jqery-1.4.js"></script>" "jquery-1.4.js" необходимо заменить на путь к скачанному файлику jquery-1.4.js, в моем случае - это "script/jquery.js". Если у вас этот файлик лежит в той же директории, что и файл странички, который мы только что создали, то ничего менять не надо:)
Запуск функций при загрузке документа:
Нам предлагают рассмотреть самый первый пример JQuery:
Когда JavaScript программисты хотят, чтоб какое-либо событие выполнилось после того, как страница загрузится, они обычно пользуются следующим способом:
window.onload=function(){alert('welcome!');}
Внутри фигурных скобок тот код, который исполнится при срабатывании события onload объекта window.  Он начинает выполняться уже тогда, когда еще не загрузились все картинки. В JQuery есть такое понятие, как "событие готовность", которое выполняется, когда документ полностью готов к манипулированию им.
Добавим обработчик к событию нажатия на ссылку, ведущую на сайт JQuery:
для этого нам надо в элемент между тегами <script type="text/javascript"> и </script> вписать следующее:
    $(document).ready(function(){
       $("a").click(function(event){
         alert("Спасибо за визит!");
       });
     });
Открываем страницу, кликаем по ссылке и видим, что перед переходом на другой сайт выдает сообщение "Спасибо за визит!".
Словами это можно описать так:
Когда документ полностью загрузился
   при нажатии на a
      выдать сообщение
Итак, в целом я получил кое-какое представление о том, как работает JQuery, что это такое и даже рассмотрел пример использования JQuery.
Постараюсь в дальнейших постах углубиться в эту область, ведь JQuery - это действительно отличный инструмент.

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

Как нажать Ctrl+Alt+Del при управлении компьютером через Remote Desktop (Windows, разумеется)

Как известно, RDC (Remote Desktop Client) позволяет удаленно заходить и управлять на компьютеры Windows, находящиеся вне пределов досягаемости.
Однако, если вы захотите, скажем, проверить список запущенных процессов, то вам необходимо будет нажать Ctrl+Alt+Del. Но это приведет к тому, что запустится Task Manager (Список процессов) на локальной машине, а не на удаленной, так как эта комбинация клавиш исторически привязана к локальному компьютеру. Для того, чтобы выполнить Ctrl+Alt+Del на ремоут десктопе, нажмите просто Ctrl+Alt+End. Результат вас обрадует:)
Кстати, аналогичная ситуация с нажатием Alt+Tab на удаленной машине. Для перелистывания окон на ней нажмите Alt+PageUp или Alt+PageDown.

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

Аналог Paint и Paint.Net под Linux Debian (Ubuntu)

Не знаю, как у вас, а у меня часто возникает ситуация, когда надо обрезать фотографию, как-то обработать скриншот и все такое. В Windows для этих целей я использую Paint, который всегда и везде под рукой. Однако под линуксом пейнта нет:(
Естественно, первое, что пришло мне в голову - использовать GIMP - GNU Image Manipulation Program. Однако, ГИМП - это скорее замена Adobe Photoshop'a, нежели Paint'a. Безусловно, он предоставляет огромные возможности, но обрезать в нем фото - это как стрелять из пушки по воробьям.
И вот, внезапно на просторах интернета обнаружилась Pinta - как пишут на официальной странице проекта, она представляет собой упрощенную альтернативу GIMP'a для рядовых пользователей. Сейчас она находится в ранеей стадии разработки, версия, на момент публикации поста - 0.1.
Возможности Пинты следующие:

  • Включены такие тулзы, как карандаш, кисть, ластик, выделения
  • Поддержка работы со слоями
  • Неограниченная история изменений
  • Такие эффекты, как инверсия, сепия  и пр.
Итак, установка этой программки выполняется следующим образом:
1) Скачиваем deb-пакет с сайта:
wget http://dl.dropbox.com/u/1481774/pinta-0.1.deb
Вместо использования этой команды, можно скачать вручную с официальной страницы.
2) Устанавливаем:
sudo dpkg -i  pinta-0.1.deb
И все, запускаем через обычное меню, либо командой:
pinta
Внизу картинка с сайта разработчика:

четверг, 11 февраля 2010 г.

Настройка WiFi - интернета в Linux Debian (Ubuntu) на ноутбуке Lenovo u350 (карточка Intel)

Итак, я собрался с силами и решил таки поковыряться и настроить вай-фай на Линуксе Дебиан. Путь, пройденный мною, также действует и для Убунту, Кубунту и пр.
Во-первых, необходимо установить пакет "wireless-tools", который предоставляет набор инструментов для работы с беспроводными соединениями. Так же стоит установить wpasupplicant - клиент для работы с WPA и WPA2 сетями.
Во-вторых, необходимо установить модуль драйвера для вашей wifi-карточки. Который именно вам нужен, вы можете узнать по этой таблице. Если вы вдруг не знаете, какая wifi-карта у вас, можете узнать это, выполнив следующую команду:
lspci | less
Она выведет список всех pci-устройств, использующихся в вашей системе. Если же у вас usb-карта, примените команду
lsusb | less
Ее действие такое же, как у lspci, только для usb-портов. Подробнее обо всех методах узнавания своих устройств вы можете прочитать на debian wiki.
В случае карточки от Intel, вам необходим модуль iwlagn. Он для своей корректной работы требует драйвера, которые вы можете найти на странице Intel. Необходимо скачать оттуда требуемый драйвер для карточки, распаковать его и скопировать в папку /lib/firmware/:
tar -xvf iwlwifi-5150-ucode-8.24.2.2.tgz
cp iwlwifi-5150-ucode-8.24.2.2/iwlwifi-5150-2.ucode /lib/firmware/
В-третьих, вам необходимо сконфигурировать сеть.
Для этого откройте файл /etc/network/interfaces вашим любимым редактором, например, vim:
vim /etc/network/interfaces
, затем добавьте в него следующие строки:
auto wlan0
iface wlan0 inet dhcp
wpa-ssid mynetworkname
wpa-psk mysecretpassphrase
, в случае, если хотите подключиться к сети с WPA / WPA2. Про остальные функции вы, опять же, можете почитать на debian wiki. Там же описано, как настраивать сеть через графические интерфейсы (GUI).
После того, как вы все настроили, необходимо выполнить последнюю команду:
sudo ifup wlan0
И всё!) Радуемся интернету по воздуху!