Как стать автором
Обновить

Комментарии 40

Еще лет 10 назад пользовался win32-портами du, df и find. Скорее всего еще работают, только для поиска в системных папках потребуется повышение привилегий.
«Фактически, новая утилита DiskUsage является расширенная версией DU (Disk Usage) от Марка Руссиновича.» «Утилита еще находится в начальной стадии разработки.»

Оригинальная Disk Usage v1.62 весит 465 кБ, сжатый upx'ом — 175 кБ.
Du v1.2 выпущена в 2005 году, а Руссинович не замечен в небрежности при выпуске продуктов.

Добавят 3-3,5 порядка по объёму, GUI, тормоза — и можно выпускать.

Переделают на электрон что бы графики через js с помощью видеокарты рисовать.
Или в облаке своём отрисуют — достаточно создать бесплатную учётную запись.

С GUI есть SpaceSniffer. Гораздо более читабельное представление расположения и размеров файлов.


Для MacOS раньше был DiskInventoryX, но в Каталине сломался. Может кто подскажет аналоги?

Вот кстати мне кажется архитектурным идиотизмом, что в последних виндах присутствуют две службы активно использующие диск: индексирование для поиска и антивирус, хотя их данные можно было бы слить в одну базу и к ней бы прикрутить этот самый disk usage.
Пожалуй, unix-style, когда имеется сотня узкоспециализированных и относительно независимых друг от друга утилит, будет лучшим выбором, нежели один супер-комбайн, активно индексирующий диск и раздающий результаты антивирусам/поисковикам/прочим_утилитам.

Банально, у каждого потребителя информации о содержимом диска слишком разные запросы, свои оптимальные алгоритмы чтения, свои требования к срочности предоставления данных. Замучаешься такой универсальный комбайн ваять.
Тут либо крестик, либо трусы. Я не против unix-style. Но пусть тогда оба приложения изначально выключены или устанавливаются по желанию. Но они так тесно интегрированы с системой, что отключение их приводит к неработоспособности некоторых других компонентов. А раз они так интегрированы, тогда пусть уже минимизируют количество сканирований диска. Я не думаю, что база службы индексирования, которая хранит метаинформацию о файле, сильно разрастется если туда добавить метку «проверен антивирусом», а информация о размере файла или каталога там есть в любом случае.
Просто вы не в том направлении копаете. Банально нужно между антивирем, поиском и диском поставить прокси-сервис, который и будет рулить совместным доступом к диску этих служб. В идеале туда же засунуть и винапдейт.

Если подержать с месяц выключенной, а потом запустить десятку на обычном не-ssd диске, то первые 20 минут компьютер будет просто неработоспособен, т.к. антивирус, винапдейт и еще куча внутренних служб ОС, написанных самой же Майкрософт работают с диском так, будто кроме них больше вообще никакого софта не существует.

Особенно умиляет оптимизация службы винапдейта, когда сначала вам активно будут скачиваться апдейты для приложений из магазина (попутно проверяясь антивирусом — мы же не можем доверять своему же серверу обновлений!), после этого накатятся обновления системы (традиционно в 10 потоков качаем и ставим одновременно, все это проверяя антивирусом), ну а потом сверху заполировать полугодовым обновлением, которое напрочь снесет всё вот это только что установленное и поставит своё — чтобы обновить (как минимум приложения из магазина) заново.

О-оптимизации. Индусские. Лучшие традиции, так сказать.
Если подержать с месяц выключенной, а потом запустить десятку на обычном не-ssd диске, то первые 20 минут компьютер будет просто неработоспособен

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

Кроме того, в общем-то сам по себе процесс обновления линуксов тоже не особо-то и простой, так как просто куча программ нормально конфиги не обновляет, или затирает их дефолтовыми, или еще что-то такое же. Попробуйте обновить веб-сервер (apache+php+mysql+nginx) через какой-нибудь yum update спустя хотя бы год (особенно если мажорная версия php за это время сменилась) — и чтобы оно прям сразу само заработало после этого…
НЛО прилетело и опубликовало эту надпись здесь
Вот только в XP такое было не из коробки, т.к. на амд и интеле использовалось разное ядро и надо было менять файл. Я уже не помню точно, но с какого-то момента проблема отпала — то ли ядро универсальное появилось, то ли еще что-то. Так что не всё так просто.

просто в 10-ке теперь насильно делают обновления тех же дров, так что нужно ждать этого.

