The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск системного менеджера systemd 253, opennews (??), 16-Фев-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


152. "Выпуск системного менеджера systemd 253"  –6 +/
Сообщение от Нон (?), 16-Фев-23, 21:19 
Реестр намного лучше помойки в /home
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

165. "Выпуск системного менеджера systemd 253"  –3 +/
Сообщение от Аноним (165), 16-Фев-23, 22:18 
Ладно бы в /home, а что в /etc творится.
Ответить | Правка | Наверх | Cообщить модератору

265. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Аноним (-), 17-Фев-23, 10:27 
> Ладно бы в /home, а что в /etc творится.

А чего такого ужасного в /etc? И если что - текстари systemd редактируются моим любимым эдитором, с регэдитом этот номер не катит как-то, извольте любить 1 единственно верную программу. При том не способную в быстрый или продвинутый поиск, зато софт гадит тысячами параметров, поэтому найти там что-то вообще - не слишком пресное удовольствие. Не, ничего сравнимого с grep там и близко нету. А чтобы что-то отредактировать - надо это сначала найти хотя-бы.

Ответить | Правка | Наверх | Cообщить модератору

300. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Аноним (300), 17-Фев-23, 12:35 
Аналогом grep под виндой можно считать командлет PowerShell Select-String. Более того, можно ходить по реестру как по файловой системе через registry::, и использовать командлеты вроде get-childitem, get-itemproperty, set-item и пр. для поиска и задания значений и веток.
Так что ваш аргумент про "ничего сравнимого с grep там и близко нету" невалиден. Все там есть, но по-другому. И вообще инструмент стоит подбирать под задачу а не под религиозные убеждения.
Ответить | Правка | Наверх | Cообщить модератору

307. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Аноним (307), 17-Фев-23, 13:21 
🙂 Грепмены - такой вид гомо сапиенс..
Ответить | Правка | К родителю #265 | Наверх | Cообщить модератору

326. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Тот_Самый_Анонимус_ (?), 17-Фев-23, 19:18 
> А чего такого ужасного в /etc? И если что - текстари systemd редактируются моим любимым эдитором

Я под реестр давно файлики, правящие нужную ветку завёл, и всё работает. Зачем мне ТВОЙ любимый эдитор?

>с регэдитом этот номер не катит как-то

А с системд мой номер не катит. Изволь предложить решение которое меня устроит. Не можешь? Тогда вали подальше со своими хотелками.

Ответить | Правка | К родителю #265 | Наверх | Cообщить модератору

