
У меня сложная проблема с несколькими мониторами в KDE (Kubuntu). У меня есть ноутбук, который дома подключен к двум мониторам - VGA и HDMI. Это работает только когда встроенный дисплей ноутбука отключен (по крайней мере, мне так сказали).
Проблема в том, что теперь я убрал ноутбук и загрузил его без подключенных внешних мониторов. Система помнит, что встроенный дисплей был отключен, поэтому она отключает его, хотя это единственный подключенный монитор. Очевидно, что это делает ноутбук практически бесполезным. Переключение на терминал через ++ Ctrlработает , я могу войти в систему; даже гостевой режим работает нормально.AltF#
Вопрос в том, как мне (сбросить) настройки монитора учетной записи через терминалы, если я не могу использовать графический интерфейс?
Спасибо
решение1
Команда xrandr -s 0
должна сбросить ваши дисплеи в терминале. Подробнее можно узнать на следующем сайте или man xrandr
в терминале.
https://linuxacademy.com/blog/linux/solution-resetting-your-screen-resolution-with-xrandr/
решение2
Всякий раз, когда я укладываю свой ноутбук Lubuntu в спящий режим, когда он исключительно отображает мой телевизор, и пробуждаю его после отключения от сети, я получаю черный экран, потому что назначено неправильное разрешение. Та же проблема, что и у вас, мне нужно установить разрешение из виртуального терминала TTY1, до которого я могу добраться с помощью Ctrl-alt-F1, но xrandr, похоже, не работает. Я просмотрел страницы результатов поиска Google, прежде чем нашел решение, поэтому я решил поделиться.
Главное, что xrandr, по-видимому, работает только на текущем сфокусированном дисплее. Поэтому вам придется добавить команду sleep перед командой xrandr, чтобы дать вам время переключиться обратно на X-сервер с помощью Ctrl-alt-F7, чтобы команда была выполнена там. В противном случае вы получите ошибку типа xrandr: Configure crtc 0 failed
.
- Откройте виртуальный терминал с помощью Ctrl-alt-F1 и войдите в систему.
Чтобы получить имена подключенных экранов (и предполагая, что ваш X-сервер работает на :0
):
$xrandr -d :0
Чтобы изменить настройки дисплея:
$sleep 5; xrandr --output LVDS1 --auto -d :0
Замените LVDS1 на выход, который вы хотите изменить, а --auto — на любые параметры xrandr, которые вы хотите использовать.
- Переключитесь на X-сервер с помощью сочетания клавиш Ctrl-alt-F7 до истечения времени задержки, установленного в команде выше.
ОБЯЗАТЕЛЬНО должен быть способ сделать это лучше. Но он работает.
Первоисточник решения:http://www.lgqyc.com/server-14-04-3-lts-display-orientation/
Проверьте этот комментарийдля возможного улучшения моего решения (сам не проверял).
решение3
Хороший вопрос. Немного сложно ответить, но попробую.
Основной ответ
На самом деле есть немноговозможность сброса включена в X11. Вы можете найти его по адресу /etc/X11/Xreset
. Вы можете использовать каталог Xreset ( Xreset.d
), чтобы вставить скрипт, который автоматически запускается при выходе пользователя из системы. Файл README:
# Scripts in this directory are executed as root when a user log out from
# a display manager using /etc/X11/Xreset.
# The username of the user logging out is provided in the $USER environment
# variable.
Таким образом, вы можете а) добавить скрипт сброса /etc/X11/Xreset.d
и б) сделать скрипт, прикрепленный к лаунчеру, который настраивает ваши два внешних дисплея. Таким образом, вы выйдете из системы, и все вернется к норме, вы войдете в свой ноутбук, нажмете на лаунчер для дисплеев и будете наслаждаться жизнью.
Больше информации
Вы можете рассмотреть
sudo dpkg-reconfigure -phigh xserver-xorg
возможность сброса настроек xserver или (вероятно, лучше взглянуть наотвечать(Мик предложил в комментариях).Парень из SuSE написал хорошийстатьяо Х.
В решенномотчет об ошибкекто-то заявляет:
Администраторы могут помещать скрипты в /etc/X11/Xreset.d/ для запуска после выхода пользователя из системы.
Вот содержимое файла:
Вы можете найти его в своей системе.
#!/bin/sh
#
# /etc/X11/Xreset
#
# global Xreset file -- for use by display managers
# $Id: Xsession 967 2005-12-27 07:20:55Z dnusinow $
set -e
PROGNAME=Xreset
SYSSESSIONDIR=/etc/X11/Xreset.d
if [ ! -d "$SYSSESSIONDIR" ]; then
# Nothing to do, exiting
exit 0
fi
# use run-parts to source every file in the session directory; we source
# instead of executing so that the variables and functions defined above
# are available to the scripts, and so that they can pass variables to each
# other
SESSIONFILES=$(run-parts --list $SYSSESSIONDIR)
if [ -n "$SESSIONFILES" ]; then
set +e
for SESSIONFILE in $SESSIONFILES; do
. $SESSIONFILE
done
set -e
fi
exit 0
# vim:set ai et sts=2 sw=2 tw=80:
решение4
Одна вещь, о которой я еще не упомянул, но которая может быть критичной: если вы используетеThinkpadноутбук, решение будет простым: Fn+ F7. Если вы используете ноутбук другого производителя, то, скорее всего, будет какая-то другая клавиша типа Fn, которая будет переключать выходы дисплея/экрана (например, проектор, внешний монитор, внутренний дисплей; зеркало, вкл./выкл. и т. п.) на уровне BIOS (я предполагаю -Редактировать: ВидетьКак работают клавиши Fn?для получения более подробной информации об этом).
Так что не было бы необходимости что-либо сбрасывать в Linux, так сказать.