для этого возможны только развязки
Используйте SUBST, чтобы обмануть ОС.
Это довольно важно использовать родительскую папку с /deny Everyone:(S,RD)
для того чтобы преградить OS от вползать в бесконечной петле пока делающ обслуживание. Как поиск, индексатор поиска, антивирус, История файлов, кто знает, что еще.
подробности и скрипт
Я вижу у тебя понимания большинства, поэтому давайте просто подведем для других.
ссылки
Каталог Sym-ссылок и соединений очень разные вещи.
Основное различие, которое должно касаться вас, заключается в том, что вы не можете получить доступ к sym-ссылкам на удаленном компьютере, который ссылается на локальные пути этого удаленного компьютера. Sym-link to F:\ на удаленном компьютере попытается открыть локальный компьютер вместо F:\.
Sym-link - это файл ссылок, который содержит информацию о пути к реальному объекту. Вы можете sym-link к неважно, даже относительные пути.
Вы можете создать директорию sym-link на несуществующий диск, но это вам не поможет по локальной сети
Junction - это понятие файловой системы NTFS. Но в то время как соединение должно быть в NTFS, оно может указывать на папку на других FS. Он "перенаправляет" доступ к junctioned папку. Можно получить доступ к соединениям на удаленных компьютерах, указывающим на удаленные папки.
Следите за разрешениями. оба из каталога цели и соединения. (icacls with /L)
для файлы есть файл SYM-ссылки и hardlinks. Там нет жестких ссылок для каталога, но Junction довольно близко к нему.
Жесткие ссылки-это несколько записей файлов, указывающих на одну и ту же позицию на диске.
По этой причине, вы не можете hardlink через диски.
Примечание: соединения не должны создаваться для связывания динамических мест. Это работает нормально, даже если другой FS установлен как та же буква, но это не поддерживаемый способ. Необходимо создать общую папку для каждого диска. Но это создаст беспорядок в сетевых местоположениях, и не будет никакого способа контролировать доступ с помощью разрешений.
это вырезать из моего сценария настройки. Это портативный, поместите его в файл bat и запустите от имени администратора.
- создает общий доступ к дискам с точками соединения для дисков букв из всего алфавита. Общие диски будут доступны любому пользователю, прошедшему проверку подлинности. (не Гость и пользователь без пароля) пользователи будут иметь тот же доступ, что и при локальном входе, но UAC не будет предоставлять повышенный доступ даже для администраторов.
- создает скачать-Private share для загрузки текущего пользователя-просто удалите раздел, если вы не хотите его
- папки этих двух акций размещаются в" %PUBLIC%\Private shares", например. "c:\Users\Public\Private shares" эта папка будет напрямую недоступна, чтобы избежать фоновых служб в конечном итоге в цикле. Вы по-прежнему может получить доступ к папкам внутри него напрямую, написав полный путь в адресной строке, или путем создания ярлыка windows к нему
- для настройки разрешений для всей папки редактировать "личные акции", но настроить для определенных букв диска, вы должны использовать icacls с параметром /L
echo. & echo === "Private shares"
echo *** Creating Folders
rem --- Private shares - inheriting Authenticated Users access from Public folder
if not exist "%PUBLIC%\Private shares" mkdir "%PUBLIC%\Private shares"
rem - remove DENY temporarily
icacls "%PUBLIC%\Private shares" /remove:d Everyone 2>nul
if not exist "%PUBLIC%\Private shares\Drives" mkdir "%PUBLIC%\Private shares\Drives"
echo *** Creating Downloads-Private share
echo * Creating link
mklink /J "%PUBLIC%\Private shares\Downloads-%USERNAME%" "%USERPROFILE%\Downloads"
echo * Creating shares
net share Downloads-Private /delete 2>nul
net share Downloads-Private="%PUBLIC%\Private shares\Downloads-%USERNAME%" /unlimited /remark:"Only for authenticated users" /grant:everyone,FULL
echo *** Creating Drives share
echo * Creating link
for %%a in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
subst %%a: \
mklink /J "%PUBLIC%\Private shares\Drives\%%a" %%a:\
subst %%a: /d
)
echo * Creating shares
net share Drives /delete 2>nul
rem - /grant:everyone,FULL --- No worry, this is on Microsoft's recommendation. Grant full access to shares and handle access through permissions. It's more portable, safer and simpler.
net share Drives="%PUBLIC%\Private shares\Drives" /unlimited /remark:"Only for authenticated users" /grant:everyone,FULL
echo *** Changing "Private share" permissions
rem - this is the same way as Windows is handling legacy folders inside Users directory
rem this must be done, or many services will keep crawling though an endless path loop
icacls "%PUBLIC%\Private shares" /deny Everyone:(S,RD)
Если вам нужно удалить папку, созданную с помощью этого скрипта, необходимо разблокировать с помощью Properties-Permission, либо командой run as Admin:icacls "%PUBLIC%\Private shares" /remove:d Everyone
Не держите эту папку разблокированной, удалите ее сразу после этого или заблокируйте ее снова с помощью icacls "%PUBLIC%\Private shares" /deny Everyone:(S,RD)