280. "Выпуск системного менеджера systemd 253"  +1 +/
Сообщение от Ананий (?), 17-Фев-23, 11:16 
а вот и нет
в шинде помойка:
- может быть прямо в program files, в ini файлах
- в реестре (помнится как мониторилка от асус сохраняла десять(!) раз в секунду температуру цпу и скорость вращения вентелятора. Ну прям просто НЕОБХОДИМО сохранить в этой помойке, вместе с настройками аля /etc
- в одной из юзерских директорий : c:/users/%%USERNAME%%/AppData | c:/users/%%USERNAME%%/Application Data | c:/users/%%USERNAME%%/Local Settings. Еще шоб винтусятник не расслаблялся внутри AppData ему отсыпали Local,LocalLow и Roaming

Смогешь с первого раза ответить, как сохранить и перенести настройки скупа, офиса и прочих фотошопов. Я вот долго настраивал под себя, прям очень надо?

То ли дело в этих вот СЛОЖНЫХ линуксах и бсдях, настройки софта хранятся отдельно в /etc | /usr/local/etc
А юзерские в /home
И О УЖАС, их просто можно скопировать на другой комплюхтер и все заработает.

Только гении мелкософта додумались запихнуть в реестр и редкоизменяемые настройки системы/сервисов и лютое говнище, которому место в /tmp

Ответить | Правка | К родителю #152 | Наверх | Cообщить модератору

308. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Аноним (307), 17-Фев-23, 13:23 
> мониторилка от асус сохраняла

ещё раз:
> мониторилка от асус сохраняла

Ответить | Правка | Наверх | Cообщить модератору

327. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Тот_Самый_Анонимус_ (?), 17-Фев-23, 19:21 
У всех систем есть недостатки.

Расскажи теперь каклинухах нормально ОО поставить. Да и вообще любойсофт, отсутствующий в репозитариях. В винде легко.

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

Ответить | Правка | К родителю #280 | Наверх | Cообщить модератору

335. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Шарпей (ok), 17-Фев-23, 22:06 
> Смогешь с первого раза ответить, как сохранить и перенести настройки скупа, офиса и прочих фотошопов.

Классический метод: записать настройки на бумажку, при каждой установке делать по бумажке.
Современный метод: Установить в Sandboxie, настроить, копировать папку песочницы при переносе.

Ответить | Правка | К родителю #280 | Наверх | Cообщить модератору

386. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Аноним (386), 20-Фев-23, 02:23 
Реестр - это объектное хранилище конфигурации и состояний, а конфигурационный файл - это обычный документ. Это два разных подхода к конфигурации, которые не являются взаимоисключающими.

Простое приложение с конфигурацией в форме документа (INI или произвольный conf) один раз считывает свою конфигурацию целиком, парсит документ, поэтому почти все форматы конфигурационных файлов имеют регулярные грамматики и генерирует объекты / структуры в памяти на основании конфигурации. Простота здесь в том, что конфигурационный файл редактируется системным администратором, а сама программа в него не лезет на запись. Ей просто нужны входные данные, чтобы начать работу.

Сложным будет приложение, которое:
1. Само умеет менять свою конфигурацию
Процесс сериализации и десериализации объектов в регулярные языки обычно работает плохо для сложных структур, поэтому принято использовать объектные хранилища вроде каталогов и реестров. Если уж очень сильно нужно записать в файл, то для таких случаев используется XML, но XML-документ мало пригоден для редактирования человеком через текстовый редактор. Этот формат существует для обмена объектами между приложениями, а не для людей.
2. Должно предоставить API для удаленного конфигурирования
Текстовый документ с регулярным конфигом - это пожалуй самый технологически убогий и медленный способ хранить объекты, если вам нужно, чтобы была поддержка атомарности и транзакционности. Три приложения пытаются одновременно изменить конфигурацию четвертого через API. Эта типовая задача на "шинде", но на Linux люди целые сервера БД вынуждены ставить, либо писать суперкостыльные вспомогательные демоны по работе с текстовыми документами.
3. Должно синхронизировать состояние своей текущей конфигурации между несколькими узлами кластера.
Если приложение изменило конфигурацию (п.1) или это сделало другое приложение (п.2) или даже сам пользователь это сделал снаружи, то в случае кластеризации может потребоваться не просто автоматически перенести изменения на другие узлы, а применить новую конфигурацию синхронно. В этом случае вам придется построить "реестр" на основе ваших документов, чем, кстати, среди прочего, и занимается corosync.

Использование документов для конфигурации в Linux - это одно из наследий некоторых UNIX-подобных ОС, просто повелось так делать. Реальных аргументов всё хранить в документах нет, да это и не делается. Стоит поставить что-то более сложное (GNOME, например), так сразу выяснится, что у него есть реестр. Причем dconf (реестр в GNOME) больше привязан к gobject-introspection (конфигурации разделяемых объяктов GTK и GNOME) и их интерфейсам в D-Bus, а не к приложениям как таковым... просто вы Linux-то наверное не знаете, поэтому дальше /etc и не видели ничего.

Вот вам несколько "срывов покровов":
1. Реестры нужны и активно используются во всех ОС, в том числе в Linux
2. Если шина данных не работает с реестром (COM объявляет там классы), то такая шина всё равно никуда не уйдёт от объектно-ориентированной конфигурации и просто будет хранить всё в XML или его убогих вариациях (JSON и YAML), что гораздо хуже для конфигурирования (привет D-Bus).
3. Microsoft не придумывал реестр, он, как и многие вещи в те годы, лицензировал его IBM.
4. Объектным файловым системам вроде Ceph тоже нужны реестры. Они там хранят метаданные, названия файлов, структуры каталогов.
Вообще применений реестров множество, просто в Linux решили изобретать по новому формату реестра на каждый чих.

Реестры Windows не сильно сложно устроен. Он представляют собой каталоги объектов, которые берутся из нескольких бинарных хранилищ. Кроме того к ним добавляются волатильные параметры. Всё это монтируется внутрь виртуальной файловой системы и доступно для редактирования средствами работы с ФС, специальными функциями API и есть графические утилиты, но они покрывают не все ключи.

> мониторилка от асус сохраняла десять(!) раз в секунду температуру цпу и скорость вращения вентелятора. Ну прям просто НЕОБХОДИМО сохранить в этой помойке, вместе с настройками аля /etc

https://learn.microsoft.com/en-us/windows-hardware/drivers/d...
То что вы не знаете или в упор не понимаете, так это то, что реестр это не только /etc, это еще и /proc и
/sys. Те самые изменяемые ключи, где драйверы и модули ядра хранят временные состояния. То есть когда драйвер ядра Linux кладет текущие параметры в /proc, вас это не смущает, а когда Windows так делает, так сразу истерика капсом.

> может быть прямо в program files, в ini файлах

Если бы у Linux было что-то похожее на Windows Installer, то помойка была бы такая же или еще хлеще. То что приложение с разрешения пользователя может накидать файлов куда попало - не проблема ОС, а проблемы разработчиков приложений. Кстати попытки сделать очередной аналог инсталлера (flatpak, snap договориться же не могут) предпринимаются вполне активно, посмотрим какая помойка будет в результате.

> в одной из юзерских директорий...

А что такого плохого предоставлять символические ссылки (reparse points в случае NTFS) для сохранения обратной совместимости со старыми версиями? Вон Linux переместил /bin в /usr/bin и сделал ссылку и что? Что-то криминальное случилось? А что касается Local, LocalLow и Roaming, так это вообще каталоги которые используются при синхронизации профилей пользователей или организации перемещаемых профилей. Local - данные приложений, которые привязаны к конкретной рабочей станции, LocalLow - это то же самое, что и Local, только туда пишут приложения, запущенные с пониженными привилегиями (ближайший аналог в Linux - chroot), а Roaming - каталог, который нужно синхронизировать между разными рабочими местами, он содержит пользовательские опции в смысле "предпочтения" (preferences). В Linux как раз не такого разделения. Там всё свалено в общую кучу в /var и что-то еще кладут в /home/username.

> Смогешь с первого раза ответить...

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

Вот тебе мой совет: если у тебя не получается что-то сделать в Windows, попробуй обратиться к системному администратору.

Ответить | Правка | К родителю #280 | Наверх | Cообщить модератору

388. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Ананий (?), 20-Фев-23, 09:58 
Ну давай разберем твои многабукф

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

А в конфиги никто и не должен лезть, кроме рута и всяких там специализированных утилит для конфигурации нескольких хостов одновременно.
И пропарсить ini like файл неособо сложно. Конфиги-то обычно копеечные, считанные килобайты.

>3. Должно синхронизировать состояние своей текущей конфигурации между несколькими узлами кластера.

С кластерами дел не имел, но что-то мне подсказывает, что в линуксе, который единственный в топ-500 суперкоплюхтеров, все с этим в порядке.

>Использование документов для конфигурации в Linux - это одно из наследий некоторых UNIX-подобных ОС, просто повелось так делать. Реальных аргументов всё хранить в документах нет, да это и не делается. Стоит поставить что-то более сложное (GNOME, например), так сразу выяснится, что у него есть реестр. Причем dconf (реестр в GNOME) больше привязан к gobject-introspection (конфигурации разделяемых объяктов GTK и GNOME) и их интерфейсам в D-Bus, а не к приложениям как таковым... просто вы Linux-то наверное не знаете, поэтому дальше /etc и не видели ничего.

Я КДЕшник и вообще не линоксоид, а фрибсдишник. Но по-прежнему я не вижу тут помойки. Что и как там хранит "графическая оболочка" меня мало интересует. Мусор аля /tmp уверен туда не пихают, в отличие от оффтопика.
Вы и правда не видите разницы между единой для всей системы точкой отказа, куда без конца пишут всякий мусор от "реестра" DE?

>1. Реестры нужны и активно используются во всех ОС, в том числе в Linux

Пример для FreeBSD не составит труда привести? Или опять гном в виде аргумента?

>То что вы не знаете или в упор не понимаете, так это то, что реестр это не только /etc, это еще и /proc и

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

>Если бы у Linux было что-то похожее на Windows Installer, то помойка была бы такая же или еще хлеще. То что приложение с разрешения пользователя может накидать файлов куда попало - не проблема ОС, а проблемы разработчиков приложений. Кстати попытки сделать очередной аналог инсталлера (flatpak, snap договориться же не могут) предпринимаются вполне активно, посмотрим какая помойка будет в результате.

О божечки, сколько пафоса.
Куча фигни вроде uninst000.* что-то там конечно же лучше того же pkgng, который все хранить в одном sqlite месте. Реестр! Но в правильном исполнении, никто туда в добром здравии не запишет фигню из /proc.

> В Linux как раз не такого разделения. Там всё свалено в общую кучу в /var и что-то еще кладут в /home/username.

/var вообще не про это, ну да ладно. В отличие от Шиндовс, текстовые и нетоглько конфиги внутри /home, вполне себе понятны без бингования msdn. Некоторые вещи особенно удобны, в виде вынесения .cache для всего софта. И его, например, очень просто и легко отсимлинчить или отхардлинчить средствами системы даже простому юзеру. А в десяточке-11 уже разрешили простому смертному их создавать? Или по-прежнему нужны внешние утилиты или повершелл?

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

смешно.


Ответить | Правка | Наверх | Cообщить модератору

393. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Аноним (386), 21-Фев-23, 22:59 
> А в конфиги никто и не должен лезть, кроме рута и всяких там специализированных утилит для конфигурации нескольких хостов одновременно.

Конфиги нужны тогда и только тогда, когда в них не лезет никто кроме рута. Если одна программа меняет конфигурацию другой программы на лету нужно API. API работает с объектами. Ваши волшебные "специализированные утилиты для конфигурации нескольких хостов" должны работать через это API в противном случае, если они работают с текстовыми конфигами, получается жуткая каша из костылей с подпорками.

Безумие, которое я видел в Linux:
Люди пишут демоны, цель которых опубликовать RESTful API для редактирования одного текстового конфигурационного файла и правильного перепинывания, конфигурируемой программы в лучшем случае через SIGHUP. Это всё от отсутствия API и отсутствия стандартизации удаленного конфигурирования.

Нормальный способ 1: https://www.dmtf.org/standards/ws-man
Использовать стандарт WS-Management. Этот стандарт предполагает оформление конфигурации в качестве дерева CIM-классов, которые впоследствии становятся доступными для взаимодействия через SOAP. Это промышленный стандарт конфигурирования не только ПО, но и устройств. Известные имплементации: Dell iDrac, Open Pegassus, WinRM

Терпимый способ 2: RESTful API
Проблема в том, что это API должен написать разработчик. В том числе предоставить работающий веб-сервер на стороне своего приложения. И вот если всего этого нет начинается безумная свистопляска с вспомогательными сервисами.

Нормальный способ 3: Шина данных
Можно опубликовать объекты, которые должны подпадать под изменения в шину данных IPC/RPC при этом шина подключена к центральному хранилищу конфигурации и есть ACL для изменения параметров. Этот способ и есть сочетание COM+, DCOM и Windows Registry. В Linux похожее взаимодействие реализуется через D-Bus + dconf + gobject introspection, и только для GNOME. Systemd, кстати, публикуется в D-Bus, но там ограничения в том, что доступна только работа с юзерспейсом. Ядро объектно ориентированных шин не имеет, если таковой не считать Netlink, которую тащат уже и во FreeBSD. Про ACL я вообще промолчу, это тихий ужас.

> С кластерами дел не имел, но что-то мне подсказывает, что в линуксе, который единственный в топ-500 суперкоплюхтеров, все с этим в порядке.

Нет не в порядке. Кластер - это не про топ-500, это просто обычная группа компьютеров или виртуальных машин, на котором запущено одно и то же приложение с целью отказоустойчивости и балансировки нагрузки.
Из моего опыта нормально автоматизированы кластерные службы в Windows и в Solaris. Остальное опять костыли и подпорки.

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

Еще одно безумие, которое делают в проектах на UNIX-подобных ОС: Хранить конфигурацию таких программ в полноценной БД типа PostgreSQL. Но нельзя же ставить сервера БД на каждый чих. Кроме того это не решает проблему объектов, которым нужно хранить состояние и потерять его при перезагрузке.

> Вы и правда не видите разницы между единой для всей системы точкой отказа, куда без конца пишут всякий мусор от "реестра" DE?
> Пример для FreeBSD не составит труда привести? Или опять гном в виде аргумента?

Я не собираюсь гадать, что вы там и где себе устанавливаете на домашний компьютер. Но при попытке создать кластер на FreeBSD у вас будет создана бинарная база конфигурации (реестр) тех программ, которые вы кластеризуете в системе и сделает её вам corosync. Поймите, ваша вендетта реестрам - это всё от глупости и скудности опыта. Любой кто борется с реестрами - просто идиот, я уже приводил в пример использование реестров при создании программно-определяемых хранилищ. Реестр - это каталог объектов конфигурации. Структура данных такая... именно их используют в отказоустойчивых кластерах, потому что текстовые конфиги - это полный мрак. Сделайте домашку: https://vermaden.wordpress.com/2020/09/03/freebsd-cluster-wi.../ и потом поговорим.

> Тут уже я порекомендую вам обратиться к системному администратору, потому как /proc что в линуксе, что в бсд - виртуальная фс, которая никуда не записывается. В отличии от реестра, лол

А реестр Windows это что такое? Файлик на диске что ли?! Реестр Windows это виртуальная файловая система, которая монтирует группу разных файлов (registry hive). При этом внутри самих хайвов часть объектов являются волатильными, то есть размещенными исключительно в RAM и никогда не попадающие на диск. Не будьте ослом и прочитайте статью, которую я кидал выше про volatile registry keys.
Вы не можете по regedit.exe определить, который раздел сохранится после перезагрузки, а какой временный. Там даже не все хайвы подключаются для просмотра и редактирования. Перед тем как спорить, лучше всё-таки прочитать о том, о чем собрались спорить.

> В отличие от Шиндовс, текстовые и нетоглько конфиги внутри /home, вполне себе понятны без бингования msdn. Некоторые вещи особенно удобны, в виде вынесения .cache для всего софта. И его, например, очень просто и легко отсимлинчить или отхардлинчить средствами системы даже простому юзеру. А в десяточке-11 уже разрешили простому смертному их создавать? Или по-прежнему нужны внешние утилиты или повершелл?

Ах ну да. Чтение документации - это плохо, а умение догадаться по конфигам - это достоинство. Будете больше читать документации не так позорно будет в интернете не знать что реестр Windows частично хранится только в RAM и все драйверные параметры и состояния служб никто не пишет на диск...

Теперь про симлинки... ну их как бы нет в NTFS. Там Reparse Points: https://learn.microsoft.com/en-us/windows/win32/fileio/repar...
И да, они опять объекты а не файлы. Но меня больше интересует другое. Почему создание симлинка в BSD с использованием вашей любимой оболочки - это нормально, а от того, что для создания Reparse Point нужен PowerShell, сразу прыщить начинает?

Ответить | Правка | Наверх | Cообщить модератору

394. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Ананий (?), 22-Фев-23, 10:03 
>для редактирования одного текстового конфигурационного файла и правильного перепинывания, конфигурируемой программы в лучшем случае через SIGHUP

А що не так с сигхупом? ну и для модномолодежного перепинывания давно уже есть

service %servicename% %actionname%

>Сделайте домашку: https://vermaden.wordpress.com/2020/09/03/freebsd-cluster-wi.../ и потом поговорим.

А с чего вы вообще взяли, что я Одмин или девляпс? Зачем мне это? Или готовы оплатить потраченное время?  Моя деятельность уже давно не связанна с этим.
Последнее что я когда-то админил это сервер терминалов на базе 2000сервер с хаспами и 1ц.
Поэтому мимо.

>А реестр Windows это что такое? Файлик на диске что ли?!

Именно.

Когда-то поставил чебе задачу убрать все, что заствляло НЖМД мигать лампочкой.После чистки шедулера, коварных дефрагментаторов и дефендеров пришлось пользоваться утилитами Русиновича для мониторинга чтения/записи в файл. Там то я и был повергнут в шок количеством обращений на запись в файл реестра.

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

А что не там с моим любимым локалхостом и как вообще это свзяанно с изначальным топиком - реестр в шиндовс это помойка.
Но помимо домашних есть куча vps. Фришка со своим минимальным потреблением ОЗУ, прекрасно туда вписывается. Благо все еще есть хостеры и у нас и за бугром.

>Но при попытке создать кластер на FreeBSD

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

>что для создания Reparse Point нужен PowerShell, сразу прыщить начинает?

приведите команду, а потом сравним с
%ln -s ../filename
или
%ln ../filename

Может поймете почему так тянет блевать от этого нагромождения безсистемных параметров и бэйсик-стайл в целом. Почему в justforfun проектах смогли в лаконичность и простоту, а в коммерческом монстре нет?

Ответить | Правка | Наверх | Cообщить модератору

397. "Выпуск системного менеджера systemd 253"  +/
Сообщение от Аноним (386), 25-Фев-23, 15:18 
> А що не так с сигхупом? ну и для модномолодежного перепинывания давно уже есть

А то что вместо того, чтобы научить демон перечитывать свою конфигурацию сверху на уровне системы инициализации делается костыль. Мы шлём SIHUP (потеряно соединение с управляющим терминалом), чтобы демон обработал это как уведомление о том, что его надо перезапустить. Если и далее в зависимости от того кто как и когда писал демон (управляющий процесс с кучей потомков, форкающийся демон с завершенным родителем и прочее) оно будет по разному обрабатывать этот сигнал. В общем случае, если было демонизировано обычное консольное приложение это будет обрабатывать система инициализации просто перепинывая (вкл/выкл). Вместо того чтобы сделать API, люди это API ломают. SIGHUP это вообще-то часть POSIX, которая теперь в некоторых случаях используется не по назначению. Я же изначально говорил о том, что части программ требуется постоянно работать, на время перезапуска они дают отказ в обслуживании. Тот же nginx, apache, haproxy умеют перечитывать конфигурацию, но большая часть демонов на это не способна. API на стороне операционной системы нет, вместо этого предложено нарушать другое API и использовать сигнал не по назначению.

> ну и для модномолодежного перепинывания давно уже есть service %servicename% %actionname%

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

> А с чего вы вообще взяли, что я Одмин или девляпс?

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

> Когда-то поставил чебе задачу убрать...

И решили эту задачу не правильно. У реестра нет одного единого файла куда он пишется их много:
Есть целая группа файлов вот здесь: C:\Windows\System32\config\
Каждый из этих файлов отдельный хайв. Там лежат общесистемные конфигурации и реестры служебных учетных записей. Кроме того в каждом пользовательском каталоге: %UserProfile%\Ntuser.dat и %UserProfile%\Local Settings\Application Data\Microsoft\Windows\UsrClass.dat
И это без учета того сколько еще разделов виртуальные. Это так навскидку... Поэтому когда вы говорите про ФАЙЛ РЕЕСТРА, вы выглядите дурачком. Какой из этих файлов вам моргал "лампочкой НМЖД"? Я могу допустить, что глупый ASUS который славится низким качеством драйверов электропитания мог забыть объявить свой ключ как волатильный, чтобы он не писался на диск, но без названия точных утилит ничего сказать нельзя, поэтому "к системному администратору". Удивительно то, что у вас РЕЕСТРЫ в связи с этим плохие... Ведь если бы утилита от асус писала бы раз в 10 секунд в конфигурационный файл в /etc от этого никакая лампочка бы не светилась, так что ли?

> Вот свет клином не сошелся, нужен именно кластер. У меня таких задач нет. Еще раз напомню, речь идет про помойку в реестре.

Осторожно, сейчас будет шок-контент: "Ваши личные предпочтения, технические задачи и сексуальные трудности  не являются определяющим вектором технологического развития операционных систем". Людям нужны реестры и когда им они особенно нужны на FreeBSD они тоже появляются. И вообще, помойка - это оценочное суждение, а не технический термин. Вам кажется, что помойка находится в реестре, другому кажется что помойка в /etc. Когда дело доходит до оценочных суждений, то сколько людей столько и мнений. Я, лично, считаю, что помойка у вас в голове.

> приведите команду, а потом сравним с

PowerShell - это объектно-ориентированная оболочка, задача которой автоматизировать работу с объектами из библиотек. Когда люди хотят вызвать утилиту они пользуются оболочкой. Когда люди хотят вызвать функцию из бинарной библиотеки, нужны биндинги. PowerShell использует CLR, COM и P/Invoke для автоматизации маршалинга. Для тех кто программирует на C++, .NET или Java - это понятная и логичная оболочка. Её скорее с Perl нужно сравнивать, нежели с bash. Во многом синтаксически она вдохновлялась Perl-ом, кстати. Если у вас аллергия на скриптовые языки, от длинных названий функций происходит перегрузка вашей памяти, а использовать короткие алиасы или объявить свои не позволяют лапки, то просто не пользуйтесь PowerShell. Из обычной оболочки вам доступна утилита mklink: https://learn.microsoft.com/en-us/windows-server/administrat...
В статье указаны примеры использования.
Однако, эта утилита из времен Windows NT, которая с настройками по-умолчанию требует повышенных привилегий для работы с файловой системой. Чтобы дать возможность пользователю создавать символические ссылки через эту утилиту без прав администратора, вам нужно выдать пользователям это право через локальную политику secpol.msc: "Локальные политики\Назначение прав пользователя\Создание символических ссылок" и там добавить пользователей в список. По умолчанию "Администраторы" будут иметь доступ, но для обращения к праву группы "Администраторы" обычный пользователь должен сделать операцию elevate через оболочку (Запустить от имени администратора). Таковы правила работы подсистемы мандатного контроля. Если вы хотите убрать требования элевации и выдать это право непривилегированному пользователю нужно либо внести его в список внутри этой политики, либо создать собственную группу безопасности (не использовать служебные), внести туда пользователей и выдать это право на группу. Кстати Powershell это тоже касается.
Если вам нужно сделать это в PS: New-Item -Path "Path/to/new/link" -Target "Path/to/Original/file" -Type SymbolicLink

Если у вас свежая Windows 10/11, то её можно переключить в "Режим разработчика" среди прочего этот скрипт выдаст права всем локальным пользователям создавать Reparse Points без повышения привилегий.

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

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру