2013-07-21 2 views
0

Я пытаюсь создать каталог с использованием mkdir в Debian, но проблема в том, что каталог создается в корневом каталоге. Проблема заключается в попытке установить OpenFOAM, и я подозреваю, что это потому, что для ее создания используется «$».создание dir с mkdir в debian

Следуя инструкциям в OpenFOAM веб-сайта, он говорит, чтобы создать папку

$HOME/OpenFOAM/user-2.2.1

и затем, чтобы создать в папке под названием "запустить" с помощью:

mkdir -p /FOAM_RUN

проблема заключается в том, что окончательный каталог (пробег) должен иметь следующую форму:

/home/OpenFOAM/user-2.2.1/run

но с использованием Debian Я не могу создать каталог с «sudo», поэтому я должен сделать это как root, и когда я зайду в каталог /home/OpenFOAM/user-2.2.1, и я сделаю mkdir -p/FOAM_RUN, то создается папка:

/root/OpenFOAM/root-2.2.1/run

и мне нужно, чтобы создать в домашнем каталоге/и не в каталоге/корневой. Я создал папку используя только

mkdir -p /home/OpenFOAM/user-2.2.1/run

, но когда я пытаюсь выполнить OpenFOAM заказов он не работает.

Мои вопросы:

Почему mkdir $FOAM_RUN создать каталог запуска, и если я это сделать так же, как «MKDIR перспективе», он не работает?

Почему символ «$» существует, когда я использую mkdir? Я искал его и (например) в руководстве mkdir ничего не говорится об этом.

Извините, я не являюсь экспертом в Linux.

+0

, пожалуйста, исправьте опечатки в своем вопросе. например '/ FOAM_RUN' является принципиально другой папкой, чем' $ FOAM_RUN', но вы, кажется, используете их взаимозаменяемо –

+0

'mkdir -p/FOAM_RUN' говорит, чтобы создать каталог' FOAM_RUN' в корневом каталоге. Команда 'mkdir -p $ FOAM_RUN' говорит, чтобы изучить переменную среды' FOAM_RUN' и использовать ее значение как имя создаваемого каталога. Вы можете проверить переменные среды с помощью 'set' и назначить' FOAM_RUN =/path/to/wherever'. – tripleee

ответ

1

The instructions достаточно просты, но вы, кажется, пропустил один из нот. Чтобы повторить то, что они делают, вам необходимо будет source ~/.bashrc после его обновления. Тогда, если вы echo "$FOAM_RUN", вы должны увидеть, что эта переменная теперь установлена ​​примерно на /home/luser/OpenFOAM/luser-2.2.1/run.

Если вы предпочитаете, чтобы переопределить его вручную, и при условии, ваше имя пользователя является luser и ваша OpenFOAM версия 2.2.1, сделать это:

FOAM_RUN=$HOME/OpenFOAM/$USER-2.2.1/run 
mkdir -p "$FOAM_RUN" # Note pedantic quoting 

Но если ваш .bashrc содержит код, который они проинструктировать вас add, это не обязательно.

0

нет причин, по которым вы не можете использовать sudo на Debian. , если у вас нет sudo установлен, просто установите его, используя что-то вроде следующего (как корень)

aptitude install sudo 

после этого, вы должны настроить его, так что ваш user можно использовать команду. самый простой способ сделать так, чтобы запустить следующее (как корень):

AddUser Пользователь SUDO

вы должны заменить USER на идентификатор пользователя, который требуется, чтобы разрешить использование sudo. , то вы должны сделать вход в систему снова как этого пользователя (если пользователь уже вошел в систему, бревенчатый его)

Смежные вопросы