Монтирование диска freebsd в windows
Многие коммерческие продукты предоставляют свои услуги через этот протокол. Система FreeBSD также включает в себя модули ядра, обеспечивающие поддержку файловой системы и программ для поиска, монтирования и использования разделяемых ресурсов CIFS.
Монтирование разделяемого ресурса
Теперь, закончив исследования, можно выполнить монтирование ресурса с помощью mount_smbfs(8). Эта команда имеет следующий синтаксис:
У меня имеется разделяемый ресурс МРЗ на компьютере, работающем под управлением Windows, к которому я хочу получить доступ из системы FreeBSD. Чтобы смонтировать его в каталог /home/mwlucas/smbmount, я мог бы запустить следующую команду:
mount(8) и df(1) показывают, что этот ресурс подключен к системе и теперь можно обращаться к документам на этом сервере, как к файлам в любой другой файловой системе.
Принадлежность файлов в CIFS
Различия в определении принадлежности файлов в UNIX-подобных операционных системах и в Windows могут порождать проблемы. Начнем с того, что имена пользователей FreeBSD, возможно, не получится отобразить в имена пользователей Windows, а кроме того, в UNIX и в Windows используются совершенно непохожие схемы назначения прав доступа.
Если в Windows вы используете отдельную учетную запись для доступа к разделяемому ресурсу, вы обладаете теми правами доступа, которые имеет эта учетная запись в Windows, однако в FreeBSD для этого монтируемого ресурса вам необходимо назначить права доступа, используемые системой FreeBSD. По умолчанию утилита mount_smbfs(8) определяет те же самые права доступа для нового разделяемого ресурса, какие указаны для точки монтирования. В предыдущем примере владельцем каталога /home/mwlucas/smbmount был пользователь mwlucas, а для каталога были определены права 755. Эти права доступа говорят, что пользователь mwlucas обладает возможностью редактировать все, что находится в этом каталоге, но все остальные лишены такого права. Но даже когда FreeBSD позволяет данному пользователю редактирование указанных файлов, Windows может не позволить ему изменять файлы, находящиеся на разделяемом ресурсе.
Intro.
На днях возникла следующая ситуация: есть машина с дополнительным винтом, отформатированном под FAT32, на машине стоит FreeBSD и WinXP. Было необходимо сделать доступ из этих ОС к файлам на FAT разделе. Ничего сложного скажите вы, как бы не так. Основной ОС является BSD и когда она загружена, то по сети файлы пользует куча народа. А значит, нужна возможность гибко выставлять права доступа, что с FAT'ом является задачей совсем не тривиальной. Было решено изменить ФС на UFS (родную для BSD), но тут появляется другая проблема XP не поддерживает "чужие" разделы.
Так выглядит интерфейс:
Пример.
Рассмотрим пример, как смонтировать /usr как локальный диск X:. Смотрим в fstab.
Видим, что: винт 0, раздел 3, label f(6). С этими знаниями перегружаемся в XP, запускаем графическую оболочку, вводим необходимые параметры, жмем загрузить драйвер (Load Driver) и далее жмем смонтировать (Mount). Запускаем любимый файл менеджер/explorer и видим, что в системе появился новый диск X:, открываем его и обнаруживаем в нем /usr.
размещено: 2007-10-19,
последнее обновление: 2007-10-19,
автор: BlackCat
olegrpg, 2007-10-19 в 13:28:40
XeonVS, 2007-10-22 в 9:06:33
Драйвер нормальный, если по быстрому скопировать надо что-то из UFS. А вообще уже можно пользоваться ntfs-3G оно впролне быстро работает в режиме rw. Единственный минус(тестил еще до релиза) если XP загонялась в спящий режим а после писалось файло на NTFS то с разной вероятностью происходили: исчесновения файла, чекдиск, появление файла в XP.
DukeArtem, 2007-10-23 в 15:33:20
Долго пользовался это утилиткой, но она сырая, при определённых обстоятельствах вылетает в синий экран(редко, но . ), и самый главный минус, это невозможность записи. Если мне нужно под виндой бзд раздел проще запустить ВМВарь и ко. а потом по ssh или shared folder
artem, 2007-11-14 в 18:49:34
спасибо лисяре за сайт все супер!
artem, 2007-12-19 в 12:12:59
для винды не плохая fsexplorer в режиме чтения
on partitions of different Operation Systems: Windows, Linux, BSD, Unix, Solaris, MacOS, SnapOS, Netware (FAT12, FAT16, FAT32, NTFS, NTFS5, Ext2, Ext3, ReiserFS, XFS, UFS, UFS2, HFS, HFS+, UDF, ISO9660, NWFS)
41, 2011-10-12 в 14:56:40
Eugen, 2013-05-29 в 23:21:56
Одна фигня, нельзя выбрать другую букву для монтирования
Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.
Менять права доступа и владельца файлов и каталогов в Unix подобных операционных системах, можно с помощью команд chmod и chown. Маску для установки прав на создаваемые файлы, можно изменить глобально, в /etc/profile для Linux и в /etc/login.conf для FreeBSD. Обычно, маска по-умолчанию 022. Значение umask вычитается из 777, таким образом права доступа будут иметь значение 755.
Краткая инструкция
Дано: жесткий диск /dev/ada1
Цель: удалить существующую разметку, создать новую разметку GPT, создать два раздела: подкачка и данные и подключить их к рабочей системе.
После каждого действия выполняйте gpart show, чтобы наблюдать за результатом. Последовательность действий:
Информация о дисках
Разрешение имен CIFS
Давайте создадим типичный файл nsmb.conf. Для начала нам необходимо как минимум иметь возможность находить хосты в сети, а это означает, что нам необходимо знать имя рабочей группы. У нас имеется контроллер домена в виде сервера WINS. Кроме того, у меня имеется учетная запись на серверах Windows, предоставляющих доступ к разделяемым ресурсам, поэтому я буду использовать их как настройки по умолчанию в nsmb.conf.
Взяв эту информацию на вооружение, мы сможем производить базовые запросы на получение имен SMB.
Если все получилось, значит в вашем распоряжении имеется базовая функциональность CIFS.
Точки монтирования, использование дисков
Информация о директориях
Монтирование/перемонтирование файловых систем
FreeBSD
Linux
Монтирование FreeBSD раздела с Linux
Посмотрите номер раздела в fdisk, обычно это корнеыой раздел, но может быть и на другом BSD слайсе. Если на разделе FreeBSD много слайсов, их не будет видно через fdisk, но их можно найти в dev/sda* или /dev/hda*.
Перемонтирование
Перемонтировать устройство без предварительного размонтирования, например для fsck Копировать поток данных с CDROM'а в файл ISO образа.
Как подключить другие, отличные от BSD, файловые системы
В моем случае, мы имеем USB-накопитель с файловой системой Fat32. Таким образом при монтировании на BSD должны четко указать тип используемой файловой системы.
По другим файловым системам Вы можете обратиться к документации FreeBSD, ссылку давать не буду, ибо гугл наше все.
workgroup=string
определяет имя домена Windows или рабочей группы, доступ к которой требуется получить. Это типичная настройка по умолчанию, используемая для всех серверов.
Примеры записей в nsmb.conf
Ниже приводятся примеры записей в файле nsmb.conf для различных ситуаций. В этих примерах предполагается, что все представленные записи являются частью конфигурации, в которой уже определены рабочая группа, сервер имен NetBIOS и имя пользователя с привилегиями доступа к разделяемым ресурсам CIFS.
addr=a.b.c.d
определяет IP-адрес сервера CIFS. Данное ключевое слово может находиться только в разделе с меткой
Подготовительные операции
Прежде чем использовать сетевую файловую систему компании Microsoft, необходимо собрать следующую информацию о сети Windows:
- Название рабочей группы или домена
- Имя пользователя Windows и пароль
- IP-адрес Windows-сервера DNS
Подробная инструкция с пояснениями
Выбор имени жесткого диска
Для начала нужно определить имя устройства, которое мы только что добавили. В этом нам поможет следующая команда:
Или же вот такая команда:
В реальной системе эти команды покажут более полезную информацию, а именно: названия устройств и их серийные номера.
До установки нового устройства мы знали, что наша система установлена на ada0, значит по логике вещей наш новый диск ada1. Это вы можете определить по названию нового устройства, его серийному номеру или же объему.
Теперь проверим, имеется ли разметка на нашем новом диске
Диск не имеет никакой разметки.
Удаление существующей разметки
Если диск уже использовался и есть необходимость удалить с него разметку, просто выполните:
Создание разметки GPT
Для начала мы должны создать разметку диска. Крайне рекомендую забыть о MBR и перейти на новую, более удобную и функциональную — GPT.
Создаем разметку GPT на диске, затем проверяем, что вышло:
Теперь у нас диск имеет разметку GPT. Из вывода можно увидеть, что абсолютно весь диск, начиная с LBA 34 и заканчивая LBA 8388541 пуст. LBA 0−33 — зарезервированы системой под таблицу разделов.
Допустим, нам необходимо создать два раздела на этом диске:
- swap — раздел подкачки
- data — раздел типа ufs для хранения каких либо, необходимых нам, данных.
Создание разделов (слайсов)
Если установка производится на современные жесткие диски, у которых размер сектора = 4 кб, то при создании разделов (партиций) необходимо использовать выравнивание. Можно поступить двумя способами: 1) если указываем параметры раздела в блоках, то номер блока вводить кратным 8, например: -b 40; 2) если указываем размер раздела в байтах, либо не указываем вообще начало и размер, использовать параметр -a 4k, который подгонит начало и конец раздела под секторы, размером 4 кб. Так как мы в данном примере производим тестовую установку на виртуальный жесткий диск, то этого можно не делать. В любом случае перед созданием разделов нужно точно знать размер сектора вашего накопителя, иначе это выльется жуткими тормозами в работе.
Теперь создадим разделы. Для этого существует команда gpart add с различными параметрами. Первый параметр -t — указывает на тип создаваемой файловой системы. В нашем случае будет использовано два типа: freebsd-swap и freebsd-ufs. Далее идут два необязательных параметра: -b — указывает на номер LBA, начиная с которого необходимо создать раздел. Если не указать данный параметр, то раздел будет создан автоматически с первого свободного LBA. -s — указывает на размер раздела в LBA. Размер одного блока LBA = 512 байт. Желательно указывать в количестве блоков LBA, но можно и в кило/мега/гига/… байтах (суффикс k/M/G). Если не указать данный параметр, то раздел будет создан до максимально возможного LBA в пределах пустой области. Также в качестве параметра можно указать метку раздела, например: -l swap1 — в этом случае будет создана метка /dev/gpt/swap1, по которой можно более удобно обращаться к разделу. Последним обязательным параметром идет путь к диску. В нашем случае: /dev/ada1.
Давайте создадим два раздела, а затем посмотрим, что у нас получилось. Первый раздел будем создавать без указания начального LBA, но с указанием размера 1 Гб (2097152 блоков). Второй раздел создадим без указания начального LBA и без указания размера — таким образом он будет создан на всем свободном пространстве.
Размер можно указывать в байтах, а не блоках. Это значительно удобней. Единственный минус — система не всегда может корректно рассчитать количество блоков. Возможны случаи, когда на диске останется пустовать некоторое количество блоков при указании размера раздела в байтах.
Создание файловой системы (форматирование)
Разделы типа swap форматировать нет необходимости. А вот разделы типа ufs перед использованием должны быть отформатированы. Правильнее сказать: на них должна быть создана файловая система.
Для того, чтобы создать файловую систему на втором разделе, достаточно выполнить следующую команду:
В данном случае использовался параметр -U — он говорит о том, что в данной файловой системе должен использоваться механизм Soft Updates. Вы можете не использовать этот параметр, чтобы не включать данный механизм.
Монтирование
Следующим шагом будет монтирование разделов. Для начала, чтобы не забыть, добавим наши новые разделы в /etc/fstab. Мой файл после редактирования выглядит вот так:
Я добавил две строки: первая монтирует swap, вторая монтирует новый раздел в каталог /mnt. На деле у вас должен быть какой-то более значимый каталог. Каталог /mnt служит для временно монтированных устройств.
Для того, чтобы перемонтировать все разделы согласно файла /etc/fstab, просто выполним команду:
Как видно из вывода, раздел /dev/ada1p2 смонтирован. Теперь посмотрим, что произошло с разделом SWAP. Выполним команду:
Как видно, новый раздел SWAP не смонтирован. Чтобы смонтировался SWAP, необходимо его включить специальной командой:
Точно так же при помощи команды swapoff нужно отключать раздел SWAP перед тем, как произвести над ним какие-то действия.
На этом все действия по добавлению нового жесткого диска в систему завершены.
Ключевые слова в nsmb.conf
Параметры настройки в файле nsmb.conf определяются с помощью ключевых слов и значений в соответствующих разделах. Например, серверы имеют IP-адреса, а пользователи — нет, поэтому параметр, определяющий IP-адрес, должен находиться только в разделе описания сервера. Чтобы использовать ключевое слово, ему нужно присвоить значение через знак равенства: keyword=value. Далее перечисляются наиболее часто употребляемые — полный список можно найти в странице руководства nsmb.conf(5).
Кто какие файлы открыл
Иногда необходимо выяснить, какой файл заблокировал раздел, из-за чего команда umount выдает соответствующую ошибку.
FreeBSD и большинство Unix подобных систем
Linux
Создание swap раздела на лету
Другие параметры mount_smbfs
Утилита mount_smbfs поддерживает несколько ключей, влияющих на поведение монтируемых файловых систем CIFS. Ключ
используется для выбора другого режима назначения прав доступа к файлам, а ключ
— для выбора другого режима назначения прав доступа к каталогам. Например, чтобы определить права доступа к монтируемому каталогу, которые позволят обращаться к нему только мне, я мог бы запустить команду
. Это позволило бы сделать права доступа из системы FreeBSD более строгими, чем привилегии в Windows, и в моем случае это было бы именно то, что нужно. Владельца файла можно изменить с помощью ключа
, а группу — с помощью ключа
Имена файлов в файловых системах корпорации Microsoft не чувствительны к регистру символов, а в системах UNIX — наоборот. Файловая система CIFS по умолчанию оставляет регистр символов в именах файлов без изменений, но это может оказаться нежелательно. Ключ
вынуждает mount_smbfs(8) менять регистр символов в именах файлов и каталогов:
изменяет регистр всех символов на нижний, а
Загрузка
FreeBSD
Что-бы загрузить старое ядро, в аварийной ситуации, например после неудачной сборки и установки нового, остановите загрузку, нажав 6 во время обратного отсчета, что-бы попасть в приглашение командной строки.
Монтирование SMB раздела
CIFS - Common Internet File System SMB - server message block Предположим вам нужно получить доступ на расшаренному SMB разделу myshare на сервере smbserver, адрес набираемый на Windows машине будет \\smbserver\myshare\. Монтировать будем на /mnt/smbshare. Не забывайте, для cifs требуется IP адрес или доменное имя.
Linux
Кроме того пакет mount.cifs позволяет хранить привилегии в файле, например /home/user/.smb: И теперь монтируем:
FreeBSD
nbns=a.b.c.d
определяет IP-адрес сервера имен NetBIOS (WINS). Вы можете добавить эту строку в раздел по умолчанию или в раздел с конкретным сервером. Если у вас имеется служба ActiveDirectory (которая основана на DNS), можно использовать имена хостов в DNS. Добавление сервера WINS не повредит вашей конфигурации и поможет проверить базовые настройки CIFS.
Прочие функции smbutil(1)
Прежде чем можно будет монтировать разделяемые ресурсы Windows, необходимо иметь возможность зарегистрироваться на компьютере Windows. Эта операция доступна только пользователю root.
Итак, наша конфигурация правильная. Давайте с помощью команды
посмотрим, какие ресурсы предлагает этот сервер.
disk
4 shares listed from 4 available
Вы получите список всех разделяемых ресурсов на сервере CIFS. Теперь предположим, что мы завершили работу с сервером, и выходим из него.
Создание и запись образа ISO
Будем копировать cd или dvd сектор за сектором. Используйте mkisofs что-бы создать образ из файла в директории. Для преодоления ограничений имен файлов используйте опцию -r, включающую расширение RockRidge, основное для UNIX систем, -J включает Joliet, используемое Microsoft, -L разрешает ISO9660 имена, начинающиеся точкой. Во FreeBSD, mkisofs можно установить из портов /usr/ports/sysutils/cdrtools.
Запись CD/DVD ISO образов
FreeBSD
FreeBSD не устанавливает DMA на ATAPI устройства, это можно сделать через переменную sysctl или в файле /boot/loader.conf, следующими записями. Используйте burncd для ATAPI устройств (burncd, стандартная программа, часть базовой системы) и cdrecord (из /usr/ports/sysutils/cdrtools) для SCSI устройств.
Linux
Так-же используйе cdrecord, как описано выше. Кроме того можно использовать родной ATAPI интерфейс: Записывайте, как было описано выше.
dvd+rw-tools
Пакет ]]> dvd+rw-tools ]]> (FreeBSD: ports/sysutils/dvd+rw-tools) имеет весь функционал необходимый для работы с DVD, плюс growisofs, для записи CD или DVD. Документацию с примерами можно найти в ]]> FreeBSD handbook Глава 18.7 ]]>
Конвертировать образ из Nero .nrg файла в файл .iso
Конвертировать образ bin/cue в .iso
Это можно сделать с помощью небольшой программы, ]]> bchunk ]]> . Во FreeBSD ее можно найти в портах /usr/ports/sysutils/bchunk.
Монтировать образ
Linux loop-back
FreeBSD
Используя md - устройство памяти (если нужно, сделайте kldload md.ko): Или используя псевдоустройство(VN, Virtual node):
Доступ ко второму домену
В этом примере описывается доступ ко второму домену с именем development. В этом домене используются имя пользователя и пароль, которые отличаются от тех, что используются в домене по умолчанию.
Конфигурирование CIFS
Настройки CIFS могут находиться в конфигурационном файле $НОМЕ/.nsmbrc или /etc/nsmb.conf. Параметры настройки в файле /etc/nsmb.conf имеют приоритет перед настройками, которые размещаются в домашних каталогах. Конфигурационный файл делится на разделы с помощью меток, заключенных в квадратные скобки. Например, настройки, которые применяются к каждому соединению CIFS, находятся в разделе
. Создайте свои собственные разделы с указанием серверов, пользователей и разделяемых ресурсов в следующих форматах:
Информация, которая применяется ко всему серверу, помещается в раздел, который следует сразу за именем сервера. Информация, которая применяется к конкретному пользователю, помещается в раздел с именем этого пользователя, а информация, применяемая к конкретному разделяемому ресурсу, вставляется в раздел, заголовок которого включает имя разделяемого ресурса. Если у вас нет информации, конкретной для каждого пользователя или разделяемого ресурса, тогда все сведения можно поместить в один большой раздел
В конфигурационных записях используются значения из системы CIFS, например, моя учетная запись во FreeBSD имеет имя mwlucas, а в Windows — lucas_m, поэтому я использую имя lucas_m в файле nsmb.conf.
Создание файловой системы в памяти
Файловая система в памяти очень быстрая, имеет смысл использовать ее для приложений с высоким дисковым IO. Создадим раздел размером 64 мб и смонтируем его в /memdisk:
Открываю цикл мини-мануалов "для тех кто не умеет пользоваться поиском и задает глупые вопросы". Сегодняшняя тема - монтирование и отключение дисков в FreeBSD.
Итак мы хотим получить доступ к данным на дополнительном жестком диске или флешке. Для этого мы должны его подключить (примонтировать) в пустую директорию, после чего мы получим доступ к данным этого диска в созданной нами/имеющейся ранее папке. (ВАЖНО: не монтируйте диск в уже занятые директории, Вы получите содержимое своего диска например вместо содержимого папки для файлов с конфигурациями, о последствиях подумайте сами ;))
Первое, создаем пустую папку. Представим что пользователь shitus хочет подключить диск в новую директорию названную pron. Для этого он создает новую папку внутри его домашней директории (наверное это самое безопастное место).
Следующим шагом будет подключение жесткого диска в точку монтирования (мы только что создали папку). Все устройства в Вашей системе вы можете найти в папке /dev/. В моем случае, я хочу подключить мое устройство /dev/da2 в папку /home/shitus/pron
Уникальный пароль на отдельной системе
Если предположить, что имеется некоторый компьютер с сетевым именем desktop, на котором открыт разделяемый ресурс, защищенный паролем, то можно использовать запись, аналогичную приведенной ниже. Многие системы Windows 9x используют такую возможность.
Поддержка в ядре
Поддержка CIFS в операционной системе FreeBSD осуществляется несколькими модулями ядра. Базовые операции CIFS поддерживаются модулем smbfs.ko. Модули libmchain.ko и libiconv.ko предоставляют функции поддержки и загружаются автоматически вместе с модулем smbfs.ko. Вы можете скомпилировать эти модули в ядре статически:
Безусловно, эти модули можно загружать во время загрузки системы, поместив соответствующие записи в файл /boot/loader.conf.
Как отключить/размонтировать файловую систему
Допустим вы хотите отключить/удалить подключенное файловое устройство. Для этого может быть масса причин, в основном это делается в случае, если Вы хотите стереть диск или переподключить его к другой точке монтирования. Команда очень проста -
Убедитесь что вы не находитесь внутри этой папки во время выполнения данной команды, иначе результат будет нулевой.
Если Вы хотите монтировать диск при старте системы, то должные его прописать в файл /etc/fstab по образу и подобию там уже прописанных. Подробнее об этом Вы также сможете ознакомиться в документации, ну или я когда-нибудь в сотый раз об этом напишу.
Сейчас Вы узнаете, как за 5 минут добавить жесткий диск в FreeBSD. Итак. Сначала будет преведена полная инструкция для понимания процесса, а в конце будет краткий список действий, которое будет содержать лишь список команд в качестве шпаргалки.
Создание образа на основе файла
Например, раздел размером 1Гб использует файл /usr/vdisk.img. В данном случае мы используем ключ -u 0, но номер может быть любым.
FreeBSD
Linux
Linux и losetup
password=string
определяет пароль в открытом текстовом виде для пользователя или разделяемого ресурса. Если вам придется хранить пароли в /etc/nsmb.conf, вы должны обеспечить доступность этого файла на чтение только для пользователя root. Хранение паролей в многопользовательских системах в файле $НОМЕ/.nsmbrc вообще недопустимо.
Пароли Windows можно зашифровать с помощью команды
. Она сгенерирует строку, которую можно использовать как значение этого ключевого слова. Зашифрованная строка начинается с двух символов доллара ($$). Шифрование предотвращает случайное раскрытие пароля, но злонамеренный пользователь легко может расшифровать его.
Читайте также: