LINUX.ORG.RU

Сообщения iljuase

 

А где 18.04?

Привет.

Почти 22:00 CET, день подходит к концу. Сегодня обещли выпустить Ubuntu 18.04. Но ни тут, ни на opennet новостей нет. На оф. сайте дистрибутива нет.

Что же случилось с 18:04? Ни слуху, ни духу... Нашли какой-то критичный баг что ли? Или ...?

 

iljuase
()

Почему моя вируталка уязвима к Spectre? Я всё обновил. Вроде...

Привет.

Есть Ubuntu 17.10 с последними обновами. Запускаю вируталку с Centos 7 в virtualBox (всё самое послденее с реп).

Матт. плата такая GigaByte GA-H110M-S2 (http://www.gigabyte.ru/products/page/mb/ga-h110m-s2rev_10#support-dl)

BIOS обнвлён:

BIOS Information
	Vendor: American Megatrends Inc.
	Version: F24a
	Release Date: 01/10/2018

судя по описанию BIOS, он должен устрнить обе уязвимости (Update CPU Microcode, и более новых версий нет).

В вируталке запускаю детектор от RedHat (https://access.redhat.com/labs/speculativeexecution/):

Detected CPU vendor: Intel
Running kernel: 3.10.0-693.17.1.el7.x86_64

Variant #1 (Spectre): Mitigated
CVE-2017-5753 - speculative execution bounds-check bypass
   - Kernel with mitigation patches: OK

Variant #2 (Spectre): Vulnerable
CVE-2017-5715 - speculative execution branch target injection
   - Kernel with mitigation patches: OK
   - HW support / updated microcode: NO
   - IBRS: Not disabled on kernel commandline
   - IBPB: Not disabled on kernel commandline

Variant #3 (Meltdown): Mitigated
CVE-2017-5754 - speculative execution permission faults handling
   - Kernel with mitigation patches: OK
   - PTI: Not disabled on kernel commandline

Red Hat recommends that you:
* Ask your HW vendor for CPU microcode update.

Что ещё сделать, чтобы окончательно обезопасить себя от этих двух угроз? Мне писать в GigaByte support?

 ,

iljuase
()

Посоветуйте адекватную и бесплатную ITSM-систему (тикетницу) под Linux

Привет.

Посоветуйте простую систмеу под Lunux, где можно просто создавать задания (Service requests, инциденты), чтобы было оповещение по почте. Пользаков будет не много, не более 10. Интеграция с мониторинговыми системами не нужна. Доступ по web (через браузер).

Ну типа Service Now, BMC Footprint, но попроще и бесплатную.

Спасибо.

 

iljuase
()

overlayFS\aufs — есть ли смысл мониторить свободное место на диске?

Привет.

Мы используем check_mk_agent для мониторинга серверов. Эта спец. утилита, которая мониторит FS, CPU load, memory Utilization и всё, что угодно. Надстройка над Nagios, если говорить коротко.

Но совсем недавно начали использовать docker, который использует overlayFS или aufs. И в мониторинге появляются ненужное:

[root@my_server ~]# df -PTlk $excludefs | sed 1d
/dev/mapper/root-root       ext4        19992400  4076868  14988004      22% /
devtmpfs                    devtmpfs    16463396        0  16463396       0% /dev
tmpfs                       tmpfs       16474020       12  16474008       1% /dev/shm
tmpfs                       tmpfs       16474020   107368  16366652       1% /run
tmpfs                       tmpfs       16474020        0  16474020       0% /sys/fs/cgroup
/dev/sda1                 ext4          499656   125736    337224      28% /boot
/dev/mapper/sec-sec         ext4       206288872 27212648 168574288      14% /sec
tmpfs                       tmpfs        3294804        0   3294804       0% /run/user/997
overlay                     overlay    206288872 27212648 168574288      14% /sec/docker/overlay/XXXXXXXXXXXXXXXXXXXXXXXX/merged
shm                         tmpfs          65536        0     65536       0% /sec/docker/containers/XXXXXXXXXXXXXXXXXXXXXX/shm
overlay                     overlay    206288872 27212648 168574288      14% /sec/docker/overlay/YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY/merged
shm                         tmpfs          65536        0     65536       0% /sec/docker/containers/YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY/shm
tmpfs                       tmpfs        3294804        0   3294804       0% /run/user/0

tmpfs отлетают автоматом на серверной стороне check-mk, а вот эти файловые системы нет:

overlay                     overlay    206288872 27212648 168574288      14% /sec/docker/overlay/XXXXXXXXXXXXXXXXXXXXXXXX/merged
overlay                     overlay    206288872 27212648 168574288      14% /sec/docker/overlay/YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY/merged

Очевидно, что смысла нет мониторить эти FS, т.к. они берут свободное место с /sec и нужно мониторить только её.

Что я хочу сделать: просто выпилить мониторинг overlay\aufs на стороне check-mk (уже сделано на самом деле, там подправить пар строчечек).

Но возникает вопрос: какие ещё есть варианты использования overlayfs\aufs?

Насколько я понял, эти FS монтируются ВСЕГДА поверх уже смонтированной FS и мониторить их смысла нет. Так ли это?

Ну типа нельзя ли там диск /dev/sdd смонтировать, допустим, в /merged и чтобы в выводе df -Th фигурировал только /merged с /dev/sdd (типа такого):

/dev/mapper/root-root       ext4        19992400  4076868  14988004      22% /
devtmpfs                    devtmpfs    16463396        0  16463396       0% /dev
/dev/sdd                    overlay      1255555   120000 1546555       15% /merged

Спасибо.

 , ,

iljuase
()

python, requests.post vs requests.session

Привет.

Хочу авторизоваться на веб-морде Weblogic (послать логин, пароль) — получить куки, а далее уже запрашивать другие страницы.

В чём разница между session и не session?

Вот этот код работает, куки получаются:

#!/usr/bin/python3
import requests
data={'j_username':'weblogic', 'j_password':'11111111', 'j_character_encoding': 'UTF-8'}

session=requests.Session()
session.post('http://192.168.1.41:7001/console/j_security_check', data=data)
print(session.cookies.keys())

а вот этот код уже не работает:

#!/usr/bin/python3
import requests
data={'j_username':'weblogic', 'j_password':'11111111', 'j_character_encoding': 'UTF-8'}

b=requests.post('http://192.168.1.41:7001/console/j_security_check', data=data)
print(b.cookies.keys())

Оба скрипта проходят авторизацию, но во втором случае в ответе нет кукисов.

В чём принципиальная разница? Как получить куки, не использую session?

Для чего мне всё это: просто интересно. Для образовательных целей.

Спасибо.

 ,

iljuase
()

python3 — web-servers с http.server без классов — возможно ли?

Привет.

Я хочу написать веб-сервер без классов. Вот пример с классами: http://pbcraft.ru/simple-python3-web-server/

Вот мои тщетные попытки реализовать это без классов:

#!/usr/bin/python3
import http.server

server_address=('127.0.0.1', 777)


def return_patching_schedule(request, client_address,server):
    print(request)
    http.server.BaseHTTPRequestHandler.send_response(code=200)

my_server=http.server.HTTPServer(server_address=server_address, RequestHandlerClass=return_patching_schedule)
my_server.serve_forever()

Само собой, не работает, в функции http.server.BaseHTTPRequestHandler.send_response не хватает аргумента self:

TypeError: send_response() missing 1 required positional argument: 'self'

Что писать вместо self? И как вообще вывести в принципе параметры get-запроса? Или обязательно нужны классы?

Просто я не очень умный и не хочу классы осваивать.

Спасибо заранее.

 ,

iljuase
()

Разбить отрезок на N неравных отрезков, длина отрезка не менее Mmin и не более Mmax

Привет. Допустим, есть отрезок длиной 1 000 метров. Необходимо его разбить на 120 отрезков. Новые отрезки должны быть не менее 1 метра и не более 30.

С помощью каких алгоритмов можно это реализовать?

Спасибо.

 , ,

iljuase
()

nouveau, gtx1060, энергпотребление

Привет.

После установки Ubuntu 17.10 оказалось, что драйвера от Nvidia с поддержкой Wayland нет. Но хочется всё же попробовать Wyland в деле, поэтому установил свободный драйвер nouveau.

Всё работает, но один вопрос меня беспокоит: согласно матрице https://nouveau.freedesktop.org/wiki/PowerManagement/ Powermanagement не работает. Значит ли это, что видеокарта всегда потребляет 120 ватт (максимальное потребление gtx1060)?

В простое с проприетарными драйверами видеокарта потребляет 7-15 ватт всего, я беспокоюсь за нашу природу и хочу сэкономить электричество (на самом деле я просто жмот)

Спасибо.

 

iljuase
()

такой код — знак плохого алгоритма\программиста или это норма?

Привет.

Я не работаю программистом, но периодически пишу на Python. У меня не знакомых коллег или друзей, которые пишут на Python, поэтому спрошу тут. Вот кусочек кода: http://i.imgur.com/3i3Lg3t.png

Можно заметить подряд идущие elif, if, for, try, if, except.

Ну так вот, это норма или нет? Такое вообще допустимо или стоит что-то переделать?

P.S. оно работает.

Спасибо!

 

iljuase
()

wget — как скачать все файлы с сайта по расширению?

Привет.

31 августа 2018 года все depot-файлы для Hp-UX ниже 11.31 будут удалены с сайта http://hpux.connect.org.uk , поэтому надо бы создать локальную копию, т.е. выкачать все depot-файлы.

Я делаю так:

wget -r -l 300 -H -nc  -A .depot.gz -e robots=off  --domains hpux.connect.org.uk  http://hpux.connect.org.uk/hppd/categories.html

Скачивается примерно ~3.5 ГБ depot.gz-файлов, но некоторых файлов я не вижу. Например, http://hpux.connect.org.uk/ftp/hpux/Sysadmin/rrdtool-1.7.0/rrdtool-1.7.0-ia64... не скачивается (со старницы http://hpux.connect.org.uk/hppd/hpux/Sysadmin/rrdtool-1.7.0/)

Можно ли как-нибудь скачать всё? И где я ошибся?

Спасибо!

 

iljuase
()

python3 — как поймать exception модуля?

Привет.

Написал небольшую функцию для проверки соединения по sftp, добавил обработчик исключений, если соединение не происходит успешно:

def check_sftp_connection(port_sftp):
    '''try to authorized on CrushFTP via sftp and sownload file'''
    try:
       	print('1')
        transport = paramiko.Transport((args.ip, port_sftp))
       	print('2')
        transport.connect(username=args.username, password=args.password)
       	print('3')
        sftp_con = paramiko.SFTPClient.from_transport(transport)
       	print('4')
        if sftp_con.file('/hello', mode='r', bufsize=-1).read().decode().find("Hello")==-1:
       	    print('5')
            sftp_con.close()
            return "test file not found! Probably sftp protocol works incorrect!", 2
    except:
	return "CrushFTP is not available via sftp protocol", 2
    return '', 0

Как должно работать по моей задумке: если вызывается любое исключение — должен отработать «CrushFTP is not available via sftp protocol», 2

Но на деле иногда (при стечении определённых обстоятельств) получается вот это:

1
2
Exception: Error reading SSH protocol banner
Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/paramiko/transport.py", line 1854, in _check_banner
    buf = self.packetizer.readline(timeout)
  File "/usr/lib/python3.4/site-packages/paramiko/packet.py", line 327, in readline
    buf += self._read_timeout(timeout)
  File "/usr/lib/python3.4/site-packages/paramiko/packet.py", line 497, in _read_timeout
    raise socket.timeout()
socket.timeout

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/paramiko/transport.py", line 1710, in run
    self._check_banner()
  File "/usr/lib/python3.4/site-packages/paramiko/transport.py", line 1858, in _check_banner
    raise SSHException('Error reading SSH protocol banner' + str(e))
paramiko.ssh_exception.SSHException: Error reading SSH protocol banner

Critical error:  process uptime is too low... Only 8 sec; CrushFTP is not available via sftp protocol

Почему такое происходит? И как этого избежать? Я хочу обрабатывать все исключения.

Спасибо.

 ,

iljuase
()

alias для sudo su - username с автовводом пароля

Привет!

Задача: сделать алиас для команды «sudo su - [username]» с автовводом пароля.

Одиночные команды прекрасно работают:

[vodka@cent_os_1 ~]$ echo '1' | sudo -S  su -l -s /bin/bash  -c pwd  voda

Но нужно выполнить не одиночную команду, а именно переключение на пользователя.

Вот это всё добро не работает:

[vodka@cent_os_1 ~]$ echo '1' | sudo -S  su -l -  -s /bin/bash  -c /bin/bash  voda
/bin/bash: line 1: 1: command not found

[vodka@cent_os_1 ~]$ echo '1' | sudo -S  su -l -  -s /bin/bash   voda
-bash: line 1: 1: command not found

Как сделать так, чтобы заработало?

Спасибо.

 , ,

iljuase
()

Как пробросить видеокарту в VirtualBox?

Привет. Есть ПК с двумя видеокартами: intel HD + Nvidia 1060.

Хочу пробросить 1060 с Ubuntu 17.04 на Windows 7 в VirtualBox.

Что я сделал: в BIOS включил Intel HD, в Ubuntu включил вывод через Intel HD. Пробросил 1060 на вируталку:

vboxmanage modifyvm "Windows_7" --pciattach xx:xx:xx@01:05.0 

Виртуалка увидела видеокарту, драйвер поставил. Но не могу запустить «панель управления Nvidia», т.к. «используемый дисплей не подключен к ГП Nvidia»: http://imgur.com/a/x9rbU

Из-за этого не могу задействовать видеокарту в Virtual Box. Что можно сделать в этой ситуации?

Спасибо.

 ,

iljuase
()

Ломается терминал после subproces.Popen при ошибке timeout

Привет. Написал простой код — программа коннектится по telnet, если в течение 10 секунд процесс не завершился — он убивается:

#!/usr/bin/python3
import subprocess
try:
	proc=subprocess.Popen("telnet 192.168.1.1", shell=True, universal_newlines=True, stdout=subprocess.PIPE)
	proc.wait(10)
except:
	proc.terminate()
	print("hello")

Всё ОК, но после этого ломается терминал: http://i.imgur.com/QgSUbDl.png

Как этого избежать?

 , ,

iljuase
()

Смонтировать блочное устройство как /var — возможно? Или перенести /var в / без live CD

На сервере /var примонтирован с отдельного диска. Необходимо его перемонтировать в корень. Желательно без live-CD. Как это можно сделать?

Моя гениальная идея, которая не сработала (я идиот, да):

1) Создать в /opt (/opt смонтирвоан в корень) блочное устройство: dd if=/dev/zero of /opt/var.blk bs=4M count=200
2) Форматировать /opt/var.blk как ext4 и смонтировать в /mnt
3) Скопировать все файлы из /var в /mnt
4) Подправить /etc/fstab как (чтобы блочное устройство смонтирвоалось как /var):
/opt/var.blk /var ext4 loop 0 0 

