Роман Теличко

Заметки веб-разработчика/админа

Как установить драйвер видеокарты ATI Radeon в Ubuntu 13.04

// 30 августа, 2013 | 23728 просмотров | комментариев (0)

Сегодня я расскажу как установить проприетарный драйвер от ATI на видеокарту ATI Radeon в Ubuntu 13.04.

Для начала нам необходимо скачать свежие драйвера с официального сайта.
Вот ссылка для ленивых: https://support.amd.com/us/gpudownload/Pages/index.aspx

Поскольку у меня система 64-битная, в последнем дропдауне я выбрал Linux x86_64.
В итоге нас отправили на страницу скачивания AMD Catalyst™ 13.4 Proprietary Linux x86 Display Driver.
Скачиваем и распаковываем ZIP-архив.

Ещё нам необходимо установить зависимые пакеты

# sudo apt-get install ia32-libs debhelper dh-modaliases execstack lib32gcc1 libc6-i386 dkms libqtgui4

А также нужно удалить пакет xserver-xorg-video-radeon, т.к. он будет «мешать»

# sudo apt-get remove --purge xserver-xorg-video-radeon

Мы готовы к инсталляции.
Устанавливаем права на выполнение скачанного нами RUN-файла

# chmod +x amd-driver-installer-catalyst-*.run

Запускаем процесс сборки DEB-пакетов fglrx

# sudo ./amd-driver-installer-catalyst-*.run --buildpkg Ubuntu/raring
# sudo dpkg -i fglrx*.deb

Если пакеты успешно установлены, далее нам необходимо сгенерировать новый /etc/X11/xorg.conf файл.

Запускаем его генерацию так:

# sudo aticonfig --initial -f

В случаe, если у вас две видеокарты, тогда вам ещё нужно сделать так
ВАЖНО! Не запускайте эту строчку, если у вас видеокарты в режиме CrossFire

# sudo aticonfig --initial -f --adapter=all

В случаe двух мониторов вам нужно сделать вот так:

# sudo aticonfig --initial -f
# sudo aticonfig --set-pcs-str="DDX,EnableRandR12,FALSE"

Указываем системе на изменения файла /etc/X11/xorg.conf явно. Это важная строчка, без которой система просто не будет знать о том, что вы изменили этот конфигурационный файл.

# sudo aticonfig --input=/etc/X11/xorg.conf --tls=1

Перезагружаемся уже с новыми конфигами.

# reboot

Если вы дошли до графической среды — скорее всего вы всё сделали правильно.
Проверим это с помощью информационной утилиты fglrxinfo.

# fglrxinfo

Ответ должен быть каким-то таким:

display: :0.0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: AMD Radeon HD 7800 Series 
OpenGL version string: 4.2.12217 Compatibility Profile Context 12.104

Запустим простую утилиту для тестирования графической карты.

# fgl_glxgears

Её вывод в консоль у меня был следующим:

11916 frames in 5.0 seconds = 2383.200 FPS

Вот и всё.
Удачи.

Ubuntu: Как узнать температуру процессора, видеокарты и материнской платы

// 29 августа, 2013 | 114221 просмотров | 6 комментариев

Иногда необходимо узнать температуру процессора, видеокарты или материнской платы в данный момент. В Ubuntu/Linux это сделать довольно просто.

Итак, вначале установим пакет lm-sensors.
Делается это так

# sudo apt-get install lm-sensors

После чего утилите необходимо определить устройства чтобы корректно отображать температуру, напряжение CPU и скорость вращения кулеров.
Делается это тоже довольно просто. Запускаем sensors-detect так:

# sudo sensors-detect

Утилита будет просто засыпать вопросами, на которые нужно отвечать Enter’ом (что по-умолчанию будет означать — yes).
В самом конце утилита sensors-detect спросит о разрешении добавления необходимых для мониторинга модулей при загрузке системы (файл /etc/modules), на что необходимо будет ввести yes

To load everything that is needed, add this to /etc/modules:
#----cut here----
# Chip drivers
coretemp
w83627ehf
#----cut here----
If you have some drivers built into your kernel, the list above will
contain too many modules. Skip the appropriate ones!

Do you want to add these lines automatically to /etc/modules? (yes/NO) yes
Successful!

После чего необходимо перезагрузить ваш компьютер.

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

# sensors
acpitz-virtual-0
Adapter: Virtual device
temp1:        +27.8°C  (crit = +99.0°C)
temp2:        +29.8°C  (crit = +99.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Physical id 0:  +34.0°C  (high = +80.0°C, crit = +98.0°C)
Core 0:         +34.0°C  (high = +80.0°C, crit = +98.0°C)
Core 1:         +29.0°C  (high = +80.0°C, crit = +98.0°C)
Core 2:         +33.0°C  (high = +80.0°C, crit = +98.0°C)
Core 3:         +33.0°C  (high = +80.0°C, crit = +98.0°C)

nct6776-isa-0290
Adapter: ISA adapter
Vcore:         +0.97 V  (min =  +0.00 V, max =  +1.74 V)
in1:           +1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
AVCC:          +3.39 V  (min =  +2.98 V, max =  +3.63 V)
+3.3V:         +3.39 V  (min =  +2.98 V, max =  +3.63 V)
in4:           +1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:           +2.04 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
3VSB:          +3.38 V  (min =  +2.98 V, max =  +3.63 V)
Vbat:          +3.31 V  (min =  +2.70 V, max =  +3.63 V)
fan1:            0 RPM  (min =    0 RPM)  ALARM
fan2:         1516 RPM  (min =    0 RPM)  ALARM
fan3:         1145 RPM  (min =    0 RPM)  ALARM
fan4:            0 RPM  (min =    0 RPM)  ALARM
fan5:            0 RPM  (min =    0 RPM)  ALARM
SYSTIN:        +29.0°C  (high =  +0.0°C, hyst =  +0.0°C)  ALARM  sensor = thermistor
CPUTIN:        -60.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = CPU diode
AUXTIN:        +28.5°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
PECI Agent 0:  +22.5°C  
cpu0_vid:     +0.000 V
intrusion0:   OK
intrusion1:   ALARM

radeon-pci-0100
Adapter: PCI adapter
temp1:        +43.5°C

В моём выводе программы sensors отображается температура каждого ядра процессора (их у меня 4), напряжения датчиков процессора, скорости вращения кулеров (2 из 5), температуру материнской платы (+29.0°C) и видеокарты (+43.5°C).

Вот и всё.
Удачи.

Загрузка правил iptables при активации сетевого интерфейса в Ubuntu/Debian

// 12 августа, 2013 | 14406 просмотров | комментариев (0)

Сегодня я расскажу как настроить firewall iptables на Ubuntu/Debian при поднятии (активации) сетевого интерфейса. Сами команды управления iptables описывать я не буду, т.к. этого в Сети вы найдёте море.
Читать далее…

Создаём SOCKS 5 прокси с помощью SSH-соединения через удалённый сервер в Linux

// 30 июля, 2013 | 20666 просмотров | комментариев (0)

Cоздать SOCKS 5 прокси довольно просто. Достаточно выполнить команду по следующей схеме:

ssh -f -C2qTnN -D <порт> <удаленный_пользователь>@<удаленный_сервер>

Где
-f Запросит ssh перейти в фоновый режим только перед выполнением команды.
-C Включит сжатие всех данных (включая stdin, stdout, stderr и данные для перенаправленных Х11 и TCP/IP соединений).
-2 Принуждает ssh использовать только протокол версии 2.
-q Тихий режим. Подавляет все предупреждения и диагностические сообщения. Будут отображены только фатальные ошибки.
-T Отменить переназначение терминала.
-n Перенаправляет стандартный ввод из /dev/null (фактически, предотвращает чтение из стандартного ввода).
-N Не выполнять удаленную команду.
-D [локальный IP : ] порт
Читать далее…

Что будет если выполнить rm -Rf / в Линуксе?

// 10 июля, 2013 | 9578 просмотров | комментариев (0)

Как известно, команда удаления всех данных рекурсивно вниз без задавания лишних вопросов для заданной папки в Линукс выглядит как rm -Rf .
И тут возникает вопрос:
«А что будет если такой папкой будет корневой каталог системы (/)?»
Читать далее…

PostgreSQL 9.2+ в Ubuntu 13.04+

// 3 июля, 2013 | 538 просмотров | комментариев (0)

Добавляем в /etc/apt/sources.list адрес к репозиторию с последним PostgreSQL:

sudo -s
echo 'deb https://apt.postgresql.org/pub/repos/apt/ precise-pgdg main' >> /etc/apt/sources.list

Получаем волшебный ключик:

sudo wget --quiet -O - https://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc|sudo apt-key add -

И теперь всё просто:

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade

И можно поставить, если у вас ещё не было:

sudo apt-get install postgresql-9.2

Логирование PHP скриптов отправляющих почту

// 16 июня, 2013 | 14070 просмотров | комментариев (0)

Сегодня я расскажу как можно вести лог скриптов, что отправляют почту методами PHP.
Это удобно, если у вас на сервере поселился спаммер и вы не знаете где его искать, т.к. сами пути запускающих скриптов по-умолчанию не падают в /var/log/syslog или в /var/log/mail.log. Читать далее…

Команды управления пакетным фильтром pf

// 4 июня, 2013 | 11369 просмотров | комментариев (0)

Наткнулся на список команд для управлением пакетным фильтром (фаерволом) pf.

pfctl -d выключить пакетный фильтр
pfctl -e включить пакетный фильтр
 
pfctl -f /etc/pf.conf загрузить конфиг из /etc/pf.conf
pfctl -n -f /etc/pf.conf проверить на ошибки /etc/pf.conf, но не загружать его
pfctl -R -f /etc/pf.conf загрузить только правила фитрации из /etc/pf.conf
pfctl -N -f /etc/pf.conf загрузить только правила NAT из /etc/pf.conf
pfctl -O -f /etc/pf.conf загрузить только опции из /etc/pf.conf
 
pfctl -F all сбросить всё
pfctl -F rules сбросить только правила фильтрации
pfctl -F queue сбросить только очереди
pfctl -F nat сбросить правила NAT
pfctl -F info сбросить всю статистику
pfctl -z clear очистить все счётчики
 
pfctl -s rules показать текущие правила фильтрации
pfctl -v -s rules show показать информацию по каждому правилу фильтрации
pfctl -vvsr показать текущие правила фильтрации с добавлением номера правила
pfctl -v -s nat показать текущие правила NAT отдельно по каждому правилу
pfctl -s nat -i xl1 показать правила NAT для интерфейса xl1
pfctl -s queue показать очереди
pfctl -s state показать текущее состояние таблиц
pfctl -s info показать статистику правил и состояние счётчиков
pfctl -s all показать все что можно
 
pfctl -t testtable -T show просмотр содержимого таблицы testtable
pfctl -t testtable -T show -v просмотр более подробной статистики по каждому адресу таблицы testtable
pfctl -t testtable -T add 192.168.1.1 добавление адреса 192.168.1.1 в таблицу testtable
pfctl -t testtable -T delete 192.168.1.1 удаление адреса 192.168.1.1 из таблицы testtable
pfctl -t testtable -T flush очистить таблицу testtable

Как переименовать имена файлов из одной кодировки в другую в Linux

// 1 июня, 2013 | 1460 просмотров | комментариев (0)

Для этих целей существует отличная программа convmv.
Ставится она из репозитория довольно просто:

sudo apt-get install convmv

После чего вам просто необходимо указать папку, в которой необходимо совершить переименование файлов из одной кодировке в другую.
Например, мне нужно переименовать файлы из KOI8-R в UTF-8 рекурсивно вниз.
Делается это так:

convmv -r --notest -f koi8-r -t utf-8 Folder/

Опция --notest отвечает за переименование.
Т.е. без этой опции вы просто сделаете тест и посмотрите как файлы будут «выглядеть» в нужной кодировке.

Удачи.

Делаем запросы в PostgreSQL из nginx кэшируя с помощью Redis

// 23 мая, 2013 | 7954 просмотров | комментариев (0)

Сегодня я расскажу как можно работать с базой данных PostgreSQL с помощью nginx’a без application’a (например, PHP или любого другого). Т.е. эта технология абсолютно не зависит от языка, на котором сделан сайт/проект/система.
Мы будем использовать мощь PostgreSQL в хранимых процедурах (stored procedures/functions), а кэшировать с помощью быстрого Redis.
Читать далее…