LINUX.ORG.RU
ФорумTalks

Как прекрасен юникс-вей в 2020-х...

 , ,


6

1

…не зря Майкрософт еще в 80-х хотела с ДОСа мигрировать на Юникс. Но не вышло у пацанов, не фартануло.

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

Большая часть действий делается через тупой GUI, в котором надо лазить по меню и натыкивать галки. Если нужно изменить конфиг, проверить и в случае чего вернуть как было, или протестировать разные варианты, то сидишь и надрачиваешь мышь. Система была рассчитана на людей, которые не могут выразить команду высшим достижением эволюции: человеческим языком.

Некоторые вещи вообще только через реестр. Ну сам реестр это отдельная история. Никакого вам аналога diff, meld, невозможно без дебильных приседаний с экспортом-импортом в текстовый файлик положить конфигурацию в git. Спасибо, хоть экспорт-импорт приделать не забыли. (В этом месте я вернулся сюда из абзаца, в котором писал про кодировки, и еще раз напишу: спасибо! От этих … специалистов можно было бы вполне ожидать, что и этого не будет.)

Система всё время ставит палки в колеса, если нужно часть действий выполнить от имени администратора. Типа, запускаю ФМ с полными правами админа. Создаю в нём файл. Открываю его в Notepad++ — а всё, Notepad++ уже работает не с полными правами админа. Может это, конечно, баг самого NPP, я хз.

Интерфейсы для работы с правами доступа находятся глубоко в категории «рисовал программист» и не обновлялись со времён NT. Там под виндой даже не столько сама система прав доступа сложная, сколько GUI к ней убогий.

И в целом многие интерфейсы сделаны так, что худшим образчикам из Linux и не снилось. Типа прокрутки гигантских списков в окошке фиксированного размера, в который влазит штук пять строк.

Чтобы сделать аналог линуксового «запуск фиксированной команды через sudo без пароля», нужно добавлять задание в тамошний аналог крон!. А чтобы сделать аналог «запуск фиксированной команды через sudo без пароля, но только для конкретной группы пользователей», я вообще не знаю, что делать. Тут моих навыков гуглёжки не хватило.

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

Если ты хочешь взять обычный Блокнот и написать в нём cmd-скрипт, то хрен там ночевал - Блокнот сохраняет файлы в кодировке 1251, а запускается скрипт в кодировке 866!!!! КАКОГО ХРЕНА?!

А если ты берешь весь из себя такой знаменитый Notepad++ с поддержкой кодировок и хочешь перекодировать уже написанный файл, то он не умеет конвертировать между этими кодировками!

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

Когда что-то гуглишь по вопросам системной конфигурации, обычно попадаешь или на ВИО, где отвечающий тупее вопрощающего, или на официальные места поддержки, где ответ чаще всего «такая штука в Windows не поддерживается, но вы можете попробовать самостоятельно станцевать в гамаке на лыжах», или на поисковый спам.

Эта шляпа еще и на HDD стояла, а я уже забыл, что такое 64-битная винда на HDD. Это ад и израиль, сраный лагодром с загрузками по 5 минут, во время которых пытаются просраться несколько десятков системных сервисов и еще куча говнокода в пользовательском сеансе. И пока они не просрутся, Проводник висит, и весь гуй вместе с ним. Да по сравнению с этим что systemd, что до-systemd-шная баше-лапша - просто вершины архитектуры и топ производительности.

Кен Томпсон, Деннис Ритчи, Ричард Столлман, Линус Торвальдс, и вся Red Hat целиком, и все остальные причастные к Линуксу, и еще разработчики всех BSD, и даже почившая Sun Microsystems с Солярой, СПАСИБО вам всем! Что мы имеем технологичную, конфигурируемую, понятную ОС, и даже целое множество разных ОС. И не привязаны к этой жалкой пародии на OpenVMS, мутировавшей на отравленных землях MS-DOS-а, и по какой-то злой шутке судьбы дожившей до 2020-х!

…уф. Выдохнул.

★★★

Последнее исправление: wandrien (всего исправлений: 8)