И типа всё должно было заработать, но на деле ничего не заработало, зависает на этапе загрузки, не может запустить сервис логирвоания или что-то там. Мой гениальный план превратился в пепел.

Собственно, вопрос: так нельзя делать значит? И как перенести /var без liveCD?

 ,

iljuase
()

rrdtool — нужна GUI-утилита для работы с базами rrd

Привет.

Есть ли утилита для удобной работы с файлами RRD (Round-robin Database, кольцевая база данных)?

Чтобы запустил, открыл файл, нажал пару кнопок — получил все данные в табличной форме, нажал ещё пару кнопок — поучил красивый график.

Просто работать с rrd из консоли очень сложно, я не осиливаю.

https://en.wikipedia.org/wiki/RRD_Editor не работает на Ubunru 16.10, просто вылетает.

vodka@vodka-PC:~/Downloads/RRD_Editor$ ./RRD_Editor_Linux-Full --help
X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  73 (X_GetImage)
  Serial number of failed request:  944
  Current serial number in output stream:  944

 ,

iljuase
()

Что будет при очень высоком cpu load? [вопрос про load average]

Что будет, если в очереди на обработку процессором накопятся много задач? Допустим, CPU Load (load average) на одно ядро увеличится до 30-50. ОС начнёт зависать, подключиться к ней по ssh станет невозможным.

