LINUX.ORG.RU
ФорумAdmin

Какой файл исполняеться при логине пользователя( только 1 раз)?


0

0

Какой файл исполняеться при логине пользователя(1 раз)? Интересует вот что: в принципе можно было бы воспользоваться .bashrc, но: во-первых, если пользователь запустит Иксы и будет открывать xterm-ы(или их аналоги) то этот файл будет каждый раз повторно запускаться. Мне же нужно исполнять его лишь 1 раз; во-вторых, если юзер использует другую shell, это не сработает.

anonymous

Тот, который прописан у него в последнем междуточии (:) файла /etc/passwd. По умолчанию, ........:/bin/bash или ..:/bin/false

Азы надо знать.

stark_lnx
()

вряд ли такое можно сотворить разве что скриптом каким нибудь. это может даже придеться к функция PAMа обратиться. хотя если работают только в иксах можно в ~/.initrc что нибудь прописать.

а если в консоли то может быть в .bashrc надо выяснять ppid и если он нулевой т.е прочесс запустивший его скорее всего процесс login. то выполнять то что нужно.

x86 ★★
()

Всю жизнь это был ".login". Еще есть /etc/login - один для всех. По крайней мере их должен читать и выполнять тот шелл, который берется за работу логин-шелла. Соответственно это должно работать при входе через локальную консоль, ssh и прочие тельнеты/getty. Ясень пень, что все это не будет фурычить при входе через xdm.

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

.login не запускаеться. (пробовал записать туда что-то вроде "echo Yes >> ~/login-1") Файл не появляеться/строка не записываеться... :-(

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

>> x86 (*) (02.11.2004 7:56:26) А как выяснить этот ppid?

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

> .login не запускаеться. (пробовал записать туда что-то вроде "echo Yes >> ~/login-1") Файл не появляеться/строка не записываеться... :-(

man bash (секция FILES):

/etc/profile: The systemwide initialization file, executed for login shells.

~/.bash_profile: The personal initialization file, executed for login shells.

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

Кстати, .login тоже не срабатывает. А /etc/login у меня нет... Так что... Относительно .bash/man bash прблема вот в чем: мне нужно сделать автозапускающийся скрипт не для всех пользователей(/etc/profile), кроме того, хотелось бы сделать его независимым от используемой им shell. :-( P.S. У меня Mandrake 9.2

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

> мне нужно сделать автозапускающийся скрипт не для всех пользователей

man whoami ?

> хотелось бы сделать его независимым от используемой им shell

cat /etc/shells | while read sh ; do man $sh ; done

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