Кстати о sgid
В NetBSD нет? Хм.
Может, хотя бы newgrp есть?
А где есть?
Я просмотрел почти всё из http://www.freebsd.org/cgi/man.cgi
Хотя мне кажется, что я где-то это видел.
---
A44: Ламеры в гамаке пусть в тапках трахаются --- это их проблемы.
Я в своём гамаке хочу полноценно трахаться на лыжах.
Я просмотрел почти всё из http://www.freebsd.org/cgi/man.cgi
Хотя мне кажется, что я где-то это видел.
---
A44: Ламеры в гамаке пусть в тапках трахаются --- это их проблемы.
Я в своём гамаке хочу полноценно трахаться на лыжах.
В общем, старшие товарищи объяснили, что задавать такие вопросы --- ересь,
святой дух исходит только от бога-отца и по-другому делать не кошерно.
---
Q16: что хуже фря или соляра?
святой дух исходит только от бога-отца и по-другому делать не кошерно.
---
Q16: что хуже фря или соляра?
В общем, старшие товарищи объяснили, что задавать такие вопросы --- ересь,Ха-ха. Как линукс сосёт --- так кошерно, а как BSD --- то не кошерно.
святой дух исходит только от бога-отца и по-другому делать не кошерно.

NAME
sg - execute command as different group ID
SYNOPSIS
sg [-] [group [-c ] command]
...
BSD работает иначе, чем линукс, поэтому sg/newgrp там почти бесполезна.
Тебе привести объяснение?
---
A9: ОС - это БЗДя
Тебе привести объяснение?
<dh__> traditionally, BSD doesn't have newgrp because it doesn't do anything
useful in a BSD environment; however, if you really want it, there's a
Linux version and you can probably compile that for NetBSD without too
much fuss.
<alaricsp> What's it do that's useful in a NON-BSD environment, out of
interest?
<dh__> basically setgid(somegid); exec($SHELL)
<dh__> which is useful in an AT&T world because in an AT&T world the results
of getgid are used to set the group owner when creating new files.
<dh__> also, I believe very old AT&T worlds didn't have supplementary groups,
setgroups or getgroups
<dh__> so it was the only way to use more than one gid.
<alaricsp> So it just affects what group owns new files you make? Handy, I
guess, for when you're putting files into shared areas and want it
to all look neat.
<alaricsp> Ah, I can see it being handy then.
<alaricsp> Thanks!
<dh__> yeah, except in BSD the default group is inherited from the containing
directlry
<dh__> directory, too.
<dh__> so it's not too useful
<dh__> that's how you do that in the sysv world
<dh__> it's the default in bsd
<dh__> traditionally
<dh__> (all of this is not as clear-cut as it was in 1989)
<dh__> sometimes, if you have an nfs volume, a bsd client, and a sysv server,
something like newgrp might be useful, I think.
<dh__> although judicious use of g+s on dirs should make the problem go away
even then.
---
A9: ОС - это БЗДя
чё за бред?
Разговор с Иркой.
Потом проверю по манам, сегодня лень.
---
...Я работаю...
Потом проверю по манам, сегодня лень.
---
...Я работаю...
it doesn't do anything useful in a BSD environmentдля опровержения достаточно одного контрпримера, не нужно смотреть маны
ОС не обязана иметь средства для решения редко встречаемых задач.
---
...Я работаю антинаучным аферистом...
---
...Я работаю антинаучным аферистом...
Ну вот ты и ответил на свой вопрос.
А задача встречается редко, потому что нет хороших средств.
А задача встречается редко, потому что нет хороших средств.
У меня задача решилась другим, более очевидным, способом.
---
...Я работаю...
---
...Я работаю...
Ну приведи, интересно же!
А то читаешь вас и комплексы развиваются...
А то читаешь вас и комплексы развиваются...
эээ
ну а для чего, по твоему, вообще нужны группы?
ну а для чего, по твоему, вообще нужны группы?
Ну для меня это из серии такой, что вряд ли когда-нибудь пригодится. Но примеры были понятные, поэтому интересно.
группы нужны, например, чтоб определять, кто имеет доступ к каким-то файлам
можно сделать для группы общий пароль, таким образом
можно сделать для группы общий пароль, таким образом
Кстати, я не особо-то заметил частое использование групп в
линуксах, обычно используют что-то поверх PAM.
---
...Я работаю антинаучным аферистом...
линуксах, обычно используют что-то поверх PAM.
---
...Я работаю антинаучным аферистом...
невнимательно смотрел? 

Приведёшь внушительные примеры?
---
...Я работаю антинаучным аферистом...
---
...Я работаю антинаучным аферистом...
Ну, не знаю, использование групп для разграничения прав на файловой системе - это достаточный пример?
В каких серьёзных приложениях это используется?
Я думаю, что chroot/jail используются для этого чаще, чем группы.
---
...Я работаю антинаучным аферистом...
Я думаю, что chroot/jail используются для этого чаще, чем группы.
---
...Я работаю антинаучным аферистом...
В каких серьёзных приложениях это используется?Чтобы банально доступ к файлам в большой организации людям согласно административному делению раздать. Это серьезное приложение?
Я думаю, что chroot/jail используются для этого чаще, чем группы.Слишком много думаешь