А что дальше? Есть ли какой-то механизм очистки очереди в составе ОС? Или система так и будет умирать, и единственное спасение — ребут?

 ,

iljuase
()

yum -q updateinfo list security available — убрать промежуточные версии

Привет.

При выводе «yum -q updateinfo list security available» получаю информацию обо всех новых промежуточных версиях пакета, а не только о последней версии. Например:

ELSA-2014-1983 Important/Sec. xorg-x11-server-Xephyr-1.15.0-7.0.1.el7_0.3.x86_64
ELSA-2015-0797 Moderate/Sec.  xorg-x11-server-Xephyr-1.15.0-33.el7_1.x86_64
ELSA-2014-1983 Important/Sec. xorg-x11-server-Xorg-1.15.0-7.0.1.el7_0.3.x86_64
ELSA-2015-0797 Moderate/Sec.  xorg-x11-server-Xorg-1.15.0-33.el7_1.x86_64
ELSA-2014-1983 Important/Sec. xorg-x11-server-common-1.15.0-7.0.1.el7_0.3.x86_64
ELSA-2015-0797 Moderate/Sec.  xorg-x11-server-common-1.15.0-33.el7_1.x86_64
ELSA-2014-0741 Critical/Sec.  xulrunner-24.6.0-1.0.1.el7_0.i686
ELSA-2014-0919 Critical/Sec.  xulrunner-24.7.0-1.0.1.el7_0.i686
ELSA-2014-1144 Critical/Sec.  xulrunner-24.8.0-1.0.1.el7_0.i686
ELSA-2014-1635 Critical/Sec.  xulrunner-31.2.0-1.0.1.el7_0.i686
ELSA-2015-0046 Critical/Sec.  xulrunner-31.4.0-1.0.1.el7_0.i686
ELSA-2015-0265 Critical/Sec.  xulrunner-31.5.0-1.0.1.el7_0.i686
ELSA-2015-0766 Critical/Sec.  xulrunner-31.6.0-2.0.1.el7_1.i686

