как разрешить загрузку файлов с помощью ssh на ubuntu из java-кода?

Я пытаюсь загрузить файлы на виртуальную машину Amazon EC2 под управлением Ubuntu. Я использую библиотеку JSch для SSH-подключения, как в здесь

Соединение через SSH проходит успешно, но когда я пытаюсь загрузить файл, я получаю сообщение об ошибке «Отказано в доступе».

Я использую ключи для входа в экземпляр EC2.

Вопрос в том, как установить разрешения на Ubuntu, чтобы разрешить загрузку файла?


person Sami    schedule 12.07.2013    source источник


Ответы (1)


Если я правильно вас понимаю, это больше похоже на вопрос о Linux/файловой системе. Скопируйте-вставьте вашу точную ошибку, пожалуйста.

Где на вашем экземпляре EC2 вы пытаетесь поместить файл? SSH к вашему экземпляру EC2, используя того же пользователя, что и пользователь SFTP, который вы указали в своем коде Java, cd в целевой каталог и проверьте права собственности и разрешения с помощью ls -l. Попробуйте создать там файл touch mytestfile. Получаете ли вы какие-либо ошибки разрешения в этот момент?

Альтернатива:

Что это за файл? Это сильно меняет? Должны ли записи/чтения быть быстрее, чем HTTP? Лучшим «шаблоном облачного проектирования» было бы загрузить ваш файл в корзину S3 и предоставить вашему экземпляру EC2 разрешения на чтение (и запись?) для этой корзины/файла.

person rdrey    schedule 12.07.2013
comment
Да, это проблема с правами доступа в Linux. Я попытался вручную создать файл или каталог в экземпляре EC2 и получил ошибку отказа в доступе. и это то, что я получаю для ls-l: drwxr-xr-x 4 ubuntu ubuntu 4096 Jul 15 09:45 ubuntu и я веду регистрацию с пользователем ubuntu, можно ли добавить разрешение на создание файлов или каталогов? - person Sami; 15.07.2013
comment
Я нашел каталог, в котором у меня есть права на создание файлов и каталогов, и сейчас я его использую. - person Sami; 15.07.2013