Насильные обновления вообще зло. Проблема-то даже не в том, что их ставят (это плохо, но с этим еще как-то можно жить), а в том, что службы винды работают так, как будто кроме них вообще на компе больше ничего нет, при этом они игнорируют и друг друга тоже (ставить обновления к софту из магазина и одновременно обновления к винде — легко!)
так как просто куча программ нормально конфиги не обновляет, или затирает их дефолтовыми, или еще что-то такое же.

Не знаю как в остальных, а в debian-based предусмотрен чёткий механизм управления конфигами. Проблемы возникают в основном, когда кто-то не следует этой практике и лезет скажем дописывать что-либо в файлы, которые не предназначены для редактирования пользователем. В случае, когда пакет все же хочет заменить конфиг — задается вопрос пользователю — хочет ли он этого.
Попробуйте обновить веб-сервер (apache+php+mysql+nginx) через какой-нибудь yum update спустя хотя бы год (особенно если мажорная версия php за это время сменилась) — и чтобы оно прям сразу само заработало после этого…

А это уже проблемы прикладных приложений и они нигде до конца не решаются. В том же windows придется сплясать с бубном, чтобы иметь разные версии php/java/python. Но уж поверьте эти вопросы решаемые.
Я не могу назвать вообще ни одной программы под виндой, у которой бы из-за установки обновления были бы проблемы со старыми настройками и тем более, чтобы она их затирала кривыми дефолтными.

Зато под *nix — это прям любимая практика. Я, в основном, с CentOS и Ubuntu встречаюсь, там — именно так. Впрочем, возможно, что сами ОС нормально всё делают, но вот прикладной софт — это ужас-ужас и никаких оправданий этому нет:
— проблемам с торчащим наружу memcached с чувствительными данными — больше 10 лет, он до сих пор идет с дефолтным конфигом, который это позволяет, причем там еще и лимиты памяти выставлены на что-то уровня первого пентиума. Т.е. за 10 лет разработчик даже не удосужился что-то привести в порядок, ему лень

— mysql при обновлении тупо затирает конфиг на дефолтовый, который так же очень-очень кривой и не содержит даже половины базовых настроек, добавленных за последнее десятилетие, а остальное выкручено так, что в состоянии по-умолчанию оно просто неюзабельно. Я уже даже не заикаюсь о том, что спустя 25 лет с момента начала разработки уже можно было бы и автоконфигурацию под доступный объем оперативки и кол-во ядер процессора сделать.

— php — при установке апдейтов успешно затирает конфиг, дефолтовый конфиг не содержит даже настроек opcache, над которым разработчики последние несколько лет активно работали, я уже не говорю о чем-то более существенном

— nginx и ssl сертификаты — это отдельный ад

И это только то, с чем я каждый день сталкиваюсь за последние 10 лет. И знаете что? Там вообще ничего не поменялось за эти 10 лет.

А теперь возьмите любую программу под винду: дефолтный конфиг дает сразу работающую нормально программу, лезть и что-то править — не необходимость в большинстве случаев, обновления как правило вообще не ломают ничего…

У меня чем дальше, тем все сильнее складывается описание экосистемы *nix как: «Лень делать — и так сойдет, погуглят».
Я не могу назвать вообще ни одной программы под виндой, у которой бы из-за установки обновления были бы проблемы со старыми настройками и тем более, чтобы она их затирала кривыми дефолтными.

Что и с парой IIS/1с или IIS/<другой прикладной софт> не было?

Что у вас за дистрибутив такой, что все настройки затирает? Мой например меня спрашивает. Что-то вроде попытка заменить конфиг(да и не только конфиг, стартовый скрипт тоже): <Заменяем>/<оставляем старый>/<хотите посмотреть различия между старым и новым>. В зависимости от того, менял я конфиг или точно не лез туда я принимаю решение. Разные версии php или к примеру postgresql хранят конфиги в разных каталогах, так что затереть не свой конфиг им нужно еще постараться. но опять же спрашивают, если конечный файл кто-то до них создал. При изменении мажорных версий было бы странно, если бы приложение тащило ваш кастомный конфиг с собой. Это уже не обновление, а миграция. У exim я написал конфиг с нуля, проигнорировав встроенную систему разделения конфига на отдельные файлы и ничего — лет пять работает и обновляется. nginx и exim/dovecot работают с letsencrypt и тоже никаких проблем не замечено — никто никакие конфиги не затирает.
Redmine установлен ручками иногда при обновлении требует действий ручками(например установить другую версию ruby, но и здесь нерешаемых проблем не бывает).
И как-то странно сравнивать desktop и сервер в этом вопросе. Хотя в принципе и с desktop у меня лет 7-8 проблем не возникало именно после обновления. Возможна только некоторая чехарда с дровами видеокарты (свободный драйвер не поддерживает новую карту/ либо проприетарный драйвер не работает с самой последней версией ядра).

