Поправил ответ, в скрипте стояло true. Этот параметр влияет на повторные подключения в случае утраты связи с БД. Если же подключиться не удалось сразу, то второй попытки не будет.
Тогда не произойдет блокировка экрана, а это чревато лишними срабатываниями в карманах. Пробовал использовать CleverConnectivity, но оно по какой-то причине не поддерживает соединение.
До production'а очень далеко, пока что только проверил, что схема работает. Поднял две виртуальных машины, поставил в каждую riak и объединил в кластер. На хост-машине написал небольшой php-скрипт для загрузки картинки и настроил nginx как кэширующий прокси. Все работает как надо, но пока это только один вариант из нескольких, еще выбираю инструменты под проект.
В целом получилось вполне себе рабочее решение. Файлы сохраняются в базу бинарном виде, а получаются уже через nginx в режиме прокси с небольшим rewrite'ом и локальным кешированием. Из плюсов здесь удобство масштабирования и быстрая репликация, а из минусов — необходимость в месте под кеш и рост числа дисковых операций. В любом случае — моя вам благодарность, у меня теперь есть еще один кандидат на роль хранилища.
Как оказалось, мое представление о простоте процесса было крайне неправильным. Все-таки, слишком большая разница между ними буквально во всем, на каждом этапе по подводному камню. Тут и типы данных (enum, set и т.п) и полнотекстовый поиск и неприменимость LIMIT 1 при UPDATE и много всего другого. Самым эффективным способом оказалось написать свой скрипт-конвертер и параллельно изучать все эти моменты. Медленнее, но знания дороже.
Следующая страница после Review PHP Settings — настройка include_path и потом только Finish. Во втором пункте он собирается скачивать сырцы в папку с проектом, которая не может совпадать с той, в которой эти сырцы расположены сейчас. Две разных папки с исходниками мне не нужны.
Первый способ пробовал, оставив эти директории пустыми. Но если создать проект, добавить эти директории в исключения, то при перезапуске PhpStorm выходит модальное окно с прогрессбаром сканирования и кнопкой отмены, которая ничего не делает, остановить процесс невозможно. Причем в конфиге директории действительно прописаны в исключения, но все равно пытается что-то сделать с индексами.
Второй вариант вообще нереалистичен, так как ждать сутки, пока создается проект нет никакого желания. И сканирование при создании проекта идет не в фоновом режиме.
Возможно. Если можно, краткий ликбез, с помощью чего обычно на сайтах забирается видео/звук с камеры на клиентской стороне, передается на сервер и потом отображается на том же сайте для зрителей. Тема для меня абсолютно неизученная, будет полезна любая помощь. Интересует best practice по организации трансляций.
В том-то и проблема, что он увидит все, что идет от /chroot. Иначе как бы он мог запустить сам шелл.
В целом да, идея c dd и подгонкой фс внутри нее выглядит как более-менее приемлемая. В дополнение к ней я еще рассматриваю lvm (пока еще не приходилось использовать).
На отдельную директорию не получится, т.к. noexec указывается при монтировании.
Если делать окружение в /chroot и хранить папку пользователя в /chroot/home/%u, то после chroot'a он будет видеть все что есть в /chroot/*, он элементарно сможет сделать ls -l /home и увидит директории всех пользователей. Да, зайти в них и что-то сделать с ними он не сможет, но он не должен их видеть.
Почти оно. Правда уже давно не надо патчить ssh-сервер. Но у меня пока остается проблема, как скрыть от одних пользователей факт наличия других.
Пока что единственное решение, которое вижу, создавать раздел в файле, монтировать его с noexec, nosuid и чрутить туда. Но если один юзверь захочет увеличить дисковую квоту, что тогда?