Почему прикосновение не удается?

Я должен упустить что-то очеviewное.

Это работает:

[[email protected] /]# cd /home/mysite/public_html/../logs [[email protected] /home/mysite/logs]# touch x 

Почему это не так?

 [[email protected] /]# touch /home/mysite/public_html/../logs/x touch: cannot touch `/home/mysite/public_html/../logs/x': No such file or directory 

Есть хороший шанс, что одна из directoryов в /home/mysite/public_html/../logs/ на самом деле является символической ссылкой. Команда cd встроенная в большинство современных оболочек, в этом случае немного мала, поэтому cd .. переводит вас в «логический» родительский directory, который учитывает, как вы туда попали.

Когда вы пытаетесь touch /home/mysite/public_html/../logs/x , вы не получите эту магию.

Рассматривать:

 $ ls -l /home/lars public_html -> /var/www/lars logs/ 

Если я cd /home/lars/public_html я нахожусь внутри /var/www/lars . Так что технически, ../logs не существует (потому что directory logs я хочу, фактически находится в /home/lars , а не в /var/www , который является «реальным» родителем /var/www/lars .

public_html – символическая ссылка на нечто совершенно другое. Как shell, bash отслеживает символические ссылки в путях по-разному, чем многие другие программы. Попробуйте это: cd /home/mysite/public_html затем запустите pwd (command bash) и /bin/pwd (программа). Когда touch пытается использовать path, он перейдет в /var/www/sites/mysite/ или где бы эта ссылка не /var/www/sites/mysite/ , затем перейдите туда, чтобы добраться до logs/ … только, чтобы не find /var/www/sites/logs/ .

Interesting Posts

Запуск ОС Windows Server на обычной настольной машине

Можно ли использовать балансировку эластичной нагрузки на serverе IIS, принимающем BITS Uploads?

CentOS 6 в производстве

Невозможно выполнить пинг между двумя виртуальными машинами

Как я могу запретить блокировку локальной учетной записи Windows 2003?

обновить Active directory 2003 до 2012R2 user профиля

Невозможно отkeyить автоматическое обновление Java

Что означает «хороший» для graphиков использования CPU?

Лучший вариант для HA между удаленными центрами обработки данных?

Порт 443, по-viewимому, закрыт в Nmap-сканировании, даже если less брандмауэра

Сервер Apache2, запрашивающий ITSELF при случайной HTTP-активности

cronjob работает 2x через час вместо 1x

Создание Apache для распознавания fileов MIME без расширения

Почему file на монтировании NFS, похоже, кэшируется случайным образом, но больше не кэшируется при запуске `ls`?

Другое доменное имя, указывающее на мой IP-адрес serverа?

Давайте будем гением компьютера.