пятница, 27 ноября 2009 г.

WavePad Sound Editor: Аудио редактор

Привет всем. Ищите бесплатный редактор аудио и музыки. Попробуйте WavePad Sound Editor (http://www.nch.com.au/wavepad/). Для нарезки и компоновки аудио мне очень понравился.

среда, 25 ноября 2009 г.

1С Предприятие 7.7: Запуск ограниченного количества приложениий под Windows XP

Есть такая проблема для 1С:Предприятие 7.7 при запуске под Windows XP. Вы открываете пять (может быть шесть, семь или даже девять) баз, не важно какой вариан сетевые базы, SQL или локально, и все работает. Количество открываемых баз зависит от других открытых приложений. Затем попробуете открыть еще одну базу и происходит один из возможных симптомов:
* система зависает, процессор грузиться на 50% или нет, вы неможете открыть ни одно новое окно или программу, меню "Пуск" не открывается, ниодно меню не открывается, все уже открыте программы работают нормально. По прошествию некоторого времени система выдает ошибку (ошибка в некоторых случаях может появиться сразу) :
Ошибка загрузки модуля userdef.dll Ошибка загрузки модуля frame.dll
Ошибка приложения 1cv7s.exe, версия 7.70.0.27, модуль mfc42.dll, версия 6.2.4131.0, адрес 0x00002897.
Всплывающее окно приложения: 1С:Предприятие - [ Общий журнал (01.01.09-31.12.09)]: 1cv7s.exe - Ошибка приложения : Инструкция по адресу "0x0064015d" обратилась к памяти по адресу "0x02e21d60". Память не может быть "written".

Если в окне системной ошибки нажать кнопку Отладка и в качестве отладчика установлен DrWatson,то в его логах можно увидеть примерно следующее:
...
Исключение в приложении: Прил.: C:\Program Files\1Cv77\BIN\1cv7s.exe (pid=1592) Время: 20.11.2009 @ 16:56:58.906 Номер: c0000005 (нарушение прав доступа)
...
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\WINDOWS\system32\MFC42.DLL
- функция: MFC42!Ordinal4083
73d9288d 5f pop edi
73d9288e 5e pop esi
73d9288f c3 ret
73d92890 cc int
3 73d92891 cc int
3 73d92892 cc int
3 73d92893 cc int
3 73d92894 cc int
3 MFC42!Ordinal4083:
73d92895 8b01 mov eax,[ecx]
СБОЙ -> 73d92897 ff10 call dword ptr [eax] ds:0023:00000000=????????
73d92899 8bc8 mov ecx,eax
...
*----> Обратная трассировка стека <----*
*** WARNING: Unable to verify checksum for C:\Program Files\1Cv77\BIN\Frame.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Program Files\1Cv77\BIN\Frame.dll
- WARNING: Stack unwind information not available. Following frames may be wrong.

Если при этом вы сможете запустить из коммандной строки лубую команду, не входящую в список команды help (например, ping), то она без каких-либо операций вернется в коммандную строку обратно. Команда echo %ERRORLEVEL% при этом выводит результат -1073741502 (0xC0000142)

* Вы открываете базу 1С, а она просто закрывается без каких либо видимых ошибок.

Причина этого состоит в том, что для работы приложения не хватает объема памяти выделнной под desktop heap. Статья с описанием desktop heap находится на странице http://blogs.msdn.com/ntdebugging/archive/2007/01/04/desktop-heap-overview.aspx (англ).

Определить нехватку объема памяти под desktop heap можно двумя способами:
1) Программа testlimit от Sysinternals. Запустите ее с опциями testlimit.exe -u -i и в качестве рузультата увидите, что программа зарезевировала совсем малый объем в районе 100 КВ (или около того).
2) Скачате программу Desktop Heap Monitor (http://www.microsoft.com/downloads/details.aspx?familyid=5cfc9b74-97aa-4510-b4b9-b2dc98c8ed8b&displaylang=en), запустите и увидите что-то вроде
Desktop Heap Information Monitor Tool (Version 7.0.2727.0)
Copyright (c) 2003-2004 Microsoft Corp.
-------------------------------------------------------------
Session ID: 0 Total Desktop: ( 5824 KB - 8 desktops)
WinStation\Desktop Heap Size(KB) Used Rate(%)
-------------------------------------------------------------
WinSta0\Default 3072 5.7
WinSta0\Disconnect 64 4.0
WinSta0\Winlogon 128 8.7
Service-0x0-3e7$\Default 512 15.1
Service-0x0-3e4$\Default 512 5.1
Service-0x0-3e5$\Default 512 1.1
SAWinSta\SADesktop 512 0.4
__X78B95_89_IW\__A8D9S1_42_ID 512 0.4
-------------------------------------------------------------


При этом WinSta0\Default будет использован на 90-100% или около того. Решение этого вопроса описано в упомянутой мной странице http://blogs.msdn.com/ntdebugging/archive/2007/01/04/desktop-heap-overview.aspx (англ). Дополнительно в базе знаний Microsoft есть статья http://support.microsoft.com/kb/126962/.

Я же сделал следующее. Внес такие вот изменения в реестр:
1)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management] "SessionViewSize"=dword:00000048
2)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems] Изменить только часть строки "Windows" "...SharedSection=1024,3072,512..." на "...SharedSection=1024,12288,512..."