У меня чем дальше, тем все сильнее складывается описание экосистемы *nix как: «Лень делать — и так сойдет, погуглят».

Разработчики даже представить не могут все варианты в которых вы будете использовать ПО. Те конфиги, которые присутстсвуют в пакете — типовой сценарий, они не обязаны подходить персонально вам. Потому да, погуглить и почитать мануалы придется.
Я уже даже не заикаюсь о том, что спустя 25 лет с момента начала разработки уже можно было бы и автоконфигурацию под доступный объем оперативки и кол-во ядер процессора сделать.

Кнопка «сделать зашибись»? А она точно нужна? Или все же нужно почить мануалы, чтобы сознательно вносить нужные настройки?
Что и с парой IIS/1с или IIS/<другой прикладной софт> не было?

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

Что у вас за дистрибутив такой, что все настройки затирает?

yum update -> Y
По итогу конфиги затерты. А если, как я уже предлагал, подождать с годик до выхода новых мажорных версий, то у вас и эта команда нормально не пройдет и ждут вас танцы на граблях с бубном. К серверу же, работающему лет 5-10 на каком-нибудь php времен версий 5.5-5.6, со стандартным механизмом обновлений можно даже не соваться, намного, НАМНОГО проще поставить рядом новый и перенести нужные файлы ручками, установив все остальное с нуля.

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

Ни разу не видел такого ни на centos ни на ubunte. Возможно, за последний год что-то изменилось, давно не обновлял ничего, но сильно сомневаюсь.

При изменении мажорных версий было бы странно, если бы приложение тащило ваш кастомный конфиг с собой.

Это абсолютно логичная и очевидная практика. Если вы возьмете какой-нибудь MSSql и обновите его мажорную версию — у вас не слетят конфиги и ничего не сломается. Если вы возьмете Visual Studio и обновите — у вас всё останется как вы настраивали. Я не знаю, ну даже если вы возьметесь обновлять какую-нибудь VMWare, например, то у вас ТОЖЕ ничего не поломается. Потому что это миграция конфигов — это СТАНДАРТНАЯ практика на винде, она очевидна и ожидаема. И только на *nix все на это забивают.

И как-то странно сравнивать desktop и сервер в этом вопросе.

Да нет разницы. Давно уже нет. Софт чуть-чуть разный, но базовая часть что у десктоп, что у серверных версий давно уже везде единая (потому что так проще кодить, да).

Разработчики даже представить не могут все варианты в которых вы будете использовать ПО. Те конфиги, которые присутстсвуют в пакете — типовой сценарий, они не обязаны подходить персонально вам.

Разработчик memcached за 10 лет после кучи скандалов с утечками так и не смог представить, что его софт будут ставить с дефолтным конфигом?? Что сложного прописать локалхост в настройках по-умолчанию?

В MySql уже, имхо, лет 15 назад можно было бы и поменять innodb_flush_log_at_trx_commit в дефолтных конфигах, чтобы она не ползала «из коробки». Причем той причины, ради которой оно в дефолтном конфиге именно так выставлено — уже те самые лет 15 (если не больше) практически не существует и тех, кому бы это реально требовалось — единицы. Про всякие innodb_read_io_threads,innodb_buffer_pool_instances и т.п., которые вообще от железа зависят и могут настраиваться автоматом в большинстве случаев я уже даже и говорить не хочу. Конфиг MySQL устарел лет на 20, при этом никто его менять даже не планирует. Даже переход на MariaDB никак это не исправил. Почему? Потому что — «лень, погуглят».

Кнопка «сделать зашибись»? А она точно нужна? Или все же нужно почить мануалы, чтобы сознательно вносить нужные настройки?

Нет, это не кнопка «сделать зашибись». Это банальная забота о пользователе. Чтобы настраивать только то, что реально надо настраивать. А не полностью с нуля. Это как купить машину, но ездить на ней нельзя, потому что сначала надо отстегнуть комплектную лошадь, открутить тележные колеса и заменить их на современные + еще куча телодвижений. Но потом она будет летать, ага. Ну, если вы про якорь не забыли, да (про якорь, кстати, написано в гугле — на десятой странице, по ссылке на форуме в посте от 2002 года).

Если вы ставите софт на винде — он работает СРАЗУ. Да, там тоже бывают не совсем оптимальные конфиги и что-то где-то надо тюнить, но это ОПЦИОНАЛЬНО. А вот в *nix — конфиги изначально нерабочие, их НАДО править, иначе оно просто не работает. В принципе. Из коробки. Unix-way, да.
yum update -> Y
По итогу конфиги затерты. А если, как я уже предлагал, подождать с годик до выхода новых мажорных версий, то у вас и эта команда нормально не пройдет и ждут вас танцы на граблях с бубном.

