Как я могу удалить шрифты, которые я никогда не использую, из libreoffice и linux в целом?

Есть много дополнительных шрифтов, которые кажутся похожими и просто раздражают меня из выпадающего списка Могу ли я удалить их из системы?

24
задан 9 November 2012 в 14:46

8 ответов

Если вы установили шрифт с помощью кнопки установки, он, скорее всего, был просто скопирован в ~ / .fonts . Чтобы удалить его, просто откройте этот каталог, найдите шрифт и удалите файл.

3
ответ дан 9 November 2012 в 14:46

У вас есть несколько методов. Я могу перечислить 4...

1. Графический интерфейс

Сначала этой командой можно установить шрифтовой менеджер:

sudo aptitude install font-manager

Вы можете отключить (Так что не удаляйте! Отключение заставит их исчезнуть для вас, но другие пользователи этой системы все равно их увидят) шрифты отсюда. Вот как это выглядит:

enter image description here

2. Ручное удаление из Ubuntu Software Center

В качестве альтернативы найдите в Ubuntu Software Center шрифты и удалите их оттуда.

3. Удаление вручную как пакетов через командную строку

С помощью этой команды нельзя удалять английские шрифты:

sudo apt-get remove ttf-indic-fonts-core ttf-kacst-one ttf-khmeros-core ttf-lao ttf-punjabi-fonts ttf-takao-pgothic ttf-thai-tlwg ttf-unfonts-core ttf-wqy-microhei

Вот список всех пакетов шрифтов. Вы можете добавить имя пакета шрифтов к команде выше, чтобы включить их для удаления.

Если в какой-то момент вы удалите шрифт, который хотите вернуть, просто сделайте

 sudo apt-get install ttf-indic-fonts-core

И идентификационные шрифты будут переустановлены (в том числе измените имя пакета на то, что вам нужно).

4. Ручное удаление из командной строки

Кроме того, вы можете посмотреть на

/etc/fonts/fonts.conf

, чтобы увидеть, где хранятся шрифты. Обычно это будет в 1 из этих мест:

/usr/share/fonts
/usr/local/share/fonts
/home/$USER/.local/share/fonts
/home/$USER/.fonts

С правами администратора вы можете просто удалить их. Затем они должны исчезнуть из любого места.

23
ответ дан 9 November 2012 в 14:46

Это зависит от того, как вы установили шрифт.

Шрифт установлен в масштабе всей системы

Если он был установлен в масштабе всей системы (например, большинство шрифтов AFAIK), просто потяните Nautilus (файл Ubuntu manager) от имени пользователя root ( Alt + F2 , затем введите gksudo nautilus ) и перейдите в / usr / share / fonts / truetype .

enter image description here

затем

enter image description here

затем

enter image description here

Удалите файл и затем запустите sudo fc-cache -f -v в Терминале.

Выйдите из системы и снова войдите, и он должен быть удален.

Шрифт установлен только для вашего пользователя

Если он был установлен только для вас (вручную скопируйте и вставьте в пользователя ~ / .fonts или ~ / .local / share / fonts / ), то вы можете просто удалить шрифт из этих каталогов, выйти из системы и снова войти в систему.

И для полной уверенности выполните команду: locate --existing szNameOfFile , чтобы удалить все остальные экземпляры одного и того же файла, так что все вернулось на место!

Команды любезно предоставлены @Fabby в чате

8
ответ дан 9 November 2012 в 14:46

Для Ubuntu 16.04 многие незападные семейства шрифтов можно удалить, запустив этот команда в терминале:

sudo apt remove fonts-lao fonts-lklug-sinhala fonts-sil-abyssinica fonts-sil-padauk fonts-tibetan-machine fonts-thai-tlwg fonts-lohit-guru fonts-guru-extra

Чтобы диалоговое окно выбора шрифта выглядело еще менее загроможденным, семейство шрифтов математических символов Stix можно удалить:

sudo apt remove fonts-stix
3
ответ дан 9 November 2012 в 14:46

Если вы установили .ttf ядро ​​Microsoft fonts mscorefonts-installer через терминал ctrl + alt + t . Вы можете удалить его как:

sudo apt-get remove ttf-mscorefonts-installer
3
ответ дан 9 November 2012 в 14:46

Используйте инструмент fc-list в терминале, чтобы получить список файлов шрифтов. Посмотрите названия шрифтов и удалите файлы шрифтов, которые вам не нужны.

Если вы хотите отфильтровать некоторые шрифты, используйте

fc-list | grep -i Noto

, где Noto является частью имени шрифта, -i - ключ для игнорирования регистра при поиске.

1
ответ дан 9 November 2012 в 14:46

Самый верхний принятый ответ не работал у меня на Ubuntu 18.04 (Bionic Beaver). Очевидно, пакеты шрифтов изменили свои имена.

Я использовал это:

sudo apt purge fonts-kacst fonts-kacst-one \
fonts-khmeros-core fonts-lklug-sinhala \
fonts-lohit-guru fonts-guru fonts-nanum \
fonts-noto-cjk fonts-takao-pgothic \
fonts-tibetan-machine fonts-guru-extra \
fonts-lao fonts-sil-padauk fonts-sil-abyssinica \
fonts-tlwg-* && sudo apt autoremove
1
ответ дан 9 November 2012 в 14:46

Если вы хотите проверить, какие шрифты установлены в системах Debian / Ubuntu и производных, вы можете запустить эту команду:

echo `dpkg -l fonts\*|grep ii|awk '{print $2}'|grep -vE 'fonts-(noto$|liberation|dejavu|freefont|hack)'`

Эта команда ИСКЛЮЧАЕТ шрифты, которые вы хотите сохранить. Вы можете поместить их имена в круглые скобки regexp, разделенные | . Я исключил из этого списка такие имена пакетов, как fonts-noto (явно), все пакеты fonts-liberation и так далее. Список установленных пакетов может выглядеть следующим образом:

fonts-beng fonts-beng-extra fonts-deva fonts-deva-extra fonts-gargi fonts-gubbi fonts-gujr fonts-gujr-extra fonts-kacst fonts-kacst-one fonts-kalapi fonts-khmeros-core fonts-knda fonts-lohit-beng-assamese fonts-lohit-beng-bengali fonts-lohit-deva fonts-lohit-gujr fonts-lohit-knda fonts-lohit-mlym fonts-lohit-orya fonts-lohit-taml fonts-lohit-taml-classical fonts-lohit-telu fonts-mathjax fonts-mlym fonts-nakula fonts-nanum fonts-navilu fonts-noto-cjk fonts-noto-hinted fonts-noto-mono fonts-noto-unhinted fonts-opensymbol fonts-orya fonts-orya-extra fonts-pagul fonts-sahadeva fonts-samyak-deva fonts-samyak-gujr fonts-samyak-mlym fonts-samyak-taml fonts-sarai fonts-smc fonts-symbola fonts-takao-pgothic fonts-taml fonts-telu fonts-telu-extra fonts-tlwg-garuda fonts-tlwg-garuda-ttf fonts-tlwg-kinnari fonts-tlwg-kinnari-ttf fonts-tlwg-laksaman fonts-tlwg-laksaman-ttf fonts-tlwg-loma fonts-tlwg-loma-ttf fonts-tlwg-mono fonts-tlwg-mono-ttf fonts-tlwg-norasi fonts-tlwg-norasi-ttf fonts-tlwg-purisa fonts-tlwg-purisa-ttf fonts-tlwg-sawasdee fonts-tlwg-sawasdee-ttf fonts-tlwg-typewriter fonts-tlwg-typewriter-ttf fonts-tlwg-typist fonts-tlwg-typist-ttf fonts-tlwg-typo fonts-tlwg-typo-ttf fonts-tlwg-umpush fonts-tlwg-umpush-ttf fonts-tlwg-waree fonts-tlwg-waree-ttf fonts-wqy-microhei

Как видите, это довольно длинный список, но важно ИССЛЕДОВАТЬ его и удалить все ценные пакеты, которые могут в нем существовать. Затем этот список следует сохранить в файл, используя перенаправление файлов (> file ):

echo `dpkg -l fonts\*|grep ii|awk '{print $2}'|grep -vE 'fonts-(noto$|liberation|dejavu|freefont|hack)'` >  not-needed-font-packages.txt