Это новое значение используется в Windows Vista.

четверг, 19 ноября 2009 г.

mysql: Как переместить все базы mysql во FreeBSD?

Предположим что у вас FreeBSD, где установлен mysql. По умолчанию все базы mysql расположены в папке /var/db/mysql. (Узнать где расположены базы можно с помощью команды mysqladmin variables grep datadir). И предположим также, что вы сразу не выделили много места под папку /var, и в один прекрасный день у вас стало не хватать места под работу mysql и стали появляться ошибки вида:

"kernel: pid 2941 (mysqld), uid 88 inumber 71662 on /var: filesystem full".

Одно из решений этого вопроса состоит в переносе всех баз на другой диск. Сделать это можно следующим образом.

Допустим вы смонтировали новый диск в папку /var/db2/.

Прежде всего скопируем все базы в новую папку

1) cp -a (или -pfR) /var/db/mysql /var/db2

Далее изменим настройки mysql, добавив следующую запись в /etc/rc.conf:

2) mysql_dbdir="/var/db2/mysql"

3) Перезагружаем mysqld или лучше весь сервер.

4) Проверяем что все работает и удаляем папку /var/db/mysql: rm -Rf /var/db/mysql.

Далее работает уже без ошибок :)

вторник, 17 ноября 2009 г.

Postfix: как запретить локальным пользователя отправлять почту во вне

Из серии маленькие хитрости :)

Имеем следующие исходные данные. Есть почтовый сервер построенный на FreeBSD. На нем установлен postfix и база данных пользователей расположена в mysql. В postfix включена SASL аутентификация.
Нужно определенным пользователям запретить отправлять почту во вне, т.е. отправлять им почту можно будет только внутренним пользователям: от mydomain.ru к mydomain.ru.

Делается это следующим образом.

1) Редактируем файл main.cf и добавляем следующие строки:
smtpd_restriction_classes = local_recipients_only
local_recipients_only = check_recipient_access mysql:$base/local_recipient.conf, reject

2) Добавлем строку в политику smtpd_recipient_restrictions в таком порядке (порядок важен):
smtpd_recipient_restrictions =
//... Тут могут быть какие-то ваши политики
permit_mynetworks,
check_sender_access hash:$base/local_sender_access,
permit_sasl_authenticated
//... Тут могут быть какие-то ваши политики

3) Создаем файл local_sender_access, где прописываем пользователей для которых нужно закрыть доступ во вне

test@mydomain.ru local_recipients_only
user@mydomain.ru local_recipients_only

затем делаем из него hash файл.

4) Создаем файл local_recipient.conf, который нужен для определения локальных пользователей
user = postfix
password = mypassword
hosts = localhost
dbname = postfix
table = mailbox
select_field = 'permit_sasl_authenticated'
where_field = username
additional_conditions = and active = '1'

