У меня была та же проблема.
Adata 32GB C902.
Всюду, где я пытался открыть диск, я получаю сообщение: «Средний не найден». Привод был указан в lsusb (Linux) и «Пожалуйста, вставьте диск в дисковод X» в (Windows)
Я загрузил свой раздел Windows XP и перешел на этот сайт: Adata USB Recovery [ ! d3] Я набрал серийный номер накопителя, подождал несколько секунд и начал загрузку.
Средство восстановления adata говорит: 4-5 строк метаданных, включая неправильное имя устройства, начиная с конца XXXXXXX и т. д. lsusb Я нажал обновление, и он начал восстанавливать диск ~ 2мин, и все было в порядке. Я отсоединяю устройство и подключаю его снова - у меня теперь свободное место на 30 ГБ.
Как раз перед ~ 5 минутами я был исправлен.
Для полноты имен имена, содержащие одну точку . или две точки .., являются особыми:
. относится к текущему каталогу .. относится к родительскому каталогуЭти записи добавляются автоматически и всегда существуют, поэтому вы не можете иметь файл с именем . или ...
Ubuntu использует файловую систему ext4. Файловая система отслеживает, где файлы хранятся в файловой системе¹, разрешения в форме owner / group / other могут читать / записывать / выполнять, временные метки, имя.
Файловая система структурирует доступное хранилище. Первый блок называется «суперблоком». Этот блок используется для монтирования файловой системы. Насколько я знаю, каждая современная файловая система делит его пространство в блоках. Я думаю (и я не слишком уверен в этом), что большинство файловых систем также имеют фиксированный размер блока, хотя размер блока можно настроить при создании файловой системы. ext4 (а также ext2 и ext3) используют так называемые «inodes» для файлов и каталогов. Эти inodes содержат указатели на другие блоки (которые также могут быть inodes или быть «блоками данных»). И «первый» inode файла содержит всю информацию, указанную выше.
Еще одна информация - это «тип» файла. «Тип» может быть:
Windows не разрешает следующие символы: <>:"/\|?* (источник) directory Больше символов, которые обескуражены: space и dot . (источник) Инструменты командной строки сложнее использовать, когда у вас есть пробелы в именах (сложнее, а не невозможно) Точки используются в RegEx (например, когда вы хотите использовать grep). Ведущая точка делает файл скрытым по соглашению в Linux. В Windows в расширении файла используются точки, которые используются для обнаружения типа файла. ...На самом деле вы также можете открыть каталоги с помощью редактора:
vim /home
Поскольку каталог не содержит полный путь, но только имена содержимого я не вижу причины, по которой файлы не могут содержать файл /. Думаю, это может быть удобство. (Кто-нибудь знает, почему / не разрешено?)
Однако для других файловых систем все по-другому. FAT16 и FAT32 использовали так называемую «таблицу размещения файлов». Это означает, что есть таблица, которая содержит все файлы, которые хранятся в вашем файле, на которых они запускаются «кластер», и в каком кластере они заканчиваются как отдельный список.
Важная вещь, которую я хотел сказать вы, что запрещенные символы могут также зависеть от файловой системы.
1: Сегодня это может быть иначе. Я думаю, что диски обеспечивают уровень абстракции для операционной системы. В начале ОС им приходилось хранить информацию, такую как сектор, дорожка и плита:
Источник: ext4
Это не имеет значения, а не в linux или в windows.
Обычно принято иметь папку с именем «program.d» - для сохранения конфигурации и материала для программы (смотрите в каталоге / etc )
Именование файлов очень гибко в файловых системах Unix, Linux. Единственное имя файла, которое у вас не может быть, - это нулевой символ или тот, который содержит имя / в его имени. Но, безусловно, было бы хорошей практикой избегать использования символов, которые запрещены / зарезервированы в других системах с точки зрения переносимости имен; например, вы не должны использовать любой из " * : < > ? \ / | символов (ограниченный NTFS) в имени вашего файла, если вы хотите получить доступ к файлу в системе Windows.
И об использовании . (период ) в имени файла, я думаю, это должно быть хорошо, поскольку он не является символом null в любой из систем (кроме OpenVMS, MS-DOS и Windows, где его использование в файле / directory name разрешено, но последнее вхождение будет интерпретироваться как разделитель расширений в VMS, MS-DOS и Windows), как указано в следующей ссылке в Википедии:
Имя файла: Сравнение ограничений имени файла 5]В других системах, обычно считающихся частью имени файла, и может быть разрешено более одного периода. В Unix основной период означает, что файл или папка обычно скрыты.