CHOWN: что означает «id -u»

4

Я работаю, чтобы запустить Mongodb на сервере Ubuntu. При рассмотрении инструкций мне нужно было создать каталог «\ data \ db» в корневом диске. В этот момент мне нужно было изменить владельца с помощью команды CHOWN следующим образом:

sudo chown 'id -u' /data/db

Когда я выдаю эту команду, как она появляется в кратком руководстве, я получаю

chown: invalid user: 'id -u'

Я новичок в Linux, поэтому я не понимаю, что означает «id -u». Когда я заменяю свое имя пользователя, команда заканчивается только штрафами и манго. Может кто-нибудь помочь мне понять, что короткая рука 'id -u' будет сообщать эксперту Linux-пользователя, что он не со мной?

    
задан JPrescottSanders 05.08.2010 в 12:56
источник

3 ответа

11

Команда id -u выводит ваш «числовой идентификатор пользователя» (короткий: UID); как вы уже заметили, это то же самое, что полностью указать ваше имя пользователя в командной строке chown . В самом деле, следующие вызовы команд должны иметь одинаковый эффект:

sudo chown 'id -u' /data/db
sudo chown $USER /data/db

Причина, по которой она не срабатывала, как ожидается, скорее всего будет связана с кавычками: они должны быть backquotes (ASCII char 0x60), тогда как сообщение об ошибке chown предполагает, что вы использовали одиночный кавычки (ASCII char 0x27).

Вы можете найти очень подробное объяснение оболочки UNIX, цитируя .     

ответ дан Riccardo Murri 05.08.2010 в 13:08
источник
0

Он возвращает ваш идентификатор пользователя. Запустите man id для получения дополнительной информации.

    
ответ дан Tommy Brunn 05.08.2010 в 12:58
0

id -u печатает ваш идентификатор пользователя в системе. В качестве альтернативы вы можете просто запустить эту команду:

sudo chown <user> /data/db , заменив <user> на ваше имя пользователя в системе.

    
ответ дан Marco Ceppi 05.08.2010 в 13:09