Что делает эта команда «найти»?

Я так новичок в Linux, и я выполнил следующую команду, пока я на /root:

find . -type d -exec chmod 770 {} \; && find . -type f -exec chmod 660 {} \

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

Повлияло ли это на каждый файл на машине?

0
задан 21 April 2016 в 23:12

3 ответа

Учитывая Вас имеют достаточные полномочия, find, команды рекурсивно изменят биты полномочий всех файлов к 660 и всех каталогов к 770 запуск с каталога, куда он выполняется.

, Как Вы были в /root (root корневой каталог) и принятие Вас, работали как root, и владелец user:group root:root, это не должно быть основной проблемой за исключением того, что некоторые определенные программы могут жаловаться на некоторые определенные файлы или каталоги, такой, как ssh мог бы жаловаться на полномочия /root/.ssh каталог и /root/.ssh/authorized_keys файл при выполнении основанной на ключе аутентификации, необходимо зафиксировать их вручную.

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

6
ответ дан 22 April 2016 в 09:12
  • 1
    Это должно работать с поднятыми полномочиями. Могло бы быть необходимо работать sudo service cron status. – CJ Dennis 23 January 2018 в 12:56

Та команда определяет местоположение всех каталогов из каталога, что Вы выполнили команду и изменяете ее полномочия. Это затем делает то же, но с файлами. В этом случае команда изменяет полномочия каталогов так, чтобы у Вас был полный доступ, но у других пользователей не будет доступа. Если Вы - единственный пользователь системы, то это не должно иметь значения. Команда затем изменяет полномочия файлов в корне / для разрешения только доступа для чтения и доступа для записи, но не позволяйте выполнение. Можно найти некоторые проблемы с запущением программ и сценариев, но ничто, что окажет основное влияние. У других пользователей также не будет доступа к файлам в корне/.

при нахождении сценария или программы, которую Вы не можете запустить из /root, можно просто выполнить эту команду на файле:

sudo chmod 775 filename

, где filename заменяется названием файла, который Вы пытаетесь выполнить

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

find . -type d -exec chmod 775 {} \; && find . -type f -exec chmod 664 {} \;
2
ответ дан 22 April 2016 в 09:12
  • 1
    Получил подобные ошибки после mv: Например, " W: Целевые Источники (основной/источник/Источники) настроены многократно в/etc/apt/sources.list:9 и/etc/apt/sources.list.d/sources.list:9" – Brambles 6 September 2017 в 10:53

Та первая точка после команды является корнем дерева где find поиски. Таким образом, это влияло на файлы папки, Вы выполнили его, и целое дерево ниже его.

0
ответ дан 22 April 2016 в 09:12
  • 1
    Получил подобные ошибки после mv: Например, " W: ошибка GPG: [ archive.canonical.com/ubuntu гостеприимный InRelease]: с По крайней мере одной недопустимой подписью встретились " После копирования sources.list и sources.list.distUpgrade к sources.list.d/добираются ошибки для способного - обновление были таковы как " W: Целевые Источники (основной/источник/Источники) настроены многократно в/etc/apt/sources.list:9 и/etc/apt/sources.list.d/sources.list:9". я делал это правильно? Когда Вы сказали " include" я должен был сделать перемещение, а не копию? – Brambles 6 September 2017 в 11:08

Другие вопросы по тегам:

Похожие вопросы: