Это ноутбук Lenovo с переключаемой (Intel )графикой (hostname thinkpad )? Если это так, может помочь, если вы опубликуете свою модель и версию биоса.
Глава 17. Использование драйвера NVIDIA с ноутбуками Optimus
The driver may be installed normally on Optimus systems, but the NVIDIA X driver and the NVIDIA OpenGL driver may not be able to display to the laptop's internal display panel unless a means to connect the panel to the NVIDIA GPU (for example, a hardware multiplexer, or "mux", often controllable by a BIOS setting) is available. On systems without a mux, the NVIDIA GPU can still be useful for offscreen rendering, running CUDA applications, and other uses that don't require driving a display.
У вас подключено 4 монитора (DFP -1, DFP -2, DFP -4, DFP -5, перечисленных в вашемXorg.0.log
)? Сколько у вас дисплеев и как их настроить?
Глава 12. Настройка нескольких устройств отображения на одном экране X
If multiple X screens are configured on the GPU, the NVIDIA X driver will attempt to reserve display devices and GPU resources for those other X screens (honoring the "UseDisplayDevice" and "MetaModes" X configuration options of each X screen) and then allocate all remaining resources to the first X screen configured on the GPU.
Если вы собираетесь использовать несколько устройств на одном X-экране (Xinerama отключена с помощью Option "Xinerama" "0"
и MetaModes
определены ), пробовали ли вы Option "UseDisplayDevice" "string"
в своем xorg.conf
? С помощью этой опции вы можете указать устройства (и ), которые будут использоваться для X.
Пример:
Option "UseDisplayDevice" "DFP-2, DFP-3"
Также проверьте правильность ваших MetaModes
(или удалите их ). Разве это не должно быть DFP -1, DFP -2, DFP -4, DFP -5 вместо DP -0, HDMI -0, HDMI -1, HDMI -2? Я не уверен, может ли такое быть и откуда берутся эти настройки. Может они и в полном порядке, но в ссылке выше еще и настройки описывают типа "DFP-0: nvidia-auto-select {...}
.
Option metamodes DP-0: nvidia-auto-select +3000+420,
HDMI-0: nvidia-auto-select +4920+420,
HDMI-1: nvidia-auto-select +0+0 {rotation=right},
HDMI-2: nvidia-auto-select +1080+420;
...
...
В вашем лог-файле должна быть строка типа "(II) NVIDIA(0): Display device(s) assigned to X screen 0:
", но она отсутствует (, а "Valid display device(s)
" присутствует ). См. Приложение C. Отображение имен устройств .
Если у вас несколько мониторов, попробуйте сначала запустить один из них.
Я думаю, что есть несколько проблем с вашей оболочкой, а также с вашим awk
кодом.
Во-первых, всегда заключайте код awk
в одинарные кавычки, как в awk '<commands>'
. В противном случае могут возникнуть странные эффекты, такие как оболочка , интерпретирующая операторы $<...>
.
Во-вторых, ваш синтаксис выглядит неправильно в нескольких местах:
if ($i !~ /^(.... )$/) {... }
if
отсутствует. В-третьих, вы также должны удвоить -подстановки команд в кавычках в сценариях оболочки.
Пересмотренный awk
код будет
awk -F '/' '{for (i=NF; i>0; i--) {if ($i !~ /^(NewConfig|[Oo]ld|[Bb]ackup|Servers)$/) {print $i; exit}}}'
А для вызова из скрипта используйте
Filtered_File="$( echo "$File" | awk -F '/' '.... ')"
Обратите внимание, что эта последняя часть будет работать только внутри скрипта из-за конструкции !~
. При выполнении в строке команды -по крайней мере bash
попытается выполнить расширение истории команд перед запуском вспомогательной оболочки -, используемой для подстановки команды -, что приводит к сообщению об ошибке.