Стефан привел меня по правильному пути. Это будет работать на любой системе 12.04 и новее.
Вашей файловой системе также потребуется расширенная поддержка атрибутов. Если вы используете EXT4, все в порядке, если вы используете EXT3, вам необходимо убедиться, что ваша файловая система смонтирована с атрибутом user_xattr.
Вот как я настроил его на клиенте машине, вам не нужно ничего делать на стороне сервера.
Сначала установите демон пространства пользователя: sudo apt-get install cachefilesd Затем включите его, отредактировав /etc/default/cachefilesd и изменив строку выполнения на RUN=yes Убедитесь, что ваше крепление NFS в /etc/fstab имеет параметр fsc. Не забудьте перемонтировать его после внесения изменений. Вот мой отрывок (измените ваши потребности): 192.168.1.115:/home/jorge /home/jorge/Backup nfs fsc Запустите службу: sudo /etc/init.d/cachefilesd startКонфигурация кеша выполнена в /etc/cachefilesd.conf, см. Ссылки на параметры параметров.
Ссылки:
Журнал Linux /usr/share/doc/cachefilesd/howto.txt.gz /usr/share/doc/cachefilesd/README.gz Как включить расширенные атрибуты на ext4?Вы ищете luit, который предназначен для этой цели:
$ luit -encoding ISO-8859-1 ssh remote.host
Он преобразует вывод команды ssh в UTF-8, чтобы вы не Не нужно менять кодировку терминала.
Сначала отредактируйте текущие локали в вашем любимом редакторе
sudo gedit /var/lib/locales/supported.d/local на что-то вроде
en_GB.UTF-8 UTF-8
en_US.UTF-8 UTF-8
en_GB.ISO-8859-1 ISO-8859-1
en_US.ISO-8859-1 ISO-8859-1
Затем запустите sudo dpkg-reconfigure locales
Затем установите терминал с LANG=en_GB.ISO-8859-1
Надеюсь, что работает
Терминал Gnome использует gconf для сохранения настроек. К ним можно управлять с помощью gconftool. Итак, вы можете использовать:
gconftool --set --type=string /apps/gnome-terminal/profiles/Default/encoding ISO-8859-1
Я тестировал это 12.04. По какой-то причине меню ("Terminal"->"Set Character Encoding..."), похоже, не обновляется в реальном времени, но фактическая кодировка символов корректно обновляется.
Я не знаю, как его протестировать, но с Konsole на Kubuntu я могу сделать следующее:
1) Найти приложение, зарегистрированное на dbus
$ qdbus
Я использую konsole, поэтому простой qdbus | grep kons дает мне org.kde.konsole
2) Найти текущие сеансы в Konsole
$ qdbus org.kde.konsole | grep Sessions
/Sessions
/Sessions/1
$ set | grep -i sessions
KONSOLE_DBUS_SESSION=/Sessions/1
3) Найти полезные методы
$ qdbus org.kde.konsole /Sessions/1 | grep -i codec
method QByteArray org.kde.konsole.Session.codec()
method bool org.kde.konsole.Session.setCodec(QByteArray codec)
4) Проверить текущую кодировку
$ qdbus org.kde.konsole /Sessions/1 org.kde.konsole.Session.codec
UTF-8
5) Установить кодировку
$ qdbus org.kde.konsole /Sessions/1 org.kde.konsole.Session.setCodec ISO-8859-1
true
6) Проверить текущую кодировку
$ qdbus org.kde.konsole /Sessions/1 org.kde.konsole.Session.codec
ISO-8859-1
Ubuntu будет иметь аналогичная терминальная программа, но вам нужно будет немного озадачить себя правильными параметрами servicename, path, method и arguments.
Вот еще одно решение, которое я использовал для изменения профиля (для фона) при подключении к производственному серверу. Он включает в себя xdotool.
xdotool будет имитировать нажатия клавиш, необходимые для выбора нужного пункта меню. Сначала попробуйте с помощью вашей клавиатуры, затем запишите последовательность:
$ xdotool key alt+t Down c Down Return
Он активирует первую кодировку символов. Добавьте еще Down ключи до Return, чтобы выбрать другие.
Примечание: для ssh вы также можете использовать файл ~/.ssh/config для настройки псевдонимов на свои серверы.
В xterm измените кодировку с помощью управляющих последовательностей. Например, в bash вы получаете набор символов UTF-8, запустив:
echo -n $'\e%G'
Кодирование ISO 8859-1 доступно при запуске:
echo -n $'\e%@'