Если я ошибаюсь, вы можете сделать это, отредактировав файл .sh в /etc/psychonauts и /etc/amnesia соответственно. Все, что вам нужно изменить, это добавить
optirun bash
в начале файла непосредственно после строки #!/bin/bash.
Реальное решение этой проблемы: домашняя папка пользователя не должна быть доступна для записи только для чтения.
Итак, если пользовательский сайт находится в папке cat/example.com/http/, папка cat должна иметь chmod 555, и все будет ОК.
Для VSFTPD 3,
Перейдите к: /etc/vsftpd.conf и добавьте это:allow_writeable_chroot=YES
И он должен работать.
Согласно предыдущему ответу «РЕАЛЬНОЕ решение этой проблемы: домашняя папка пользователя не должна быть доступна для записи только для чтения».
Для начала нам нужно построить топологию каталога пользователя:
/home (ro) |-someuser (rw,700) |-ftp_upload (ro,555) - ch_rooting here, required ro by vsftpd :( |-temp (rw,755) |-in_box (rw,755) |-out_box (rw,755) ]vsftpd.conf cut:
#enable chrooting chroot_local_user=YES #chroot all users except listened inside chroot_list chroot_list_enable=YES #exception list, ideally should be blank ;) chroot_list_file=/etc/vsftpd/chroot_list #map ftp root dir to specifiec dir local_root=/home/someuser/ftpЭта конфигурация отлично работает с однопользовательской конфигурацией, поскольку для многопользовательского пользователя следует дополнительно использовать директиву «user_config_dir».
* * UPDATE 20/09
------ **
Вот сложное обходное решение, а не лучшая идея для использования, но .... Если вам нужна перезаписываемая корневая папка ftp , просто вставьте команды изменения разрешений в команды перед запуском и после старта.
1) pre-start - изменение разрешений только на чтение, для чего требуется сервер (:
2) start server
3) post-start - изменить разрешение на чтение-запись или что вам нужно.
Мне нужно было добавить следующее в файл /etc/vsftpd.conf:
seccomp_sandbox=NO
И не нужно настраивать репо !!
И раскомментировать line:
write_enable=YES
Простое исправление заключается в том, чтобы сделать сообщение об ошибке: сделайте root незаписываемым, а затем, если вам нужно включить загрузку, создайте подкаталог, который имеет разрешение на запись. Не требуется никаких изменений конфигурации.
После 3 часов работы в Интернете я получил Ubuntu 14.04.2 LTS VSFTPd 3. Домашняя папка будет видна / home / vimal после доступа к клиенту. Я вошел в систему с vimal с привилегиями root.
sudo chown vimal:vimal /home/vimal/ftpShare/
некоторые полезные команды:
sudo nano /etc/vsftpd.conf
sudo service vsftpd restart
sudo apt-get purge vsftpd
netstat -a | grep ftp
tcp 0 0 *:ftp *:* LISTEN
ftp://12.345.23.xxx/ for browser login
Выше означает, что демон ftp работает
I имеют следующую конфигурацию:
seccomp_sandbox=no
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
chroot_list_enable=NO
secure_chroot_dir=/var/run/vsftpd/empty
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
allow_writeable_chroot=YES
После работы с FTP вы можете настроить его на конкретные нужды, некоторые из которых имеют значения по умолчанию, но я точно не помню.
некоторые полезные команды:
1. 500 OOPS: prctl PR_SET_SECCOMP не удалось
Решение.
seccomp_sandbox=no
[добавить его в самую первую строку vsftpd.conf после окончания начального комментария]
1. 500 OOPS: prctl PR_SET_SECCOMP не удалось
allow_writeable_chroot=YES
Я добавил его в последнюю строку.
Это в значительной степени то, что упомянул тостбой70. Сделайте ftp-root dir chown'd на ftp.ftp и не записываемым (/etc/vsftpd.conf): anon_root = / srv / ftp
Затем создайте записываемый дочерний каталог: / srv / ftp / загрузить
Я решил проблему vsftpd, отказавшись запускать с корнем для записи внутри chroot () ubuntu на моем сервере следующим образом:
Я просто добавил ниже строку в файле vsftpd.conf ниже.
[ f1]