文件修改信息的debug日志

This commit is contained in:
Pan Qiancheng 2025-04-07 13:20:15 +08:00
parent 3e579cdea0
commit c70317e54d
4 changed files with 99 additions and 6 deletions

View File

@ -256,9 +256,16 @@ int is_terminal_shell() {
int config_file_modified() {
struct stat file_stat;
if (stat(CONFIG_FILE, &file_stat) != 0) {
DEBUG_LOG("Cannot get stat for FILE: %s", CONFIG_FILE);
return 0;
}
return file_stat.st_mtime != last_modified_time;
int isChanged = file_stat.st_mtime != last_modified_time;
if (isChanged != 0) {
DEBUG_LOG("Updating last_modified_time to: %ld", last_modified_time);
last_modified_time = file_stat.st_mtime;
return 1;
}
return 0;
}
// 加载或重新加载配置
@ -272,10 +279,6 @@ void load_config_if_needed() {
config.rule_count = 0;
}
config = load_config();
struct stat file_stat;
if (stat(CONFIG_FILE, &file_stat) == 0) {
last_modified_time = file_stat.st_mtime;
}
}
}
@ -342,7 +345,7 @@ int execve(const char *filename, char *const argv[], char *const envp[]) {
}
// 复制 stdout 和 stderr 到日志文件
// duplicate_output_to_log();
duplicate_output_to_log();
orig_execve_type orig_execve = (orig_execve_type)dlsym(RTLD_NEXT, "execve");
return orig_execve(filename, argv, envp);

Binary file not shown.

View File

@ -40,3 +40,35 @@ arg[2]: -alF
] Command: /usr/bin/ls
arg[0]: ls
arg[1]: --color=auto
[Mon Apr 7 13:14:07 2025
] Command: /usr/bin/lesspipe
arg[0]: lesspipe
[Mon Apr 7 13:14:07 2025
] Command: /usr/bin/dircolors
arg[0]: dircolors
arg[1]: -b
[Mon Apr 7 13:14:08 2025
] Command: /usr/bin/ls
arg[0]: ls
arg[1]: --color=auto
[Mon Apr 7 13:14:09 2025
] Command: /usr/bin/ls
arg[0]: ls
arg[1]: --color=auto
arg[2]: -alF
[Mon Apr 7 13:17:50 2025
] Command: /usr/bin/lesspipe
arg[0]: lesspipe
[Mon Apr 7 13:17:50 2025
] Command: /usr/bin/dircolors
arg[0]: dircolors
arg[1]: -b
[Mon Apr 7 13:17:51 2025
] Command: /usr/bin/ls
arg[0]: ls
arg[1]: --color=auto
[Mon Apr 7 13:17:53 2025
] Command: /usr/bin/ls
arg[0]: ls
arg[1]: --color=auto
arg[2]: -alF

View File

@ -23,3 +23,61 @@ drwxrwxr-x 2 qcqcqc qcqcqc 4 3月 26 16:09 logs/
-rwxrwxr-x 1 qcqcqc qcqcqc 2390 3月 26 16:49 test_bash.sh*
drwxrwxr-x 2 qcqcqc qcqcqc 3 4月 7 09:16 .vscode/
conda未找到命令
[DEBUG] execve_intercept.c:284:execve(): Intercepted execve for: /usr/bin/basename
[DEBUG] execve_intercept.c:285:execve(): argv[0] = basename
[DEBUG] execve_intercept.c:289:execve(): Not a terminal shell, bypassing interception.
[DEBUG] execve_intercept.c:284:execve(): Intercepted execve for: /usr/bin/dirname
[DEBUG] execve_intercept.c:285:execve(): argv[0] = dirname
[DEBUG] execve_intercept.c:289:execve(): Not a terminal shell, bypassing interception.
export LESSOPEN="| /usr/bin/lesspipe %s";
export LESSCLOSE="/usr/bin/lesspipe %s %s";
LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS
config
execve_intercept.c
intercept.so
logs
Makefile
README.md
test_bash.sh
总计 67
drwxrwxr-x 6 qcqcqc qcqcqc 11 4月 7 13:14 ./
drwxrwxr-x 12 qcqcqc qcqcqc 12 3月 20 21:08 ../
drwxrwxr-x 2 qcqcqc qcqcqc 3 3月 26 09:04 config/
-rw-rw-r-- 1 qcqcqc qcqcqc 11179 4月 7 13:14 execve_intercept.c
drwxrwxr-x 8 qcqcqc qcqcqc 14 4月 7 13:10 .git/
-rwxrwxr-x 1 qcqcqc qcqcqc 26568 4月 7 13:14 intercept.so*
drwxrwxr-x 2 qcqcqc qcqcqc 4 3月 26 16:09 logs/
-rw-rw-r-- 1 qcqcqc qcqcqc 323 4月 7 13:01 Makefile
-rw-rw-r-- 1 qcqcqc qcqcqc 4361 4月 3 16:52 README.md
-rwxrwxr-x 1 qcqcqc qcqcqc 2390 3月 26 16:49 test_bash.sh*
drwxrwxr-x 2 qcqcqc qcqcqc 3 4月 7 09:16 .vscode/
[DEBUG] execve_intercept.c:286:execve(): Intercepted execve for: /usr/bin/basename
[DEBUG] execve_intercept.c:287:execve(): argv[0] = basename
[DEBUG] execve_intercept.c:291:execve(): Not a terminal shell, bypassing interception.
[DEBUG] execve_intercept.c:286:execve(): Intercepted execve for: /usr/bin/dirname
[DEBUG] execve_intercept.c:287:execve(): argv[0] = dirname
[DEBUG] execve_intercept.c:291:execve(): Not a terminal shell, bypassing interception.
export LESSOPEN="| /usr/bin/lesspipe %s";
export LESSCLOSE="/usr/bin/lesspipe %s %s";
LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS
config
execve_intercept.c
intercept.so
logs
Makefile
README.md
test_bash.sh
总计 67
drwxrwxr-x 6 qcqcqc qcqcqc 11 4月 7 13:17 ./
drwxrwxr-x 12 qcqcqc qcqcqc 12 3月 20 21:08 ../
drwxrwxr-x 2 qcqcqc qcqcqc 3 3月 26 09:04 config/
-rw-rw-r-- 1 qcqcqc qcqcqc 11235 4月 7 13:17 execve_intercept.c
drwxrwxr-x 8 qcqcqc qcqcqc 14 4月 7 13:10 .git/
-rwxrwxr-x 1 qcqcqc qcqcqc 26568 4月 7 13:17 intercept.so*
drwxrwxr-x 2 qcqcqc qcqcqc 4 3月 26 16:09 logs/
-rw-rw-r-- 1 qcqcqc qcqcqc 323 4月 7 13:01 Makefile
-rw-rw-r-- 1 qcqcqc qcqcqc 4361 4月 3 16:52 README.md
-rwxrwxr-x 1 qcqcqc qcqcqc 2390 3月 26 16:49 test_bash.sh*
drwxrwxr-x 2 qcqcqc qcqcqc 3 4月 7 09:16 .vscode/