Не ответ на Ваш вопрос, который был уже рассмотрен @jw013, но обратите внимание на то, что в то время как \
и {}
являются лишними здесь, существует несколько вещей, отсутствующих. Как переменные должен быть заключен в кавычки, и --
отметить конец опций отсутствует.
cp -v -- "$LOG_DIR/$APPLICATION".*.log "$ARCHIVED_LOG_DIR"
Я не думаю, что отклоненное разрешение обязательно говорит о традиционных битах полномочий (rwx..), скорее я с подозрением относился бы к чему-то как SELinux или AppArmor, который мог бы запрещать Вашего доступа процесса.
У меня нет доступа к системе ArchLinux, но существует что-то подобное под Fedora, который обсужден здесь в этом Fedora тема Wiki: Features/SELinuxDenyPtrace.
Здесь они блокируют доступ к ptrace через SELinux, таким образом, Вы могли бы хотеть попытаться отключить или SELinux или AppArmor, ArchLinux, оказывается, использует также.
Я судил Вас код моей системы Fedora 19, и кроме необходимости установить некоторый addtional debuginfo RPMs это работал, поскольку Вы будете ожидать это к.
Скомпилированный Ваш код.
$ gcc -g test.c
Выполнил получающийся двоичный файл в gdb
.
$ gdb a.out
GNU gdb (GDB) Fedora 7.6.1-46.fc19
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/saml/tst/106912/a.out...done.
(gdb) break main
Breakpoint 1 at 0x40053f: file test.c, line 4.
(gdb) run
Starting program: /home/saml/tst/106912/a.out
Breakpoint 1, main (argc=1, argv=0x7fffffffd698) at test.c:4
4 printf("1\n");
Missing separate debuginfos, use: debuginfo-install glibc-2.17-20.fc19.x86_64
(gdb) quit
A debugging session is active.
Inferior 1 [process 13341] will be killed.
Quit anyway? (y or n) y
Отладчик жаловался, что я пропускал debuginfos для glibc, таким образом, я установил их.
$ sudo debuginfo-install glibc-2.17-20.fc19.x86_64
Теперь, когда я повторно выполняюсь gdb
.
$ gdb a.out
GNU gdb (GDB) Fedora 7.6.1-46.fc19
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/saml/tst/106912/a.out...done.
(gdb) break main
Breakpoint 1 at 0x40053f: file test.c, line 4.
(gdb) run
Starting program: /home/saml/tst/106912/a.out
Breakpoint 1, main (argc=1, argv=0x7fffffffd698) at test.c:4
4 printf("1\n");
(gdb)
ptrace_traceme
. Это AppArmor, SELinux, Вкус и "Yama". – Iwillnotexist Idonotexist 29.12.2013, 05:33