Можно ли управлять общим количеством потоков для каналов многопоточных команд?

.bashrc - это сценарий оболочки , который Bash запускается всякий раз, когда он запускается в интерактивном режиме. Он инициализирует интерактивный сеанс оболочки. Вы можете поместить в этот файл любую команду, которую вы можете ввести в командной строке.

Здесь вы помещаете команды для настройки оболочки для использования в вашей конкретной среде или для настройки вещей в соответствии с вашими предпочтениями. Обычно в .bashrc помещают псевдонимы , которые должны быть всегда доступны.

.bashrc запускается каждый запуск интерактивной оболочки. Если вы скажете:

$ bash ; bash ; bash

, а затем трижды нажмете Ctrl-D , .bashrc запустится три раза. Но если вы вместо этого скажете:

$ bash -c exit ; bash -c exit ; bash -c exit

, тогда .bashrc не будет запускаться вообще, поскольку -c делает вызов Bash не интерактивным. То же самое верно и при запуске сценария оболочки из файла.

Контраст .bash_profile и .profile , которые запускаются только при запуске новой оболочки входа в систему. ( bash -l ) Вы выбираете, будет ли команда идти в .bashrc vs .bash_profile в зависимости от того, хотите ли вы, чтобы он запускался один раз или при каждом запуске интерактивной оболочки.

В качестве контрпримера к псевдонимам, которые я предпочитаю помещать в .bashrc , вы хотите внести изменения в PATH в .bash_profile , поскольку эти изменения обычно не являются идемпотентными :

export PATH="$PATH:/some/addition"

Если вместо этого вы поместите это в .bashrc , каждый раз, когда вы запускаете интерактивную под-оболочку, : / some / add снова будет прикреплен к концу PATH , создавая дополнительную работу для оболочки, если вы ошибетесь при вводе команды.

Вы получаете новую интерактивную оболочку Bash всякий раз, когда выполняете оболочку из vi , например, с помощью : sh .

2
11.02.2019, 20:05
4 ответа

Часть search fios-router.home— это последний разрешимый домен, то есть ваш маршрутизатор (iirc Verizon ).

127.0.0.53 — это IP-адрес сервера имен, поэтому ваше предположение верно.

2
27.01.2020, 21:49

Да, первая часть указывает, что ваша система ожидает, что DNS-сервер будет прослушивать localhost, в данном случае конкретно 127.0.0.53.

Вторая часть представляет собой путь поиска, который добавляется ко всем поискам, не заканчивающимся точкой (.). Если вы запустите, например, ssh blah, DNS сначала попытается найти blah, а затем попытается найти blah.fios-router.home.

3
27.01.2020, 21:49

/etc/resolv.conf — это основной файл конфигурации для DNS-клиента , поэтому его наличие не означает, что вы используете DNS-сервер .

Его основная цель — перечислить IP-адреса DNS-серверов, в вашем случае:

nameserver 127.0.0.53

  • Записи типа nameserverсообщают хосту, какой DNS-сервер использовать.
  • Запись типа domain(, если она присутствует ), сообщает системе, в каком домене она находится. Это позволяет обращаться к ней по имени хоста. (Дополнение в ответ на комментарий :Имя хоста — это имя компьютера в сети. Во многих системах вы можете увидеть имя хоста в командной строке; если нет, вы можете найти его с помощью команды hostname.)
  • Запись типа search(, если она присутствует ), позволит компьютерам из разных доменов обращаться друг к другу по соответствующим именам хостов.

В настоящее время файл обычно создается NetworkManager(, например, в моей системе файл начинается с комментария «Сгенерировано NetworkManager» )или systemd-resolved.

systemd-resolved

is a system service that provides network name resolution to local applications. It implements a caching and validating DNS/DNSSEC stub resolver, as well as an LLMNR and MulticastDNS resolver and responder.

Также, согласно systemd -справочной странице , адрес 127.0.0.53является «локальным прослушивателем-заглушкой DNS». На связанных сайтах Stack Exchange были вопросы о том, как это изменить, поскольку файл /etc/resolv.confсоздается автоматически. См., например,

5
27.01.2020, 21:49

resolv.confявляется частью стандартного способа преобразования имени хоста в IP-адрес. Это часть библиотеки распознавателя.

Существуют разные способы разрешения имени хоста:

  • файлы (конкретно:/etc/hosts)
  • днс
  • NIS, NIS+ или yp

Последовательность их использования приведена в /etc/nsswitch.conf. Обычно это говорит

hosts:      files dns

, что означает, что библиотека распознавателя сначала ищет в /etc/hostsи, если она не может найти ее там, будет использовать DNS.

Теперь DNS будет запрашивать DNS-сервер. Какой из них определяется /etc/resolv.conf. Кроме того, существует ряд дополнительных параметров, которые можно использовать для помощи в разрешении DNS, из которыхsearch(Сначала попробуйте этот домен для хоста ), вероятно, чаще всего используется.

1
27.01.2020, 21:49

Теги

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