Ну то есть мануалы вы не читаете? В сами указали ему Yes на любой вопрос возникший в процессе обновления. В том числе заменить ли конфиг на тот что из пакета.
Нет, это не кнопка «сделать зашибись». Это банальная забота о пользователе. Чтобы настраивать только то, что реально надо настраивать. А не полностью с нуля. Это как купить машину, но ездить на ней нельзя, потому что сначала надо отстегнуть комплектную лошадь, открутить тележные колеса и заменить их на современные + еще куча телодвижений. Но потом она будет летать, ага. Ну, если вы про якорь не забыли, да (про якорь, кстати, написано в гугле — на десятой странице, по ссылке на форуме в посте от 2002 года).

Во-первых, сообщество предоставило вам дистрибутив и исходные коды на безвозмездной основе. оно не должно вам программу для настройки всего этого. Более того, раз такую программу никто еще не написал — значит у большинства пользователей нет в ней потребности. Дело в том, что большинство таких решений сильно ограничивают функционал программ(есть всякие zentyal, clearos, webmin, море их), потому и не популярны.
Во-вторых, кто вас даставляет, что-то отстегивать. Изначально выберите вариант установки «минимальной системы», затем доустановите ваши суперновые программы. Но и тут у вас есть выбор. Вы может накатить их вручную или поискать пользователя, который поддерживает свой небольшой репозитарий с нужной вам свежей версией скажем php.
Нет, этот Y там единственный — ответ на вопрос «вот тут список апдейтов для установки, ставим?»
Вот тут, внизу под табличкой оно спрашивает и это единственный вопрос за весь процесс обновлений.
И если ему сказать N — то он просто завершает работу ничего не делая.

Не удивлюсь, если есть какой-нибудь параметр командной строки, который может поменять это поведение по-умолчанию. Но вы заметили? Традиционный unix-way: поведение по-умолчанию создает проблемы, а сделать «правильно» можно только погуглив (или почитав 100500 страниц манов).
Каждый устанавливаемый пакет в процессе установки может у вас спросить что-то еще. Например заменить конфиг/принять лицензию/спросить согласны ли вы с форматированием системного раздела. Ответ на все вопросы будет Yes. И да. Вы привели пример с автомобилем, очевидно перед началом использования вы должны прочитать мануал о том что делает каждый элемент управления, иначе догадайтесь что будет, если вы к примеру по время езды скажем ручник потянете?
Одно дело — очевидный элемент управления (ручник), а другое — когда вам сначала надо поковыряться в настройках движка, чтобы просто ехать нормально.

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

Кто заставляет вас ковыряться в «движке»? Создание конфига это уровень как раз элемента управления. В такой аналогии «движок» был бы компиляция приложения и ручное создание таблиц в БД для того же wordpress. От вас кто-то это требует?
Сам вопрос о «вам заменить конфиг на дефолтный» в принципе не должен задаваться.

Это почему? Вот к примеру есть grub. Если заставить его работать по дефолту и затереть загрузчик в mbr. То у вас есть шанс получить кирпич. Или к примеру, новая версия php не поддерживает расширения в вашем конфиге. Теоретически пакет мог бы сообщить вам об этом, но вы же не обновляете отдельно php — вы запускаете обновление всего и вся и игнорите сообщения, которые могли бы остановить вас. И обычный пользователь вряд ли будет поднимать php у себя на машине, а если вы уже не совсем обычный, то уж будьте любезны RTFM. Иначе от таких пользователей сервер превращается в часть ботнета или хранилище дистрибутивов шифровальщиков.
Кто заставляет вас ковыряться в «движке»?

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

Это почему? Вот к примеру есть grub. Если заставить его работать по дефолту и затереть загрузчик в mbr. То у вас есть шанс получить кирпич.

И? Насколько я помню — оно там несколько раз спросит точно ли я уверен в том, что делаю.

Или к примеру, новая версия php не поддерживает расширения в вашем конфиге. Теоретически пакет мог бы сообщить вам об этом, но вы же не обновляете отдельно php — вы запускаете обновление всего и вся и игнорите сообщения, которые могли бы остановить вас.

Я не игнорю сообщения. Их просто нет. Даже если целенаправленно попросить yum обновить только php и связанные пакеты — оно все равно ничего дополнительно никогда не спрашивало.
Ну и да, ну не поддерживает оно — и что? Процесс обновления должен явно мне об этом сообщить, упасть с ошибкой, чтобы я потом уже с этим что-то сделал. По факту же, оно тупо поверх рабочего софта накатит кривой дефолтный конфиг и у меня ляжет сервер на неизвестно сколько — потому что это будет хорошо если бэкап конфигов был. А иногда апдейт начал делать кто-то другой и ты смотришь уже на результат.

И обычный пользователь вряд ли будет поднимать php у себя на машине, а если вы уже не совсем обычный

Да не важно это! Обычный-необычный… Я уже приводил примеры софта на винде, выполняющего такие же функции — и поверьте, при сравнении это просто небо и земля.

Иначе от таких пользователей сервер превращается в часть ботнета или хранилище дистрибутивов шифровальщиков.

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

Если вас не убедил пример с memcached, то можно вспомнить Sphynx и MongoDB кривые дефолтные конфиги которых до сих пор приводят к массовым проблемам. И таких программ — воз и маленькая тележка.

Я не против юниксов и открытого ПО. Но с таким отношением сообщества — какая-то серьезная конкуренция с виндой вам не грозит. А сервера с умными админами — ну, их мало, в сравнении с десктопами-то. Да и «умные админы» как-то заметно часто лажать стали, вы не заметили? Сколько утечек из-за кривых конфигов последнее время?
Очнитесь. Какая конкуренция? MS проиграл рынок серверов, уж web-точно(2/3 nginx пусть даже как фронт, но работает он точно не на windows). Почти вся сетевая инфраструктура на *nix. Виртуализация — спорный вопрос azure только одна из платформ. Сколько сколько смартфонов с windows сейчас выпускается? Как по вашему почему так?
Так же хочу напомнить что MS впилил возможность запускать linux-приложения для windows, но что-то пока там не пахнет графическими инсталляторами «далее-далее». Может потому что все равно не нужны? Что професиональные знания требуются как в настройке windows-приложений, так и в настройке linux-приложений? Что мечта о том что «домохозяйка» поднимет web-сервер методом далее-далее мечта и есть? И даже если ей дать такой инструмент, то все равно рано или поздно за ней придет разгребать специалист?
Я говорил про конкуренцию на десктопах. А на серверах МС проиграл, потому что за софт надо платить (и много денег!), а тут был на халяву «почти настоящий» заменитель. Юниксы на серверах на этом всём росли-росли-росли, пока и не уперлись в то, что, сервера с админами-специалистами закончились. А на десктопах нужного количества специалистов в окружающей природе нет и не будет. На десктопах винду таким путем не вытеснить — да и разница в стоимости в районе 10 тыс руб как бы уже не столь существенна, чтобы экономия для людей была бы принципиальной, а по фактору простоты юниксы проигрывают с треском.

Ну а смартфоны — это не юникс вообще. В смысле, он там где-то есть, конечно, но взят он был гуглом по той же самой причине — бесплатно, никому лишние отчисления делать не надо. А не потому, что юниксовое ядро чем-то принципиально лучше и удобнее для запуска java-машины с андроидом.
А на серверах МС проиграл, потому что за софт надо платить (и много денег!), а тут был на халяву «почти настоящий» заменитель.
Дело не в плате. Oracle, vmware, citrix, cisco… стоят довольно много денег, если что. Прочто в windows отстойная сетевая подсистема — просто не подходит для высоких нагрузок. Потому нет ни нормальных сетевых серверов ни суперкомпьютеров работающих под windows. У windows чрезмерная закрытость в плане, например подписи драйверов в связи с этим невозможность работать мелким производителям «железа». Высокие требования к «железу». Например я могу поднять виртуалку с xen и выделить 256 Мб под гипервизор, а остальное отдать гостевым системам или выделить уже как минимум 4Гб на те же самые нужды в windows. При этом windows-вариант не будет поддерживать даже soft-raid если он не реализован производителем материнской платы.Или такой вариант — устанавливаем IIS публикуем файловую базу 1c и определенное время тебе начинают каждый день звонить пользователи, так как IIS перестает отвечать сожрав память. Как так, ведь я же ставил далее-далее? Меняем IIS на Apache добавляем в конфиг ручками каталог. И теперь apache перезапускается только чтобы отключить пользователей при обновление 1C. Или например безопасность. Штатный фаерволл windows не имеет никаких средств противостояния банальному перебору паролей или DDoS. В iptables хоть можно с минимальным эффектом воспрепятствовать (больше трех не собираться или третий пусть подождет пару минут).
Ну чрезмерная закрытость драйверов точно так же успешно используется и упомянутым гуглом с андроидом (хотя, как я уже и говорил, там все-таки важнее не ядро, а надстройка), а ее отсутствие не сильно помогло юниксам с поддержкой железа.

