Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
chce napisać skrypt jak w tytule
ma on za zadanie prawidlowo konfigurowac xorg w zaleznosci od uruchomionej karty
cos w stylu:
if lspci | grep VGA = nvidia then cp /etc/X11/10-nvidia.conf /etc/X11/xorg.conf.d/ else rm /etc/X11/xorg.conf.d/10-nvidia.conf fi
teraz jest :
lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
po przelaczeniu karty w bios-ie na discrete (nvidia) jest:
lspci | grep VGA 01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [NVS 5400M] (rev a1)
a krócej na potrzeby skryptu:
lspci | grep VGA | awk '{print $1}' 01:00.0
ls -al /etc/X11/*.conf -rw-r--r-- 1 root root 2342 Jan 29 15:59 /etc/X11/05-qxl.conf -rw-r--r-- 1 root root 181 Jan 6 13:09 /etc/X11/10-keymap.conf -rw-r--r-- 1 root root 478 Feb 14 14:25 /etc/X11/10-nvidia.conf -rw-r--r-- 1 root root 247 Jan 13 14:11 /etc/X11/20-intel.conf ls -al /etc/X11/xorg.conf.d/*.conf -rw-r--r-- 1 root root 181 Jan 6 13:09 /etc/X11/xorg.conf.d/10-keymap.conf -rw-r--r-- 1 root root 247 Jan 13 14:11 /etc/X11/xorg.conf.d/20-intel.con
Ostatnio edytowany przez pink (2016-02-15 14:54:36)
Offline
nie bardzo wiem o co Ci biega...
zauważyłeś może, że grep bardzo ślicznie obsługuje regexpy?
jeśli o to chodzi to
lspci | grep 'VGA.*nvidia'
rozwiązuje problem.
jeśli nie to wyjaśnij dokładnie z czym masz problem.
Offline
porostu nie wiem jak napisać taki skrypt???
Offline
no to w takm razie nie dziala prawidlowo bo tylko usuwa plik 10-nvidia.conf
mysle ze to powinno byc cos w stylu
if true then
gpu=`lspci | grep 'VGA.*NVIDIA'` if [ "$gpu" = "NVIDIA" ] then cp /etc/X11/10-nvidia.conf /etc/X11/xorg.conf.d/ else rm /etc/X11/xorg.conf.d/10-nvidia.conf fi
sorry ale naprawde jestem kiepski w tym temacie cos tam dzwoni po glowie ale zebrac tego do kupy nie potrafie
chyba jednak potrafie ;-):
#!/bin/bash ##lspci | grep ##cp /etc/X11/10-nvidia.conf /etc/X11/xorg.conf.d/ ##rm /etc/X11/xorg.conf.d/10-nvidia.conf gpu=`lspci | grep 'VGA.*NVIDIA'` ok="$?" if [ "$ok" -eq 0 ] then cp /etc/X11/10-nvidia.conf /etc/X11/xorg.conf.d/ else rm /etc/X11/xorg.conf.d/10-nvidia.conf fi
DZIEKI
jeszcze sprawdzę po restarcie
Ostatnio edytowany przez pink (2016-02-15 16:09:33)
Offline
czyli pierwsza wersja powinna działać (lspci z grepem bezpośrednio w ifie) - niepotrzebnie wprowadzasz dodatkowe zmienne/polecenia.
możesz za grepem dać
>/dev/null 2>&1
żeby śmieci nie wyświetlał.
Offline
masz racje dziala.
jeszcze jena rzecz mnie zastanawia jak nie mialem zainstalowanych sterownikow nvidii
to na tym configu dla intela
Section "Device" Identifier "Intel Graphics" Driver "intel" Option "AccelMethod" "glamor" #Option "DRI" "2" Option "TearFree" "true" EndSection Section "Module" Load "glx" EndSection
akceleracja dzialala
natomiast po instalacji nvidii dziala ale tylko na karcie nvidia natomiast na intel juz nie zastanawiam sie dla czego i czy nie da sie tego jakosc obejsc
podejrzewam ze moze to miec zwiazek z roznymi bibliotekami libGL
Ostatnio edytowany przez pink (2016-02-15 17:50:11)
Offline
2730
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:34:50)
Offline
czyli narazie takie zachowanie to standard
czy nie dalo by sie tego obejsc podobnie jak z tym xorgiem trzymac gdzies ta druga biblioteke i wrazie potrzeby kopiowac w odpowiednie miejsce???
Ostatnio edytowany przez pink (2016-02-15 18:44:47)
Offline
Wersje pliku libGL.so (nvidia albo mesa) można przełączać za pomocą
update-alternatives --config glx
i spośród 2-3 opcji wybrać mesa-diverted (dla karty Intel) lub nvidia (dla karty nvidii). Mógłbyś to dodać do skryptu, ale musiałbyś popracować nad automatycznym wybieraniem opcji (bez ingerencji użytkownika).
Offline
BusID "bus-id"
This specifies the bus location of the graphics card. For PCI/AGP cards, the bus-id string has the form PCI:bus:device:function (e.g., "PCI:1:0:0" might be appropriate for an AGP card). This field is usually optional in single-head configurations when using the primary graphics card. In multi-head configurations, or when using a secondary graphics card in a single-head configuration, this entry is mandatory. Its main purpose is to make an unambiguous connection between the device section and the hardware it is representing. This information can usually be found by running the Xorg server with the -scanpci command line option.[/quote]
Możesz poczytać też inne fragmenty dokumentacji.
Offline
Time (s) | Query |
---|---|
0.00011 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00091 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.218.38.67' WHERE u.id=1 |
0.00071 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.218.38.67', 1732569411) |
0.00039 | SELECT * FROM punbb_online WHERE logged<1732569111 |
0.00054 | SELECT topic_id FROM punbb_posts WHERE id=297564 |
0.00101 | SELECT id FROM punbb_posts WHERE topic_id=28283 ORDER BY posted |
0.00057 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=28283 AND t.moved_to IS NULL |
0.00012 | SELECT search_for, replace_with FROM punbb_censoring |
0.00130 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=28283 ORDER BY p.id LIMIT 0,25 |
0.00078 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=28283 |
Total query time: 0.00648 s |