- Пропали файлы в Windows разделе NTFS под Ubuntu
- Если Ubuntu Linux не видит разделов Windows 7
- Ошибка Ubuntu не видит сеть Windows
- Почему Ubuntu не видит сеть Windows?
- 1. Установить Samba
- 2. Рабочая группа
- 3. Версия протокола
- 4. Правильный порядок разрешения имён
- 5. Не тот интерфейс
- 6. Отладка
- 7. Проблема в GVFS
- 8. Подключение напрямую
- 9. Общий доступ в Windows
- Выводы
- Если Ubuntu Linux не видит разделов Windows 7
- Подсистема Windows Linux — доступ к файлам вне Ubuntu
Пропали файлы в Windows разделе NTFS под Ubuntu
Здравствуйте! У меня пропали файлы в разделе NTFS под Ubuntu различной давности: от нескольких дней до месяца.
Сначала опишу свою конфигурацию: HDD Seagate SATA II 500 Gb; С:\ NTFS 50 Gb; D:\ NTFS 185 Gb; E:\ NTFS 235 GB; / Ext4 38 Gb;swap 2 Gb. Windows 7, Ubuntu 11.04. При установке Ubuntu на шаге выбора места установки системы я указываю / для Ext4, swap и сразу же монтирую свои Windows NTFS разделы в следующие папки: /mount/C, mount/D, /mount/E. Больше всего времени работаю в Ubuntu, но такие файлы как музыка, видео, книги лежат на диске D:\.
Случилось несчастье следующим образом: работаю в Ubuntu, захожу в плеер и включаю музыку с D:\, проигрыватель пропускает все треки и обозначает их серым — не найденными файлами. После проверки обнаружил пропажу многих файлов именно с этого диска. После загрузки компьютера из под Windows, началась проверка D:\ на предмет наличия ошибок, удаление файлов и частичное восстановление. Уже в Windows, как и ожидалось, я нашел папку d:\found.000\ где были некоторые из удаленных файлов. Error-checking данного раздела ошибок не выявил. Сейчас сканирую R-Studio.
Нашел похожие темы: Linux и Windows. Пропали файлы и http://zloyweb.ru/allwin/1335-windows-linux-ntfs-povrezhdennye-fayly.html. Во второй статье винят hibernate Windows’a и я действительно усыплял её несколько раз пару дней назад. Подобная история случалась у меня и раньше, причем периодическое исчезание новосозданных файлов. Решил проблему отформатировав NTFS раздел, удалив Ubuntu и переустановив Windows.
О восстановлении файлов спрашивать не буду, так как музыку, видео и книги я соберу заново, а личные документы постоянно ношу на флешке. Хочу спросить о следующем:
1. Что же на самом деле случилось с точки зрения связи Linux Windows разделов?
2. Пострадал ли мой жесткий диск?
3. Как мне теперь быть? При следующей установке Ubuntu воздержаться от монтирования NTFS разделов в папку /mount/ и хранить документы на родном Ext4?
4. Могу ли я в этом случае рассчитывать, что моя работа в Ubuntu не приведет к потере файлов в Windows разделах?
Прошу вас помочь конкретными практическими советами именно о конфигурации жесткого диска по отношению к двум ОС.
Если Ubuntu Linux не видит разделов Windows 7
Эту статью я написал ради интереса для хабра, дабы там зарегиться и продолжать позже туда писать, но модераторы отклонили заявку.
Решения данной проблемы я не нашел в русскоязычном интернете, даже после двухдневного гугления. Нужное нашлось там, где нужно было сразу смотреть — на официальном форуме Ubuntu.
Примечание: Скорее всего инструкция не только для Ubuntu, а вообще для любого линукса с подобной проблемой.
Суть
Решил поставить на ноутбук Ubuntu, рядом с уже имеющейся там Windows 7. Данная процедура уже не раз была мной проделана на других машинах и обычно не вызывала особых проблем. На этот раз, установщик Ubuntu приподнес сюрприз, показав, что диск не содержит никаких разделов и вовсе не размечен. Хотя, там было два раздела, на одном из которых стоит «семерка», другой отдан под файлы, и третий, скрытый загрузочный, создаваемый Windows 7 по умолчанию всегда.
Gparted — отдельная утилита для разметки дисков, показала то же самое — разделов нет, все пространство неразмечено. Только Disk Utility, также по умолчанию входящая в дистрибутив программа, вывела нормальную информацию. Сразу же стало понятно, что проблема в установщике. Как оказалось, новая версия установщика (я проверял на 10.04, 10.10, 11.04 версиях системы), неправильно воспринимает разметку диска, которую делает Windows 7 на этапе установки. Говоря конкретнее — нестандартно размеченная таблица GPT (GUID).
Решение
Решается все просто и довольно быстро — установкой софтины FixParts от пользователя srs5694, что обитает на ubuntuforums.org.
Итак, если вам также, как мне, повезло поиметь «семерку» с подобной разметкой, то выполняем такие действия:
1. Загружаемся с LiveCD Ubuntu, настраиваем соединение с интернетом;
2. Заходим на страницу загрузки FixParts, выбираем последнюю версию. Переходим в каталог «fixparts-binaries», оттуда загружаем дистрибутив программы под вашу систему;
3. Устанавливаем, как любую другую программу;
4. Запускаем Терминал, там вводим:
Не забудьте изменить «sda» в этой команде на нужную букву вашего диска (sdb, sdc);
5. Программа сразу же просканирует диск на ошибки. На появившийся вопрос о лечении «кривых» GPT разделов, отвечаем да (yes);
6. Когда командная строка выдаст «MBR command….», закрываем Терминал;
7. На этом все! Можно запустить установку и радоваться тому, что наконец-то видно все разделы.
Ошибка Ubuntu не видит сеть Windows
Вы, наверное, не раз сталкивались с проблемой, что Ubuntu не видит сеть Windows. Такая проблема характерна для многих дистрибутивов с окружением Gnome. Во многом причиной этому был баг в GVFS, который до сих пор толком не исправлен, поэтому работает эта функция далеко не всегда и далеко не во всех дистрибутивах.
В этой статье мы рассмотрим что делать если Ubuntu не видит шары Windows, как к ним всё таки подключится и можно ли решить проблему.
Почему Ubuntu не видит сеть Windows?
Как я уже написал выше Nautilus для подключения и просмотра общих папок Windows использует виртуальную файловую систему gvfs. А та, в свою очередь использует библиотеку libsmbclient для получения необходимых данных. Поэтому мы можем попытаться исправить ситуацию переопределив некоторые параметры в /etc/samba/smb.conf. Но работает это далеко не всегда.
1. Установить Samba
Если файловый сервер Samba у вас не установлен, то его надо установить для того чтобы был создан файл /etc/samba/smb.conf с параметрами по умолчанию. Они потом будут использоваться библиотекой libsmbclient и самой утилитой smbclient, которую вы можете применять для тестирования. Для установки выполните:
sudo apt install samba
Проверьте конфигурационный файл Samba на ошибки с помощью такой команды:
2. Рабочая группа
По умолчанию используется рабочая группа WORKGROUP. Убедитесь, что ваша рабочая группа имеет именно это имя, также убедитесь, что в /etc/samba/smb.conf задано правильное имя рабочей группы в параметре workgroup:
sudo vi /etc/samba/smb.conf
3. Версия протокола
В современных системах Windows для общего доступа к папкам используется файловая система CIFS, использующая современные версии протоколов SMB2 и SMB3. Эти протоколы не поддерживают обзор доступных общих папок так, как это ожидает получить Nautilus. Для того чтобы всё работало надо использовать старый протокол NT1. Чтобы его включить добавьте параметр client max protocol после параметра workgroup:
client max protocol = NT1
После этого сохраните изменения и перезагрузите компьютер и проверьте.
4. Правильный порядок разрешения имён
Неверный порядок разрешения сетевых имен тоже может стать проблемой. Чтобы исправить его найдите в smb.conf параметр и приведите его к такому виду:
name resolve order = bcast lmhosts host wins
Здесь первым используется bcast, широковещательные сообщения, которые рассылаются по вашей локальной сети и ищут компьютеры с общими папками.
5. Не тот интерфейс
Если в вашем компьютере несколько сетевых интерфейсов, возможно smbclient пытается использовать не тот интерфейс. Чтобы посмотреть список интерфейсов используйте команду:
Затем найдите в /etc/samba/smb.conf параметр interface и замените в его значении eth0 на имя вашего интерфейса, который обеспечивает связь с нужной локальной сетью. Например на enp0s8:
interfaces = 127.0.0.0/8 enp0s8
После этого надо перезапустить службы Samba:
sudo systemctl restart smbd
sudo systemctl restart nmbd
6. Отладка
Если сеть Windows всё ещё не работает, вы можете попытаться отлаживать GVFS чтобы понять где именно возникает проблема и в чём её суть. Для этого надо завершить текущий сервер GVFS и запустить свой в терминале с включённой опцией отладки. Для этого выполните:
pkill gvfs; pkill nautilus
GVFS_DEBUG=all GVFS_SMB_DEBUG=10 $(find /usr/lib* -name gvfsd 2>/dev/null) —replace 2>&1 | tee gvfsd.log
Затем откройте Nautils и войдите в сетевое окружение, сеть Windows. При этом в терминале будут выводится сообщения об ошибках работы службы. Вы можете использовать эти сообщения чтобы искать информацию в Google или попросить помощи на форумах.
7. Проблема в GVFS
Баг в GVFS, о котором я писал выше наблюдался для Samba версии 4.8 и ниже. Если сервер поддерживает протокол более высокого уровня, то клиент пытается использовать этот протокол, например SMB2 или SMB3, но на этих протоколах не работает отображение доступных ресурсов. Если у вас именно эта проблема, то для полного решения придется ждать обновления или использовать обходное решение описанное ниже.
8. Подключение напрямую
Даже если у вас не работает обнаружение сетевых ресурсов Windows, вы все ещё можете подключится к нужному компьютеру и получить с него файлы. Откройте пункт Другие места на левой панели Nautilus. Внизу окна вы увидите надпись Подключится к серверу введите smb://адрес_сервера в поле слева и нажмите Enter:
После этого система предложит ввести имя пользователя и пароль для доступа к общему ресурсу. Этот пользователь должен реально существовать на машине, к которой вы собираетесь подключится.
Введите пароль и вы увидите доступные общие папки:
9. Общий доступ в Windows
Убедитесь, что в Windows общий доступ был включён. Если общий доступ отключен, то вы не сможете никак получить доступ к ресурсам. Откройте проводник и перейдите в пункт Сеть. Если сетевой доступ отключён, то система выдаст соответствующее предупреждение:
Кликните по нему чтобы включить общий доступ, затем выберите Включить сетевое обнаружение и общий доступ к файлам.
После этого система ещё раз спросит надо ли разрешить доступ для всех общественных сетей. Ответьте утвердительно:
После этого вы сможете получить доступ к общим ресурсам этого компьютера.
Выводы
В этой статье мы кратко рассмотрели почему Ubuntu не видит сеть Windows, а также как исправить эту проблему. Если проблему с сетевым обнаружением устранить не удается, вы всегда можете попробовать подключится вручную. Это не решает основную проблему, но позволяет получить нужные файлы. Вы знаете другие способы решения? Поделитесь ими в комментариях!
Если Ubuntu Linux не видит разделов Windows 7
Эту статью я написал ради интереса для хабра, дабы там зарегиться и продолжать позже туда писать, но модераторы отклонили заявку.
Решения данной проблемы я не нашел в русскоязычном интернете, даже после двухдневного гугления. Нужное нашлось там, где нужно было сразу смотреть — на официальном форуме Ubuntu.
Примечание: Скорее всего инструкция не только для Ubuntu, а вообще для любого линукса с подобной проблемой.
Суть
Решил поставить на ноутбук Ubuntu, рядом с уже имеющейся там Windows 7. Данная процедура уже не раз была мной проделана на других машинах и обычно не вызывала особых проблем. На этот раз, установщик Ubuntu приподнес сюрприз, показав, что диск не содержит никаких разделов и вовсе не размечен. Хотя, там было два раздела, на одном из которых стоит «семерка», другой отдан под файлы, и третий, скрытый загрузочный, создаваемый Windows 7 по умолчанию всегда.
Gparted — отдельная утилита для разметки дисков, показала то же самое — разделов нет, все пространство неразмечено. Только Disk Utility, также по умолчанию входящая в дистрибутив программа, вывела нормальную информацию. Сразу же стало понятно, что проблема в установщике. Как оказалось, новая версия установщика (я проверял на 10.04, 10.10, 11.04 версиях системы), неправильно воспринимает разметку диска, которую делает Windows 7 на этапе установки. Говоря конкретнее — нестандартно размеченная таблица GPT (GUID).
Решение
Решается все просто и довольно быстро — установкой софтины FixParts от пользователя srs5694, что обитает на ubuntuforums.org.
Итак, если вам также, как мне, повезло поиметь «семерку» с подобной разметкой, то выполняем такие действия:
1. Загружаемся с LiveCD Ubuntu, настраиваем соединение с интернетом;
2. Заходим на страницу загрузки FixParts, выбираем последнюю версию. Переходим в каталог «fixparts-binaries», оттуда загружаем дистрибутив программы под вашу систему;
3. Устанавливаем, как любую другую программу;
4. Запускаем Терминал, там вводим:
Не забудьте изменить «sda» в этой команде на нужную букву вашего диска (sdb, sdc);
5. Программа сразу же просканирует диск на ошибки. На появившийся вопрос о лечении «кривых» GPT разделов, отвечаем да (yes);
6. Когда командная строка выдаст «MBR command….», закрываем Терминал;
7. На этом все! Можно запустить установку и радоваться тому, что наконец-то видно все разделы.
Подсистема Windows Linux — доступ к файлам вне Ubuntu
Почему, например, когда я создаю файл из Windows, я не вижу его в подсистеме Linux в Windows 10 (bash.exe)
Скриншот должен объяснить.
Папка: OMG был создан из Windows Explorer. Папка OMGBash была создана из подсистемы Linux bash.exe
Когда папка ИЛИ файл создается вне bash.exe, я никогда не вижу его, независимо от прав доступа и владельца.
Чтобы показать информацию, которую мне пришлось использовать Cygwin, чтобы показать права доступа к файлам, я также изменил разрешения, чтобы увидеть, появится ли папка. (Два командных окна внизу)
Снимок экрана, показывающий права доступа к папке, bash.exe и Cygwin:
Я пытаюсь переместить все свои скрипты Cygwin в подсистему Linux, но мне не хочется пересоздавать каждый файл, затем копировать и переносить с помощью bash, а затем переформатировать, а затем с помощью Dos2unix (очень длинный).
Нашел это на GitHub для подсистемы Linux:
копирование непосредственно в подсистему Linux из Windows не поддерживается, согласно обсуждению других заявок. Где-то в AppData есть каталог (я забыл, где), который содержит файлы для файловой системы WSL. Но если вы поместите туда новые файлы или измените существующие файлы, ваши изменения не будут правильно отражены в WSL.
Мое лучшее предположение состоит в том, что Linux должен хранить различные метаданные (и больше информации о кэшировании и т. Д., Поскольку его модель буферизации диска также отличается) относительно своих файлов, чем в Windows, и что в настоящее время это реализуется путем хранения главной копии структуры файловой системы Linux в какой-то базе данных и просто используя файловую систему Windows в качестве удобного BLOB-хранилища для этой базы данных.
Если вам действительно нужно сделать это, обходной путь — написать сценарий drag’n’drop .bat или что-то такое, что делает bash.exe -c «mv% 1 / home / $ USER /». (Вам придется проделать некоторую умную работу с sed и tr, возможно, чтобы перевести% 1 в правильный путь WSL.)
В качестве альтернативы — не могли бы вы поместить ваши файлы в каталог Windows и в WSL сделать «cd
; ln -s / mnt / c / path / to / my / files», чтобы они оказались в вашем домашнем каталоге WSL?