cp каже, що це видалення файлів, але не повинно бути


10

Швидке резервне копіювання:

root@guilmon:/mnt/backup/guilmon/home# cp -uvfrx --preserve=all /home/rena/ .

Вихід дивує - деякі файли, як кажуть, видалені!

removed ‘./rena/dev/lua/conkybitcoin/conkybitcoin.lua’

Видалені файли здаються випадковими і не змінюються. Чому йдеться про їх видалення? Навіть чуже, здається, що він фактично не видалив цей файл (а також джерело). Що відбувається?

Відповіді:


15

cpза допомогою --forceта --verboseпараметрів ( -fі -vу вашому командному рядку) виводить повідомлення "видалено" щоразу, коли він видаляє файл призначення перед його копіюванням. ( --forceвказує cpвидалити цільовий файл, якщо його неможливо відкрити, перш ніж спробувати скопіювати.)

У вашому прикладі це означає, що ./rena/dev/lua/conkybitcoin/conkybitcoin.luaне вдалося відкрити для запису, тому cpвидалили його і знову скопіювали /home/rena.


Розумію. Тож питання в тому, чому його не можна було відкрити ...
Рена,

Це лише для читання?
Стівен Кітт

1
Справжнє питання полягає в тому, чи був він (попередній файл у каталозі призначення) лише для читання перед тим, як запустити cpкоманду?
G-Man каже «Відновити Моніку»

Обидва в режимі 0644, і я запустив cp як root, тому має бути добре. Існуюче місце призначення теж повинно бути добре, оскільки я /homeвчора використовував ту саму команду, щоб скопіювати все на резервний диск після створення на ньому свіжої порожньої файлової системи. btrfs scrubповідомляє про помилки на жодному диску.
Рена
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.