Почему-то фантазия многих юниксоидов форума ограничивается двумя классами задач:
1. Сервер.
2. Мой компьютер.
Есть еще класс №3 как минимум:
3. Корпоративная сеть с кучей рабочих машин на *nix, документооборот, совместная работа, сложные клиент-серверные приложения, которые под *nix и работают не в браузере (ха-ха! и такое бывает и все такие дела. Сразу вступают в игру всякие там AFS'ы, Kerberos'ы и другие развлечения. И группы сразу очень нужны становятся. И ACL'и не ограничиваются 12 битами. И еще много-много-много другого.
Такое впечатление, что почему-то считается, что класс задач №3 — это всегда венда

Такое впечатление, что почему-то считается, что класс задач №3 — это всегда вендаТы же сам сказал недавно, почему.
Там же менеджер может видео в презентацию вставить, а в больших организациях красивые презентации - это самое главное.
1. Сервер.Однако и тут полно применений группам.
Ну я могу понять, почему считается что венда для задач №3 популярнее (да так оно и есть, конечно но почему надо считать что юниксы для этих задач не используются --- это я уже не понимаю.
Используется, но там нет ничего "впечатляющего" (типа презентаций с видео поэтому эти приложения не "серьёзные".
Ну да. Но там выше был один пример, зачем может быть нужен sgid - чтобы файл создавался принадлежащим той группе, которой директория, а не default группе юзера создающего. А потом написано что в BSD это и без sgid так будет.
Ну ладно, если тебе лень придумывать, то фиг с ним, все равно это у меня праздный интерес. Я просто так твою реплику понял, что ты знаешь сходу другой пример для sgid, просто не написал.
Ну ладно, если тебе лень придумывать, то фиг с ним, все равно это у меня праздный интерес. Я просто так твою реплику понял, что ты знаешь сходу другой пример для sgid, просто не написал.
Но там выше был один пример, зачем может быть нужен sgid - чтобы файл создавался принадлежащим той группе, которой директория, а не default группе юзера создающего.На лиинуксовых файловых системах можно добиться этого же эффекта без sgid:
In addition to the three sets of three permissions listed above, a
file's permissions have three special components, which affect only
executable files (programs) and, on some systems, directories:
...
2. set the process's effective group ID to that of the file upon
execution (called the "setgid bit"). For directories on some
systems, put files created in the directory into the same group as
the directory, no matter what group the user who creates them is
in.
ещё б umask зависел от директории, и от этого могла бы быть польза 

Дык представь себе!
Для просветления читать acl(5 getfacl(1 setfacl(1). На бздях вроде acl(9).
ACL TEXT FORMS
A long and a short text form for representing ACLs is defined. In both
forms, ACL entries are represented as three colon separated fields: an
ACL entry tag type, an ACL entry qualifier, and the discretionary access
permissions. The first field contains one of the following entry tag type
keywords:
...
ACL_MASK The ACL_MASK entry denotes the maximum access
rights that can be granted by entries of type
ACL_USER, ACL_GROUP_OBJ, or ACL_GROUP.
А еще бывают продвинутые файловы системы™, например AFS. Там ACLы вообще супер-пупер гибкие, и даже бывают всякие извращения для "кроссплатформенности": например, в symlink'ах, содержащих в target'е слово @sys, это слово будет заменено на "название типа" операционной системы клиента, например:
делаем
mkdir -p .i386_linux26/bin
mkdir -p .i386_nt40/bin
mkdir -p .sun4x_57/bin
mkdir -p .sgi_65/bin
mkdir -p .rs_aix42/bin
ln -s bin .@sys/bin
Раскладываем программу, скомпилированную по этим системам в бины, и дальше радуемся кросплатформенной жизни.
делаем
mkdir -p .i386_linux26/bin
mkdir -p .i386_nt40/bin
mkdir -p .sun4x_57/bin
mkdir -p .sgi_65/bin
mkdir -p .rs_aix42/bin
ln -s bin .@sys/bin
Раскладываем программу, скомпилированную по этим системам в бины, и дальше радуемся кросплатформенной жизни.
когда буду работать в большой организации (tm обязательно воспользуюсь этой новомодной шнягой
этой новомодной шнягойНовомодной? POSIX 1003.1e DRAFT 17, 1997.
Ну да, всего 10 лет. Позже, чем Windows 95.
А в линуксе так совсем недавно.
А в линуксе так совсем недавно.
Оставить комментарий
Ivan8209
Почему нет "sg" по аналогии с "su"?---
A44: Ламеры в гамаке пусть в тапках трахаются --- это их проблемы.
Я в своём гамаке хочу полноценно трахаться на лыжах.