URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 5889
[ Назад ]

Исходное сообщение
"Linux/FreeBSD/Solaris:выяснить шелл пользователя существующеговсистеме"

Отправлено Arifolth , 09-Ноя-06 12:41 
Всем Здрасть)
как в Linux/FreeBSD/Solaris выяснить шелл пользователя, >существующего< в системе, командой, >если такая есь<... (!!!не залогиненого!!!)

парсить файл с паролями не предлагать - это не спортивный вариант

точнее нужно выяснить разрешён ли вход в систему пользователю или это демон какой - там /sbin/empty или /sbin/nologin стоит

примеры, мысли, ссылки...

сенкс ин адванс))))


Содержание

Сообщения в этом обсуждении
"Linux/FreeBSD/Solaris:выяснить шелл пользователя существующе..."
Отправлено Forth , 09-Ноя-06 12:47 
>Всем Здрасть)
>как в Linux/FreeBSD/Solaris выяснить шелл пользователя, >существующего< в системе, командой, >если такая есь<... (!!!не залогиненого!!!)
>сенкс ин адванс))))
chpass user
ежели очень хочется не попасть в vi(из боязни не суметь оттуда выйти)  - EDITOR=cat ; export EDITOR ; chpass user (если sh подобный шелл)


"Linux/FreeBSD/Solaris:выяснить шелл пользователя существующе..."
Отправлено Arifolth , 09-Ноя-06 13:34 
>>Всем Здрасть)
>>как в Linux/FreeBSD/Solaris выяснить шелл пользователя, >существующего< в системе, командой, >если такая есь<... (!!!не залогиненого!!!)
>>сенкс ин адванс))))
>chpass user
>ежели очень хочется не попасть в vi(из боязни не суметь оттуда выйти)
> - EDITOR=cat ; export EDITOR ; chpass user (если sh
>подобный шелл)

боязни выйти нет)))
не поверишь - я даже файлы в vi сохранять умею ;-)

есть нужда делать вышеоспрошенное действо из не интерактивного скрипта
ПОД все перечисленные операционки

увы, в SUSE chpass нема... в солярке тож...
значит не катит

а вообще идея светлая...


"Linux/FreeBSD/Solaris:выяснить шелл пользователя существующе..."
Отправлено newser , 09-Ноя-06 13:47 
>>>Всем Здрасть)
>>>как в Linux/FreeBSD/Solaris выяснить шелл пользователя, >существующего< в системе, командой, >если такая есь<... (!!!не залогиненого!!!)
>>>сенкс ин адванс))))
>>chpass user
>>ежели очень хочется не попасть в vi(из боязни не суметь оттуда выйти)
>> - EDITOR=cat ; export EDITOR ; chpass user (если sh
>>подобный шелл)
>
>боязни выйти нет)))
>не поверишь - я даже файлы в vi сохранять умею ;-)
>
>есть нужда делать вышеоспрошенное действо из не интерактивного скрипта
>ПОД все перечисленные операционки
>
>увы, в SUSE chpass нема... в солярке тож...
>значит не катит
>
>а вообще идея светлая...


man cat
man grep
man awk
man sed
man cut
...

В общем, эти утилиты есть в любом *nix, так что парсить все равно придется. :-)


"Linux/FreeBSD/Solaris:выяснить шелл пользователя существующе..."
Отправлено Arifolth , 09-Ноя-06 14:26 
вопрос закрыт

кроссплатформенное решение, не зависит от того где эта инфа лежит

getent passwd | grep ЮЗЕР | awk -F : '{print $7}'

в линухе/соляре оно лежит в /etc/passwd а  под фрёй в /etc/master.passwd, а хочется однако унифицированности. если на некоторых машинах будет и LDAP поднят, тогда это вообще единственный выход.


"RE:Linux/FreeBSD/Solaris:выяснить шелл пользователя существу..."
Отправлено techNick , 11-Ноя-06 14:18 
>вопрос закрыт
>
>кроссплатформенное решение, не зависит от того где эта инфа лежит
>
>getent passwd | grep ЮЗЕР | awk -F : '{print $7}'
>
>в линухе/соляре оно лежит в /etc/passwd а  под фрёй в /etc/master.passwd,
>а хочется однако унифицированности. если на некоторых машинах будет и LDAP
>поднят, тогда это вообще единственный выход.

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

:~> man finger

NAME
     finger -- user information lookup program
...


"RE:Linux/FreeBSD/Solaris:выяснить шелл пользователя существу..."
Отправлено Arifolth , 13-Ноя-06 10:46 
>>вопрос закрыт
>>
>>кроссплатформенное решение, не зависит от того где эта инфа лежит
>>
>>getent passwd | grep ЮЗЕР | awk -F : '{print $7}'
>>
>>в линухе/соляре оно лежит в /etc/passwd а  под фрёй в /etc/master.passwd,
>>а хочется однако унифицированности. если на некоторых машинах будет и LDAP
>>поднят, тогда это вообще единственный выход.
>
>а чем командочка finger не подходит, среди прочей инфы она показывает и
>шелл, грепнуть, думаю, труда не составит.
>
>:~> man finger
>
>NAME
>     finger -- user information lookup program
>...

уже)))
http://forum.sysadmins.ru/2/138821/
честно говоря воспользоваться пришлось именно этой командой, т. к. оказалось что на фре 6.1 release и <= нету getent`а (... а как я говорил нужна унифицированность
(в 6.1 stable уже есь) )