Теперь, имея этот файл, вы всегда можете восстановить (установить заново) все пакеты, от которых вы избавитесь. Перед удалением ненужных пакетов, имена которых собраны в этом файле, вы должны выполнить следующую команду, которая проверит реакцию системы на эту потенциально разрушительную операцию:

sudo dpkg --remove --dry-run `cat not-needed-font-packages.txt`

Это проверит, какой пакет БУДЕТ удален. Поскольку пакеты шрифтов часто являются зависимостями от других пакетов, внимательно следите за списком, чтобы увидеть, не будут ли удалены некоторые дополнительные пакеты. Эта команда безопасна - она ​​выводит ТОЛЬКО то, что нужно сделать. Если есть какие-либо пакеты, такие как libreoffice или xreader, вам придется заставить систему удалить ТОЛЬКО указанные пакеты, что БУДЕТ нарушать целостность системы пакетов и может быть опасно. Тем не менее, мы собираемся удалить только некоторые пакеты шрифтов, чтобы не было никакого реального вреда.

Чтобы удалить ТОЛЬКО указанные пакеты и ИГНОРИРОВАТЬ все нарушенные зависимости и требования других установленных пакетов, выполните команду:

sudo dpkg --remove --force-all --dry-run `cat not-needed-font-packages.txt`

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

Чтобы окончательно удалить ненужные пакеты, удалите - dry-run и выполните последнюю команду:

sudo dpkg --remove --force-all `cat not-needed-font-packages.txt`

Обратите внимание, что в вашей системе ситуация может быть иной. На моей рабочей станции Polish Linux Mint 18.3 Cinnamon все указанные пакеты были удалены, и журнал выглядел следующим образом:

(Odczytywanie bazy danych ... 269043 pliki i katalogi obecnie zainstalowane.)
Usuwanie pakietu fonts-beng (2:1.2) ...
Usuwanie pakietu fonts-beng-extra (1.0-5) ...
Usuwanie pakietu fonts-deva (2:1.2) ...
Usuwanie pakietu fonts-deva-extra (3.0-3) ...

... lots of another lines like this...

Usuwanie pakietu fonts-lohit-taml-classical (2.5.3-2) ...
Usuwanie pakietu fonts-lohit-telu (2.5.3-1) ...
Usuwanie pakietu fonts-samyak-taml (1.2.2-4) ...
dpkg: fonts-noto-hinted: problemy z zależnościami, usuwanie według żądania:
 fonts-noto zależy od fonts-noto-hinted.

Usuwanie pakietu fonts-noto-hinted (20160116-1) ...
dpkg: fonts-opensymbol: problemy z zależnościami, usuwanie według żądania:
 libreoffice-core zależy od fonts-opensymbol.
 libreoffice-math zależy od fonts-opensymbol.

Usuwanie pakietu fonts-opensymbol (2:102.7+LibO5.1.4-0ubuntu1) ...
dpkg: fonts-symbola: problemy z zależnościami, usuwanie według żądania:
 ttf-ancient-fonts-symbola zależy od fonts-symbola.

Usuwanie pakietu fonts-symbola (2.59-1) ...
dpkg: fonts-mathjax: problemy z zależnościami, usuwanie według żądania:
 libjs-mathjax zależy od fonts-mathjax (>= 2.6.0~).

Usuwanie pakietu fonts-mathjax (2.6.1-1) ...
Przetwarzanie wyzwalaczy pakietu fontconfig (2.11.94-0ubuntu1.1)...

После этого у меня есть система ТОЛЬКО с шрифтами, которые мне нравятся. Вы можете проверить, какие пакеты шрифтов остались, используя эту команду:

dpkg -l fonts\*|grep ^ii|awk '{print $2}'

Результат:

fonts-dejavu
fonts-dejavu-core
fonts-dejavu-extra
fonts-freefont-ttf
fonts-hack-ttf
fonts-liberation
fonts-noto

Чтобы обновить кеш шрифтов, чтобы приложения перестали отображать удаленные шрифты, выполните

fc-cache -fv
4
ответ дан 9 November 2012 в 14:46

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

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