• Куда пропало свободное место на диске?

    При создании раздела с опциями по-умолчанию ext4 создаёт таблицу inode'ов на несколько десятков миллионов файлов, которая на больших разделах может занимать несколько десятков гигабайт. На ваши 2 ТБ я думаю она будет в районе 50ГБ. Ну и плюс зарезервированные 5%. Создавать раздел надо вручную командой mkfs.ext4, с приблизительным количеством файлов которые будут на диске.
    например:
    mkfs.ext4 -N500000 -m0 /dev/sdb1
    Ответ написан
    4 комментария
  • Куда пропало свободное место на диске?

    GenuZ
    @GenuZ
    Не нашёл полностью правильный ответ, поэтому напишу его.

    По-умолчанию файловая система ext4 резервирует под служебные нужды 5% свободного места на разделе. На больших дисках это бывает много. Изменить такое поведение можно, сказав в терминал подмонтированному разделу:
    tune2fs -m 1 /dev/sda1
    где 1 - количество резервируемого места в процентах (0% тоже можно), а /dev/sda1 - раздел, к которому это применить

    Эффект немедленный и без перезагрузок.

    Также после этого можно слегка дефрагментировать этот смонтированный раздел:
    e4defrag /dev/sda1
    Ответ написан
    3 комментария
  • Как лучше хранить настройки пользователей в базе данных?

    rubyrabbit
    @rubyrabbit
    Если говорить про MySQL, то в PunBB, например, как наиболее быстрый вариант выбрали хранение настроек прямо в таблице users: каждой настройке свой столбец.
    Если вы часто меняете перечень настроек, то проще вынести их в отдельную таблицу, где ключом будет user_id, а в столбцах будут сами настройки.
    Тогда можно одним запросом получить данные сразу в готовом виде, экономить тут смысла особо нет, зато можно делать сложные запросы в случае чего.
    А в общем конечно лучше использовать NoSQL для этого.
    Ответ написан
    Комментировать
  • Как лучше хранить настройки пользователей в базе данных?

    Wott
    @Wott
    Вы неправильно ставите вопрос. как хранить — без разницы, данные от этого не испортятся. Вопрос в том что вы будете с ними делать. И тут есть варианты:

    Если планируется делать выборки по юзерам по свойствам, например принадлежность к группе, то такие свойства должны быть в явном виде. Нормализовать или нет — решайте сами.

    Если же опции используются скопом, например при рендере страницы для него и больше никак, то есть смысл упаковать массив в виде json/xml.

    Мне лично нравиться вариант Wordpress, где есть отдельная таблица для именованных опций ( юзера, поста и что там еще ) и в ней храниться либо отдельное значение или массив в виде отдельных строк, но с одним именем, по которым можно делать выборку или сериализованный массив — по желанию. Точнее как удобно их использовать. И при желании все варианты можно миксовать.
    Ответ написан
    Комментировать
  • Как отправить письмо по imap?

    IMAP не отправляет письма. Почтовые клиенты отправляют письма по SMTP submission, по imap можно положить письмо в папку отправленных.
    Ответ написан
    Комментировать
  • Домен третьего уровня на другом сервере и хостинге, с другим ip. Можно ли настроить?

    SlavikF
    @SlavikF
    Если у вас свои name servers, то я не уверен.
    А вот если кто-то (Google, Yandex, GoDaddy) для вас управляет DNS, то надо просто у него добавить A или CNAME запись.
    У меня домен зарегестрирован у Гугла и там вот так:

    0d249b50301e4cf2a6cc6b02267b5d6a.png

    @ - это IP для моего домена (второго уровня) - slavikf.com
    * - это всех поддоменов (третий уровень) - типа any-many.slavikf.com
    а потом, IP для отдлельных хостов, например artur.slavikf.com, backup.slavikf.com и т.д.

    Кстати, можно пользоваться и CNAME, не только A. CNAME - это типа форвардинга для IP, но лучше гуглите для более правильного определения. В некоторых случаях это более удобней.
    Ответ написан
    Комментировать
  • Как настроить php intellisense для Visual Studio Code?

    ganjour
    @ganjour
    change returns success
    В настройках необходимо указать путь к исполняемому файлу PHP 7.xx и отключить стандартный PHP IntelliSense. Вот этих трех строк достаточно для настройки плагина:
    "php.executablePath": "D:/YandexDisk/OpenServer/modules/php/PHP-7/php.exe",
    "php.validate.executablePath": "D:/YandexDisk/OpenServer/modules/php/PHP-7/php.exe",
    "php.suggest.basic": false,

    Пути к php.exe замените на свои и не забудьте сохранить файл настроек..
    Ответ написан
    Комментировать
  • Обход кэширования js/css

    @Serator
    А не лучше ли выкинуть из головы все эти анахронизмы (аль даже маразмы), описанные выше, и использовать то, что собственно и было реализовано под вашу задачу, то бишь ETag. Подробнее почитаете в википедии, аль где-нибудь еще (информации достаточно много).

    + в том, что все происходит автоматически и при этом файл кешируется.

    Пример использования для ".htaccess":

    # Настраиваем ETag на время последнего изменения файла и его размер
    FileETag MTime Size
    Ответ написан
    6 комментариев