хочу убрать промежуточные версии пакетов, чтобы было примерно так:

ELSA-2015-0797 Moderate/Sec.  xorg-x11-server-Xephyr-1.15.0-33.el7_1.x86_64
ELSA-2015-0797 Moderate/Sec.  xorg-x11-server-Xorg-1.15.0-33.el7_1.x86_64
ELSA-2015-0797 Moderate/Sec.  xorg-x11-server-common-1.15.0-33.el7_1.x86_64
ELSA-2015-0766 Critical/Sec.  xulrunner-31.6.0-2.0.1.el7_1.i686

Можно ли это как-нибудь реализовать?

Про команды

yum --security check-update
yum --security list
я знаю, но хотелось именно в том формате, который указан выше.

P.S. Дистрибутивы будут разными: CentOS, Oracle Linux, Red Hat.

Спасибо.

 

iljuase
()

Нужны ли сертификаты по администрированию Linux?

Привет. Я юный Линуксоид. Могу сдать несколько сертификатов по Linux. За счёт работодателя, но после этого возникнут обязательства перед ним. Если провалишь — нужно из своего кармана платить (а я жадный и бедный), проработать 5 лет в компании и прочее рабство.

В общем, вопросы:

1) Нужны ли по жизни сертификаты?

2) Какие сертификаты самые востребованные?

3) Что легче сдать? Какие экзамены?

4) Что лучше, за свой счёт сдать или за счёт работодателя?

Спасибо.

 ,

iljuase
()

Как отмонтировать nfs-шару, если -l, -f не помогают?

Нужно отмонтировать nfs-шару.

umount, umount -l, umount -f не работают, просто зависают
lsof тоже зависает
Перемонтирование шары тоже зависает

Что делать? Ребутать крайне нежелательно, сервер на продакшн.

 ,

iljuase
()

RSS подписка на новые темы