Насколько я знаю
Насколько я знаю, KDE использует kbuildsycoca4 для создания кэша меню KDE. Затем средства запуска используют кеш для поиска и запуска программ.
Поиск ... «обновить меню kde» -> https://bbs.archlinux.org/viewtopic.php?id=64514
Если меню KDE не обновляется автоматически вы можете попытаться запустить kbuildsycoca4 из Konsole.
:~$ kbuildsycoca4 --help
Usage: kbuildsycoca4 [Qt-options] [KDE-options] [options]
Rebuilds the system configuration cache.
Generic options:
--help Show help about options
--help-qt Show Qt specific options
--help-kde Show KDE specific options
--help-all Show all options
--author Show author information
-v, --version Show version information
--license Show license information
-- End of options
Options:
--nosignal Do not signal applications to update
--noincremental Disable incremental update, re-read everything
--checkstamps Check file timestamps
--nocheckfiles Disable checking files (dangerous)
--global Create global database
--menutest Perform menu generation test run only
--track Track menu id for debug purposes
Пусковые установки
В KDE имеется множество пусковых установок: http://www.kubuntuforums.net/showthread.php?59851-KDE-Application-Launchers .
Mangonel рекламируют:
Mangonel, простой запуск приложений для KDE4.
Mangonel предназначен для замены легковесного, на мой взгляд, раздутого и медленного стандартного KRunner ...
blockquote>Mangonel доступен в репозиториях Ubuntu: http://packages.ubuntu.com/search?keywords=mangonel&searchon=names&suite=all§ion=all [ 1113]
Посмотрите на ответ Майка Шульца .
Ubuntu по умолчанию не кэширует dns-записи, поэтому, если вы не установили dns-кеш, очищать нечего.
DNS-записи, вероятно, кэшируются DNS-серверами вашего провайдера, поэтому, если вы хотите проверить, были ли внесенные вами изменения DNS успешными, вы можете запросить DNS-сервер из службы хостинга вашего домена с помощью dig:
dig -t a ns1.myhostingcompany.com @domain_registrar_dns_server
Если вы хотите, чтобы Ubuntu запускала кэширование DNS, я рекомендую установить pdnsd
вместе с resolvconf
. nscd
глючит и не рекомендуется.
Ubuntu 12.04 использует dnsmasq
, который встроен в network-manager
, но он не кэширует днс, поэтому нет необходимости сбрасывать Это. Вот пример строки из моего syslog
, чтобы доказать эту точку:
dnsmasq[2980]: started, version 2.59 cache disabled
Также нет необходимости в какой-либо конфигурации dnsmasq
. Если вы работаете со стандартными настройками, он не будет кэшировать dns, так как для этого вам нужно явно настроить его, как описано в статье Ubuntu .
Если вы хотите обновить свои настройки, вы можете отключить, а затем включить сетевое подключение или запустить
sudo service network-manager restart
Это перезапустит dnsmasq
, поскольку оно встроено в network-manager
; проверьте ваши syslog
на доказательства этого.
Если вы используете проводное соединение с dhcp, network manager
будет принимать настройки прямо с вашего роутера, и ваше соединение будет автоматически установлено при входе в Ubuntu. Вы можете проверить правильность настроек вашего роутера, если получите доступ к нему через веб-интерфейс, и, возможно, перезагрузите его, если это необходимо. Если это общая проблема с DNS, вы можете попробовать использовать Google DNS вместо ISP DNS, и более подробную информацию об этом подробно описано здесь .
Начиная с Ubuntu 17.04 и далее, systemd-разрешения используется для DNS. Вы можете очистить кэши systemd следующим образом:
sudo systemd-resolve --flush-caches
sudo systemd-resolve --statistics
– Servy
10.05.2018, 21:24
systemctl restart systemd-resolved.service
действительно также работал над 18,04.
– Erik Funkenbusch
08.05.2019, 22:04
Ubuntu 12.04 выполняет кеширование DNS с помощью dnsmasq (см. man dnsmasq
). Используйте следующее, чтобы очистить кеш:
sudo kill -HUP $(pgrep dnsmasq)
sudo /etc/init.d/nscd restart
http://www.ubuntugeek.com/howto-clearflush-dns-cache-in-ubuntu.html
Также в качестве обратите внимание, что вы можете проверить и узнать, распространились ли ваши изменения DNS, используя dig и глядя на кого-то, кроме ваших DNS-серверов по умолчанию. В этом случае Google DNS.
dig @8.8.8.8 example.com
Обратите внимание, что Ubuntu использует systemd-resolv начиная с 17.04 и далее, поэтому этот ответ больше не применяется к последним версиям Ubuntu. См. « сбросить кэш DNS в Ubuntu 17.04 и выше (18.04) »
Чтобы подтвердить тем или иным образом, кэширует ли dnsmasq
, запустите ps ax | grep dnsmasq
и посмотрите на команду running. Вот разбивка моей машины по умолчанию 13.10:
/usr/sbin/dnsmasq \ --no-resolv \ --keep-in-foreground \ --no-hosts \ --bind-interfaces \ --pid-file=/var/run/NetworkManager/dnsmasq.pid \ --listen-address=127.0.1.1 \ --conf-file=/var/run/NetworkManager/dnsmasq.conf \ --cache-size=0 \ --proxy-dnssec \ --enable-dbus=org.freedesktop.NetworkManager.dnsmasq \ --conf-dir=/etc/NetworkManager/dnsmasq.d
/etc/NetworkManager/dnsmasq.d
пусто по умолчанию. Таким образом, здесь нет никаких переопределений, и просто проверить --cache-size=0
означает, что мы думаем, что это означает (вместо неограниченного кэша), man dnsmasq
показывает:
-c, --cache-size=<cachesize>
Set the size of dnsmasq's cache. The default is 150 names.
Setting the cache size to zero disables caching.
[1133 ] Таким образом, хотя dnsmasq
может кэшировать DNS, он не кэшируется из коробки. Вы можете проверить свою машину и различные каталоги конфигурации, чтобы убедиться, что вы находитесь на одной странице.
Если вы видите проблемы с кешем, это, вероятно, происходит в одном из нескольких мест:
Я здесь очищаю ствол, но, возможно, вы установили нестандартный DNS-сервер в Ubuntu вместо того, чтобы включить кэширование в dnsmasq
. Их много: nscd
, DJBDNS dnscache
(он же TinyDNS), pdns
, pdnsd
, Bind9 (и его варианты) и многое другое, что я даже не могу вспомнить. Они , вероятно, будут подтверждены в /etc/resolv.conf
(с конфигурацией в / etc / resolvconf / `для автоматического создания этого файла). Ниже показан локально перехваченный DNS-запрос:
$ nslookup askubuntu.com
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
Name: askubuntu.com
Address: 198.252.206.24
Если вы не используете 8.8.8.8 (или что-то еще, что вы ожидаете от DNS-сервера), проверьте, что вы нажимаете. В моем случае я вижу, что это просто dnsmasq
, настроенный для зеркалирования DNS-запросов назад для LXC, но в вашем случае это может приводить к плохим кешированию.
Если вы выполнили перечисленные кеши, процесс очистки каждого из них различается:
sudo /etc/init.d/nscd reload # nscd
sudo /etc/init.d/named restart # bind9
В слегка связанной заметке см. Это, чтобы включить кэширование в dnsmasq
.
Лично я бы использовал OpenDNS и использовал их функцию проверки кэша для принудительного обновления, просто чтобы убедиться, что изменения работают, но вы не можете гарантировать ] они обновятся для ваших пользователей в течение 48 часов.
DNS медленный зверь. Терпение будет держать вас в здравом уме.
Если вы используете nscd:
sudo /etc/init.d/nscd restart
Стоит отметить, что это может быть не та ОС, которая его кеширует. Каждый любит кэшировать DNS ... Некоторые тесты:
Проверьте, является ли это новый или старый IP. Большинство браузеров также кэшируют DNS, поэтому, если вы еще не перезапустили Chromium или что-то еще, чего вы не видели в последних версиях.
ping yourdomain.com
Переключите свой локальный сервер имен в /etc/resolv.conf на другого провайдера, Google или уровень, примеры:
nameserver 8.8.8.8
nameserver 4.2.2.2
, а затем снова пингуйте.
Убедитесь, что ваш маршрутизатор не кэширует DNS в любой форме. (Зависит от роутера / прошивки / и т.д.)
Наконец, терпение. DNS может занять немного времени для распространения по Интернету.
Все ответы, приведенные выше, забыли одну важную вещь в разрешении имен: обычно DNS-серверы, для которых вы запрашиваете разрешение имен, не являются теми, которые содержат сами записи (авторитетный сервер). Поскольку каждая запись DNS имеет значение Time To Live, которое обязывает каждый DNS-сервер в цепочке разрешений выполнять кэширование в течение количества секунд, указанного в этом значении. Таким образом, вы можете не только кэшировать данные на своей машине, но, безусловно, результат поиска имени будет кэширован где-то на сервере, который вы не контролируете.
Единственное решение, которое должно быть немедленно уведомлено об изменении записи имени, - это использовать значение TTL 0 при создании / обновлении записи на полномочном сервере имен. Но это означает, что для каждого разрешения имени сервер будет работать, как правило, это не разрешено регистраторами. Например, они могут предоставить список предопределенных значений TTL, которые вы можете выбрать.
Я управляю разными доменными именами и, чтобы быть уверенным в том, что изменения хорошо применяются на авторитетных серверах имен, я использую инструмент под названием dnstracer
, который может отображать результаты поиска на каждом сервере из корня DNS. [113 ]
В заключение, даже без какого-либо решения для кэширования DNS все равно будет задержка между моментом изменения записей DNS и изменением, которое будет видно на ПК. Эта задержка в значительной степени зависит от TTL записей и от количества DNS-серверов между вашим ПК и официальным сервером имен.
Для Ubuntu 14.04 я рекомендую эту команду:
sudo service dns-clean
Я также нашел противоречия, но это: https://superuser.com/a/521562 работа для меня (Ubuntu 13.10 с последними обновлениями, специальные сетевые пакеты не установлены).
Короче говоря, просто используйте это
sudo /etc/init.d/dns-clean
Я рекомендую openDNS специально для удаленных серверов Ubuntu, это облегчает боль ...
Как это сделать? Ну ...
cd /etc/dhcp
sudo nano dhclient.conf
вставить эту ДО строку «request subnet-mask ...»
supersede domain-name-servers 208.67.222.222,208.67.220.220;
, это перезапустит интерфейс так быстро, что вы даже не потеряете свой SSH-соединение
sudo ifdown eth0 && sudo ifup eth0
проверьте это, чтобы увидеть, правильно ли установлены ваши новые openDNS
cat /etc/resolv.conf
Я использовал следующую команду для очистки dns-кеша на моем 12.10-ом Ubuntu-боксе, и это работало фантастически.
sudo kill -HUP $(pgrep dnsmasq)
Другим полезным сигналом является SIGUSR1, который выдает небольшую статистику в системный журнал или, как это указано в man dnsmasq
:
В режиме --no-daemon или когда включено полное ведение журнала (-q), сделан полный дамп содержимого кэша.
BLOCKQUOTE>
В Ubuntu 16.04 я не смог очистить кеш, если не сделал: