Я пытаюсь использовать USB PENDRIVE, чтобы увеличить мой текущий путь для создания большой библиотеки.
Итак, у меня есть идея создать в моей программе символическую ссылку на папку в Pendrive. Так что он использует пространство на Pen Drive вместо моего основного хранилища.
/ home / me / opencv /
<- это продукт, который я хочу создать
/ home / me / opencv / build /
<- это папка сборки.
На данный момент недостаточно памяти для его создания, поэтому я создал эту символическую ссылку в / home / me / opencv /
mkdir /media/me/pendrive/opencv/build/
ln -s /media/me/pendrive/opencv/build/ /home/me/opencv/ -s
, это создало ссылку «build» в / home / me Папка / opencv /
, указывающая на мой флеш-накопитель.
Проблема здесь в том, что при обходе каталогов также указывается флэш-накопитель.
cd /home/me/opencv
ls
это отображает ряд папок и файлов внутри папки opencv
Но если я это сделаю ...
cd /home/me/opencv/build
ls ..
это отобразит пустую папку opencv с единственной папкой с именем build.
Вы можете попробовать монтирование bind , если вы можете использовать sudo или иметь права root. Например,
mkdir /home/me/opencv/build
mkdir -p /media/me/pendrive/opencv/build
sudo mount -o bind /home/me/opencv/build /media/me/pendrive/opencv/build
Затем, находясь в /home/me/opencv/build
, вы должны увидеть в ..
содержимое /home/me/opencv/
. Используйте sudo umount /home/me/opencv/build
, чтобы снять крепление.
Существует разница между логическими и физическими путями к каталогам, с которыми вы столкнулись.
cd /home/me/opencv/build
Это поместит вас в логический каталог /home/me/opencv/build
, но физически вы на самом деле в /media/me/pendrive/opencv/build
благодаря символической ссылке.
ls..
покажет вам содержимое физического родительского каталога /media/me/pendrive/opencv
.
Путь к физическому каталогу — это путь к логическому каталогу со всеми разрешенными символическими ссылками. Они одинаковы, если путь к логическому каталогу не содержит только символические ссылки.
См. также разницу между pwd -L
и pwd -P
, находясь в каталоге сборки (и прочитав pwd
руководство ).
cd
также имеет флаги -L
и -P
(и -L
по умолчанию ).