![]() |
Считаете ли вы плохим стилем добавление каталогов в %systemdrive%\ и %userprofile%?
Здравствуйте!
Некритичный вопрос из интереса к альтернативным мнениям и соображениям аккуратности: Считаете ли вы плохим стилем добавление каталогов в %systemdrive%\ и %userprofile%? Устанавливая программы в каталоги по умолчанию и позволяя программам создавать свои каталоги в местах по умолчанию, со временем замечаешь, что корень системного раздела и корень папки профиля пользователя превращается в жуткий набор каталогов, среди которого без дополнительных телодвижений сразу не заметишь те, которые были там сразу после установки системы (С:\Windows, C:\Users, %userprofile%\desktop и др.). По-моему, нужно считать плохим стилем попытки программ размещать свои каталоги в этих местоположениях. Хотя остаётся открытым вопрос, где же лучше тогда они должны их создавать. Свои данные они хранят в каталогах AppData или ProgramData, все свои проекты можно вести в какой-нибудь папке на рабочем столе или хотя бы в одной папке в том же каталоге %userprofile%, или на другом разделе диска. Есть у кого-нибудь мысли по этому поводу? Спасибо! |
Цитата:
%userprofile%\desktop и др. - стандартные системные переменные (заодно тоже уточните, что это такое) Они вполне подлежат изменению. Если хочется заняться построением новой иерархической системы (графовая модель к примеру) - я против не буду :) Цитата:
Администрирование - Настройка компьютера - управление дисками - раздел - точка монтирования (в том направлении) |
Цитата:
Цитата:
Цитата:
в целом, считаю хорошей идеей максимально изолировать систему от пользовательских данных и устанавливаемого ПО, как минимум, это позволит переустановить систему с минимальным копированием всех этих данных также можно разместить систему на ssd-диске и по максимуму ограничить запись в рамках этого диска, тем самым можно значительно продлить жизнь этому накопителю и увеличить быстродействие системы встречал эти идеи по реализации всего этого в windows, сам только начал пытаться это реализовать (соседняя тема http://forum.oszone.net/thread-305528.html), картинка обрисовывается всё ярче и ярче, спасибо |
Цитата:
Хоть и было это 7 лет назад, но прочтите по диагонали. Символические ссылки в NTFS В частности ответы Busla и Admiral |
Цитата:
да, про соединения (junction) я в курсе, именно так реализуется, например, всем известное перемещение стандартных пользовательских папок в корне %userprofile% через пользовательский интерфейс windows (обычно перемещают папку Документы, но можно и Загрузки, и Изображения и несколько других), данные начинают физически храниться на другом разделе, но выглядит так, как будто они хранятся на системном разделе, из консоли соединения делаются через mklink /j link target по сути, как с жёсткими ссылками, пока останется хоть одна ссылка, доступ к данным есть, это позволяет изолировать систему от пользовательских данных и это хорошо. В исходном вопросе я больше вёл речь об организации состава каталогов внутри системного раздела и папки пользователя, нежели об их физическом хранении в ближайшее время буду размышлять над построением некоего подобия FHS поверх того, что есть в windows ещё раз спасибо за наводку |
|
Цитата:
А вот быстродействие системы эта "хорошая идея" ухудшает однозначно. |
|
Цитата:
PS Цитата:
![]() |
mwz, у Вас Intel 520 ;). С прочими заметно хужее.
|
Iska, "Я не настолько богат, чтобы покупать дешёвые вещи" – фраза, которую я поставил эпиграфом к статье в Компьютерре ещё в 1999 году. ;)
|
Помню-помню ;).
|
Цитата:
логика такая: выше скорость чтения данных с диска => выше скорость загрузки системных и прочих файлов в память с этого диска =>выше быстродействие не понимаю, что не так с этой логикой? :) Цитата:
|
Цитата:
Чтобы читать с SSD, надо туда писать то, что потом оттуда читается. А пишется туда тоже быстрее. И какой смысл размещать, например, папку с временными файлами на HDD при наличии SSD... Цитата:
Вы статью про 12 мифов об SSD уже прочитали? |
jah, это вопрос не стиля, а следования рекомендациям Microsoft. Они таковы: установщик программы требует прав администратора и ставит ее в Program Files, а данные хранятся в AppData.
1. Требование повышенных прав гарантирует, что установку осуществит только администратор 2. Установка в Program Files гарантирует, что файлы программы не подменить без прав администратора 3. Хранение данных в AppData гарантирует отсутствие проблем при сохранении и нормальную работу в многопользовательской конфигурации Если ваши программы ставятся в другие расположения, возможны варианты. Например, создатель программы специально реализует установщик без запроса прав администратора, чтобы программу могли установить пользователи с ограниченными правами. Большинство современных программ ставятся в Program Files. Если Цитата:
См. также Так ли страшен контроль учетных записей?. |
Цитата:
И, в принципе, приемлемого решения этой проблемы нет. Сходу видится вариант — при удалении пройтись по %AppData% всех профилей на машине и очистить их по запросу. Но и это не лучшее решение: у этих самых прочих пользователей может быть иное мнение. Цитата:
|
Цитата:
Если же другим пользователям приложение нужно, то нужны и профили, т.е. зачищать ничего не надо. |
Цитата:
Цитата:
Цитата:
- установка в привычном понимании помимо копирования как таковая вообще не требуется, быстрый запуск можно реализовать без наличия прав администратора - приложение куда не надо не лезет, а если и захочет, то у неё под обычным пользователем и доступа туда нет, - portable-приложение обычно как раз и использует папку AppData для хранения своих (в смысле пользовательских) данных, то есть рекомендацию выдерживает - отследить наличие посторонних приложений и сказать ай-яй-яй хитрому пользователю тоже по-моему не проблема - замена файлов пресекается в настройках безопасности на каталог - хранятся на отдельном диске/разделе, поэтому не требуется их восстановление при обновлении ОС, кроме пользовательских данных в AppData, если они нужны, и быстрого запуска в общем, я пока не вижу веских причин считать рекомендации microsoft на этот счёт не устаревшими Цитата:
- phpstorm, eclipse и прочие среды по умолчанию пытаются создать свои рабочие директории в корне %userprofile%, а также comodo, virtualbox и другие туда же со своими целями, софт современный, идея замшелая :) у них свой, отличный от microsoft и не только его взгляд на эти вещи всё это, по-моему плохой стиль, о чём собственно и тема |
jah, вы не видите причин следовать рекомендациям Microsoft, мысля в масштабах 1.5 ПК. Попробуйте умножить на 1000.
Portable годится только для дома, а Windows делается для организаций. Исторически философия этой ОС - один раздел (если не верите, изучите основы управления пользовательскими данными и настройками http://www.oszone.net/3955/User_Data_and_Settings_Management ) Организациям нужно управляемое ПО, начиная с развертывания и заканчивая удалением. Им не нужна возня с правами на папки и уж тем более на другом разделе, когда права уже правильно заданы в Program Files. Я не знаю, чем у вас отличаются каталоги от директорий, и что вы понимаете под "рабочими". Я говорю только про папки установки программ и хранения их пользовательских данных. |
Цитата:
|
Цитата:
Цитата:
кроме того, есть много приложений, которые во время установки кроме как копирования своих файлов в program files и небольших примочек в виде прописывания в start menu и прочих некритичных мелочей, ничего больше не делают, по сути, тот же portable, хороший стиль, единственное, что без дополнительного анализа не поймёшь, что же делал установщик во время установки и следовал ли он хорошему стилю достаточно посмотреть на ms office, чтобы понять, чего делать не надо установка программы должна прозрачна для любого пользователя и для администратора в том числе без дополнительных причиндалов, должен быть стандарт и он должен быть простым, что достигается ограничением места файлов программы в файловой системе и небольших возможных путей регистрации программы в системе что касается реестра, где-то встречал, что по мнению самих же разработчиков ms он давно был должен умереть в том виде в каком он есть сейчас (и это правильно) для хранения всего чего только не попадя, но остаётся по причинам совместимости Цитата:
под рабочими в данном случае имелись в виду папки workspace, в которых пользователь ведёт свои проекты при использовании конкретной среды разработки, также там есть и каталоги с несколько другим назначением, например, %userprofile%\.idea для хранения настроек ide конкретным пользователем, %userprofile%\VirtualBox VMs для хранения виртуальных машин и дисков, созданных пользователем ... для каждой программы - своя папка в одной папке для программ, пользовательские данные программы - своей папке в одной папке в рамках профиля пользователя + небольшой ряд настроек для быстрого запуска - это, в принципе, всё, что нужно позволять программе на этапе установки единственное, что я вижу полезным в текущем положении дел - гарантированные рабочие места для тех, кто будет обслуживать эти системы :) Цитата:
|
Цитата:
"Вот и выросло поколение, которое называет каталоги папками". |
Цитата:
Цитата:
Цитата:
Цитата:
|
Цитата:
в терминах shell namespace корзина - это виртуальная папка, согласно этому документу не является частью файловой системы, невиртуальные папки также называют в том же документе file system folders - папки файловой системы, а здесь https://msdn.microsoft.com/en-us/library/cc294735.aspx Цитата:
есть ссылка на официальный документ, где об этих тонких различиях более-менее подробно расписано? Цитата:
какие конкретно минусы управляемости? Цитата:
Цитата:
|
Цитата:
Цитата:
Цитата:
Цитата:
Например
Цитата:
Цитата:
Цитата:
Цитата:
Если Вас действительно интересует критика, то смотреть надо было здесь: 10 Equivalents and alternatives. |
Цитата:
все утилиты в наборе sysinternals - portable, запускай и пользуй, cpuid и другой мелкий софт в виде одного exe-ка - portable. git и множество другого софта стало возможным скачать в том числе portable (хорошая тенденция), а для некоторых в единственном portable-варианте приведите конкретно чем нельзя управлять при использовании portable-приложения Цитата:
возможно мы слегка отвлеклись, исходный посыл темы заключался в обсуждении хорошего стиля в организации структуры каталогов для дополнительного софта к системному, то, что согласно этому стилю, не стоит позволять делать приложениям по их умолчанию Цитата:
к тому же я не приводил это как доказательство, чтобы с меня так спрашивать :) Цитата:
реестр это одно из тех мест, где зачастую надо просто запомнить, интуитивное там часто не работает файлы реестра растут, причём в основном за счёт приложений, разве это нормально? (не берём в расчёт чисто человеческий фактор: за систему не обидно?) Цитата:
Цитата:
Цитата:
|
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Как я понимаю, Вы тут ратуете едва ли не за возврат к куче Цитата:
Цитата:
|
Цитата:
Цитата:
например, gobolinux это делается размещением каждой версии в свой каталог с номером версии делать любую метку о версии и потом её считывать, это совсем не проблема, желательно чтобы был стандарт на то, где это лучше делать Цитата:
Цитата:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Firefox в одном месте они не должны хранится, смесь в этом смысле Цитата:
Цитата:
мысль мне ясна и она правильная, только зачастую у разработчиков нет времени или им за это не платят или возможно другие причины (назовём их рыночными) заниматься процедурой восстановления своих данных из реестра при падении системы, на которой их софт будет работать, так не лучше ли хранить эти настройки не в общей куче? Цитата:
мысль о реализации в сравнении с ajax-запросом пришла только что, возможно уже предлагалось и реализовано, но, на всякий случай, запомним этот момент, если что, это я предложил :) Цитата:
Цитата:
ещё раз повторюсь, что я за отделение системного и прикладного (а собирать можно предложенным выше способом :)) |
Цитата:
|
Цитата:
Цитата:
Цитата:
Цитата:
Правила регистрации в системе тоже опубликованы. Причем в современных ОС вы свой portable браузер даже не сможете зарегистрировать для протоколов. См. также Как правильно ассоциировать типы файлов с программами в Windows 8, и почему вам нужно учиться этому заново. Цитата:
Цитата:
Цитата:
Цитата:
а) Установке в Program files. Так "своя папка в папке для программ" уже реализовано в Program Files, и альтернативы только городят огород. b) Созданию папок в профиле. Тут вам надо немножко подумать над разницей между служебными файлами программы и пользовательскими файлами, которые вы ловко смешали в одну кучу. В AppData хранятся служебные файлы - с ними пользователь не взаимодействует напрямую. В профиле хранятся пользовательские файлы - например, человек может сохранить ВМ в %userprofile%\VirtualBox VMs. |
Цитата:
Цитата:
под установщиком портативных приложений понимаются paf.exe файлы, задача которых предоставить пользователю возможность выбрать место для копирования туда файлов портативного приложения (вот в этот установщик и надо добавлять возможностью создания ярлыков) запустить такой установщик от имени пользователя с административными правами и можно будет разместить его в тот же program files при стандартном местоположении запустить скрипт и создать ярлыки можно для множества компьютеров, поэтому снова не аргумент Цитата:
не надо размещать свои файлы по нескольким директориям, вот одна папка, внутри неё и уложись Цитата:
Цитата:
Цитата:
Цитата:
https://www.microsoft.com/Language/e...y&langID=en-gb Цитата:
Цитата:
Цитата:
тут как раз вопрос стиля, программы хотят в корень %userprofile%, а пользователь решает, нет уж, так не пойдёт, все свои workspace в папку %userprofile%\workspace, как-то так про папки документы, музыка, видео, изображения, возможно я ошибаюсь, но если программа там ничего не создаст, пользователь почти никогда сам не разместит туда файлы этого назначения, он лучше создаст папку на отдельном разделе/рабочем столе и туда разместит, например, свою музыку, некритичный момент Цитата:
возможно вы правы, хотя грань здесь размыта, radmin поместит в appdata файл c адресами компьютеров, которые пользователь сохранил - пользовательское или служебное? виртуальная машина в %userprofile%\VirtualBox VMs пользователь разве напрямую с ней взаимодействует? пользовательское или служебное? но идея правильная на выходе имеем не одну, а две папки - одна для служебных, другая - для пользовательских файлов ещё раз повторюсь, обсудить и прийти к некоторому хорошему стилю, и является смыслом этой темы если где-то частично или полностью это уже реализовано, ну круто, я же не против :) |
Цитата:
Ок, расскажите нам:
|
Цитата:
если хочется разделить на системное и прикладное, тогда мы ведём речь о переносимом ПО в целом Цитата:
- антивирус, office, различные ридеры и просмотрщики и менее используемое большой группой людей ПО (в том числе по ограниченности количества лицензий) типа автокада, а также набор специального ПО, в том числе сделанного индивидуально на заказ львиная доля с установщиком, про них вообще нет смысла говорить - оставшаяся часть ПО (в основном из специализированного) как раз portable, устанавливается простым копированием и созданием ссылки на исполняемый файл на рабочем столе пользователя, обновление простым перекопированием, удаление простым удалением, для нескольких компьютеров делается сейчас через скрипт - проблем не наблюдалось так будут веские аргументы против переносимого ПО? понятно, что будем делать как скажут, и более того, нам даже не влом, но здесь мы рассуждаем как было бы лучше, а не как сложилось |
Цитата:
Особенно в корпоративных средах Кстати, выше было упоминание про Linux. Так вот, там тоже используются установочные пакеты (RPM, DEB и т.д.) Цитата:
Вы копируете portable-программы через скрипты? В какие каталоги? От какого имени запускается скрипт? Если от имени системы, то опять же гораздо лучше использовать развёртывание установочного пакета через групповые политики. |
Цитата:
про насколько портабельным получается софт в linux не в курсе, поэтому ничего сказать не могу Цитата:
|
Цитата:
Затем администратор ищет способы автоматизировать запуск скриптов. Затем администратор ищет способы распределить компьютеры по группам, для которых будет производиться автоматический запуск скриптов. И наконец-то администратор приходит к выводу, что всё требуемое обеспечивается установкой пакетов MSI через групповые политики :lol: Цитата:
В Linux так называемый "портабельный софт" из непонятно какого источника - это ЧП. Есть простые и надёжные команды sudo apt-get install ИМЯ_ПАКЕТА и sudo apt-get dist-update , а всё остальное - от лукавого. |
Цитата:
все компьютеры доступны по шаре, один запуск psexec или один запуск батника с циклом for - это всё ;) в целом, создаётся ощущение, что у вас ежедневно закупается новый софт, ежедневно обновляется старый софт, ежедневно меняется состав групп компьютеров и ежедневно летят системы на множестве компьютеров, у вас там всё в порядке? :) |
jah, у него все ок, и надеюсь, что вы рано или поздно найдёте работу, на которой придется вылезти из танка.
|
jah, У меня есть клиент, у него 6 филиалов по области и способ, описанный El Scorpio, работает замечательно, а вот ваши идеи для моего клиента очень вредны ведут к расходу бензина :)
|
Цитата:
Цитата:
хоть через консоль администрирования какого-нибудь касперского, лишь бы софт остался после развёртывания портативным к сожалению, эту мысль мне донести так и не удалось, возможно меня поймут те, кому хоть раз приходилось восстанавливать специализированный софт, который не скачаешь в интернете и от которого остались только файлы на диске предлагаю оставить портативный софт и вернуться к исходному вопросу темы насколько я понимаю, Vadikan условно согласился, что "гадить" в корень системного диска нехорошо, осталась папка профиля пользователя, так как как таковой папки с наиболее общим назначением сейчас нет (а Документы считать таковой рука не поднимается), то решением видится создание некой папки %userprofile%\other, куда можно и складывать всё остальное, что программы пытаются сделать для пользователя по своему умолчанию в корне %userprofile% (виртуальные машины, workspace-ы (насчёт workspace-ов мне больше нравится другой раздел) и прочее), не все программы на этот счёт предлагают возможность воздействовать на них, но хотя бы из тех, что предоставляют такую возможность PS: выставленное в настройках форума "Моментальное уведомление на e-mail" работает через раз, например, не пришло ни одного письма о последних двух сообщениях в этой теме |
Цитата:
Цитата:
Всмотритесь в слово, обозначу жирным шрифтом и в кавычках: "Системные". Т.е в моём понимании: "Системные" - Это инструменты высокоуровнего профиля, которым подвластны любые "скрытые уголки" системы с наивысшими правами, даже выше чем "Администратор". Некоторые инструменты, для более точного результата и корректной работы могут устанавливают свои драйверы и службы которые при запуске ОС выполняются. И такие инструменты никак не должны оторваны от системы. |
Цитата:
Цитата:
PS: об этом сообщении тоже уведомление не пришло |
Цитата:
Вы думаете как большинство, потому что читаете и считаете так же не основываясь на своём мнении. Что такое "Переносимое программное обеспечение":? "Переносимое программное обеспечение": Запустили необходимое приложение для работы на любом компьютере с ОС Windows. После запуска, конфигурационные файлы хранящие настройки должны создаваться/перезаписываться из того же места из которого это ПО было запущено. После окончания процесса завершили работу программы. А не: Запустили необходимое приложение для работы на любом компьютере с ОС Windows. После окончания процесса завершили работу программы и нагадили в чужом компьютере. Даже можно опустить тот момент, когда "Переносимое программное обеспечение" использует компоненты системы (например файлы библиотек *.dll) . Такие действия считаю не позволительны для Portable, т.е для "Переносимого программного обеспечения": Код:
HWiNFO32 - Данные записываются в "HKEY_CURRENT_USER\Software\HWiNFO32" |
Цитата:
Цитата:
использование appdata - это нормальное явление, так как индивидуальные для пользователя настройки программы хранятся в его профиле, получить доступ к ним могут только те, кто сможет зайти в профиль, не хранить индивидуальные настройки вообще - неразумно sysinternals и другие как приведено делают это в ветке пользователя HKEY_CURRENT_USER, не самый лучший вариант, но как есть, если следят где-то ещё, то отходят от принципов портативного софта (скорей всего они изначально и не планировались как портативный софт, но в виду малого размера так получилось, что подошли под некоторые его принципы), минусик им за это, тем не менее отсутствие этих дополнительных файлов принципиально не скажется на работоспособность этих программ, поэтому не чистый, но portable (когда возведут портативный софт до ранга стандарта, исправятся :)) comodo dragon - это портативный софт? на платформе portableapps.com за изначально непортативную программу подчищает лаунчер, сама платформа нужна только потому что существует непортативный софт, считай вынужденный хак слишком "гадящая" такая программа, сделанная portable, имеет долгий запуск и завершение, так как лаунчеру нужно внести в систему все эти изначальные изменения, потом соответственно лаунчеру приходится их подчищать |
Цитата:
Скрытый текст
Переносимое программное обеспечение, сразу подразумевает: Использование программного обеспечения на любом компьютере и не оставлять следов после работы.
Например мне нужно срочно зайти в почтовую программу прочитать письмо, под рукой не оказалось необходимого девайса чтоб произвести вход. Но есть флешка болтающаяся на ключах в виде брелока. Знаю что все данные (пароли, письма) сохранены в почтовой программе. Прошу знакомого воспользоваться его личным пространством. Он мне отвечает: Нет, т.к очень не хотелось чтоб шеф узнал о том, что на этом компьютере производили какие-то сторонние действия помимо основной работы. Я отвечаю что: Софт на флешке переносимый и он не оставит следов работы. Позволяет мне воспользоваться компьютером (Ведь мне тоже совсем ненужно чтоб от почтовой программы оставались (в %AppData% или %TEMP%) какие-то данные). А представьте что что-то осталось: Знакомому по шее в лучшем случае, в худшем увольнение за безалаберное отношение к работе. Пусть из написанного под спойлером со стороны будет выглядеть как что-то надуманное или слишком жёсткое, но факт один: Переносимая программа должна оставаться незамеченной и беспрепятственно работать на любой системе ОС Windows. Цитата:
|
Цитата:
пользователь запускает программу от своего имени и она работает с теми же правами, иначе программа может просто не выполнить своё назначение Цитата:
по-хорошему, выбор этого должен осуществляться на этапе установки программы paf-установщиком, также в такой установщик должна быть заложена возможность создания ярлыков наличие установщика портативной программы нисколько не противоречит самой идее портативного софта, на выходе получится портативная программа, которая может быть перенесена простым копированием без установщика - это, я считаю основным в портативном софте, есть такая возможность - софт портативный, если отвечает и другим требованиям - идеально портативный, назовём это так Цитата:
хотя, если на картинке путь установки по умолчанию, то нагло лезут в корень системного диска, тут психологический момент - каждый считает себя особенным, но браузер лепить в корень диска С это уже явный перебор :) |
Цитата:
|
Цитата:
Цитата:
по сути, можно оставить всё как есть, за исключением того, что программа после простого перекопирования её с одного компьютера на другой будет работать, а не сыпать ошибками почему вы с завидным упорством не хотите понять этого, я не понимаю |
Цитата:
Цитата:
Инсталлятор Comodo не назначает путь установки в "C:\Comodo Dragon". Это я изменил путь. Инсталлятор Comodo назначает путь установки в "C:\Program Files\Comodo\Dragon". Путь остаётся неизменным даже после того, когда вы поставили флажок "Portable version (user profile is stored in destination folder)". |
Цитата:
определить кодировку приведённых страниц по ссылкам на обезьянок мне не удалось Цитата:
|
Время: 16:59. |
Время: 16:59.
© OSzone.net 2001-