Насчет сетевого стека — возможно. Я все же несколько далек от железа и драйверов, спорить не буду.

Ну и про Оракл — он успешно использует политику еще более худшую, чем у МС и спасает их только полное отсутствие хоть каких-то вменяемых конкурентов (при высоких требованиях к базе данных/анализу данных и т.п.). А на низовом уровне все то же самое — в лидерах бесплатное. Но не потому что оно лучше, а потому что — бесплатно. Это — главный фактор.

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

Ну и в контексте цены высокие требования винды к железу — это тоже деньги. Вот и вся магия. Пока у вас зарплата юникс-админу будет меньше, чем железо+софт — *nix будет жить на серверах.

А вот на десктопах, как я уже и говорил, проблема в том, что юниксовый софт в принципе не готов к массовому использованию. Если по ОС какие-то телодвижения начали делать (та же Убунта и т.п.), то по всему остальному — там печаль-беда и никакого просвета я не наблюдаю. С момента, когда я первый раз столкнулся с линуксом и freebsd процесс «работы» с прикладным софтом в них практически не улучшился, все грабли всё на тех же местах и сохраняются от версии к версии. Причем юниксы ухитряются сохранять годами грабли в вещах, которые вообще должны работать всегда — при любых условиях (помянем Pulse Audio, да).
Cisco прямо сейчас успешно давится китайцами, которые предложили более дешевую альтернативу.

Cisco это не только домашние и SOHO маршрутизаторы. Это еще и vpn и firewall и много чего еще, например оборудование для конференц-связи.
Пока у вас зарплата юникс-админу будет меньше, чем железо+софт — *nix будет жить на серверах.

Как по вашему, сколько получают админы Amazon? А админы какого-нибудь CERN? А сколько вам обойдется простой интернет-магазина поднятого в windows? Я уже говорил, деньги здесь играют не главную роль.
Причем юниксы ухитряются сохранять годами грабли в вещах, которые вообще должны работать всегда — при любых условиях (помянем Pulse Audio, да).

Что не так с PA? Не фанат, но еще ни разу особых проблем не встречал. Знаю музыканты недолюбливают из за задержек и ставят JACK, но в плане вывода звука в целом нормально, хотя и ALSA меня устраивала.
Говоря про Cisco я думал больше о крутых марштуризаторах, я как-то привык к тому, что это их основной бренд. И последние годы на этом рынке, где они сидели практически монополистами — их нехило так подвинули китайцы своими альтернативами, причем с той же функциональностью, но дешевле.

Я уже говорил, деньги здесь играют не главную роль

Деньги — всегда главное. В мире правит капитализм, в нем важны только деньги, это основная метрика. Все остальное — вторичное.

Интернет-магазинов на IIS и dot.net'е — заметное количество, если посмотреть на западе. И бывают довольно крупные. Ну а простои бывают и на *nix системах, в этом они ничуть не лучше win.

Что не так с PA?

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

Однако на винде есть тонны бесплатных софтин и проблем с конфигами в них нет. А вот ВСЁ, что приходит из *nix — такие проблемы несет с собой. Я в этом смысле так же очень люблю в винде софт на java, там прям все лучшие практики *nix как правило.

Более того, раз такую программу никто еще не написал — значит у большинства пользователей нет в ней потребности

Вообще не связанные вещи. Более того, в частности для MySQL есть соотв. программа для генерации конфига с не-кривыми настройками. Но я еще раз хотел бы напомнить, что MSSQL устанавливается через далее-далее-далее-готово и сразу работает нормально, а MySQL требует танцев с гуглом просто потому что. Нет причины — просто разработчикам лень.

Изначально выберите вариант установки «минимальной системы», затем доустановите ваши суперновые программы. Но и тут у вас есть выбор. Вы может накатить их вручную или поискать пользователя, который поддерживает свой небольшой репозитарий с нужной вам свежей версией скажем php.

И чем это отличается от винды с кучей разных программ? Более того, даже с открытым кодом есть, если уж вам это важно. Вот только проблем с нерабочими из коробки программ — нет. А никсах она сплошь и рядом, начиная с системного софта и заканчивая пользовательским. Я еще как-то могу понять, когда вы ставите через make install, но когда вы ставите пакет — это полноценный аналог инсталлятора в винде. Вот только в винде о пользователе думают и заботятся, потому что так принято, а в *nix — нет. Гугл спасет. А если не спас — ну, значит не умеешь. Неправильный пользователь. Недостоин, ага.
MSSQL устанавливается через далее-далее-далее-готово и сразу работает нормально

