Коли я намагаюся виконати будь-яку програму з /tmp
каталогу, вона мені показує /tmp/file_name: Permission denied
. Ця ж помилка виявляється, коли я просто ввожу /tmp
. Файлова система для /tmp
є ramfs
. Я намагався, chmod 777 /tmp/file_name
але він повертає ту саму помилку. ls -l /tmp
показує -dwxr-xr-x
раніше file_name
. Біг mount
показує мені:
rootfs on / type rootfs (rw)
/dev/root on / type squashfs (ro,relatime)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
ramfs on /tmp type ramfs (rw,relatime)
none on /dev type tmpfs (rw,relatime,size=512K)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
Я спробував, mount -o remount,exec /tmp
після чого вихід mount
не змінився, і виконання програми повернуло ту саму помилку. Біг mount -o remount,noexec /tmp
додає noexec
до ramfs
рядка. Введення /proc
, /sys
або /dev
ж повертається Permission denied
.
Чому це відбувається і що мені робити для виконання програм /tmp
? Я роблю це на маршрутизаторі, на якому працює DD-WRT v24-sp2.
Чи повинен виглядати ваш tmp dir таким чином? Я б очікував, що клейкий шматочок буде встановлений.
—
Геннес
Хіба я не повинен бачити
—
Awais Chishti
t
ін ls -l /tmp
в цьому випадку?
Так. Наприклад, це може виглядати приблизно так:
—
Геннес
drwxrwxrwt 30 root wheel 6656 Apr 11 04:15 tmp
(остання завісь. Частина - t).