5) Перезагружаем postfix

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

четверг, 12 ноября 2009 г.

Почтовый хостинг

Итак, вы решили воспользоваться услугами "Почтовый сервер" у хостинг-провайдера. Что это вам дает?

К плюсам можно отнести:

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

+ Быстрое подключение. Все что вам нужно будет сделать: оплатить услуги, дождаться активации услуги и настроить свои почтовые программы. Этот процесс можно уложить в неделю или того менее.

+ Нет необходимости держать технический персонал или оплачивать дополнительно услуги по поддержке почтового сервера. Вам нужно будет только позвонить в техподдержку хостинг-провайдера и оставить заявку в случае инцедента.

+ По стоимости это самый экономичный вариант.

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

Этот вариант имеет и минусы.

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

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

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

- Минимум функциональности от почтового сервера. Сервер будет иметь минимум функциональности. Насколько это экономичный варинат мы сейчас и рассмотрим. Лучше, почтовый хостинг подберать индивидульно, поскольку некоторые условия, как-то ограничение на размер передаваемых сообщений, могут перевешывать чашу весов, при том что остальные условия лучше и не придумаешь. Поэтому в данном случае приведу стоимость и некоторые дополнительные параметры не вдаваясь в детали хостинга. Думаю, что обычно заказывать свой почтовый сервер менее чем на год не имеет смысла и стоимость я, соответственно, буду приводить в рублях в год. Дата: 23 окт 2009 года
Дата: 23 окт 2009 года

Компания Стоимость Почтовых ящиков Объем диска, МБ Дополнения

Мастерхост

1800руб неогр 100 + 1.12 руб/МБмес SSL, 7МБ

3600руб неогр 200 + 1.12 руб/МБмес SSL, 7 МБ

6900руб неогр 300 + 1.12 руб/МБмес SSL, 7 МБ

Зенон

1344руб 5 + 0.84руб/сутки 1000 МБ + 0.21руб/МБдень

2150.40руб 15 + 0.84руб/сутки 1500 МБ + 0.21руб/МБдень

4032 руб 25 + 0.84руб/сутки 4500 МБ + 0.21руб/МБдень

3225.60 руб 30 + 0.84руб/сутки 150МБ + 0.21руб/МБдень

ValueHost

3728.38 руб неогр 30 МБ/почтовый ящик 5 МБ

AGAVA

1620 руб неогр 1000 МБ (общий размер) + 55руб/200МБмес 20 МБ

1620 руб неогр 200 МБ + 55руб/200МБмес

nthost

2399.4 руб неогр 10 ГБ 10 МБ

Караван-телеком

3960 руб неогр 200 МБ

10560 руб неогр 1000 МБ SSL

Хостинг центр

762 руб неогр 100 МБ

SSLКритерии отбора. Помимо цены нужно обратить внимание на следующие критерии выбора хостинг провайдера.

1) Поддержка SSL. Как известно почтовые протоколы POP, IMAP, SMTP передают/отправляют почтовые сообщения в открытом виде, включая пароль. Те при необходимости можно получить доступ к вашей почте будет относительно легко. Поэтому если вас хоть как-то волнует безопасность необходима поддержка SSL.

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

3) Объем диска для хранение почты хочу заметить это не полный объем занимаемой всей вашей почтой, а только объем необходимый для хранения почты пришедшей на сервер после последнего получения почты на вашем компьютере. И вся почта храниться на вашем компьютере. На начальном этапе, конечно это все же зависит от ваших потребностей, объем в 100-150 МБ будет вполне приемлимым, тем более что у некоторых провайдеров расширение возможно, хотя и с дополнительной платой.

4) Максимальный объем передаваемого сообщения. Тут нужно отталкиваться только от ваших нужд. Практически все провайдеры предоставляют более или менее разумные лимиты для работы с вашй корреспонденцией.

5) Что касается же суммы для начального этапа, то 2 000 руб за год будут оправданными.

Свой почтовый сервер

Большой раздел, который я хотел бы открыть, почтовый сервер.

