#c# #raspberry-pi #.net-5
#c# #raspberry-pi #.net-5
Вопрос:
Я использую raspberry pi и настроил общий ресурс samba.
Я развертываю приложение .net 5 на pi.
Я хочу иметь возможность устанавливать общий файловый ресурс и использовать этот путь при развертывании и запуске на pi
Что работает, выполняя код на удаленном компьютере, подключаясь к удаленному общему ресурсу:
//RASPBERRYPI/PiShare
//192.168.0.101/PiShare
что не работает … развертывание кода на Raspberry pi и попытка :
//RASPBERRYPI/PiShare
//192.168.0.101/PiShare
pi может пинговать RASPBERRYPI, чтобы он мог разрешить собственное имя хоста, но я даже пробовал pi.
что мне нужно сделать, чтобы pi мог получить доступ к своему собственному ресурсу через код.
[HttpPost]
public async Task<IActionResult> _TestPathAccess(string filepath)
{
if (Directory.Exists(filepath))
{
return JsonResponse(true, "Path was success");
}
return JsonResponse(false, "Could not read path.");
}
[PiShare]
comment=Raspberry Pi Share
path=/home/pi/share
browseable=Yes
read only = no
writeable=Yes
only quest=no
create mask=0777
directory mask=0777
public = yes
Комментарии:
1. На какой ОС работает Pi?
2. @stickybit ип запускает raspberry
3. Ты имеешь в виду Распбиан?
4. @stickybit kitguru.net/tech-news/christopher-nohall /. …
5. О, я еще этого не знал. Затем Raspberry Pi OS. В любом случае, вполне вероятно, что вы не сможете получить доступ к общему ресурсу просто по пути UNC. Сначала вы должны смонтировать его и использовать локальный путь к каталогу, к которому вы подключили общий ресурс.
Ответ №1:
Расширение комментария, предоставленного @stickibit вы можете получить доступ к общему ресурсу из pi, выполнив следующие действия:
- на вашем pi должны быть установлены соответствующие пакеты:
samba samba-common-bin smbclient cifs-utils
- вам необходимо создать каталог на pi, в котором вы будете монтировать нужный общий ресурс, например:
sudo mkdir /mnt/HereItIs
- вам необходимо смонтировать этот общий ресурс:
sudo mount.cifs //RASPBERRYPI/PiShare /mnt/HereItIs'
возможно, некоторые параметры, необходимые для имени пользователя и пароля, см.man mount.cifs
Подробнее
Теперь содержимое вышеупомянутого общего ресурса будет доступно в разделе /mnt/HereItIs
.
НО: если RASBERRYPI, где присутствует общий ресурс, является тем же pi, откуда вы хотите получить к нему доступ, почему вы хотите получить к нему доступ через Samba? Почему не через прямой доступ к папкам? Если PiShare
ваш локальный общий доступ к pi через samba физически является /home/pi
папкой, просто используйте этот путь в своем коде (убедившись, что ваш пользователь-исполнитель кода может получить к нему доступ)!
Комментарии:
1. все, что вы говорите, правильно, но я хотел запустить тот же код со своего компьютера или pi и получить доступ к одному и тому же общему ресурсу, и мне не нужно менять его в зависимости от того, откуда он запущен.
2. Попробуйте использовать
/RASPBERRYPI/PiShare
вместо/mnt/HereItIs
в моем ответе.