Шаг 1: Звоните ссылка .
Шаг 2: Если возвращается -1 с errno
, установленным на EXDEV
, сделайте копию.
[обновление]
В общем, нет портативного (и надежного) способа ответить на этот вопрос.Я думаю, что ближе всего можно вызвать statvfs для источника и пункта назначения, а затем сравнить поля f_fsid
структур statvfs .
К сожалениюPOSIX не гарантирует ничего, в частности, о поле f_fsid
.Этот тест должен работать в Linux, если, возможно, вы не спрашиваете о NFS-монтируемых файловых системах ...