Итак. Вам нужен свой почтовый сервер. Mail.ru, yandex.ru и другие вас уже не устраивают, поскольу это не соответствует престижу вашей компании или, может, вы обладаетет конфеденциальной информацией, которую лучше скрыть от любопытного сообщества в сети интернет. А может изначально вы хотите использовать свою почту. С чего начать?

Прежде всего нужно ответить на следующие вопросы: $ Имя домена вашей почты. $ Какое вы будете использовать программное обеспечение - лицензионное или нет$ Сколько денег вы готовы потратить на ваш почтовый сервер. $ Собственно выбрать почтовый сервер - его организацию. (Это находиться в прямой зависимости от предыдущих вопросов).

Рассмотрим по порядку. Собственно вам нужно выбрать имя которое будет стоять после символа @ в названии ваших почтовых адресов. Конечно на английском и конечно только имя, которое свободно в данный момент. Так, например, mycomp.ru. В итоге вы, получите адреса вида vasya@mycomp.ru.

Узнать свободно ли имя или нет можно, ну например, по адресу https://www.nic.ru/whois/?wi=1. Там же есть разные услуги по подбору домена, аукцион и освобождающиеся в скором времени домены. Вы можете выбрать имя не только в домене .RU, но и .COM или каком-либо другом. Еще один момент, есть адреса специально занятые для продажи. Это могут быть адреса с трех символьных обозначением и еще какие-нибудь красивые имена. Продадут вам их не дешево :)

Сразу предлагаю вам определиться какое вы предполагаете использовать программное обеспечение лицензионное или нет. Сечас, по моему мнению, бытует мнение, что для сервера обязательно должны быть коммерческие продукты с совсем не маленькими суммами стоимости. И это определяет ваш выбор в использовании нелицензионного ПО. Славные сотрудники таких гигантов как Майкрософт делают свою дело и вы возможно представляете что Exchange это самый лучшый продукт для вас и вашего сервера. Значительная стоимость этого продукта делает необоснованным покупку лицензионного продукта и вы становитесь в некоторой зависимости от этой компании, покупая их продукт. Хочу вас переубедить и сказать из личного опыта, что есть такого класса легальные бесплатные продукты по лицензии GPL (http://ru.wikipedia.org/wiki/GPL). И я бы посоветовал принципиально использовать лицензионного ПО не ограничивая свой выбор только одной известной всем компанией. О, да. Тут есть свои плюсы и минусы. В первом случае, вы прежде покупаете ПО, затем вам нужен будет специалист-компания, который все это подключит настроит. За заплаченные деньги вы получаете какие-никакие гарантии от фирмы производителя и вероятнее всего периодическое обновление. Во втором случае, вы получаете программы бесплатно и без каких-либо гарантий(вернее они ложаться на специалиста, который все это установит :). Все работы по обновлению-исправлению программ ложатся на плечи энтузиастов. Дальше, вам также нужен будет специалист, который все это подключит. Не забывайте и про опыт этих самых энтузиастов и опыт эксплуатации их программ. В случае чего, скорее всего, вы будете обращаться к тому кто смастерил для вас ваш север. Рассмотрите внимательно риски отказа программ - что будет если вы не получите нужное письмо в нужное время и сделайте выбор, при том что любая программа содержит ошибки. Еще один важный момент это требование к оборудованию. Некоторые платные программы очень требовательны к ресурсам, тогда, как скажем, почтовый сервер на базе FreeBSD может работать на стареньком компьютере, устаревшим для работы персонала. Прежде того как рассмотреть вопрос стоимости, остановимся на возможных вариантах построения своего сервера начального уровня. Это может быть:

# Сервер на площадке хостинг-провайдера с использованием программного обеспечения провайдера. http://myconsult2.livejournal.com/1225.html

# Гибридный вариант, когда у вас есть свой сервер плюс сервер хостинг провайдера.

# Вы устанавливаете только свой сервер

------------------------------------------------------------------

Если вам нужна помощь, пишите: Песков Олег <pov@mail.ru>.

Постоянные читатели