с нетривиальной конфигурацией винды

значительная часть вещей в Винде удобно делается через установку MSYS2 (это GNU-тое окружение вокруг MinGW64).

Система была рассчитана на людей, которые не могут выразить команду высшим достижением эволюции

система расчитана на людей, которые не читают документацию. Потому что практически никто не читает документацию. Когда ты пользуешься графическим интерфейсом - он сам себе документация

Никакого вам аналога diff, meld, невозможно без дебильных приседаний с экспортом-импортом

gconf-editor то уж точно лучше сделан, да? ))

значительная часть реестра - это файлы на файловой системе. Их, конечно, хрен найдешь, где они лежат. Но и в линуксе это тоже так.

работать с реестром через командную строку и скрипты можно в PowerShell, который является дефолтом для администрирования винды

Типа, запускаю ФМ с полными правами админа. Создаю в нём файл. Открываю его в Notepad++ — а всё, Notepad++ уже работает не с полными правами админа. Может это, конечно, баг самого NPP, я хз.

Ты, скорей всего, запускаешь ФМ не с полными правами админа. Проверить просто - надо сходить в какую-нибудь защищенную папку типа `%System32%\drivers\etc" и создать там подпапку

А запускаешь ты ФМ не с правами админа потому, что не знаешь, как это устроено в винде. В винде Explorer - это центральная часть бытия, поэтому ты не можешь в пользовательской сессии запустить второй такой же эксплорер, но с другими правами.

Причем, запускается он всегда с самыми минимальными правами - неважно, какие права имел родительский процесс. Если ты его запустишь из cmd.exe запущенной под Администратором, то Explorer всё равно запустится под обычным пользователем.

Вначале тебе нужно из процессов удалить все уже запущенные экземпляры Explorer. Потом открыть Task Manager (ctrl+shift+esc) и из него сказать File->Run, explorer.exe /nouaccheck, поставив галку «дать процессу права администратора»

Это довольно очевидная идея, чтобы пользователи (и вирусы) не расхреначили систему в интерактивном режиме

Воркэраунд - ты можешь скачать какой-нибудь альтернативный файловый менеджер, и (если он написан правильно) он будет сохранять привилегии

и не обновлялись со времён NT.

и это супер. Ты один раз изучаешь эти интерфейсы и пользуешься ими десятками лет. Ничего нового учить не нужно - это очень хорошо.

Типа прокрутки гигантских списков в окошке фиксированного размера

чуть ли не единственное, в чем я с тобой полностью согласен

о «запуск фиксированной команды через sudo без пароля», нужно добавлять задание в тамошний аналог крон!

вот тебе эскалированная командная строка

runas /noprofile /savecred /user:Administrator "powershell.exe -noexit"

либо если хочется прям плейнтекстом откуда-то взять пароль, то вот так

PSEXEC \\CHANGEME_COMPUTER_NAME -i -u Administrator -p CHANGEME_PASSWORD -h powershell.exe -noexit

psexec - официальная тула от майкрософт, но не идет из коробки в винде, нужно скачать отсюда: https://docs.microsoft.com/en-us/sysinternals/downloads/psexec

первый ответ в гугле

Описания системных сервисов переведены на русский, такое впечатление, что машинным надмозгом.

русский язык не нужен в IT

Блокнот сохраняет файлы в кодировке 1251, а запускается скрипт в кодировке 866

переключи винду и консоль на UTF

знаменитый Notepad++

правильно читается так: Visual Studio Code

то хрен ты откатишь пакет для теста, нет в ней ни пакетов

вообще-то есть, называются msi (microsoft installer package)

из консоли с ними работают через стандартную утилиту msiexec

Всё навалено кучами легаси-хлама.

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

стабильных расположений путей в ней тоже нет. Например, расположение папки с содержимым меню Пуск переезжало с места на место в каждой (!) крупной версии винды.

если ты пользователь - то в PowerShell то что тебе нужно получается как-то так

[environment]::getfolderpath("startmenu")

для разработчиков они лежат в CSIDL или KNOWNFOLDERID

64-битная винда на HDD. Это ад и израиль, сраный лагодром

у всех разрабов винды сотни лет уже как SSD. Идет ли оно на HDD там догадываются разве что парни, которые занимаются поддержкой драйверов :)

во время которых пытаются просраться несколько десятков системных сервисов

в линуксе-то их меньше, верно?

===

винда, конечно, говно, но не поэтому

ты ничего не осилил

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

русский язык не нужен в IT

Да ты что. А вот MS иного мнения. Может тогда винда, наконец, имена сетевых интерфейсов перестанет на русском создавать по дефолту?

На остальной бред типа «ФМ не с полными правами» лень отвечать. Я с виндами дело имею с 2000-го года. И кстати, в отличие от дебилов, которые не читают документацию, документацию на винду я читал достаточно внимательно. Еще во времена Win9x и XP.

wandrien ★★★
() автор топика
Ответ на: комментарий от stevejobs

вот тебе эскалированная командная строка

runas /noprofile /savecred /user:Administrator "powershell.exe -noexit"

либо если хочется прям плейнтекстом откуда-то взять пароль, то вот так

PSEXEC \\CHANGEME_COMPUTER_NAME -i -u Administrator -p CHANGEME_PASSWORD -h powershell.exe -noexit

Хотя нет, вот на это отвечу.

Ни один из засветившихся в теме виндузятников даже не понял постановки задачи. Вангую, потому что они просто не понимают, что такое sudo, и для чего он нужен.

Пароль от админской учётки он, цуко, в плейнтексте хранит. Реально указательный палец присох к мыши, а мозги отсохли. Цитата с квотезов #1 в действии.

man sudo, неучи.

Позорища.

wandrien ★★★
() автор топика
Ответ на: комментарий от wandrien

А интересно, нет ли по современной винде книги по типу Perl Cookbook. Т.е. «проблема --- решение», но чтобы без капитанства и комиксов, и с другой стороны без погружения в какие-нибудь дебри дотнета.

bread
()
Последнее исправление: bread (всего исправлений: 1)
Ответ на: комментарий от fsb4000

Ты снова выходишь на связь?

Ты уже прочитал man sudo и осилил прочитать и осмыслить задачу из ОП? Вижу, что нет. Продолжай демонстрировать куриные мозги.

wandrien ★★★
() автор топика
Ответ на: комментарий от wandrien

man sudo, неучи.

просто в винде так не делается

гляди как работают продакты и маркетологи:

есть целевая аудитория, какой-то набор людей. «Продакты» ищут, от чего у них горит жопа - источники боли. Потом они идут к разработчикам и говорят: нам нужно изобрести таблетки от жопной боли. Когда таблетки изобретены - их продают страждущим

если у задачи нет целевой аудитории, или она крайне мала - задача не делается

и я сейчас не о понимании вопроса как у гномеров: «мы будем делать только фичи, которые нужны 80% юзербазы». Это дегенератство. Целевая аудитория может быть сегментирована на очень маленькие группки людей, и для каждой из этих группок желательно продать какие-то таблетки от жопной боли

линия «делать или не делать» проходит в первую очередь по экономической целесообразности и когнитивной нагрузке.

начиная с какого-то количества человек, ты заплатишь программистам за разработку больше, чем клиентов купит эту фичу.

сколько людей заплатит за sudo в смысле линукса? Существует ли значимое количество человек, которые винду без sudo не купят, а с sudo - купят?

начиная с какого-то количества фичей у пользователя треснет голова при попытке осознать, как этим пользоваться. Например, интерфейс перестанет быть интуитивным. Или будет очень много способов сделать одно и то же, пользователь не сможет понять - какой из способов ему нужен, сдастся и вообще ничего не сделает (analysis paralysis)

у тебя в винде и так всё очень сложно. Так сложно, что вот на самой границе «нифига не понять». И они всячески стараются, чтобы всякие advanced фичи просто были не нужны или делались труднодоступно. Предполагаю (не факт, что я прав), что запуск сервисов под другим пользователем в неинтерактивном режиме - это как раз та фича, о которой большинству пользователей лучше не знать. Пусть они лучше привыкнут читать сообщения от UAC и тыкать одну кнопку

как-то так

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

начиная с какого-то количества фичей у пользователя треснет голова при попытке осознать, как этим пользоваться. Например, интерфейс перестанет быть интуитивным. Или будет очень много способов сделать одно и то же, пользователь не сможет понять - какой из способов ему нужен, сдастся и вообще ничего не сделает (analysis paralysis)

В каком месте и в каком году админский интерфейс винды был интуитивным? Ты настройки правил доступа к файлу или настройки журналирования давно открывал?

Это нагромождение окон в стиле «делал программист», рассчитанное только на то, что корпоративный админ вооружится толстенным руководством и что-то там натыкает. А не на какую-то интуитивность.

wandrien ★★★
() автор топика
Ответ на: комментарий от wandrien

Чувак, не используй винду как сервер

Винда - это прошивка для запуска игр, браузера с ютубом.

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

Там даже программировать игры и то неудобно, но мнение разработчиков никто не спрашивал, потому что им некуда деваться

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

тем более, зачем настройки журналирования на прошивке для игр? На Xbox и Play Station их нет, а игрушки запускать ещё удобней, чем на ПК

Слово «сервер» произносится как «gnu/linux»

stevejobs ★★★★☆
()
Ответ на: комментарий от wandrien

корпоративный админ

что такое этот ваш корпоративный админ?

майкрософт давно перекатывается в облака, срать они хотели на направление windows server и великих администраторов active directory

сейчас они впаривают Microsoft Teams, Office 360, One Drive, Azure DevOps, и тому подобное, развернутое на мощностях Azure.

им даже Windows больше не нужен, всё вышеперчисленное работает даже на маковских клиентах. Они помойму даже вымарали из своих внутрикорпоративных уставов Windows как основной продукт (ща не нагуглю пруфов)

если у тебя компания, которая сидит на продуктах Microsoft, то тебе нужно идти регать облачный MS аккаунт и садиться на него голой жопой до получения оргазма

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

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

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

altwazar ★★★★★
()
Ответ на: комментарий от stevejobs

Чувак, не используй винду как сервер

  1. Стоит организация. В ней стоят компы с офисом и автокадом. Предлагаешь перейти им на линукс?

  2. Нету никакого «сервера» в задаче, которая взорвала мне мозг в ОП. Есть тривиальный запрос пользователя обычного домашнего компа, для частичной реализации которого под виндой нужен аналог /etc/sudoers. Точнее в линуксе он был бы тривиальный. В винде для начала придётся поставить кучу левого софта (хорошо хоть открытого, по большей части).

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

И в целом они наверное были бы правы. В другой реальности.

А в этой мы имеем разложившуюся винду с одной стороны и бледный призрак линукса на десктопе с другой.

wandrien ★★★
() автор топика
Последнее исправление: wandrien (всего исправлений: 3)
Ответ на: комментарий от wandrien

что за задача-то?

тут тред длинней бороды столлмана, если ты где-то это описывал, то я всё пропустил

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

Или будет очень много способов сделать одно и то же, пользователь не сможет понять - какой из способов ему нужен

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

anc ★★★★★
()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от wandrien

В каком месте и в каком году админский интерфейс винды был интуитивным?

Ну в 3.51 нормальный был.

anc ★★★★★
()
Ответ на: комментарий от stevejobs

сколько людей заплатит за sudo в смысле линукса?

Компания, где я работаю, использует самописную утилиту с функционалом sudo в инсталляторе. Программы с инсталлятором покупают несколько сотен клиентов в год.

Существует ли значимое количество человек, которые винду без sudo не купят, а с sudo - купят?

Судя по моему опыту, такие инсталляторы нужны организациям, которые ставят драйверы к разной дорогой периферии, вроде хроматографов и квадрупольных ловушек. То есть ниша небольшая, но денежная. С их точки зрения единственные достоинства Виндоуз — OLE и GDI.

question4 ★★★★★
()
Ответ на: комментарий от wandrien

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

Подобное отношение пользователя к продукту - это величина постоянная, оно определяется качествами пользователя а не качеством продукта.

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

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

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

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

alpha ★★★★★
()
Ответ на: комментарий от alpha

Опять бабушки полезли из представителя редхата.

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

wandrien ★★★
() автор топика
Ответ на: комментарий от alpha

И большинству простых пользователей нужен не десктоп, а диван с телеком.

vM ★★
()
Ответ на: комментарий от alpha

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

Цирк. Ну настрой мне на уровне простого пользователя, чтобы разные учетки ходили в инет через разный dns.

Очевиднейший кейс для родительского контроля.

wandrien ★★★
() автор топика
Последнее исправление: wandrien (всего исправлений: 1)
Ответ на: комментарий от wandrien

Ну настрой мне на уровне простого пользователя, чтобы разные учетки ходили в инет через разный dns.

Простые пользователи такие простые.

alpha ★★★★★
()
Ответ на: комментарий от alpha

У простых пользователей обычно есть дети. Выйди в реальный мир.

Это реальный запрос реальной девушки, если что. Не айтишницы. Слово dns она не знает, но у ней не мука в голове, чтобы она не могла сформулировать задачу «чтобы ребенок ходил только по безопасным сайтам».

wandrien ★★★
() автор топика
Ответ на: комментарий от alpha

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

мой опыт работы эти сказки не оправдывает, а твой опыт работы с этим не связан.

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

«неважно какое *овно мы впарим пользователю, главное его убедить» windows 8? или это как с systemd? впихнем насильно, несогласных проигнорим, а новых замотивируем?

И не надо пытаться делать продукт который безоговорочно понравится «простому пользователю»

да? а на кого Gnome тогда рассчитан?

да ну, фигня эта вся твоя теория.

crypt ★★★★★
()
Ответ на: комментарий от alpha

Простые пользователи такие простые.

Вы у меня отвращение вызываете вашим высокомерием.

Лично вокруг меня люди интересно и насыщено проводят время: кто в тачках разбирается по роду занятий, кто собрал себе дома кастомный стол just for fun (девушка, кстати. сама, огромный стол. спроектировала и собрала), кто играет в шахматы на хорошем уровне, и т.п. А у вас все люди вокруг вас тупые, способны только тыкать пальцем в экран и гыгыкать на котиков в интернете. И при необходимости разобраться в компьютере они не смогут, ага. В работе современных ДВС чел варит, а в компе же сраная ракетная наука, куда ему дураку.

Какой-то неизжитый комплекс отличника с высоко задранным носом.

wandrien ★★★
() автор топика
Ответ на: комментарий от alpha

И не надо пытаться делать продукт который безоговорочно понравится «простому пользователю»

Зачем тогда GNOME с его «согласно исследованиям™, простым пользователям это не нужно, поэтому жрите что дают»?

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

На уровне пользователя как раз критично. Может быть, на уровне околоспециалиста не критично, но всё равно доставляет неудобства.

sudopacman ★★★★★
()
Ответ на: комментарий от alpha

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

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

crypt ★★★★★
()
Последнее исправление: crypt (всего исправлений: 1)
Ответ на: комментарий от crypt

а на кого Gnome тогда рассчитан?

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

bread
()
Ответ на: комментарий от sudopacman

Зачем тогда GNOME с его «согласно исследованиям™, простым пользователям это не нужно, поэтому жрите что дают»?

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

bread
()
Ответ на: комментарий от wandrien

Цирк. Ну настрой мне на уровне простого пользователя, чтобы разные учетки ходили в инет через разный dns.
Очевиднейший кейс для родительского контроля.

# host ya.ru
ya.ru has address 87.250.250.242
ya.ru has IPv6 address 2a02:6b8::2:242
ya.ru mail is handled by 10 mx.yandex.ru.

# su anc -c 'host ya.ru'
ya.ru has address 127.0.0.1

ЧЯДНТ?

anc ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.