редактирование файлов в папке etc
совсем новичек, со страшном опытом работы с линукс в 1 день. нужно исправить файл etc/ipsec.secrets пол работы я сделал- я его нашел) но как отредактировать, не осилил. Гугл выдает только англоязычные ссылки, подскажите кто-нибудь как реализовать
Linkolness
03.12.16 19:47:51 MSK
sudo vi /etc/ipsec.secrets
EXL ★★★★★
( 03.12.16 19:49:06 MSK )
sudoedit /etc/ipsec.secrets
Как говорит EXL допустимо, но не рекомендуется. А за совет chmod -R 777 /etc/ipsec.secrets руки отрывать нужно.
mogwai ★★★★
( 03.12.16 19:53:57 MSK )
Ответ на: комментарий от mogwai 03.12.16 19:53:57 MSK
а в чем подвох его совета?
Linkolness
( 03.12.16 19:57:37 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 19:57:37 MSK
Лучше, чем всяких наркоманов на ЛОРе слушать, сходи изучи основы. В данном случае тебя интересуют права доступа к файлам и каталогам.
Ну и язык английский выучи, без него всё-равно жить нельзя.
Когда будешь знать что происходит — сам уже решишь что с этим делать. Самый правильный совет тебе всё-равно никто кроме тебя самого не даст.
Goury ★★★★★
( 03.12.16 20:01:19 MSK )
Последнее исправление: Goury 03.12.16 20:02:18 MSK (всего исправлений: 1)
Ответ на: комментарий от Goury 03.12.16 20:01:19 MSK
Английский учу, но до чтения тех документации пока далековато. Изучать Линукс-гуд, но для реализации тех задач, что я на него возложил мне нужно сперва отредактировать этот долбаный файл)
Linkolness
( 03.12.16 20:05:41 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 19:57:37 MSK
sudo vi запускает от рута редактор, sudoedit делает копию нужного тебе файла, который открывает в редакторе запущенном из под твоего пользователя. После закрытия редактора изменённая копия заменит исходный файл.
mogwai ★★★★
( 03.12.16 20:08:54 MSK )
Ответ на: комментарий от mogwai 03.12.16 20:08:54 MSK
сделал все как вы сказали, вот такую ошибку выбило E325: ATTENTION Found a swap file by the name «/etc/.ipsec.secrets.swp» owned by: root dated: Sat Dec 3 19:02:35 2016 file name: /etc/ipsec.secrets modified: YES user name: root host name: fedya-STOLL process ID: 4344 While opening file «/etc/ipsec.secrets» dated: Tue Apr 5 15:44:54 2016
Linkolness
( 03.12.16 20:12:55 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 20:12:55 MSK
Нашло временный файл от другой инстанции. Может в соседнем окне не закрыли ви из под рута?
Сейчас можете просто удалить его sudo rm -f /etc/.ipsec.secrets.swp , на будущее хорошо бы английский подучить, да разобраться с тем как работает используемый редактор.
mogwai ★★★★
( 03.12.16 20:17:01 MSK )
Ответ на: комментарий от Linkolness 03.12.16 20:12:55 MSK
ага, кажется понял, ошибка из за того что я открыл файл сначала в vi потом, незная как выйти, просто закрыл терминал и сейчас мне сообщается что файл открыт в другом редакторе, как сделать выход из vi?
Linkolness
( 03.12.16 20:17:16 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 20:17:16 MSK
или ZZ (две заглавные Z).
vi — сложнее обычного редактора. Установи vim и запусти vimtutor — интерактивный самоучитель по vim/vi.
mogwai ★★★★
( 03.12.16 20:20:01 MSK )
Ответ на: комментарий от mogwai 03.12.16 20:20:01 MSK
не получается выйти, то что я сейчас вижу в окне терминала, выглядит вот так. буквы А, B -реакция на попытку перемещения курсора влево или вправо ZZ
B udo rm -f /etc/.ipsec.secrets.swp, This file holds shared secrets or RSA private keys for authentication.
# RSA private key for this host, authenticating it to any other host # which knows the public part.
Linkolness
( 03.12.16 20:30:59 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 20:17:16 MSK
в этом и был повох ) про vi даже онекдот есть
anonymous
( 03.12.16 20:37:02 MSK )
Ответ на: комментарий от Linkolness 03.12.16 20:30:59 MSK
Просто удали этот .swp файл. И перед тем как использовать vim/vi потрать 30 минут на vimtutor
mogwai ★★★★
( 03.12.16 20:37:42 MSK )
Ответ на: комментарий от mogwai 03.12.16 20:37:42 MSK
все, удалил, ввел sudo edit. /ipsec.secrets открылось «окно» редактора, как я понял vi но не могу допереть куда нужно вписать нужные мне данные, никакие символы не вводятся, выглядит все как-то так: # This file holds shared secrets or RSA private keys for authentication.
# RSA private key for this host, authenticating it to any other host # which knows the public part.
Linkolness
( 03.12.16 20:49:47 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 20:49:47 MSK
короче суть вот в чем мне нужно сделать вот это To enter your credentials you need to edit /etc/ipsec.secrets file. You should add one line in the following format. Replace YOUR_USERNAME with your hide.me username and YOUR_PASSWORT with your hide.me password. Notice the whitespace after YOUR_USERNAME, after «:» and after «EAP
как я понял мне нужно отредактировать файл и внести в него пару логин:пароль но как я писал выше, при открытии через файла посредством vi, не могу разобраться куда вводить и каким образом. Прошу помочь
Linkolness
( 03.12.16 20:53:05 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 20:53:05 MSK
Не надо не vi не vim . Это сложный редактор и с наскока в нём чёрт ногу сломит.
Используйте nano. Он похож на обычный редактор:
sudo nano /etc/ipsec.secrets
Внесите изменения в файл. Затем нажмите Ctrl-X . Потом Y (если спросит, Y значит yes). Затем enter .
lexazloy ★
( 03.12.16 21:16:40 MSK )
Ответ на: комментарий от lexazloy 03.12.16 21:16:40 MSK
открыть через nano получилось, но с редактированием та же проблема, символы не вводятся выглядит все так: File /etc/ipsec.secrets is being edited (by root with VIM 7.4, PID 4862); continue? ниже как вы и писали предложения с вариантами Y, N но даже это не вводится
Linkolness
( 03.12.16 21:25:47 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 21:25:47 MSK
Вообщем разобрался и с этим, внес изменения через nano вконце попросило указать имя файла для сохранения, я ввел то же(ipsec.secrets) подумав, что отредактированная копия заменить основную. Но когда по завершении, открыл файл в vi, то не увидел там тех строк, которые я перед этим вписал в nano
Linkolness
( 03.12.16 21:41:58 MSK ) автор топика
Ответ на: комментарий от Linkolness 03.12.16 20:05:41 MSK
Откуда ты можешь это знать, если ты даже не знаешь что такое права в контексте файловой системы?
Если бы тебе и правда надо было бы отредактировать файл для решения задачи — ты бы уже знал всё что надо про файлы.
Но ты не знаешь. А значит и задачу ты придумал себе без представления о контексте её выполнения. А значит задача некорректна изначально.
Goury ★★★★★
( 03.12.16 23:33:54 MSK )
Ответ на: комментарий от lexazloy 03.12.16 21:16:40 MSK
export EDITOR=nano sudoedit /etc/ipsec.secrets
anonymous
( 08.12.16 00:53:12 MSK )
Вот зачем мучаться с этими костылями если есть su?
saahriktu ★★★★★
( 08.12.16 01:04:39 MSK )
Ответ на: комментарий от anonymous 08.12.16 00:53:12 MSK
1. Автору вопроса эта дефолтный консольный редактор не нужен.
2. Мало кому нужна муть с временным файлом.
Мой вим помнит историю изменений и чтобы откатиться мне достаточно одной команды.
lexazloy ★
( 08.12.16 14:07:13 MSK )
Ответ на: комментарий от saahriktu 08.12.16 01:04:39 MSK
У root есть пароль.
Пароль надо раздавать.
lexazloy ★
( 08.12.16 14:11:45 MSK )
Ответ на: комментарий от lexazloy 08.12.16 14:11:45 MSK
Ситуации разные бывают. Если это на работе, то вообще подозрительно, что юзеру дали sudo. Если же специфика работы другая, и всем 3,5 человек спокойно раздают sudo, то можно попробовать договориться с админом на смену root’ового пароля на новый уникальный известный юзеру. Чтобы он спокойно у себя редактировал настройки в /etc, но при этом этот пароль не подходил к другим машинам. А может человек и сам есть админ, и редактирует свои настройки в /etc в серверной, или вообще у себя дома. И зачем тогда себя ограничивать?
saahriktu ★★★★★
( 08.12.16 14:18:21 MSK )
Ответ на: комментарий от saahriktu 08.12.16 14:18:21 MSK
Если им раздают sudo, то договариваться о паролях не надо. Для этого sudo и придумали.
sudo это современный, функциональный инструмент, который покрывает необходимый функционал.
А вам просто больше нравится su и вы ищете оправдания его использования. 😉
lexazloy ★
( 08.12.16 14:28:14 MSK )
Ответ на: комментарий от EXL 03.12.16 19:49:06 MSK
slon ★
( 08.12.16 14:31:59 MSK )
Ответ на: комментарий от lexazloy 08.12.16 14:28:14 MSK
Может и так, но всё равно подозрительно. Если юзеру не доверяют, то как ему можно доверить sudo? Мало ли что он натворит, вдруг его машина, например, внезапно начнёт DDoS’исить всю локальную сеть организации, и она понесёт убытки? А если юзеру доверять можно, то ему можно и root’овый пароль вручить. А sudo — ни рыба, ни мясо. Вроде как и доверяют, но не совсем.
saahriktu ★★★★★
( 08.12.16 14:47:13 MSK )
Последнее исправление: saahriktu 08.12.16 14:48:20 MSK (всего исправлений: 1)
Ответ на: комментарий от saahriktu 08.12.16 14:47:13 MSK
sudo — доверяй, но проверяй. 🙂
Это не только вопрос доверия, но и удобства. Взять тот же пароль:
1. нам не надо помнить оба, достаточно одного своего;
2. если пользователь лишается прав, не надо стирать ему память менять пароль;
2. руту не обязательно иметь пароль вообще.
lexazloy ★
( 08.12.16 15:44:59 MSK )
Ответ на: комментарий от lexazloy 08.12.16 15:44:59 MSK
sudo — угроза безопасности, если комп похакали извне с правами юзера (через браузер например).
praseodim ★★★★★
( 08.12.16 16:00:04 MSK )
Ответ на: комментарий от praseodim 08.12.16 16:00:04 MSK
sudo не исключает наличие пароля.
Если пароль перехватывается, то безопаснее отдать злоумышленнику пользовательский пароль, чем пароль от root.
Так же своевременная изоляция взломанного компьютера позволит избежать утечки единственного главного пароля и смены его в темпе вальса, а так же передачи новой информации (о смене) остальным пользователям имеющим доступ.
Не стоит забывать и о логирование sudo. Мониторинг входа конкретного пользователя в конкретный временной период поможет устранить вероятные проблемы и возможный ущерб нанесённый недоброжелателем.
lexazloy ★
( 08.12.16 16:50:32 MSK )
Ответ на: комментарий от lexazloy 08.12.16 15:44:59 MSK
Ну, в современном мире много лишних сущностей. Можно и с ними, но можно и без них. Ну, и всем удобно разное, да.
Тот же Ричард Столлман вспоминал как хакеры прежних лет в первых юниксах вообще не торопились вводить права и пароли. Не хотели предоставлять системным администраторам инструменты контроля за ними. А когда всё-таки начались подвижки в этом направлении, то им стало интересно найти способ сбрасывать пароли на пустые. И они таки это делали. После чего отправляли этим людям сообщения наподобие: «Пожалуйста, не надо устанавливать пароль! В следующий раз просто нажмите Enter — так всем проще!».
А сейчас. Пароли, шифрование, информационная безопасность.
saahriktu ★★★★★
( 08.12.16 17:02:19 MSK )
Ответ на: комментарий от saahriktu 08.12.16 17:02:19 MSK
Так компьютер у них был большой, а окружение товарищей маленькое, да ещё и сплочённое общим интересом. К тому же всякая интеллектуальная студентота топовых мировых вузов. Раньше в МТИ и Беркли дураков даже за деньги не брали, это сейчас всякие gender studies.
Моей семье и друзьям, например, ключи от моей квартиры не нужны — приходите. Но вот я всё равно запираю потому что мир не ограничивается моим кругом.
Ужасный век, ужасные сердца. 🙂
lexazloy ★
( 09.12.16 03:05:50 MSK )
Ответ на: комментарий от saahriktu 08.12.16 14:47:13 MSK
Обычно sudo используют вместо su. Но в /etc/sudoers можно довольно тонко настроить права, что кому можно, а что нельзя. См. man sudoers. Кроме того, можно настроить так, чтоб при выполнении любой команды sudo, root получал сообщение о том, кто какую команду выполнил. Правда, обходится это просто: sudo bash и дальше любые команды (правда это предположение, не проверял). Ну и просто позволяет избежать частых ошибок, когда человек выполняет su для привилегированных операций, а выйти забывает, оставаясь под рутом, что опасно. В sudo же за раз выполняется одна команда, но и пароль каждый раз вводить не надо. Наконец, sudoers можно настроить так, чтоб sudo запрашивала пароль рута, а не пользователя. В общем, очень гибкая команда, просто мало кто об этом знает и всем этим пользуется.
aureliano15 ★★
( 09.12.16 03:34:51 MSK )
опытом работы с линукс в 1 день
etc/ipsec.secrets
Обратись к более компетентному специалисту. После таких как ты разгребать приходится иногда конкретные говна.
Как редактировать системные файлы в ubuntu
Данное руководство по Ubuntu для новичков написано для тех, кто хочет легко и без проблем сменить свою операционную систему на Ubuntu. Оно охватывает вопросы, связанные с установкой, настройкой и использованием Ubuntu.
Книги автора: Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx»
Книги автора: Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx»
Книга: Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx»
15.3 Редактирование конфигурационных файлов
Скрыть рекламу в статье
15.3 Редактирование конфигурационных файлов
Важнейшим примером применения вышеописанной технологии «прикидывания» рутом является редактирование конфигурационных файлов системы. Я уже говорил, что все настройки системы и всех приложений в Linux хранятся в виде текстовых файлов. Так вот, редактировать вы можете только файлы, принадлежащие вам, то есть только настройки, касающиеся вашего пользователя. А для редактирования системных параметров вам понадобятся права администратора.
Многие файлы вы сможете открыть, но не сможете что-либо в них изменить, вам просто не будет доступна операция сохранения:
Рис. 15.3: Открытый только для чтения системный конфигурационный файл.
Конечно, можно открывать конфигурационные файлы с правами root через диалог запуска приложений командой
gksudo gedit /путь/до/файла
Gedit — это стандартный текстовый редактор Ubuntu.
Однако в диалоге запуска не работает автодополнение, следовательно путь до файла вам придётся набирать вручную, что не всегда удобно. Поэтому можно для запуска текстового редактора от имени суперпользователя использовать терминал, например:
Рис. 15.4: Открытие системного конфигурационного файла с правами администратора.
Учтите, что sudo — это чисто консольная утилита, поэтому использовать её в диалоге запуска приложений нельзя, хотя из терминала через неё можно запускать графические приложения. А gksudo наоборот, утилита графическая, поэтому её не стоит использовать в терминале, хотя это и не запрещено.
В итоге откроется редактор с возможностью сохранения изменений:
Рис. 15.5: Открытый для редактирования системный конфигурационный файл.
Тут стоит обратить внимание на то, что текстовый редактор запускается из терминала, поэтому если вы во время работы закроете окно терминала, то тут же закроется и запущенный из него Gedit, так что будьте внимательны.
Sysadminium
На этом уроке по Linux мы рассмотрим создание (touch), редактирование (nano) и чтение (cat, tac, grep, less, tail) текстовых файлов.
Оглавление скрыть
Создание файлов и просмотр их в каталоге
Все примеры я буду показывать на Debian 11, так как на Ubuntu 22.04 все выполняется аналогично. Вообще в Linux работа в терминале на любых системах практически одинакова. Поэтому создание, редактирование и чтение файлов можно продемонстрировать на любой системе.
Для создания текстового файла служит команда touch:
alex@deb:~$ touch file.txt
С помощью команды ls можно посмотреть какие файлы есть в каталоге:
alex@deb:~$ ls file.txt
Для команды ls есть дополнительные опции:
- -l — показывает информацию по каждому файлу;
- -h — показывает размер файла в удобном для человека виде (байты, килобайты, мегабайты и т.д.). Эту опцию можно использовать только вместе в -l.
Опции можно писать слитно (ls -lh) или раздельно (ls -l -h). Вот пример:
alex@deb:~$ ls -lh итого 0 -rw-r--r-- 1 alex alex 0 ноя 26 16:15 file.txt
Команда touch не только создает файл, но если этот файл уже есть, то обновляет время доступа и модификации данного файла:
alex@deb:~$ touch file.txt alex@deb:~$ ls -lh итого 0 -rw-r--r-- 1 alex alex 0 ноя 26 16:17 file.txt
Как вы могли заметить вначале время последнего изменения файла было 16:15, а после выполнения команды touch оно изменилось на 16:17. На самом деле команда touch не изменила файл, она лишь прикоснулась к файлу и тем самым изменила его время доступа. Кстати, с английского touch переводится как прикасаться.
Давайте теперь разберём вывод команды ls -lh:
Тип файла | Права | | Кол-во ссылок | | | Владелец | | | | Группа | | | | | Размер | | | | | | Дата и время последнего касания или изменения | | | | | | | Имя файла | | | | | | | | - rw-r--r-- 1 alex alex 0 ноя 26 16:17 file.txt
Пока что вам нужно запомнить что таким образом можно посмотреть размер файла и дату его изменения, с остальным разберемся позже. И ещё запомните 2 типа файлов:
- знак тире «-« — это обычный файл;
- символ «d» — это каталог;
- есть и другие типы файлов, но пока их рассматривать не будем.
Редактирование файлов
Отредактировать текстовый файл можно с помощью текстового редактора «nano»:
alex@deb:~$ nano file.txt
После выполнения этой команды у Вас откроется текстовый редактор:
Для того чтобы сохранить этот файл нужно нажать комбинацию клавиш «Ctrl+o«.
А чтобы закончить редактирование и закрыть этот файл нужно нажать «Ctrl+x«. При этом у вас спросят, хотите ли вы сохранить этот файл и если да, то нужно ввести «y» и нажать клавишу «Enter«. Таким образом необязательно использовать комбинацию «Ctrl+o» перед закрытием файла.
Внизу я выделил подсказки текстового редактора Nano, в подсказках символ «^» — это клавиша Ctrl.
Если с помощью nano открыть несуществующий файл, то файл будет создан как только вы его сохраните. Поэтому выполнять touch перед nano не обязательно.
Чтение файлов
Команды cat и tac
Давайте теперь научимся читать текстовые файлы. Чаще всего для этого используется команда cat:
alex@deb:~$ cat file.txt И тут мы можем вводить текст, какой только пожелаем.
У команды cat есть опция -n, которая выводит номера строк:
alex@deb:~$ cat -n file.txt 1 И тут мы можем 2 вводить текст, 3 какой только пожелаем.
Для команды cat есть команда перевёртыш, это команда tac. Она выводит текст задом наперед:
alex@deb:~$ tac file.txt какой только пожелаем. вводить текст, И тут мы можем
Команда grep
Если Вам нужно что-то найти в тексте, то для этого используйте команду grep. Например, мы ищем строку в которой встречается слово «какой»:
alex@deb:~$ grep какой file.txt какой только пожелаем.
Команда less
Если текст длинный то вместо cat лучше использовать команду less:
alex@deb:~$ less /etc/ssh/sshd_config
Используя less мы можем кнопками вверх / вниз перемещаться по тексту:
Если нажать кнопу «/», то откроется строка, куда можно ввести фразу для поиска в этом файле. Давайте, например, найдём строку со словом «Port»:
При поиске удобно использовать кнопку «n» для дальнейшего поиска введенной фразы, и комбинацию «Shift+n» для поиска в обратном направлении (к началу файла). Для выхода из программы используйте клавишу»q«.
Команды tail и head
Если Вам нужно посмотреть последние строки файла используйте команду «tail«:
alex@deb:~$ tail /etc/ssh/sshd_config # override default of no subsystems Subsystem sftp /usr/lib/openssh/sftp-server # Example of overriding settings on a per-user basis #Match User anoncvs # X11Forwarding no # AllowTcpForwarding no # PermitTTY no # ForceCommand cvs server
А если нужно посмотреть первые строки файла то команду «head«:
alex@deb:~$ head /etc/ssh/sshd_config # $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $ # This is the sshd server system-wide configuration file. See # sshd_config(5) for more information. # This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin # The strategy used for options in the default sshd_config shipped with # OpenSSH is to specify options with their default value where # possible, but leave them commented. Uncommented options override the
Эти две команды выводят 10 последних (tail) или 10 первых (head) строк файла. И у этих команд есть параметр -n, с помощью которого можно указать сколько строк выводить, например выведем по 3 строки:
alex@deb:~$ tail -n 3 /etc/ssh/sshd_config # AllowTcpForwarding no # PermitTTY no # ForceCommand cvs server alex@deb:~$ head -n 3 /etc/ssh/sshd_config # $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $ # This is the sshd server system-wide configuration file. See
А ещё команда tail позволяет выводить изменяющиеся файлы, например логи. Для этого используется опция -f. Чтобы закончить наблюдение за файлом, нужно нажать комбинацию Ctrl+c.
Простой и правильный способ отредактировать системный файл 3 5
Рецепт был опубликован 10 октября 2012 года в 11:35, а менялся 10 февраля 2020 года в 03:31.
Редактировать системный файл лучше всего такой лаконичной командой:
$ sudo -e /etc/системный/файл
При выполнении команды будет автоматически вызван консольный текстовый редактор пользователя по умолчанию ($EDITOR). Это актуально и на незнакомых системах, т.к. не понадобится беспокоиться о наличии того или иного редактора в системе.
- Из той же серии:
- Правильное использование sudo при перенаправлении в файл
- Как узнать версию Linux и ядра?
- Как отключить автоматическое обновление списка пакетов в Ubuntu Linux?
- Что новенького?( )
- Управлять → Добавить рецепт
- Редактировать профиль
- Быстрые опцииБыстрые опции
- Включить визуальные эффекты
- Выключить визуальные эффекты
- Steck, 3 сентября в 12:32 → Перекличка17
- REDkiy, 8 июня в 9:09 → Как «замокать» файл для юниттеста в Python?2
- fhunter, 29 ноября в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt?6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON1
Экология и вегетарианство на благо всем живым существам Планеты.
При полном или частичном использовании любых материалов с сайта вы обязаны явным образом указывать гиперссылку на сайт www.nixp.ru в качестве источника.
- Добавить рецепт
- Мои рецепты
- Правила публикации
- Обратная связь
- Разработано в компании
- Идея и поддержка проекта — Дмитрий Шурупов