Как запустить программу с сервера на локальном компьютере
Установка программы на локальную сеть состоит из двух этапов - установки программы на сервер и подключения рабочих станций.
1. При работе регулярно делать резервную копию. Например раз в неделю. Для ежедневного автоматического архивирования программ по времени можно использовать бесплатную утилиту Автоматическое архивирование файлов.
2. Не ставить программы в Program Files. Имя папки должно быть английскими буквами, без пробелов.
3. Программы должны инсталлироваться с правами Администратора.
4. Если компьютер подключен к интернету, то при работе используйте обновляемый антивирус. Наличие антивируса не гарантирует от вирусов. Существуют вирусы, портящие информацию в базах (см. п. 1). При подозрении на вирусы проверьте компьютер разными антивирусами.
В папке с программой есть файл Readme.txt
При запуске установочного дистрибутива на установку (DblClk на скачанный архив) откроется окно инсталлятора программы.
В случае, если Вы скачали версию для MS SQL Server или PostgreSQL, запустится окно инсталлятора соответствующей версии.
Установка версии для SQL Server отличается от файл-серверной версии.
( Смотреть дополнительную информацию по установке версии для Microsoft SQL Server и PostrgeSQL ).
В открывшемся окне установите параметр "Я принимаю условия соглашения" и нажмите кнопку "Далее".
Укажите в текстовой строке папку для инсталляции программы (например C:\doks49 ) либо выберите ранее созданную через дерево каталогов. По умолчанию для каждой новой версии программы папка своя.
Не рекомендуется устанавливать программы в Program Files в связи с особыми правами доступа к данной папке в некоторых ОС (например Windows Vista или Windows7, см. Возможные проблемы при установке и работе программы )
Выберите программную группу, куда программа инсталляции скопирует ярлык для программы. По умолчанию для каждой программы группа своя. Затем нажмите кнопку "Далее"
Для продолжения установки нажмите кнопку "Установить"
Программа установки скопирует файлы базы данных на жесткий диск в папку, указанную ранее пользователем.
Для просмотра файла Readme.txt в папке с программой галочка должна быть установлена.
Для запуска установленной программы на сервере необходимо запустить программный файл vxis.exe в папке с программой (папка была выбрана пользователем в процессе установки ).
Программу можно запустить через ярлык в соответствующей программной группе.
Ярлык на программу будет помещен также на Рабочий стол сервера, запуск программы осуществляется с помощью двойного щелчка на ярлык.
Программа на сервер установлена.
Теперь необходимо предоставить права доступа для пользователей, которые будут работать с программой по сети.
Для этого нажмите правой кнопкой мыши на значек папки, выберите пункт меню Свойства.
Откроется окно свойств папки.
В свойствах папки надо разрешить чтение и запись в закладках Permissions (Доступ) и Security (Безопасность), либо убрать галочку Только чтение (Read only).
Разрешить доступ необходимо обязательно в двух закладках, в противном случае программа не сможет работать (см. 3.2.2. Какие бывают проблемы при настройке на сети и как их решить)
Подключение рабочих станций:
На каждом рабочем месте, где будет запускаться программа, надо установить дистрибутив программы.
Программа на каждом рабочем месте устанавливается для автоматической регистрации в системе компонентов для работы со сканером, после установки папку с программой можно удалить.
Также нужно удалить ярлыки в программной группе и на рабочем столе, созданные инсталлятором.
Через сетевое окружение надо найти папку на сервере ( \\server\doks49, где "server" - имя Вашего сервера ), нажать на нее правой кнопкой мыши и выбрать пункт меню "Подключить как сетевой диск".
Имя диска выбирается любое из доступных, например Z, затем нажмите кнопку "Готово".
Затем надо открыть этот сетевой диск и вывести на рабочий стол ярлык с файла vxis.exe
Обратите внимание, чтобы в свойствах ярлыка правильно приписалась рабочая папка.
Должен стоять сетевой диск Z:\
Программу на рабочих станциях запускать через созданный ярлык.
На сетевых рабочих местах необходимо установить Библиотеки /libs9X.exe
Программу можно установить на терминальный сервер и запускать через VPN, таким образом можно организовать совместную работу в программе например из разных городов. Работа в терминальном режиме рекомендуется, если требуется повышенная защищенность данных, а также для ускорения работы программы по сети при большом количестве записей в журналах (от 1000 в конкретном журнале) или не большой пропускной способности локальной сети.
В случае, если у Вас версия для MS SQL Server:
Сначала установите экземпляр SQL Server (Express) на Ваш сервер либо локальный компьютер.
Описание установки MS SQL Server можно посмотреть по адресу /regdok/sqlexpress.htm.
Рекомендуется устанавливать расширенный дистрибутив, включающий в себя SQL Server Management Studio (ExpressAdv 32BIT\SQLEXPRADV_x86_RUS.exe размер 1.1 GB для 32 разрядной ОС либо ExpressAdv 64BIT\SQLEXPRADV_x64_RUS.exe размер 1.2 GB для 64-разрядной).
Рекомендуется использовать Доверительное соединение, для этого нужно, чтобы пользователи компьютеров, с которых будут запускать программу, проходили проверку подлинности на сервере.
В случае, если у Вас нет выделенного сервера и Вы настраиваете в качестве сервера обычный компьютер, то в данном случае возможно потребуется не доверительное соединение.
Для не доверительного подключения обязательно указывать кроме имени базы данных еще и имя пользователя и пароль, можно указать пользователя sa с его паролем (если пароль не задан – надо задать в SQL Management Studio).
Имя базы данных не должно начинаться с цифры (использовать лучше латиницу), не должно содержать, как и логин с паролем, других символов, кроме букв и цифр (нельзя использовать ".", "-" и другие).
При использовании в настройках MS SQL Server "Проверки подлинности Windows" имя пользователя и пароль при локальной установке можно не указывать (либо указывается имя пользователя "sa" без пароля).
При сетевой работе лучше использовать проверку подлинности SQL Server и Windows.
В брандмауэре сервера создайте, если требуется, разрешения для порта 1433, по которому идет обмен с SQL Server.
База данных должна создаваться программой!
Если база уже создана ранее и Вы подключаете к ней рабочие станции, то больше ничего вводить не требуется, жмите ОК.
Если база данных не существует, программа предложит создать базу данных.
Создавать базу данных лучше на сервере, т.к. для этого требуются расширенные права.
При создании базы потребуется указать способ хранения изображений и файлов - в "в базе данных", либо "в хранилище File Tables".
Если нужно создать новую базу, установите галочку "Создать базу данных".
Перед созданием базы данных будет предложено выбрать способ хранения сканированных изображений и файлов в базе MS SQL Server.
Возможны 2 варианта - хранение изображений и файлов в таблицах (опция "в базе данных"), либо использование File Tables (опция "в хранилище File Tables", возможно только с MS SQL Server 2012 и выше).
Вариант с File Tables возможен только в MS SQL Server 2012 и выше.
При выборе File Tables укажите диск, на котором будут создаваться файлы базы, по умолчанию на диске С.
Использование File Tables не подпадает под ограничение базы данных для версии Express ( 10ГГб для Microsoft® SQL Server® 2012 Express), в результате появляется возможность хранения большого объема файлов и сканированных документов в бесплатной версии MS SQL Server Express.
При выборе File Tables перед созданием базы данных требуется включить FILESTREAM на уровне используемого экземпляра MS SQL Server
Для этого в меню Пуск выберите пункты Все программы, Microsoft SQL Server с рабочим названием 2012, Средства настройки, а затем щелкните Диспетчер конфигурации SQL Server.
В списке служб щелкните правой кнопкой мыши Службы SQL Server и выберите Открыть.
В оснастке Диспетчер конфигурации SQL Server найдите экземпляр SQL Server, в котором нужно включить FILESTREAM.
Щелкните правой кнопкой мыши экземпляр и выберите пункт Свойства.
В диалоговом окне Свойства SQL Server перейдите на вкладку FILESTREAM.
Установите флажок Разрешить FILESTREAM при доступе через Transact-SQL.
Также убедитесь, что в Microsoft SQL Management Studio в свойствах экземпляра SQL сервера разделе Дополнительно уровень доступа FILESTREAM не отключен (установлен либо "Включен доступ с помощью Transact-SQL" либо "Включен полный доступ").
Пользователь базы данных MS SQL Server должен иметь права на работу с соответствующей базой.
Когда база будет создана, потребуется ввести регистрационный код.
Демо-версия регистрации не требует
После создания базы проверьте закладку Параметры в свойствах базы в Microsoft SQL Management Studio.
Для нормальной работы программы в Свойствах конкретной базы в закладке Параметры опция "Автоматически закрывать" (Auto close) должна иметь значение False.
В случае, если у Вас версия для PostgreSQL:
Сначала установите экземпляр PostgreSQL на Ваш сервер либо локальный компьютер.
Описание установки PostgreSQL можно посмотреть по адресу /regdok/postgresql.htm.
Имя базы данных не должно начинаться с цифры (использовать лучше латиницу), не должно содержать, как и логин с паролем, других символов, кроме букв и цифр (нельзя использовать ".", "-" и другие).
В брандмауэре сервера создайте, если требуется, разрешения для порта 5432 (или другого), по которому идет обмен с Postgre SQL Server.
База данных должна создаваться программой!
Если база уже создана ранее и Вы подключаете к ней рабочие станции, то больше ничего вводить не требуется, жмите ОК.
Если база данных не существует, программа предложит создать базу данных.
Создавать базу данных лучше на сервере, т.к. для этого требуются расширенные права.
Пользователь базы данных SQL Server должен иметь права на работу с соответствующей базой.
Когда база будет создана, потребуется ввести регистрационный код.
Демо-версия регистрации не требует
Для загрузки информации из файл-серверной версии – выберите пункт меню Сервис-Загрузка из резервной копии/предыдущих версий-Загрузка из DBF версии
Укажите папку с предыдущей версией (из самой свежей, если версия не самая свежая, то сначала надо обновить, в ней работа по сети и вообще должна быть завершена, перед загрузкой сделайте резервную копию папки с этой базой), установите галочку «Подтверждаю очистку» и нажмите кнопку Далее.
Потребуется некоторое время по полному переносу записей и файлов в SQL сервер, процесс это небыстрый, т.к. происходит конвертация базы.
Для ускорения эту операцию лучше проделывать на сервере.
В программе есть возможность просмотра информации из базы через Web интерфейс.
В наше время даже для собак придумали удаленное управление.
Возвращаясь к циклу «Конспект Админа», мне хотелось бы рассказать о вариантах запуска исполняемых программ на удаленных компьютерах. Эта статья будет интересна тем, у кого еще нет систем централизованного управления, но уже есть понимание утомительности ручного обхода рабочих станций и серверов. Либо тем, кому решения «под ключ» не интересны ввиду неспортивности.
В качестве того, зачем нужен такой запуск программ, можно привести недавнюю истерию с Петей\Не-Петей, когда все бросились проверять\отключать SMBv1 и загружать обновления. Да и провести инвентаризацию или установить срочный патч таким методом тоже можно.
Когда-то давно я устроился работать в организацию в период эпидемии Kido\Conficker. Наиболее простым способом выяснить, все ли хорошо в ИС компании, была славная утилита от Касперского под названием Kido Killer, которая проверяла наличие вируса и устраняла его. Запускать программу на доброй сотне машин руками было невесело, поэтому пришлось знакомиться с автоматизацией.
Если в операционных системах *nix для удаленного запуска, как правило, используется SSH, то у Windows способов запуска программ и скриптов воистину как песка в пустыне. Я разберу основные варианты, как общеизвестные, так и экзотические. Таких очевидных вещей как telnet-сервер касаться не буду, тем более Microsoft уже убрала его из современных ОС.
Psexec
Пожалуй, это первое, что приходит на ум, когда идет речь об удаленном запуске программ. Утилита от Марка Руссиновича используется еще со времен Windows NT и до сих пор применяется. Помимо основной функции, можно использовать ее и как Runas, и для запуска программ в пользовательской сессии терминального сервера. Psexec также позволяет задавать ядра процессора, на которых будет запускаться программа, и ее приоритет в системе.
В качестве примера посмотрим, установлено ли обновление, закрывающее нашумевшую уязвимость SMB на списке компьютеров:
В файле computers.txt находится список компьютеров. Для запуска по всему домену можно использовать \\*. В файле \\server\share\log.txt будут появляться имена рабочих станций или серверов без обновления. Если в домене существуют компьютеры с *nix на борту или нет доступа к административному сетевому ресурсу Admin$ ― команда на этой машине не выполнится, но обработка продолжится. Чтобы скрипт не зависал при каждой попытке подключения, можно задать тайм-аут с помощью ключа -n.
Если компьютер выключен ― мы об этом не узнаем. Поэтому лучше предварительно проверять доступность машин или собирать в файле информацию об успешном или неудачном выполнении.
К минусам Psexec можно отнести то, что она из-за своего удобства и популярности часто используется вирусописателями. Поэтому антивирусные системы могут обнаруживать утилиту как опасность вида remote admin.
По умолчанию процесс на удаленной машине выполняется от имени пользователя, запустившего Psexec. При необходимости логин и пароль можно задать явно или же использовать аккаунт SYSTEM.
Для управления системами Windows с помощью разных графических утилит часто используется WMI (Windows Management Instrumentation) ― реализация объектно-ориентированного стандарта управления WBEM. В качестве утилиты с графическим интерфейсом для работы с WMI можно использовать wbemtest.exe.
Для работы с WMI из консоли создана wmic.exe. Например, для проверки установленных обновлений вместо жутковатой конструкции из предыдущего примера можно использовать простую команду:
Использовать список компьютеров также можно командой /node:"@computers.txt".
Еще при помощи WMI можно запускать программы – синтаксис предельно прост:
К сожалению, в отличие от Psexec, получить вывод в консоли не получится ― придется выводить результаты команды в файл.
По умолчанию процесс на удаленной машине выполняется от имени пользователя, запустившего wmic. При необходимости логин и пароль можно задать явно.
Групповые политики и скрипты
Если предыдущие варианты не требовали доменной среды, то в этом случае потребуется домен. Поддерживаются скрипты при входе и выходе пользователя из системы, а также при ее включении и выключении. Поскольку каждый администратор Windows сталкивался с ними, я не буду подробно расписывать как ими пользоваться ― лишь напомню, где их искать.
Скрипты, выполняющиеся при старте и завершении системы.
Скрипты, выполняющиеся при входе и выходе пользователя из системы.
Скрипты, настраиваемые в пользовательском разделе, выполняются от имени пользователя, а в разделе компьютера ― под аккаунтом SYSTEM.
Назначенные задания
Довольно интересный способ, заслуживающий право на жизнь. Назначенные задания можно создавать из командной строки при помощи утилиты schtasks.exe, выполнять их, затем удалять. Подробнее с синтаксисом можно ознакомиться в документации, я же разберу пример использования назначенных заданий в доменной среде. Предположим, нам нужно выполнить команду как можно быстрее вне зависимости от того, выключен компьютер или нет. Для этого используются так называемые предпочтения групповых политик (Group Policy Preference).
Искать установку назначенных заданий следует в конфигурации компьютера или пользователя ― «Настройка ― Параметры панели управления ― Назначенные задания».
Создание нового назначенного задания.
Для выполнения команды или скрипта ASAP понадобится создать «Немедленную задачу (Windows 7 и выше)». Если вдруг в инфраструктуре остались машины под управлением Windows XP, то подойдет «Очередное задание (Windows XP)».
Стоит сделать несколько политик с соответствующими WMI-фильтрами или создать два разных назначенных задания в одной политике с нацеливанием ― например, при помощи того же WMI-фильтра. Это поможет избежать конфликтов в разнородной среде со старыми и новыми Windows.
Пример WMI-фильтра для применения политики только на компьютерах с Windows XP:
В остальном процедура создания назначенного задания тривиальна. Единственное, не забывайте отметить пункт «Применить один раз и не применять повторно», если задача не требует повторного запуска.
Запускаем немедленную задачу только один раз.
При использовании таких назначенных заданий программа запустится, как только компьютер получит обновление групповой политики. Это удобно: не нужно проверять доступность компьютеров в случае Psexec и wmic и заставлять пользователей перезагружать машины, как в случае скриптов групповых политик. При необходимости можно скопировать файл скрипта локально в разделе «Настройка ― Конфигурация Windows ― Файлы».
Назначенные задания позволяют явно задать имя пользователя для запуска программы, в том числе и для SYSTEM.
Через реестр
Модификация реестра на пользовательских машинах ― странный вариант, лишь на случай крайней необходимости. Можно использовать ветки Run или RunOnce. Подробнее о них ― в документации. Сама модификация реестра может проводиться через групповые политики или из командной строки ― например, такой командой:
В зависимости от ветки реестра, процесс будет выполняться или под пользователем, выполнившим вход в систему, или под аккаунтом SYSTEM.
Есть и другие способы, такие как правка ярлыков в папке «Автозагрузка» или добавление в ярлык к популярной программе && script.cmd, но эти методы уже из серии «можно, но не нужно».
Теперь перейдем к новым инструментам.
PowerShell, оправдывая свое название, может подключаться к удаленным компьютерам при помощи WMI, RPC и WS-Management (WSMan). Использование последнего метода требует предварительной настройки.
Командлеты, не требующие предварительной настройки, как правило, имеют параметр ComputerName, но не имеют параметра Session. Посмотреть список таких командлетов можно командой:
Для настройки WSMan в общем случае достаточно выполнить команду Enable-PSRemoting-Force. Она запустит службу удаленного управления WinRM и пропишет исключения в фаерволе ― в принципе, это можно сделать для всего домена при помощи групповых политик. Подробнее настройка описана в документации.
После того как все компьютеры будут готовы принимать запросы, мы сможем подключаться при помощи соответствующих командлетов PowerShell. Для проверки возможности подключения используется командлет Test-WSMan.
Проверка возможности подключения.
Для того чтобы выполнить определенную команду или скрипт, используется командлет Invoke-Command со следующим синтаксисом:
Где COMPUTER ― имя компьютера, COMMAND ―– имя команды, а USERNAME ― имя пользователя, если оно нужно.
Смотрим содержимое диска С удаленного компьютера.
Если же нам нужно получить полноценную консоль ― не автоматизации ради, а ради управления конкретным компьютером, ― то можно использовать командлет Enter-PSSession.
Работаем в консоли удаленного компьютера.
Напомню, что с помощью JEA можно ограничить доступные подобной сессии командлеты или дать доступ нужным без прав администратора.
Конечно, кроме встроенных средств и небольших утилит, существует множество программ для управления структурой. Помимо взрослых решений, для управления конфигурациями вроде Chef, Ansible и MS SCCM можно использовать и средства мониторинга вроде Zabbix, и даже консоль управления антивирусом Касперского.
В период гетерогенных структур хорошо бы иметь возможность унифицированного управления Windows и Linux. Это можно сделать и с помощью PowerShell, что само по себе достойно отдельной статьи ― стоит такую сделать или уже лишнее?
Кстати, поделитесь вашими способами скрытого и не очень запуска программ на удаленных компьютерах. Ну, за исключением эксплойтов.
Несколько дней назад меня очередной раз посетила Мысль. Мысль была не нова и довольна навязчива: «давай перейдем на Windows8. Ну пожааалуйста». И так как отогнать её никак не получалось, я запаслась чаем и печеньками и приступила.
На установку системы и всех необходимых программ ушло не более двух часов, но затем наступил самый интересный момент: мне нужно было развернуть рабочее окружение, а именно — GIT + локальный сервер (Apache, MySQL, PHP, nginx, memcached, mongodb). Помятуя об опыте предыдущих установок, на этот раз я решила весь процесс задокументировать и сохранить для потомков.
Дисклаймер номер раз: «я не программист» (с), а дизайнер интерфейсов и фронтенд-технолог (но в некоторых случаях могу помочь коллегам и накодить что-нибудь этакое, и меня даже потом за это не побьют)
Дисклаймер номер два: да, я прекрасно представляю, что в Ubuntu всё это делается в разы быстрее. Но я работаю на Windows, так исторически сложилось.
Итак, приступим.
Наш план работ включает установку следующих продуктов:
- PuTTY
- GIT
- Denwer (Apache, MySQL, PHP)
- Nginx
- Memcached
- MongoDB
1. PuTTY
PuTTY — свободно распространяемый клиент для различных протоколов удалённого доступа, включая SSH, Telnet, rlogin.
В состав PuTTY входит несколько утилит, но мне в работе нужны только он сам и Pegeant (агент SSH-аутентификации, в котором хранятся ключи от git-репозиториев).
Офсайт: перейти
Если вам не нужны никакие SSH-и, забудьте об этом пункте и идём дальше.
2. GIT
Для работы с git я уже не первый год использую TortoiseGit, который стабилен, гуёв и на 146% закрывает все мои потребности. Вобщем, рекомендую.
Офсайт: перейти
2.1 Для работы TortoiseGit требуется git для Windows, который можно забрать на гуглекоде;
2.2 сам TortoiseGit устанавливаем отсюда
3. Denwer
Денвер — Джентльменский набор Web-разработчика («Д.н.w.р», читается «Денвер») — проект Дмитрия Котерова, набор дистрибутивов (Apache, PHP, MySQL, Perl и т.д.) и программная оболочка, используемые Web-разработчиками для разработки сайтов на «домашней» (локальной) Windows-машине.
Офсайт: перейти
3.1 Установка
Нам потребуется скачать базовый комплект и дополнительные модули PHP5.
Лирическое отступление:
Обычно установка денвера проходит быстро и безболезненно, но на Windows8 на меня напала ошибка, которая ругалась на отсутствующую библиотеку msvcr71.dll. Библиотеку можно забрать здесь и положить в папку "\Windows\System32\" (x32) или "\Windows\SysWOW64\" (x64). После того, как файл улегся в папку, откройте его свойства и нажмите кнопку «Разблокировать».
3.2 Проверка работоспособности
После установки Денвера, создадим тестовый скрипт, на котором будем проверять работоспособность всего того, что мы установим впоследствии.
Идем в Z:\home и добавляем новый сайт: создаем папку test.local, в ней папку «www», в которую добавляем файл index.php с невероятно креативным текстом:
4. Memcached
Memcached — связующее программное обеспечение, реализующее сервис кэширования данных в оперативной памяти на основе парадигмы хеш-таблицы.
Memcache — расширение для php, предоставляет удобный процедурный и объектно-ориентированный интерфейс к memcached, высокоэффективному кеширующему демону, который был специально разработан для снижения нагрузки на базу данных в динамических веб приложениях.
4.1 Установка memcached
А. скачиваем архив с бинарником: Memcached 1.4.5 for Windows отсюда
В. распаковываем содержимое архива в \usr\local\memcached
4.2 Установка memcache
А. скачиваем архив с библиотекой отсюда
В. распаковываем содержимое архива в \usr\local\php5\ext\
С. открываем файл php.ini (\usr\local\php5\php.ini) и подключаем расширение:
extension=php_memcache.dll
4.3 Настраиваем запуск Memcached вместе с запуском Denwer
- написать скрипт, содержащий команды запуска и останова приложения/ сервиса и положить его в папку\denwer\scripts\init.d
- создать ссылку на этот скрипт в папке конфигурации запуски/останова \denwer\scripts\main\
А. создаём файл с именем «memcached.pl» в директории \denwer\scripts\init.d\
- \denwer\scripts\main\start
- \denwer\scripts\main\stop
- \denwer\scripts\main\restart
4.4 Проверяем результат
В наш тестовый скрипт (index.php) добавляем:
Перезапускаем Денвер и смотрим, что получилось
5. Nginx
Nginx — простой, быстрый и надёжный сервер, не перегруженный функциями.
Офсайт: перейти
5.1 Настройка Nginx
A. скачиваем с офсайта Windows-версию и распаковываем в \usr\local\nginx
B. настраиваем виртуальный хост для нашего тестового сайта. Для этого открываем \usr\local\nginx\conf\nginx.conf и добавляем туда
Это пример настроек из реального проекта, ваши настройки, очевидно, могут отличаться.
5.2 Настройка Apache
5.3 Настраиваем запуск Nginx вместе с запуском Denwer
A. создаём файл с именем «nginx.pl» в директории \denwer\scripts\init.d\
- \denwer\scripts\main\start
- \denwer\scripts\main\stop
- \denwer\scripts\main\restart
5.4 Проверяем результат
Положим рядом со скриптом файл style.css с содержанием
И облагородим наш index.php:
Теперь перезапускаем Денвер и любуемся результатом. Если CSS-файл подключился – Nginx работает нормально.
6. MongoDB
MongoDB — документо-ориентированная система управления базами данных (СУБД) с открытым исходным кодом, не требующая описания схемы таблиц.
Офсайт: перейти
6.1 PHP-driver
А. Скачиваем библиотеку php_mongo.dll с этого сайта: и закидываем в папку \usr\local\php5\ext\
Методом проб и ошибок было установлено, что подходящий драйвер содержится в архиве mongo-1.2.5.zip/mongo-1.2.5-php5.3vc9ts.zip. Если у вас по какой-то причине не заведётся, попробуйте другие версии.
B. подключаем расширение в php.ini
extension=php_mongo.dll
6.2 Установка Mongo
B. устанавливаем службу
> cd C:\WebServers\usr\local\mongodb\bin\
> mongod.exe --install --dbpath=C:\WebServers\usr\local\mongodb\db\ --logpath=C:\WebServers\usr\local\mongodb\logs\
6.3 Настраиваем запуск MongoDB совместно с денвером
A. создаём файл с именем «mongod.pl» в директории \denwer\scripts\init.d\
- \denwer\scripts\main\start
- \denwer\scripts\main\stop
- \denwer\scripts\main\restart
6.4 Проверяем результат
Запустим консольный интерфейс mongo
> Z:\usr\local\mongodb\bin\mongo.exe
и выполним вставку и вывод тестового значения в базу “test”
> db.test.save( < name: “Habr!” >)
> db.test.find()
В результате должно получиться следующее:
6.5. Установка интерфейса управления Mongo-базами
На офсайте MongoDB есть список и краткие обзоры админок, так что можно выбрать по вкусу.
Я для себя выбрала RockMongo, поэтому именно с её помощью мы окончательно удостоверимся, что у нас всё работает и никуда не падает.
А. скачиваем архив с админкой с этой страницы. Выбираем, естественно, версию для Windows. На момент написания статьи это RockMongo-on-Windows v0.0.4
B. из архива берём папку \rockmongo-on-windows\web\rockmongo и копируем её в директорию нашего тестового сайта
Открываем config.php и меняем значение параметра
Поздравляю! Теперь мы окончательные и бесповоротные молодцы.
Бонус №1. Работа с php из консоли Windows
Возможно, кому-то пригодится. Мне вот пригодилось, когда наш злобный техлид решил, что «SQL-файлы – это ващепрошлыйвек, давайте юзать миграции». Я, конечно, для приличия попыталась изобразить полное непонимание и даже пустить слезу, но была разоблачена и отправлена разбираться с тем, как это работает на Windows.
Оказалось, что всё что нужно для счастья – это прописать PHP директорию в PATH.
Нажимаем на «Изменить» и добавляем в конец строки
;Z:\usr\local\php5
Теперь проверим, что всё заработало.
В директории тестового сайта создадим файл console.php
Открываем консоль (можно прям из этой же папки – щелкаем правой кнопкой мыши с зажатым SHIFT-ом на пустом месте и выбираем пункт «Открыть окно команд»).
Вводим:
> php console.php “UserName”
Консоль отвечает:
> “Hello, UserName!”
PHP побеждён, всеобщее ликование, апплодисменты, занавес.
Бонус №2.
Все файлы и примеры, упомянутые в статье одним архивом бесплатно без смс: на гитхабе
Надеюсь, что данный материал окажется полезен.
Буду благодарна за замечания и предложения.
Установка программы на локальную сеть состоит из двух этапов - установки программы на сервер и подключения рабочих станций.
После скачивания дистрибутива программы "Клиенты" запустите его на установку на сервере, щелкнув по нему дважды либо выбрав опцию "Выполнить" (Запуск) после окончания закачки.
1. При работе регулярно делать резервную копию. Например раз в неделю. Для ежедневного автоматического архивирования программ по времени можно использовать бесплатную утилиту Автоматическое архивирование файлов.
2. Не ставить программы в Program Files. Имя папки должно быть английскими буквами, без пробелов.
3. Программы должны инсталлироваться с правами Администратора.
4. Если компьютер подключен к интернету, то при работе используйте обновляемый антивирус. Наличие антивируса не гарантирует от вирусов. Существуют вирусы, портящие информацию в базах (см. п. 1). При подозрении на вирусы проверьте компьютер разными антивирусами.
В папке с программой есть файл Readme.txt
При запуске установочного дистрибутива на установку (DblClk на скачанный архив) запустится окно инсталлятора и появится лицензионное соглашение.
Установите параметр "Я принимаю условия лицензионного соглашения" и нажмите кнопку "Далее".
Укажите в текстовой строке папку для инсталляции программы (например C:\klient305 ) либо выберите ранее созданную через дерево каталогов. По умолчанию для каждой новой версии программы папка своя.
Не рекомендуется устанавливать программы в Program Files в связи с особыми правами доступа к данной папке в некоторых ОС (например Windows Vista или Windows7, см. Возможные проблемы при установке и работе программы )
Выберите программную группу, куда программа инсталляции скопирует ярлык для программы. По умолчанию для каждой программы группа своя. Затем нажмите кнопку "Далее"
Для продолжения установки нажмите кнопку "Установить"
Программа установки скопирует файлы базы данных на жесткий диск в папку, указанную ранее пользователем.
Для просмотра файла Readme.txt в папке с программой галочка должна быть установлена.
Для запуска установленной программы на сервере необходимо запустить программный файл klient.exe в папке с программой (папка была выбрана пользователем в процессе установки ).
Программу можно запустить через ярлык в соответствующей программной группе.
Ярлык на программу будет помещен также на Рабочий стол сервера, запуск программы осуществляется с помощью двойного щелчка на ярлык.
Программа на сервер установлена.
Теперь необходимо предоставить права доступа для пользователей, которые будут работать с программой по сети.
Для этого нажмите правой кнопкой мыши на значек папки, выберите пункт меню Свойства.
Откроется окно свойств папки.
В свойствах папки надо разрешить чтение и запись в закладках Permissions (Доступ) и Security (Безопасность), либо убрать галочку Только чтение (Read only).
Разрешить доступ необходимо обязательно в двух закладках, в противном случае программа не сможет работать (см. 3.2.2. Какие бывают проблемы при настройке на сети и как их решить)
Подключение рабочих станций:
На каждом рабочем месте, где будет запускаться программа, надо установить дистрибутив программы.
Программа на каждом рабочем месте устанавливается для автоматической регистрации в системе компонентов для работы со сканером, после установки папку с программой можно удалить.
Также нужно удалить ярлыки в программной группе и на рабочем столе, созданные инсталлятором.
Через сетевое окружение надо найти папку на сервере ( \\server\klient305, где "server" - имя Вашего сервера ), нажать на нее правой кнопкой мыши и выбрать пункт меню "Подключить как сетевой диск".
Имя диска выбирается любое из доступных, например Z, затем нажмите кнопку "Готово".
Затем надо открыть этот сетевой диск и вывести на рабочий стол ярлык с файла klient.exe
Обратите внимание, чтобы в свойствах ярлыка правильно приписалась рабочая папка.
Должен стоять сетевой диск Z:\
Программу на рабочих станциях запускать через созданный ярлык.
Программу можно установить на терминальный сервер и запускать через VPN, таким образом можно организовать совместную работу в программе например из разных городов.
Работа в терминальном режиме рекомендуется, если требуется повышенная защищенность данных, а также для ускорения работы программы по сети при большом количестве записей (от 1000 клиентов) или не большой пропускной способности локальной сети.
Загрузить PsTools(3,5 МБ)
Введение
Такие программы, как Telnet и программы удаленного управления, такие как PC Anywhere компании Symantec, позволяют выполнять программы на удаленных системах, но они могут быть нелегко настроены и требовать установки клиентского программного обеспечения на удаленных системах, к которым вы хотите получить доступ. PsExec — это облегченная замена Telnet, которая позволяет выполнять процессы в других системах, полностью интерактивно выполняемые с консольными приложениями, не требуя вручную устанавливать клиентское программное обеспечение. Наиболее эффективные варианты использования PsExec включают в себя запуск интерактивной командной строки для удаленных систем и средств удаленного включения, таких как IpConfig, которые в противном случае не могут показывать сведения об удаленных системах.
Примечание. Некоторые антивирусные сканеры сообщают о том, что один или несколько средств заражены вирусом "remote admin". Ни один из PsTools не содержит вирусов, но они использовались вирусами, поэтому они запускают уведомления о вирусах.
Установка
Просто скопируйте PsExec на путь к исполняемому файлу. При вводе PsExec отображается его синтаксис использования.
Использование программы PsExec
ознакомьтесь с разделом 2004 июля Windows ит Pro Magazine для получения статьи о пометке , посвященной расширенному использованию PsExec.
Использование:
Параметр | Описание |
---|---|
-a | Отдельные процессоры, на которых приложение может работать с запятыми, где 1 — это наименьший номер ЦП. Например, чтобы запустить приложение на ЦП 2 и ЦП 4, введите: "-a 2, 4" |
-c | Скопируйте указанный исполняемый файл в удаленную систему для выполнения. Если этот параметр не задан, приложение должно находиться в системном пути в удаленной системе. |
-d | Не дожидаться завершения процесса (не интерактивного). |
-e | Не загружает профиль указанной учетной записи. |
-f | Копирование указанной программы, даже если файл уже существует в удаленной системе. |
-i | Запустите программу, чтобы она взаимодействовала с рабочим столом указанного сеанса в удаленной системе. Если сеанс не указан, процесс выполняется в сеансе консоли. Этот флаг необходим при попытке запуска консольных приложений в интерактивном режиме (с перенаправленным СТАНДАРТным вводом-выводом). |
-h | Если целевая система находится в системе Vista или более поздней версии, процесс выполняется с маркером повышенной безопасности учетной записи, если он доступен. |
-l | Запустите процесс от имени ограниченного пользователя (поменяет группу администраторов и разрешает только привилегии, назначенные группе Пользователи). в Windows Vista процесс выполняется с низкой целостностью. |
-n | Указывает время ожидания в секундах при подключении к удаленным компьютерам. |
-p | Указывает необязательный пароль для имени пользователя. Если этот параметр не указан, будет предложено ввести скрытый пароль. |
-r | Указывает имя удаленной службы для создания или взаимодействия с. |
-s | Запустите удаленный процесс в системной учетной записи. |
-u | Указывает необязательное имя пользователя для входа на удаленный компьютер. |
-v | Скопируйте указанный файл только в том случае, если он имеет более высокий номер версии или более новый, чем тот, который находится в удаленной системе. |
-w | Задайте рабочий каталог процесса (относительно удаленного компьютера). |
-x | Отображение пользовательского интерфейса на безопасном рабочем столе Winlogon (только в локальной системе). |
— приоритет | Указывает-Low,-BelowNormal,-AboveNormal,-High или-реального времени для запуска процесса с другим приоритетом. Используйте-Background для запуска с нехваткой памяти и приоритетом ввода-вывода в Vista. |
компьютерами | Direct PsExec для запуска приложения на удаленном компьютере или указанных компьютерах. Если опустить имя компьютера, программа PsExec запустит приложение в локальной системе и при указании подстановочного знака (\ \ *) программа PsExec выполнит команду на всех компьютерах в текущем домене. |
@file | PsExec выполнит команду на каждом из компьютеров, перечисленных в файле. |
cmd | Имя выполняемого приложения. |
даваемых | Аргументы для передачи (Обратите внимание, что пути к файлам должны быть абсолютными путями в целевой системе). |
-AcceptEula | Этот флаг подавляет отображение диалогового окна лицензии. |
Приложения, имена которых содержат пробелы, можно заключать в кавычки, например
Если не указать имя пользователя, процесс будет выполняться в контексте вашей учетной записи в удаленной системе, но не будет иметь доступа к сетевым ресурсам (так как это олицетворение). Укажите допустимое имя пользователя в Domain\User синтаксисе, если удаленный процесс требует доступа к сетевым ресурсам или для запуска в другой учетной записи. Обратите внимание, что пароль и команда шифруются при передаче в удаленную систему.
Коды ошибок, возвращаемые PsExec, относятся к выполняемым приложениям, а не PsExec.
Примеры
В этой статье я написал Описание того, как работает PsExec и предоставляет советы по его использованию:
Следующая команда запускает интерактивную командную строку на \\marklap :
Эта команда выполняет команду IpConfig в удаленной системе с /all параметром и отображает итоговый результат на локальном компьютере:
Эта команда копирует программу test.exe в удаленную систему и выполняет ее в интерактивном режиме:
Укажите полный путь к программе, которая уже установлена в удаленной системе, если она не находится в системном пути:
Запустите программу regedit в интерактивном режиме в системной учетной записи, чтобы просмотреть содержимое ключей SAM и безопасности:
Чтобы запустить Internet Explorer с правами ограниченного доступа пользователя, используйте следующую команду:
Загрузить PsTools(3,5 МБ)
PSTools
PsExec является частью растущего комплекта средств командной строки Sysinternals, помогающих в администрировании локальных и удаленных систем с именем PsTools.
Читайте также: