Я настроил ClamAv, работающий в док-контейнере внутри Ubuntu VM (VirtualBox). Я написал следующую программу на C # (запущенную на моем хосте Windows) и смог успешно сканировать локальные файлы на моем компьютере с Windows (SendAndScanFileAsync), так как 192.168.0.103:3310 (ClamAv in Guest Ububtu) доступен из Host Windows.
Я хочу сканировать файлы в папке «Загрузки» на сервере Linux, используя метод ScanFileOnServerAsync, но я не могу этого сделать, поскольку не уверен, как указать путь Linux в следующем коде. Пожалуйста, помогите.
namespace ClamAvDemo
{
class Program
{
static void Main(string[] args)
{
var clam = new ClamClient("192.168.0.103", 3310);
var scanResult = clam.ScanFileOnServerAsync("Downloads"); // Downloads is a folder in Linux Server running as a VM
switch (scanResult.Result.Result)
{
case ClamScanResults.Clean:
Console.WriteLine("The file is clean!");
break;
case ClamScanResults.VirusDetected:
Console.WriteLine("Virus Found!");
Console.WriteLine("Virus name: {0}", scanResult.Result.InfectedFiles.First().VirusName);
break;
case ClamScanResults.Error:
Console.WriteLine("Woah an error occured! Error: {0}", scanResult.Result.RawResult);
break;
}
}
}
}
Путь к серверу Linux для сканирования: / home / {user} / Downloads
Независимо от того, какой формат пути я укажу, я всегда получаю эту ошибку - "Загрузки: lstat() не удалось: нет такого файла или каталога. ОШИБКА "