Официальная возможность получить лицензионный софт бесплатно.
Giveaway of the Day
Это не реклама!

Щелкните для получения прогноза по Биробиджану


Показаны сообщения с ярлыком mountpoint. Показать все сообщения
Показаны сообщения с ярлыком mountpoint. Показать все сообщения

понедельник, 21 декабря 2015 г.

mount для Windows или работа с дисками в Windows в стиле Unix

Как известно, одно из отличий файловых систем WinDOS и *nix в том, что в Windows каждый том обычно имеет буквенное обозначение - C:. D: и т.д., а в *nix - подключается к каталогу внутри файловой системы.
Но начиная с Windows 2000 есть возможность не только назначить тому букву или несколько, но и подключить его к пустой папке на разделе с NTFS:



Это открывает новые полезные возможности. Например, у меня на NTFS-разделе создан каталог (сюрприз!) \mnt, внутри которого куча подкаталогов - по одному на каждый сменный накопитель, когда либо подключавшийся к моему рабочему компу.

Всё бы ничего, но Windows предлагает преимущественно графические средства для подобных настроек, тогда как в *nix существует команда mount, которая умеет как показать подключенные тома, так и подключать новые.
Однако, в Windows есть команда diskpart, которая в чем-то сходна с mount. О ней и поговорим немного.

Diskpart может работать в интерактивном режиме: запускаем ее, она выводит свою подсказку и ждет ввода своей команды. А можно собрать нужные команды в файл сценария и с ключом /s запустить этот сценарий на выполнение.

Таблица взята из технета по ссылке выше. Перевод мой.

Команда Описание
list volume
Выводит список обычных и динамических томов на всех дисках.
select volume
Выбирает указанный том, volumenumber - номер тома, и "фокусируется" на нём, то есть, следующие команды будут применяться к этому тому. Если номер тома не задан, то команда select показывает, какой том выбран на данный момент. Том можно задать номером, буквой диска или путём к точке монтирования. На простых дисках (basic disk) выбор тома одновременно выбирает и соответствующий раздел на этом диске.
assign
Назначает текущему тому букву диска или каталог-точку монтирования. Если ни то ни другое не указано, то тому присваивается следующая свободная буква. Если выбранная буква или точка монтирование уже занята, то выводится сообщение об ошибке.
С помощью команды assign можно изменить букву, назначенную съемному носителю.
Нельзя присваивать буквы загрузочным томам или томам, содержащим файл подкачки. Кроме того, нельзя назначать буквы специальным разделам вроде ОЕМ-разделов, системным разделам EFI или любым разделам в GPT кроме основных разделов с данными.
mount= путь
Указывает пустой существующий каталог на разделе NTFS, куда будет подключен указанный том.

Кроме того, начиная с srv2003 есть команда mountvol, гораздо более близкая к mount. Она занимается именно тем, что подключает том к указанному каталогу.

воскресенье, 4 ноября 2012 г.

Ubuntu 12.10 и /media

Начиная с Квантового Кетцаля, изменился порядок монтирования съемных дисков. Было:

/media/точка-монтирования-диска

стало:

/media/имя-пользователя/точка-монтирования диска

Например, мой диск с образами виртуальных машин, который привычно жил в /media/vdi, переехал в /media/sergei/vdi, что сильно расстроило VirtualBox.

С одной стороны, так стало лучше, всё-таки, *nix - многопользовательская система, и нововведение разруливает проблему одновременной работы нескольких пользователей. Не знаю, правда, как оно себя поведет, если один и тот же диск захотят смонтировать сразу два пользователя - вроде бы монтирование одного ресурса в несколько точек не запрещено, но вот как быть с правами доступа и прочим? Надо, кстати, проверить будет, да.

С другой стороны, у тех, кто делал не чистый реинсталл, а обновлялся, пошли по бороде все привязки к месту на диске, как в вышеприведенном диске с хранилищем образов. А если у кого-то остались множественные .desktop и просто ссылки в скриптах, тем было впору вешаться.

Однако, как гласит известная длинная пословица, "на хитрую ж... найдется х... винтом". Вспоминаем, что мы имеем из инструментов, в частности про символические ссылки - инструмент, для которого в винде, как минимум - по win2003 включительно (в более новых не проверял) есть только жалкое недокументированное подобие под названием joint, создавать которое штатными средствами нельзя*.

Итак, задача: что-то сделать, чтобы VirtualBox не плакал, что не может найти образы дисков в /media/vdi и чтобы не пришлось его перенастраивать на новое местоположение.

Решение: типичный unix-way.

ln -s /media/sergei/vdi /media/vdi
(ls -s цель-ссылки размещение-ссылки)

И всё, собственно. Диск монтируется куда его захотела впихнуть система, но у меня доступ к нему по-прежнему через привычный путь. Если диск не смонтирован, то ссылка становится invalid, но это меньшее из зол. На лончпаде со мной согласились, что не может не радовать.

Уверен, новый тип монтирования уже не отменят, стало быть, в будущем, делая привязки к смонтированным ресурсам, нужно сразу закладывать в путь точку монтирования в виде /media/$USER/точка-монтирования.

* я использую эти джойнты под виндой - у меня создан каталог \mnt, в котором куча подкаталогов с именами флешек и съемных дисков, когда-либо подключавшихся к моему рабочему компу: в "управлении дисками" я не назначаю каждой из них букву, а подключаю к "пустой папке NTFS". Кстати, я был просто вынужден так сделать по двум причинам:
1. у нас пока еще используется Novell Netware, но винда почему-то кладет с пробором на то, что на некую букву назначен сетевой диск, и охотно подцепляет свежеподключенный накопитель на ту же самую букву. Но при этом получается, что два диска делят одну букву и делят ее не на равных: сетевой диск имеет преимущество, а к внешнему накопителю через эту букву не добраться, пока не отключен сетевой.
2. Количество возможных букв ограничено длиной латинского алфавита (26), как минимум 2 из которых всегда заняты - A: и C:. А вот в каталоге mnt у меня уже около сотни подкаталогов...