У меня есть старый Mac-сервер, который наш отдел маркетинга использует в качестве файлового сервера для нескольких клиентов Mac. Я хочу от него избавиться по нескольким причинам:
Я бы хотел представить общий ресурс с сервера Windows или HP-UX. Однако в существующих файлах используются символы, недопустимые в других ОС. Мы могли бы написать сценарии для их переименования, но мы обеспокоены тем, что файлы связаны с другими файлами внутри, и переименование файла приведет к разрыву ссылки (подумайте о файле HTML, который ссылается на JPG, переименуйте JPG, и ссылка будет сломался)
Так как же нам переименовать файлы, сохранив связи? Есть ли способ лучше?
Mac-Server - это OS X Server 10.0, я не уверен насчет клиентов, но они более новые (год или два).
Вы говорите, что в именах файлов есть косая черта, и это… трудно поддерживать в Unix. Но Mac OS X является Unix. Но HFS разделяет каталоги двоеточиями, а не косой чертой. Итак, как все это работает вместе?
В моей установке SnowLeopard я могу создать файл в Finder с косой чертой в имени файла. Однако, когда я смотрю на этот файл из командной строки, косая черта превращается в двоеточие. Если я создаю файл в командной строке, имя файла которого содержит двоеточие, он преобразуется в косую черту в Finder. Я не могу создать имя файла с косой чертой в командной строке, а Finder отказывается вставлять двоеточие в имя файла.
Если я создаю имя файла на сервере Unix Samba, содержащее двоеточие, при просмотре этого файла, смонтированного на моей машине SnowLeopard, я получаю сумасшествие. Файл «1: 2.txt» преобразуется в «14V9MB ~ M.TXT». Если я создаю файл на этом общем ресурсе с Mac, двоеточие преобразуется в три непечатаемых байта: 0xEF, 0x80, 0xA2. Это может быть кодировка U + F022 UTF-8, которая находится в «области частного использования» Unicode, что означает, что она не определена повсеместно.
Думаю, если я проведу те же тесты, используя реальную машину Windows в качестве сервера, я получу аналогичные результаты. Windows не позволяет мне использовать двоеточие или косую черту в имени файла. Если я создаю имя файла с двоеточием со стороны Mac, Explorer показывает мне файл вообще без видимых символов на месте двоеточия. (То есть «1: 2.txt» отображается в Проводнике как «12.txt».) Из командной строки dir
показывает мне "1? 2.txt". Я подозреваю, что он знает, как интерпретировать кодировку UTF-8, но не знает, что показать для этой точки символа частного использования.
Я думаю, все это сводится к следующему: вы можете выполнить переход, если можете понять, как преобразовать косую черту в именах файлов в 0xEF80A2. Это, очевидно, можно проверить.
Буквально вчера у меня была аналогичная проблема: мне нужно было скопировать файлы с нашего Mac-сервера на рабочую станцию Windows, где я хотел попробовать поработать с ними. После долгой работы по исправлению имен файлов (например, чтобы избавиться от косых черт) я действительно обнаружил, что внутренние ссылки сломались в процессе. Это стало таким беспорядком, что я отказался от этой идеи.
Как бы то ни было, действительно не так уж сложно изучить основы Mac-сервера, если все, для чего вы его используете, - это файловый сервер, а не публичный (безопасность - другое дело). Если на то пошло, разве хотя бы один из ваших пользователей Mac не обладает достаточными административными навыками, чтобы помочь? Мне кажется, что вы хотите избавиться от сервера по причинам, которые на первый взгляд кажутся разумными, но при этом готовы иметь клиентов Mac, которые вы можете поддерживать не лучше, чем сервер. Я что-то там упускаю?
Вы упоминаете антивирусное программное обеспечение как проблему на сервере, но не упоминаете об этом в отношении клиентов. На мой взгляд, он должен быть на обоих, или не заморачиваться ни с одним из них. Если у вас что-то есть на клиентах, разве вы не можете использовать то же самое на сервере? Я лично не использую его на Mac, только на Windows (конечно, это может измениться в будущем).
Если это относительно новая машина Mac, вы можете подключить общий ресурс через NFS к машине Unix / Linux и скопировать на нее файлы без особых хлопот. Смонтировав через NFS, я смог перенести офисы, в которых использовались странные символы локально, в сетевые настройки. Вы также можете создать разделы HFS в любой современной системе Linux.
Если это сервер OS 9, у вас могут быть проблемы - OS 9 изначально не поддерживала NFS, и после некоторого поиска в Google я даже не могу найти проект для поддержки чтения разделов OS 9.