Так получилось, что у моей заметки Несколько Linux систем - одни общие документы образовалось продолжение. А произошло это после небольшой критики на разных форумах, большое спасибо Haron Prime за критику и совет.
О том как примонтировать необходимый раздел и автоматически его монтировать при старте системы, см. в первой заметке.
Первый вариант основывался на системном инструменте xdg-user-dirs, но далеко не все его устанавливают по умолчанию, в этом варианте мы будем использовать штатный инструмент *nix - ln — команда UNIX, устанавливающая связь между файлом и именем файла.
Основы работы с этим инструментом подробно рассказали на Хабрахабр, я углубляться не буду, а просто покажу пример как я это реализовал.
Считаем что раздел у нас уже примонтирован, и в моем случае он имеет вот такой путь - /media/ulyssesd/My_Home/ulyssesd а далее уже находятся все остальные каталоги (Документы, Музыка и прочая), а основной путь перед локальными файлами у меня получается вот такой - /home/ulyssesd/
При создании симлинка на каталог, может получится так что симлинк будет создан внутри самого каталога или получить вот такой ответ от системы
Итак приступим (все операции проводятся от имени пользователя без использования sudo и прав root!)
Удаляем каталог (для примера возьмем каталог "Видео")
файл - simlink.sh
Результаты работы можно оценить визуально
Или в терминале с помощью команды
Если вдруг надумаете удалять симлинки, то рекомендую обязательно! размонтировать раздел на который они ссылаются и после этого уже их удалять, иначе можете удалить и каталог на который они ссылаются.
О том как примонтировать необходимый раздел и автоматически его монтировать при старте системы, см. в первой заметке.
Первый вариант основывался на системном инструменте xdg-user-dirs, но далеко не все его устанавливают по умолчанию, в этом варианте мы будем использовать штатный инструмент *nix - ln — команда UNIX, устанавливающая связь между файлом и именем файла.
Основы работы с этим инструментом подробно рассказали на Хабрахабр, я углубляться не буду, а просто покажу пример как я это реализовал.
Считаем что раздел у нас уже примонтирован, и в моем случае он имеет вот такой путь - /media/ulyssesd/My_Home/ulyssesd а далее уже находятся все остальные каталоги (Документы, Музыка и прочая), а основной путь перед локальными файлами у меня получается вот такой - /home/ulyssesd/
При создании симлинка на каталог, может получится так что симлинк будет создан внутри самого каталога или получить вот такой ответ от системы
ln: не удалось создать символьную ссылку «/home/ulyssesd/Dropbox»: Файл существуетТак что перед созданием симлинка мы все эти каталоги удалим (у меня система чистая, это сложности не вызывает, если у вас там есть информация, рекомендую ее скопировать в другое место или переименовать каталоги).
Итак приступим (все операции проводятся от имени пользователя без использования sudo и прав root!)
Удаляем каталог (для примера возьмем каталог "Видео")
$ rm -fR ~/ВидеоСоздаем симлинк
$ ln -s /media/ulyssesd/My_Home/ulyssesd/Видео /home/ulyssesdТ.к. каталогов много, а я человек ленивый, то решил для себя сделать sh файл собрав туда весь список каталогов и вот что у меня получилось
файл - simlink.sh
#!/bin/shОтдельно хочу остановится на каталоге "Рабочий стол", т.к. он в имени имеет пробел, то в команде для терминала его необходимо использовать следующим образом "Рабочий\ стол"
# Скрипт по привязке папок из каталога home/user
# к другому примонтировану разделу
# все операции проводятся с правами обычного пользователя
# !!! без использования sudo или прав root !!!
# !!! Перед запуском убедитесь что необходимый раздел примонтирован и доступен !!!
# Также необходимо проверить что бы все папки на которые делаются симлинки были пусты
# т.к. они будут удалены перед созданием симлинка
rm -fR ~/Видео
ln -s /media/ulyssesd/My_Home/ulyssesd/Видео /home/ulyssesd
rm -fR ~/Документы
ln -s /media/ulyssesd/My_Home/ulyssesd/Документы /home/ulyssesd
rm -fR ~/Изображения
ln -s /media/ulyssesd/My_Home/ulyssesd/Изображения /home/ulyssesd
rm -fR ~/Загрузки
ln -s /media/ulyssesd/My_Home/ulyssesd/Загрузки /home/ulyssesd
rm -fR ~/Музыка
ln -s /media/ulyssesd/My_Home/ulyssesd/Музыка /home/ulyssesd
rm -fR ~/Рабочий\ стол
ln -s /media/ulyssesd/My_Home/ulyssesd/Рабочий\ стол /home/ulyssesd
rm -fR ~/Общедоступные
ln -s /media/ulyssesd/My_Home/ulyssesd/Общедоступные /home/ulyssesd
rm -fR ~/Шаблоны
ln -s /media/ulyssesd/My_Home/ulyssesd/Шаблоны /home/ulyssesd
# Опционально для тех кто использует облачные хранилища
rm -fR ~/Dropbox
ln -s /media/ulyssesd/My_Home/ulyssesd/Dropbox /home/ulyssesd
rm -fR ~/Yandex.Disk
ln -s /media/ulyssesd/My_Home/ulyssesd/Yandex.Disk /home/ulyssesd
Результаты работы можно оценить визуально
Или в терминале с помощью команды
$ ls - l
В результате исполнения которой увидите вот такое
Все, мы решили поставленную задачу.Если вдруг надумаете удалять симлинки, то рекомендую обязательно! размонтировать раздел на который они ссылаются и после этого уже их удалять, иначе можете удалить и каталог на который они ссылаются.
0 коммент.:
Отправить комментарий