Сценарий не работает на одном аккаунте, но работает нормально на другом
У меня есть скрипт управления данными, который отлично работает под одной учетной записью, но если я пытаюсь запустить тот же скрипт под другой учетной записью, я получаю следующую ошибку
*** glibc detected *** /path/home/bin/cmrun.out: munmap_chunk(): invalid
pointer: 0x00007f0ad8890e18 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x76126)[0x7f0ad7083126]
/path/home/bin/libr1fns.so(+0x6c249)[0x7f0ad8870249]
/path/home/bin/cmrun.out[0x401724]
/lib64/libc.so.6(__libc_start_main+0xfd)[0x7f0ad702bcdd]
/path/home/bin/cmrun.out[0x400d59]
======= Memory map: ========
00400000-00406000 r-xp 00000000 08:40 3221229132 /path/home/bin/cmrun.out
00605000-00606000 rw-p 00005000 08:40 3221229132 /path/home/bin/cmrun.out
0109f000-010c1000 rw-p 00000000 00:00 0 [heap]
7f0ad58c6000-7f0ad58c7000 r-xp 00000000 08:40 3221233102 /path/home/bin/libhebrew.so
7f0ad58c7000-7f0ad5ac6000 ---p 00001000 08:40 3221233102 /path/home/bin/libhebrew.so
7f0ad5ac6000-7f0ad5ac7000 rw-p 00000000 08:40 3221233102 /path/home/bin/libhebrew.so
7f0ad5ac7000-7f0ad5ac8000 r-xp 00000000 08:40 3221233118 /path/home/bin/libntctx.so
7f0ad5ac8000-7f0ad5cc8000 ---p 00001000 08:40 3221233118 /path/home/bin/libntctx.so
7f0ad5cc8000-7f0ad5cc9000 rw-p 00001000 08:40 3221233118 /path/home/bin/libntctx.so
7f0ad5cc9000-7f0ad5cca000 r-xp 00000000 08:40 3221231814 /path/home/bin/libfocini.so
7f0ad5cca000-7f0ad5ec9000 ---p 00001000 08:40 3221231814 /path/home/bin/libfocini.so
7f0ad5ec9000-7f0ad5eca000 rw-p 00000000 08:40 3221231814 /path/home/bin/libfocini.so
7f0ad5eca000-7f0ad5f30000 r-xp 00000000 08:02 647173 /lib64/libfreebl3.so
7f0ad5f30000-7f0ad6130000 ---p 00066000 08:02 647173 /lib64/libfreebl3.so
/path/home/bin/libfocutl.so
7f0ad61b4000-7f0ad63b4000 ---p 0007e000 08:40 3221226358 /path/home/bin/libfocutl.so
7f0ad63b4000-7f0ad63ba000 rw-p 0007e000 08:40 3221226358 /path/home/bin/libfocutl.so
7f0ad63ba000-7f0ad63cb000 r-xp 00000000 08:40 3221226388 /path/home/bin/libcbh.so
7f0ad63cb000-7f0ad65cb000 ---p 00011000 08:40 3221226388 /path/home/bin/libcbh.so
7f0ad65cb000-7f0ad65cc000 rw-p 00011000 08:40 3221226388 /path/home/bin/libcbh.so
7f0ad65cc000-7f0ad65cf000 r-xp 00000000 08:40 3221248291 /path/home/bin/libnlssys.so
7f0ad65cf000-7f0ad67cf000 ---p 00003000 08:40 3221248291 /path/home/bin/libnlssys.so
7f0ad67cf000-7f0ad67d0000 rw-p 00003000 08:40 3221248291 /path/home/bin/libnlssys.so
7f0ad67d0000-7f0ad67d1000 r-xp 00000000 08:40 3221229138 /path/home/bin/libmbx.so
7f0ad67d1000-7f0ad69d0000 ---p 00001000 08:40 3221229138 /path/home/bin/libmbx.so
7f0ad69d0000-7f0ad69d1000 rw-p 00000000 08:40 3221229138 /path/home/bin/libmbx.so
7f0ad69d1000-7f0ad69da000 r-xp 00000000 08:40 3221233092 /path/home/bin/libkkdo.so
7f0ad69da000-7f0ad6bda000 ---p 00009000 08:40 3221233092 /path/home/bin/libkkdo.so
7f0ad6bda000-7f0ad6bdb000 rw-p 00009000 08:40 3221233092 /path/home/bin/libkkdo.so
7f0ad6bdb000-7f0ad6bf7000 r-xp 00000000 08:40 3221225794 /path/home/bin/libutlh.so
7f0ad6bf7000-7f0ad6df6000 ---p 0001c000 08:40 3221225794 /path/home/bin/libutlh.so
7f0ad6df6000-7f0ad6df7000 rw-p 0001b000 08:40 3221225794 /path/home/bin/libutlh.so
7f0ad6df7000-7f0ad6e0d000 r-xp 00000000 08:02 647569 /lib64/libgcc_s-4.4.7-20120601.so.1
7f0ad6e0d000-7f0ad700c000 ---p 00016000 08:02 647569 /lib64/libgcc_s-4.4.7-20120601.so.1
7f0ad700c000-7f0ad700d000 rw-p 00015000 08:02 647569 /lib64/libgcc_s-4.4.7-20120601.so.1
7f0ad700d000-7f0ad7197000 r-xp 00000000 08:02 647181 /lib64/libc-2.12.so
7f0ad7197000-7f0ad7396000 ---p 0018a000 08:02 647181 /lib64/libc-2.12.so
7f0ad7396000-7f0ad739a000 r--p 00189000 08:02 647181 /lib64/libc-2.12.so
7f0ad739a000-7f0ad739b000 rw-p 0018d000 08:02 647181 /lib64/libc-2.12.so
7f0ad739b000-7f0ad73a0000 rw-p 00000000 00:00 0
7f0ad73a0000-7f0ad7423000 r-xp 00000000 08:02 647189 /lib64/libm-2.12.so
7f0ad7423000-7f0ad7622000 ---p 00083000 08:02 647189 /lib64/libm-2.12.so
7f0ad7622000-7f0ad7623000 r--p 00082000 08:02 647189 /lib64/libm-2.12.so
7f0ad7623000-7f0ad7624000 rw-p 00083000 08:02 647189 /lib64/libm-2.12.so
7f0ad7624000-7f0ad7712000 r-xp 00000000 08:02 1574383 /usr/local/GP-4.3.14.1/lib/libstdc++.so.6.0.13
7f0ad7712000-7f0ad7912000 ---p 000ee000 08:02 1574383 /usr/local/GP-4.3.14.1/lib/libstdc++.so.6.0.13
7f0ad7912000-7f0ad7919000 r--p 000ee000 08:02 1574383 /usr/local/GP-4.3.14.1/lib/libstdc++.so.6.0.13
7f0ad7919000-7f0ad791b000 rw-p 000f5000 08:02 1574383 /usr/local/GP-4.3.14.1/lib/libstdc++.so.6.0.13
7f0ad791b000-7f0ad7930000 rw-p 00000000 00:00 0
7f0ad7930000-7f0ad794d000 r-xp 00000000 08:02 647224 /lib64/libtinfo.so.5.7
7f0ad794d000-7f0ad7b4d000 ---p 0001d000 08:02 647224 /lib64/libtinfo.so.5.7
7f0ad7b4d000-7f0ad7b51000 rw-p 0001d000 08:02 647224 /lib64/libtinfo.so.5.7
7f0ad7b51000-7f0ad7b73000 r-xp 00000000 08:02 647220 /lib64/libncurses.so.5.7
7f0ad7b73000-7f0ad7d72000 ---p 00022000 08:02 647220 /lib64/libncurses.so.5.7
7f0ad7d72000-7f0ad7d73000 rw-p 00021000 08:02 647220 /lib64/libncurses.so.5.7
7f0ad7d73000-7f0ad7d7a000 r-xp 00000000 08:02 647185 /lib64/libcrypt-2.12.soautomic_test.sh: line 7: 177923 Aborted (core dumped) /path/home/bin/cmrun.out s=LOOPBACK, u=srvadmin, p=10838247AF51CF49, r=test, Appname=adhoc, w=1
Я пытаюсь понять, почему происходит сбой на одной учетной записи на сервере, но работает нормально на другой. Это разрешение вопроса?
1 ответ
Я пытаюсь понять, почему происходит сбой на одной учетной записи на сервере, но работает нормально на другой.
У вас есть проблема с повреждением кучи, и повреждение кучи выглядит следующим образом: одна и та же программа может работать сегодня и завершиться сбоем завтра, или она может начать аварийно завершать работу, если длина $USER
или же $HOST
отличается, или для любого количества аналогичных "непредсказуемых" изменений среды.
Это разрешение вопроса?
Нет. Лучше всего связаться с разработчиком cmrun.out
и пусть он / она запустит программу под valgrind (вы также можете сделать это самостоятельно, чтобы подтвердить, что имеется повреждение кучи), или, что еще лучше, под Address Sanitizer (который требует перестройки исполняемого файла).