On Fri, 4 Feb 2000, kaf wrote: > "Dmitry B. Sidorov" wrote: > > > > Господа, > > > > кто знает, как пропустить приложение X через strace? В нормально настроенном > > по безопасности X. Да чтоб со всеми уставками пользователя. > > А то мне хотелось бы знать, что делает xterm и еще кое-кто с $LANG и прочими > > $LC_*, да и вообще в хозяйстве пригодится. > > Если на машине есть доступ к roor или к правам пользователя, который > стартует приложение > то > strace -p <номер_процесса> > или > strace -ff -p <номер_процесса> если надо отслеживать fork > или > strace -ff приложение, если стартовать приложение с самого начала > правда LANG не увидишь - приложение берет приложение среды > без всякого системного вызова, но вот какие файлы он открывает > из-за этого LANG можно, но при этом надо стартовать приложение > через strace , а не пользоваться strace -p ...
Можно использовать ltrace - он позволяет отслеживать вызовы функций из динамических библиотек. Например ltrace -e getenv -f xterm должен давать список всех вызовов getenv. Но у меня (на RH6.0) он почему-то выдает вызовы всех функций (наверное из-за того, что xterm fork'ает, а ltrace у меня почему-то не может фильтровать вызовы в потомке). Best regards, -Vlad