Linux не перечитывает таблицу разделов, кроме как при загрузке (или подключении диска) или когда явно сказано сделать это (например, с помощью fdisk после его написания или с помощью partx
или blockdev --rereadpt
). Так что, пока вы не выполните одно из этих действий, sdc [1-4]
будет продолжать существовать.
Самым простым решением было бы вызвать partprobe
, чтобы дать ядру команду перечитать таблицу разделов на всех устройствах, или partprobe / dev / sdc
, чтобы повторно прочитать раздел таблица только на этом диске. Или вы можете использовать fdisk для записи этой пустой таблицы разделов, тогда fdisk будет делать то же самое, что и partprobe
.
Обратите также внимание на то, что ядро не будет перечитывать его, если диск (или, скорее, любой из его разделов) используется (например, в качестве файловой системы, подкачки, LVM PV и т. Д.). Конечно, если они использовались, у вас возникла проблема, поскольку вы их только что стерли.
Наконец, если вы уже пытались принудительно перечитать, возможно, ваши случайные данные просто совпадают с подписью таблицы разделов. Linux поддерживает множество различных форматов таблиц разделов (список выбирается при компиляции ядра), а подпись некоторых из них составляет всего один байт, поэтому вероятность совпадения случайных данных составляет 1/256. У других подписи длиннее, так что шансы на это гораздо меньше.Я не уверен, какова общая вероятность, но быстрая проверка журналов ядра покажет, какой формат таблицы разделов распознал ядро.
Удаление каталога или файла связано только с разрешениями на каталог, который содержит удаляемый файл / каталог. Разрешения на сам файл / каталог не имеют значения. Следовательно, почему вы можете удалить каталог
с помощью rmdir
, даже если он принадлежит root
: вы не показывали его в своем выводе, но вы явно прочитали, напишите и выполнить разрешения для каталога, который содержит каталог
.
Я написал больше в другом месте на , что именно позволяет выполнять каждое отдельное разрешение на каталог .
Что касается того, почему вы не можете переместить каталог
в target_directory
, я не уверен. Я не могу воспроизвести это на своей коробке. Это может быть вызвано множеством причин, от расширенных атрибутов, установленных в каталоге
, до возможности того, что target_directory
может быть точкой монтирования для отдельной файловой системы, чем та, которая содержит каталог
. Дело не только в разрешениях.
(PS: в следующий раз выберите лучшие примеры имен; использование имен «каталог» и «файл» сделает попытки описать то, что происходит, действительно раздражает.)