Те кто устанавливает MSSQL таким образом далее имеют проблемы с:
1. Исчерпание свободного места на диске, когда журнал транзакций в несколько раз превышает объем базы данных;
2. Далее-далее это установить на системный раздел еще и базу данных. Вы и винду ставите методом далее-далее? У меня для вас плохие новости в плане деградации производительности такого сервера.
3. При такой установке, даже при наличии большого объёма оперативной памяти она однажды вся окажется занята sql-сервером. Даже если ее размер больше, чем база данных на этом сервере. По дефолту внезапно выключен лимит оперативной памяти под нужды MSSQL.
Таким образом MSSQL сервер тоже требует грамотную установку, планирование и чтение мануалов.
Далее хочу напомнить, что дефолтный конфиг запускает вполне себе рабочий сервер mysql.
Но тут у меня закрадывается вопрос. Когда я спрашиваю людей: почему вы ставите centos?.. Мне отвечают — потому что интырпрайз. Но! Следом выясняют, что программы в нем слегка так (3-4 года) устарели и начинается прикручивание сторонних репозитариев вроде epel(хорошо если epel), провайдеры на хостингах еще и ядро кастомное прикручивают. И что там от энтерпрайза осталось? Древняя версия libc и coreutils? А это точно нужно? Может взять opensuse там и мечта виндузятников YaST есть.

И чем это отличается от винды с кучей разных программ?

Мне хотелось бы напомнить что куча бесплатных программ в windows пришла именно из мира, если не *nix, то opensource точно. Я помню времена когда штатный проигрыватель windows не мог даже mp3, IE был жутко тормозным и небезопасным к тому же, асечка постепенно скатывалась из IM в плэер для рекламы. Paint мог только .bmp За остальной софт приходилось только платить/ломать.
Вот только в винде о пользователе думают и заботятся, потому что так принято

Так заботятся, что за последний год несколько раз выпускали обновления окирпичивающие систему? Да и до этого словить «бесконечное обновление» в той же семерке было весьма вероятно.
Но при всех этих недостатках конфига — MSSql при этом работает, быстро работает. А не как улитка, как это делает MySQL из-за своих настроек по-умолчанию. И да, по-умолчанию MySQL базу поставит тоже куда-то глубоко-глубоко. Как и мое любимое расположение папок сайтов в /var/www/ Ну самое место им только там, конечно же.
Опять-таки, базу в MSSQL перетащить после установки можно легко, а в MySQL — сначала придется выяснить, а куда ж он ее засунул-то в данном конкретном дистрибутиве ОС.
Далее хочу напомнить, что дефолтный конфиг запускает вполне себе рабочий сервер mysql.

А вы попробуйте. Вот возьмите какой-нить сайт на cms пожирнее и — попробуйте. «Работать» оно будет так, как-будто у вас диск через PATA режим включен. А в memcached лимит прописан в районе 48 мб, если я правильно помню — тоже в 2020 году прям огромнейший объем, любой софт туда свой кеш засунет и еще место останется)

Ну и всё остальное такое же. Ок, я могу согласиться с тем, что какая-то настройка для не юникс-софта тоже требуется, но я говорил все же о том, что она по большей части опциональна, а вот в юниксах софт просто не будет работать пока его не настроишь. А чтобы настроить, да еще и правильно — надо уже быть специалистом и много-много гуглить.

Но тут у меня закрадывается вопрос. Когда я спрашиваю людей: почему вы ставите centos?..

Скажем так — у меня по работе в основном сайты на битриксе. Там есть свои (не существенные) требования к настройкам php и базы. Но проблема в том, что помимо этих экзотических требований — ему надо и все остальное правильно в конфигах настроить. И вот тут и начинается засада: если взять дефолтную Убунту, поставить туда дефолтный софт для запуска вебсайтов — то процесс настройки всего-всего занимает порядка пары дней. Ну просто потому что а) я делаю это все не то чтобы часто и б) каждый раз в конфигах всплывает какая-нибудь фигня, с которой надо долго гуглить, чтобы понять что вообще надо куда подкрутить.
Или есть альтернатива: скачиваем скрипт bitrixvm, оно ставит все что надо, накладывает конфиги с автомасштабированием по ядрам/памяти и дотюниваем десяток специфичных параметров, чтобы оно еще лучше работало. Процесс занимает ну с час, максимум. И всё — оно уже работает. Вот только доступно все это счастье только на CentOS и выбора нет. Более того, мне, я бы сказал, вообще не принципиально какая там ОС на железе крутится (все прыжки вокруг systemd, например, прошли мимо меня), так как mysql, php, nginx и все остальное — одинаковые везде и проблемы в конфигах которые я описываю так же везде, где я щупал, плюс-минус одинаковы.

Замечу только, что битрикс — это не открытое ПО. И зацените сразу какая разница в процессе?
Опять-таки, базу в MSSQL перетащить после установки можно легко, а в MySQL — сначала придется выяснить, а куда ж он ее засунул-то в данном конкретном дистрибутиве ОС.

Вобще-то и там и там правильный вариант переноса базы это dump.
Да даже если и куда засунул. Это грепнуть конфиг на предмет datadir? Это точно трудоемкая операция.
Или есть альтернатива: скачиваем скрипт bitrixvm, оно ставит все что надо, накладывает конфиги с автомасштабированием по ядрам/памяти и дотюниваем десяток специфичных параметров, чтобы оно еще лучше работало.

Если вы про скрипты отсюда, то они никак не патчат конфиг mysql. Только запускают и меняют пароль пользователю root. Не уверен что это безопасный способ работы с mysql вобще. Это скорее для разработки, а не для использования на боевом сервере. И тогда встает вопрос, что там такого что нельзя было бы выполнить по инструкции на те же 800 строк? Учитывая, что и безопасность php там никак не настраивается.

Как и мое любимое расположение папок сайтов в /var/www/


А вы в курсе, что согласно тем же мануалам в каталог /var на сервере рекомендовано монтировать другой физический раздел? В идеале даже другой диск. Или же что /var может быть ссылкой на каталог на другом разделе? Ну можно не весь /var а скажем /var/db или /var/www или /var/lib
Вобще-то и там и там правильный вариант переноса базы это dump.
Да даже если и куда засунул. Это грепнуть конфиг на предмет datadir? Это точно трудоемкая операция.

Вполне может быть. Да. Но, если я правильно помню (давно не работал), в MSSQL базу можно перенести просто из консоли управления нажав 2 кнопки и указав папку. Ничего грепать не надо, выяснять где оно было — не надо. Просто — работает.

Нет, я не говорю, что проблем там нет. Но на фоне юникс софта — это как работа современного слесаря против средневекового кузнеца. Вроде и результат одинаков, а трудоемкость в разы отличается.

Если вы про скрипты отсюда, то они никак не патчат конфиг mysql.

Не, там хитрее. Это просто инсталлятор, оно дальше репозиторий настраивает, оттуда дотягивает еще кучу всякого (+ доп. скрипты). В итоге базовые конфиги меняются на другие + внутри идет подключение доп. конфигов из спец. папок внутри etc, в которых куча настроек, частью из которых рулит большой скрипт, который при старте системы смотрит объем памяти, кол-во ядер и подкручивает настройки. Ну т.е. добавил памяти на vps/vds, перезагрузился — и всё, память УЖЕ используется эффективно, даже трогать не надо как правило. Там еще много всякой магии — там полный стек всего нужного софта настраивается по сути как в винде, тык-тык-тык и работает.

А вы в курсе, что согласно тем же мануалам в каталог /var на сервере рекомендовано монтировать другой физический раздел? В идеале даже другой диск. Или же что /var может быть ссылкой на каталог на другом разделе? Ну можно не весь /var а скажем /var/db или /var/www или /var/lib


Да в курсе. Вот только вебсайт — это на мой взгляд все-таки пользовательские данные и делать им в var просто нечего. В любом случае, я на каждом новом сервере вынужден каждый раз уточнять, куда именно решили это «стандартное» расположение папки стандартно засунуть. Везде по разному. А уж сколько «стандартных» косяков с правами и всем подобным. И всё это удовольствие — из коробки. Ну, мне же не должно быть лень перенастраивать-то, когда не работает как должно.

Вот только когда это сотый сервер — начинаешь задаваться вопросом «какого?» «почему?»
Особенно учитывая, что и у индексирования, и у антивируса есть свои API.
НЛО прилетело и опубликовало эту надпись здесь
Не знал об этой утилите, спасибо. Попробовал, мне показалось, что WinDirStat в целом нагляднее, но в обеих есть интересные фишки.
Мне больше нравится утилитка Scanner от steffen gerlach. Чисто из-за того что отображает всё в виде круговой диаграммы

А для Linux есть Filelight. Отличнейшая штука.

diskusage /minFileSize=1073741824 /h c:\windows

А нормального варианта вроде
diskusage /minFileSize=1g /h c:\windows
не завезли?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Другие новости

Истории