Архив 2011

Получение случайных объектов из queryset в Django

Получение случайных объектов из queryset в Django

Часто в проектах Django необходимо сделать выборку случайных записей из базы.

О
бычно для получения случайного набора элементов (среза элементов) в Django "обычным" способом делают так:

Book.objects.all (). Order_by ('?')[: 10]

Приведенный выше код, сортирует все книги в произвольном порядке, а затем выбирает первые 10 объектов.
Этот подход не является
, правда, эффективным в MySQL. С использованием "ORDER BY ?" действительно это дорого для запроса.

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

Например можно случайный срез записей делать так
:

import random
count = Book.objects.all().count()
slice = random.random() * (count - 10)
Book.objects.all()[slice: slice+10]


Приведенный выше ...

Читать далее

Бесплатный хостинг php mysql - это реально

Бесплатный хостинг php mysql - это реально

Хостинг бесплатно без рекламы - одна из самых распространенных фраз в поисковых системах от начинающих разработчиков, да и просто любителей бесплатного.

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

Получить хостинг без оплаты можно просто принимая участие в конкурсах от GoodHoster.NET.

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

По словам сотрудников компании из онлайн-чата ( который работает 24 ...

Читать далее

Как ограничить скорость (трафик) CentOS

Как ограничить скорость (трафик) CentOS

Иногда возникает проблема, когда какой-то пользователь в VPS или на выделенном (dedicated) сервере в стойке "жрет" общий канал, и его, (инет канала), не хватает другим клиентам в этой же стойке. (Имеется в виду, что вся стойка подключена к одному инет каналу)

Качаем написанный уже код (вирусов нет - проверено =)

cd /etc/rc.d/

wget http://webnoob.info/downloads/shape.tar

tar -xpf shape.tar

А теперь настраиваем данный скрипт, в файле rc.shape.down.classes нас интересует строчка:

$TC class add dev $DEV_P1_DOWN parent 1:1 classid 1:900 htb rate 20Mbit ceil 20Mbit

20Mbit - это и есть наш лимит канала ...

Читать далее

South migrate: как поле ForeignKey сделать ManyToMany без потери данных

South migrate: как поле ForeignKey сделать ManyToMany без потери данных

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

Итак, задача - нужно превратить поля таблицы базы данных с отношенияем FK в M2M отношения при помощи South и при этом не потерять существующие заполненные данные.

1. Вот исходная модель (образец), приложение  назовем appz, допустим.

class TestData(models.Model):
    field1 = models.CharField(max_length=200)
    field2 = models.CharField(max_length=200)

class Knight(models.Model):
    name = models.CharField(max_length=100)
    additional_field_new_name = models.CharField(max_length=155, default='')
    data ...

Читать далее

Django аутентификация. Email-адрес вместо имени пользователей

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

Чтобы написать простую аутентификацию по email на стороне
сервера в джанго, поступим  следующим образом:

1. В settings.py добавим следующие строки (замените youproject именем вашего приложения):

AUTHENTICATION_BACKENDS = (
    'youproject.backends.EmailAuthBackEnd',
    'django.contrib.auth.backends.ModelBackend',
)

2. Создайте файл с именем backends.py с таким соержанием и поместите его в корневой папке (т.е. той же папке, settings.py)

from ...

Читать далее

Zinnia и его альтернативы

Zinnia и его альтернативы

На Django (джанго) при желании можно самому сесть и написать простенький блог буквально за час c довольно немалыми возможностями. Да! И это будет ваш код и Вы будете знать что делается у вас на сайте и как :).

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

Читать далее

Продвижение неизбежно - проверим работу поисковиков?

Продвижение неизбежно - проверим работу поисковиков?

Продвижение неизбежно - конкурс от сайта webmasters.ru меня заинтересовал как материально так и спортивным азартом соревнования в продвижении.

Суть конкурса

Продвинуть два слова неизбежное продвижение как можно выше( фраза употреблена только в целях СЕО...). Конкурс интересен, тем более обещают положить что-то в кошелек :), если попасть в ТОПы. Так почему бы не проверить и свои силы в этом деле? Ну и заодно проверить или работают некоторые методы продвижения. Некорые, возможно, считают неизбежно продвигать невозможно (эта фраза всего лишь только в целях продвинуть ... )? Но, так как основной интерес состоит в том, чтоб это продвижение состоялось абсолютно без затрат, я буду пробовать поднять ...

Читать далее

Система вопрос-ответ osqa на сайте

Система вопрос-ответ osqa на сайте

Приветствую, уважаемый читатель моей колонки.

Долго я думал над тем чем бы таким заменить возможности форума и иметь возможность помогать посетителям решать проблемы. И вот сегодня я определился, что наиболее удачным для моего сайта будет система open source Q&A - система Вопрос-Ответ с открытым исходным кодом. Это то что Вы видите при попадании на главную (при нажатии на название сайта в верху, например)

Почему именно она ?
Ну во впервых она написана на с использованием Django и у нее открытый исходный код. Ну и перепробовав еще несколько для сравнения мне эта наиболее понравилась как не особо нагроможденная и с большим функционалом ...

Читать далее

Установка и настройка NFS в Linux CentOS

Установка и настройка NFS в Linux CentOS

Network File System (NFS) — протокол сетевого доступа к файловым системам, первоначально разработан Sun Microsystems в 1984 году. Основан на протоколе вызова удалённых процедур (ONC RPC, Open Network Computing Remote Procedure Call, RFC 1057, RFC 1831. Позволяет подключать (монтировать) удалённые файловые системы через сеть.

NFS обычно уже есть в системе. Это можно проверить так:

chkconfig --list nfs
nfs             0:off   1:off   2:on    3:on    4:on    5:on    6:off

Добавляем в автозагрузку и стартуем

chkconfig nfs on 
chkconfig portmap on
service portmap start 
service nfs start

Если же NFS не стоит - ставим из репозитария:

yum -y install nfs-utils ...

Читать далее

Защищённая авторизация: Javascript+PHP+MD5

Если возникает проблема отправки данных на сервер защищённым способом (особенно это касается логина и пароля пользователя), а использовать SSL нет возможности, то можно воспользоваться вот таким решением.Качаем отсюда файл md5.js (реализация алгоритма шифрования md5 на JavaScript).Создаём страницу с формой авторизации

<?php $_SESSION['key'] = mt_rand();?><br><scripttype="text/javascript"src="js/md5.js"></script><br><scripttype="text/javascript"src="js/secure.js"></script><br><formaction="login.php"method="post"onsubmit="return crypt_form(this, 'key', 'hash')"><br> Login:<br><inputtype="text"name="login"/><br>    Password:<br><inputtype="password name="pass" /><br><input type="submit ...

Читать далее

Транслит средствами JS. Пример из жизни

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

Для начала - скрипт, выполняющий преобразование.



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

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

<a href='javascript ...

Читать далее

Валидатор форм на стороне клиента

Этот скрипт позволяет быстро организовать проверку форм на сайте. Написал для себя в ходе одного из последних проектов, ибо надоело всё время писать конструкции вида

  1. if(!(document.forms[0].login.value)){
  2.     /*bla-bla-bla*/
  3. elseif(!(document.forms[0].password.value)){
  4.    /*bla-bla-bla*/
  5. }
  6. elseif(!(document.forms[0].email.value)){
  7.     /*bla-bla-bla*/
  8. }

Скрипт выглядит так.

  1. var js={
  2.     assoc:function(data, func){
  3. for(i in data)if(data[ i])func(data[ i], i);return data;
  4.     },
  5.   validate:function(frm, setup){
  6. var errFunc = arguments[2] || function(e){for(i in e)alert(i+':'+e[ i])}, errs = {}, cnt = 0, stop = arguments[3], deferr = arguments[4], ip = function(c ...

Читать далее

Пример работы с AJAX. Набор функций.

Простой набор функций для построения клиентской части AJAX-приложения.

var ajax = {
   /* Отправляет запрос к серверу. Базовая функция, все остальные являются обёртками для неё */
   query:function(url, ok){
      var req = (function(){
         /* Создаём AJAX-объект */
         try{return new XMLHttpRequest()}
         catch(e)
         {
            try{return new ActiveXObject('Microsoft.XMLHTTP')}
            catch(e){throw new Error('Your browser does not support AJAX')}
         }
      })(), a = arguments, c_err = a[2] || function(){}, data = a[3], mtd = a[4]||(data?'POST':'GET');
      with(req){
         /* Вешаем обработчик */
         onreadystatechange =function(){
            if(readyState == 4 && ok)(/200|304/.test(status)?ok:c_err)(req);
         };
         open(mtd, url, true);
         /* Выставляем нужные заголовки и отправляем запрос */
         if(mtd=='POST')setRequestHeader ...

Читать далее

Изменение размера swap-файла при помощи файлов. Resize swap.

Иногда бывает что при установки приложений. Я например ставил Сервер Oracle требуется временно увеличить размер свопа, иначе ставиться не хочет. Можно делать это просто создавая обычные файлы и монтировать их в основному свопу как оказаывается. Все очень просто ...

Например "своп_файл" = /mnt/swap1

dd if=/dev/zero of=своп_файл bs=1024 count=размер_свопа_в_кбайтах mkswap своп_файлswapon своп_файл

вот и все ...

На заметку: Менеджеp памяти Linux огpаничивает pазмеp любой swap области 127.5 мегабайтами. Может быть создана swap область большего pазмеpа, но будут использоваться только пеpвые 127.5 Мб. Однако можно создать до 16 swap областей с общим объемом почти 2 Гб ...

Читать далее

Как включить подсветку ситаксиса в vi (vim)? Отвечаем.

Для этого необходимо отредактировать файл /etc/vmrc или может быть /etc/vim/vmrc:

#sudo vi /etc/vim/vimrc

находим строку

"syntax on

удалем комментарий (")

syntax on

и сохраняем. вот и все.

Если вы хотите использовать более контрастные цвета в подсветке синтаксиса можно еще раскоментировать параметр

set background=dark

Читать далее

Конвертирование текста в поле ввода из русского в английский. Вставка BB-кодов в текстовое поле.

Конвертирование текста в поле ввода из русской раскладки в английскую и обратно.

<script type="text/javascript">
function convertLayout(e, elem)
{
   e = e || window.event;
   var eng='qwertyuiop[]asdfghjkl;\'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?@#$^&|';
   var rus='йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,"№;:?/';
   var src=elem.value;
   if((e.ctrlKey) && ((e.keyCode == 0xA) || (e.keyCode == 0xD)))
   {
           for(i=0;i<src.length;i++){
         for(j=0;j<eng.length;j++)
         {
            if(src.substr(i,1)==eng.substr(j,1))
               src=src.replace(src.substr(i,1),rus.substr(j,1));
            else if(src.substr(i,1)==(rus.substr(j,1)))
               src=src.replace(src.substr(i,1 ...

Читать далее

Установка Skype в Linux\Debian

Установить последнюю версию skype можно с помощью вот таких вот команд

wget -c -P /tmp/ http://www.skype.com/go/getskype-linux-deb-32
dpkg -i /tmp/getskype-linux-deb-32
sudo apt-get -f install

При появлении зеленого цвета вместо изображения камеры запустите skype так:

LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

если все исправилось тогда делаем файлик

sudo gedit /usr/bin/skype2

туда ложим код ( для 32 разрядных систем)

#!/bin/sh
LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

и делаем его выполняемым

sudo chmod +x /usr/bin/skype2

Теперь можно запускать skype командой skype2 или сделать ярлык

Иногда бывает указать libv4l недостаточно ... и при старте ...

Читать далее

Настройка звука в Ubuntu. Установка ALSA драйвера для hda-intel.

Искал информацию как установить alsa из исходников. У меня звукова карта Hda-intel. Накопал такое...

Сходить на alsa-project.org нужно и оттуда выкачать последнюю версию (на этот момент 1.0.24 ).

1.Устанавливаем необходимые пакеты для сборки ПО из исходных текстов и для сборки АЛСА:

sudo apt-get install linux-headers-`uname -r` build-essential gcc gawk libgettext-ruby-util libgettext-ruby1.8 libncurses5-dev xmlto

xmlto - это только то что касается АЛСА - так как при сборке ругалось что нехватает ...


2.Качаем исходники ALSA с официального сайта

wget ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.24.tar.bz2
wget ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0 ...

Читать далее

many-to-many и many-to-one relationships в django

Часто спрашивают, что значит в моделях django:
one-to-one
one-to-many
many-to-one
many-to-many

Это все из теории баз данных. Немножко распишу.

one-to-one -> один к одному
это говорит что бве таблицы между собой связываются по 1 полю и в каждой из них это поле имеет 1 единственное уникальное значение.
для примера если у вас есть таблица users ( id, login, pass ) и таблица profile( id, user_id, name, icq )
Так вот тут например для каждого пользователя не можно создавать 2 профиля поэтому будет связь 1 к 1 то есть для 1 пользователя 1 профиль. и связь через поля user.id = profile.user_id

one-to-many -> один ко ...

Читать далее

Рекомендации и удобства по работе с python и django

Для проверки настройки параметров базы в django (которые указываются в settings.py) зайдите в django shell (manage.py shell) и выполните такие команды:

from django.db import connection
cursor = connection.cursor()

Если не было сообщений о ошибке, значит все ОК, иначе – что-то не правильно указали.Для просмотра подключенных модулей для текущего python: в обычной консоле набирите:

python -c "help('modules')"


или в интерактивном интерпретаторе python’a:

help('modules')

Для просмотра PYTHONPATH в консоле python наберите:

import sys
sys.path

В django существует два простых способа просмотра значений переменных при отладке:
* при помощи обычного print
* вставка оператора assert False, variable_name , где ...

Читать далее

Быстрый доступ к функциям Панели управления и оснасткам MMC

Большинство компонентов Панели управления WIndows (или апплетов Панели управления, Control Panel Applets) представляют собой файлы с расширением .cpl. И быстро получить доступ к ним можно из командной строки (командой "Пуск - Выполнить" или в окне cmd). Для этого необходимо выполнить команду:

control имя_файла.cpl

или просто

имя_файла.cpl

Вот список некоторых основных приложений Панели управления:

alsndmgr.cpl - Realtek Sound Manager. Утилита для расширенной настройки звуковых параметров. Обычно устанавливается вместе с драйверами для звуковых карт Realtek.
access.cpl - специальные возможности (залипание клавиш, управление указателем мыши с клавиатуры etc.).
appwiz.cpl - установка/удаление программ.
desk.cpl - свойства Рабочего стола (заставка, обои, настройка параметров ...

Читать далее

rundll32 и доступ к системным функциям

rundll32 - это средство командной строки, позволяющие выполнять некоторые функции, экспортируемые из DLL-библиотек. Его "предшественником" был rundll, использовавшийся в 16-разрядных версиях Windows. Эта прога позволяет выполнять функции только из тех DLL, в которые подобная возможность была заложена при разработке.Синтаксис команды rundll32 такой:

rundll32 <dllname>,<entrypoint> <optional arguments>

dllname - название библиотеки.
entrypoint - имя процедуры/функции.
optional arguments - параметры.

Вот список некоторых команд, которые можно выполнять с помощью rundll32:

rundll32 shell32,Control_RunDLL hotplug.dll - диалоговое окно "Безопасное извлечение устройства"
rundll32 diskcopy,DiskCopyRunDll - вызов диалога "Копирование диска"
rundll32 mshtml.dll,PrintHTML "HtmlFileNameAndPath" - распечатать документ HTML, где "HtmlFileNameAndPath" - путь к файлу и его имя ...

Читать далее

Некоторые полезные команды Windows

sfc /scannow - восстановление системных файлов.
iexpress - стандартный системный архиватор для работы с файлами формата CAB.
chkdsk - проверка дисков
fsquirt - мастер передачи файлов Bluetooth
msconfig - настройка системы
msinfo32 - сведения о системе
clipbrd - управление буфером обмена.
sigverif - проверка цифровой подписи у системных файлов.
mstsc - подключение к удалённому рабочему столу.
regedit - редактор реестра
eudcedit - редактор личных символов
dxdiag - служба диагностики DirectX
assoc - вывод либо изменение сопоставлений по расширениям имен файлов
cacls - отображение/редактирование списков управления доступом (ACL) к файлам
chcp - вывод либо установка активной кодовой страницы
comp - сравнение содержимого двух файлов или двух наборов файлов
compact - отображение/изменение сжатия файлов в разделах NTFS ...

Читать далее

Управление CD/DVD-приводом с помощью Windows Scripting Host

Когда искал инфу по виндовым командам, случайно наткнулся на вот такую вот прикольную вещь)) В данном примере в качестве языка используется VBScript, но можно использовать и JS.Создаём файл с расширением .vbs и пишем там вот такой код:

  1. Set oWMP = CreateObject("WMPlayer.OCX.7" ) 
  2. Set colCDROMs = oWMP.cdromCollection 
  3. colCDROMs.Item(Wscript.arguments.Item(0)).Eject 
  4. Wscript.CreateObject("Wscript.Shell").Run "taskkill /im wscript.exe /f"

В первой строчке создаётся объект WMPLayer.OCX, в составе которого имеется множество свойств и методов для управления мультимедийным контентом. В том числе и коллекция (массив объектов) cdromCollection, элементы которой соответствуют всем оптическим приводам, установленным в ...

Читать далее

Empaty - Проблемы с ICQ

В этой статье буду обновлять все мои проблемы в использовании Empaty и возможные их решения. Чаще всего они случаются с ICQ.

Если при подключении ICQ в Empathy возникает ошибка “Network error”.

Часто эта проблема решается достаточно просто, временным отключением SSL для ICQ. Для этого в консоли прописывается:

$ mc-tool list | grep icq
$ mc-tool update haze/icq/_***** bool:use-ssl=false
$ mc-tool update haze/icq/_***** bool:use-clientlogin=false

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

После перезапуска ошибка исчезает.

Если появляется ошибка “Authentication failed”.

Следует сменить сервер подключения login.messaging.aol.com на login.icq.com

Для сброса ...

Читать далее

Установка и настройка Nagios и NRPE из исходников

Установка и настройка Nagios и NRPE из исходников.

Версия для начинающих чайников-пингвинов. Более детальный мануал. Установка из исходников.

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

Создаем юзверя и даем ему пароль
-------------------------------------------
/usr/sbin/useradd -m nagios
passwd nagios
-------------------------------------------

Создаем группу nagcmd и даем права на исполнение команд через веб-интерфейс, добавляем пользователя nagios и apache в эту группу
-------------------------------------------
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -a -G nagcmd nagios
/usr/sbin ...

Читать далее

IP адреса Яндекса

Я более чем уверен, что большинство системных администраторов сталкивалось с такой вещью, как бан IP адреса какого-нибудь поисковика и в результате сайт выпадал с индекса, у меня время от времени начали возникать подобные проблемы с Яндексом (кстати странно, так как в бан в основном попадал только он), и мне понадобился список его IP адресов, сапорт Яндекса меня культурно "послал", и ничего не осталось как искать IP-шники самому, как их нарыл не скажу (партизанская тайна), но список приведу ниже в помощь другим:
77.88.4.0 - 77.88.4.255
77.88.5.0 - 77.88.5.7
77.88.5 ...

Читать далее

Пример Python-Django-PyFacebook.

Пример Python-Django-PyFacebook.

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

Как работают Facebook приложения?

  1. Пользователь делает запрос к  apps.facebook.com/yourapp/page1/
  2. Сервера Facebook перенаправляют( делают свой отдельный) этот запрос yourserver.com/page1/
  3. Вы получая эти запросы можете обращаться к Facebook API, и использовать FQL для запросов к таблицам Facebook.
  4. Вы отправляете обратно страницы, в ...

Читать далее

phpmyadmin. Режим работы Designer. export pdf

phpmyadmin. Режим работы Designer. export pdf

Долго подбирал средства визуальной разработки структуры БД для MySQL и остановился опять таки на phpmyadmin :) понравился в режиме работы Designer.
Начинающие работать с этим средством разработки наверняка как и я столкнутся с некоторыми проблеммами. Попробуем решать их в этой теме.
И начну с небольшого описания и нескольких уже решенных вопросов.
Режим работы Designer - позволяет визуально связать таблицы MySql даже такие как MyISAM ( не забываем что MyISAM не поддерживает (пока) внешних ключей "физически". ) и получать граф-схему связей в базе данных.

Поддерживает выгрузку граф-схемы в документ *.pdf

Частые вопросы:
1) создаю внешние связи (FOREIGN KEY) с помощью Дизайнера связей (Designer) PhpMyAdmin'a ...

Читать далее

Nagios plugin check_oracle_health для мониторинга Oracle

  Nagios plugin check_oracle_health для мониторинга Oracle

Вот решил поставить плагин для Нагиос check_oracle_health для мониторинга Оракла
официальный сайт check_oracle_health

Изначально установлены :

  • RH
  • Oracle Client ( с настроенным tnsnames.ora)
  • perl (моя версия 5.8.8)
  • perl-DBI
  • DBD-Oracle- (моя версия 1.22) //для взаимодействия плагина с оракловым клиентом.
  • Oracle client 10.1.0.3
  • Nagios 3.0.4


если чего-то нету - доустанавливаем...

выполняем sql-скрипт для пользователя nagios в Oracle

create user nagios identified by oradbmonpass;
grant create session to nagios;
grant select any dictionary to nagios;
grant select on V_$SYSSTAT to nagios;
grant select on V_$INSTANCE to nagios;
grant select on V_$LOG to nagios;
grant ...

Читать далее

Windows 7 - Проблемы с кириллицей

Windows 7 - Проблемы с кириллицей

Бывает что после накатки русского языкового пакета все равно проблема с кириллицей остается.
Помогает замена файла:

c:\Windows\System32\C_1252.NLS

файликом

c:\Windows\System32\C_1251.NLS

Из той же папки.

Порядок действий следующий:

1. Назначаем себя владельцем файликов. Для этого:

а) либо запускаем следующие команды:

takeown /f "%windir%\system32\c_1251.nls" /a && icacls "%windir%\system32\c_1251.nls" /grant administrators:f
takeown /f "%windir%\system32\c_1252.nls" /a && icacls "%windir%\system32\c_1252.nls" /grant administrators:f

Подразумевается, естественно, что Windows английский (от сюда и группа administrators) и то, что вы принадлежите к этой группе.

б) либо если команды не работают ...

Читать далее

FireFox горячие клавиши

  FireFox горячие клавиши

Предлагаю вашему вниманию сочетания клавиш, которые пригодятся вам при работе с Mozilla FireFox. Ну и себе заодно памятка чтоб не искать еще раз в нете :)

Навигация

Вперёд – Alt + стрелка вправо
Назад Alt + стрелка влево
Домашняя страница – Alt + Home
Обновить страницу F5, Ctrl + R
Принудительное обновление (не использовать закэшированные данные) – Ctrl + F5, Ctrl + Shift + R
Открыть файл – Ctrl + O
Остановить – Esc

Текущая страница

Восстановить размер шрифта – Ctrl + 0

Исходный код страницы Ctrl + U
Перейти в конец страницы – End
Перейти в начало страницы – Home
Переместиться в предыдущий фрейм (на страницах с фреймами) – Shift + F6
Печать – Ctrl + P
Сохранить страницу как – Ctrl + S ...

Читать далее

Что такое RAID-массив. Общая информация.

Что такое RAID-массив. Общая информация.

RAID (от англ. redundant array of independent/inexpensive disks)
- избыточный массив независимых/недорогих жёстких дисков — массив из
нескольких дисков управляемых контроллером, связанных скоростными
каналами и воспринимаемых как единое целое. В зависимости от типа
используемого массива может обеспечивать различные степени
отказоустойчивости и быстродействия. Служит для повышения надёжности
хранения данных и/или для повышения скорости чтения/записи информации
(RAID 0).

RAID изначально расшифровывалось как «Redundant Arrays of Inexpensive Disks»
(«избыточный (резервный) массив недорогих дисков», так как они были
гораздо дешевле RAM). Именно так был представлен RAID в 1987 году.
Прошло немного времени и RAID
определять начали как «Redundant Array of Independent Disks ...

Читать далее

Nagios конфигурирование. Tools (Web-интрефейсы или GUI)

Nagios конфигурирование. Tools (Web-интрефейсы или GUI)

Приведу список для nagios 3.x web-интерфейсов или GUI (графических) тулсов, которые Вы можете использовать для администрирования и конфигурирования nagios.

Nconf
NConf - это написанный на PHP дополнение для конфигурирования Nagios (мониторинговой системы).
Текущая версия :- 1.2.4-0
Домашняя страничка проекта : http://sourceforge.net/projects/nconf/

Centreon
Centreon - тулса для мониторинга сети и системы, основана на наиболее эффективном открытом двигателе мониторинга: Nagios.
Текущая версия :- 2.0.1
Домашняя страничка проекта : http://www.centreon.com/

Lilac
Lilac Platform это подборка дополнений для настройки опенсорсных приложений.
В настоящий момент внимание Lilac Configurator инструмента, направлено, чтобы сконфигурировать Nagios, контролирующее приложение сетей.
Текущая версия :- 1 ...

Читать далее

Регистрация на сайте c django-registration

Итак, как и обещал буду опсисывать немного то что я сделал на сайте.

Сегодня вот добавил на сайт регистрацию при помощи приложения django-registration

Скачать его, полной документацией на английском, можно отсюда https://bitbucket.org/ubernostrum/django-registration/downloads . Я выбрал django-registration-0.8-alpha-1.tar.gz - его работа меня вполне устраивает.

Установить довольно просто:

  1. скопировать папку registration в корень проекта или в папку приложений если таковая имеется
  2. в файле settings.py добавить:
  • ACCOUNT_ACTIVATION_DAYS = 10 # количество дней активации аккаунта
  •     INSTALLED_APPS = (
            'django.contrib.auth',
            'django.contrib.sites',
            'registration',
            # ...другие приложения...
        )

после этого выполнить

manage.py syncdb

и настраиваем конфигурацию ссылок в urls.py

 (r'^accounts ...

Читать далее

Изменить кодировку всех таблиц в MYSQL базе одним запросом

Вот столкнулся с проблемой, манипуляций одной из программ с базой. Во время обновления программа начала выдавать ошибки вставки в базу данных, что не может привести в соотвествие таблицы с разными кодировками в едином запросе.
Ну решение очевидно, надо просто изменить у всех таблиц кодировку сравнения.
Но таблиц больше 100 из тисячи нужно было изменить, и вручную такое делать как-то не солидно, да и пипец как долго :).
Вощем нашел быстрый способ: взять имена всех таблиц из базы данных и составить sql запросы на изменение кодировки.
Затем скопировать их и выполнить как обычные запросы. Довольно неплохое решение.

Ограничение :) - Только mysql версии больше ...

Читать далее

Настройка NVidia при установке или при обновлении Debian

Настройка NVidia при установке или при обновлении Debian

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

Есть два пути установки - установка из уже собранных пакетов из репозитория дистрибутива(зависит от дистрибутива) или установка руками из run-файла с официального сайта nVidia (http://www.nvidia.com/object/unix.html)

Первый путь подходит в том случае, если:

  • Пакет с модулями ядра nvidia есть в дистрибутиве.
  • Рабочее ядро было установлено тоже из репозиториев (т.к. модуль ядра nvidia будет работать только под тем ядром, под которое был собран ...

Читать далее

Fabric - автоматизация административных задач на python

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

Fabric представляет собой обычное python-приложение. Для соединения с удалённым сервером применяется SSH (используется питоновский модуль Paramiko).
Для установки Fabric вам понадобится pip - средство для установки python-приложений. Так что необходимая последовательность команд (для Debian-based систем) будет примерно такой:

Код:
aptitude install pip
pip install fabric
Естественно, перед этим нужно скачать исходники Fabric с офсайта.Далее нужно составить список инструкций, который хранится в файле fabfile.py. Например, вот так:
Код: 
from fabric.api import *
env.hosts = ['usr1@host1:22', 'usr2@host2:22']
def ...

Читать далее

Переезд сайта на Django!

Переезд сайта на Django!

Привет, всем посетителям моего сайта!

Сегодня я решился и, все таки, заменил php на python на этом сайте, чему и безмерно рад :)

Случилось это просто - создал приложение Django. И чтоб не создавать колесо заново, как говорится, в качестве блога выбрал компонент Zinnia и прикрутил его в сайт, импорт статей произошел без проблем, правда теги перевелись в транслит и комментарии потерялись, но это не страшно ипоправимо со временем. Дальше конечно предстоит много работы по улучшению. Но все же для меня лично это будет просто и в удовольствие.

Что в ближайших планах: 

  • прикрутить регистрацию
  • довести до ума Теги - а то транслит как-то ...

Читать далее

Создание UserProfile формы в Django с полями first_name, last_name для django-profiles

Вот в текущем проекте столкнулся в проблемой, используя django-profiles. django-profiles - это приложение позволяет создать дополнительную модель (со своим набором полей) для профиля пользователя, которая дополняет модель User предоставленную фреймворком. При переходе на редакрирование этот дополнительный профиль генерирует форму UserProfile из вашей модели. Но так как во встроенной модели User уже есть поля first_name и last_name которые мне нужны в проекте, я решил сделать по правильному и не дублировать в базе информацию. И для того чтоб дополнить форму редактирования профиля полями first_name и last_name из модели User я нашел вот такое решение :


class UserProfileForm(forms.ModelForm):
first_name = forms.CharField(label=_ ...

Читать далее

Архив за месяц