Bom dia pessoal, tudo bem?
Recentemente tivemos problemas ao efetuar um backup de uma VM linux à nível de agente, onde ocorria o seguinte erro:
[10.02.2025 16:22:12.514] <140602839906048> | ERR |CClientProtocol: Failed to invoke agent command: DataTransfer.SyncDisk.
[10.02.2025 16:22:12.514] <140602839906048> | >> |Input/output error
[10.02.2025 16:22:12.514] <140602839906048> | >> |POSIX: Failed to read data from the file [/dev/veeamimage4].
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Failed to read from device file at offset [11806965760].
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in virtual void disklib::lin::CDeviceFile::Read(byte_t*, stream_pos_t, size_t) at /mnt/Sources/DiskLib/disklib/lin/DeviceFile.cpp:230
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Failed to read data from snapshot. Requested offset: [11806965760]. Data size: [1048576]
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in virtual void veeamsnap::CSnapshotDisk::Read(stream_pos_t, size_t, void*) at /mnt/Sources/VeeamLPBSnapLib/veeamsnap/SnapshotDisk.cpp:54
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Failed to read from aggregated device. Requested offset: [25355616256]. Data size: [1048576].
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in virtual void disklib::emulation::CAggregateDevice::Read(byte_t*, stream_pos_t, size_t) at /mnt/Sources/DiskLib/disklib/emulation/AggregateDevice.cpp:65
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Failed to read from device memory cache. Requested offset: [25355616256]. Data size: [1048576].
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in virtual void disklib::emulation::CWriteMemCache::ReadThroughCache(disklib::IDevice&, byte_t*, stream_pos_t, size_t) at /mnt/Sources/DiskLib/disklib/emulation/WriteMemCache.cpp:67
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Failed to read from cache backed device. Requested offset: [25355616256]. Data size: [1048576].
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in virtual void disklib::cached::CCacheBackedDevice::Read(byte_t*, stream_pos_t, size_t) at /mnt/Sources/DiskLib/disklib/cached/CacheBackedDevice.cpp:26
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Failed to read the next block from the disk. Disk: [ol]. Current offset: [25,355,616,256]. Disk size: [57,962,135,552]. CBT tracker: [Incremental multi-tracker { bitmap_tracker:// , bitmap_tracker:// , }].
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in virtual io::area::IAreaPtr io::rnd_blocks_reader_t::ReadNext() at /mnt/Sources/CommonLib/io/rnd_blocks_reader.cpp:96
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Next asynchronous read request cannot be processed.
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in void io::area::baseimpl::basic_async_area_reader_t::ProcessNextReq() at /mnt/Sources/CommonLib/io/area/baseimpl/basic_async_area_reader.cpp:201
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Asynchronous data reader has failed.
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Failed to process conveyored task.
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in void alglib::transmission::transmission_pipe_t::Do() at /mnt/Sources/AlgLib/alglib/transmission/transmission_pipe.cpp:164
[10.02.2025 16:22:12.514] <140602839906048> | >> |Failed to upload disk. Skipped arguments: [EmulatedDiskSpec>];
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:in void engine::transfer::CDiskTransfer::Upload(engine::transfer::IDiskSourceFactoryPtr, progress::IProgressFactoryPtr, const io::block::CCryptoPolicy&, bool) at /mnt/Sources/VeeamAgentEx/engine/transfer/DiskTransfer.cpp:86
[10.02.2025 16:22:12.514] <140602839906048> | >> |--tr:Disk upload failed.
Ao analisar o servidor em questão, não localizamos o disco /dev/veeamimage4 correspondente:
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
ol-swap-missing_1_0 252:1 0 5G 0 lvm
└─ol-swap 252:2 0 16G 0 lvm [SWAP]
sdb 8:16 0 50G 0 disk
└─sdb1 8:17 0 10G 0 part
sdc 8:32 0 251G 0 disk
└─sdc1 8:33 0 250G 0 part /u03
sda 8:0 0 51G 0 disk
├─sda2 8:2 0 1G 0 part /boot
├─sda3 8:3 0 49G 0 part
│ ├─ol-swap 252:2 0 16G 0 lvm [SWAP]
│ ├─ol-root 252:0 0 25.4G 0 lvm /
│ └─ol-tmp 252:3 0 12.6G 0 lvm /tmp
└─sda1 8:1 0 100M 0 part /boot/efi
# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 24700332 0 24700332 0% /dev
tmpfs 24719608 120 24719488 1% /dev/shm
tmpfs 24719608 1000868 23718740 5% /run
tmpfs 24719608 0 24719608 0% /sys/fs/cgroup
/dev/mapper/ol-root 26005884 9047092 15612440 37% /
/dev/sda2 998060 232632 696616 26% /boot
/dev/sda1 100808 7914 92895 8% /boot/efi
/dev/mapper/ol-tmp 13006136 61876 12266372 1% /tmp
tmpfs 4943924 12 4943912 1% /run/user/42
tmpfs 4943924 0 4943924 0% /run/user/0
/dev/sdc1 256921892 198823728 44974584 82% /u03
Identificamos então, que o disco /dev/sdb, à qual não estava montado, era a origem do problema.
Como contorno, ajustamos o parâmetro do veeam.ini para ignorar o sdb:
[backup]
ignoreDevices = /dev/sdb;/dev/sdb1
Espero ter ajudado quem possa ter problema semelhante.