nClam - Как передать путь сервера linux к ScanFileOnServer

Я настроил работу ClamAv в контейнере докеров внутри виртуальной машины Ubuntu (VirtualBox). Я написал следующую программу C# (работающую с моего хоста Windows) и могу успешно сканировать локальные файлы на моем компьютере с Windows (SendAndScanFileAsync), поскольку 192.168.0.103:3310 (ClamAv в гостевом Ububtu) доступен с хоста 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() не удалось: нет такого файла или каталога. ОШИБКА"

1 ответ

Try to specify the full file path, like "/home/username/Downloads/filename.ext".

Другие вопросы по тегам