Как проверить, отличаются ли файлы перед копированием и перезаписью?

Мне удалось исправить контрольную сумму. Теперь Ethernet отлично работает под Linux. Я объяснил детали в моем ответе на мой вопрос SuperUser.SE.

По сути, я сначала пропатчил e1000e , чтобы пропустить проверку контрольной суммы NVM

for (i = 0;; i++) {
    if (e1000_validate_nvm_checksum(&adapter->hw) >= 0)
        break;
    if (i == 2) {
        dev_err(pci_dev_to_dev(pdev),
            "The NVM Checksum Is Not Valid\n");
        err = -EIO;
        goto err_eeprom;
    }
}

в src / netdev.c , и после того, как у меня был доступ к микросхеме Ethernet, я написал его NVM с ethtool , который автоматически фиксирует контрольную сумму.

2
27.07.2016, 10:54
2 ответа
if ! diff -q file1 file2 > /dev/null 2>&1;
then

  echo "Files are changed"

else

  echo "Files not changed"

fi
1
27.01.2020, 21:54

Допустим, у вас есть локальный каталог config, который соответствует каталогу config на вашем устройстве, и вы вносите изменения только локально, прежде чем синхронизировать их с устройством, тогда rsync будет хорошим инструментом для выполнения синхронизации.

Для синхронизации локального каталога с каталогом устройства:

$ rsync -av config/ someuser@device.address:path/to/config/

Чтобы удалить файлы на устройстве, которые больше не присутствуют в локальном каталоге config, добавьте флаг --delete в rsync:

$ rsync -av --delete config/ someuser@device.address:path/to/config/

Поменяйте местами config/ и someuser@device.address:path/to/config/, чтобы вместо этого сделать резервное копирование каталога config с устройства в локальный каталог (в вопросе было немного неясно, в каком направлении вы хотите двигаться).

5
27.01.2020, 21:54

Теги

Похожие вопросы