CentOS: данные по сетевой карте

# ip -s -s link show eno1
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT qlen 1000
    link/ether e0:07:1b:f8:21:64 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    1762937170427 11152407427 0       9422    0       3579554
    RX errors: length   crc     frame   fifo    missed
               0        0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    24857233171258 18559176680 0       0       0       0
    TX errors: aborted  fifo   window heartbeat
               0        0       0       0


# ethtool -g eno1
Ring parameters for eno1:
Pre-set maximums:
RX:             2047
RX Mini:        0
RX Jumbo:       0
TX:             511
Current hardware settings:
RX:             200
RX Mini:        0
RX Jumbo:       0
TX:             511


Поменять текущий параметр (до перезагрузки):
# ethtool -G eno1 rx 1024

Прописать параметр насовсем можно в /etc/sysconfig/network-scripts/ifcfg-eno1:
ETHTOOL_OPTS="-G eno1 rx 1024"

CentOS: статистика

В папке /proc можно найти много всякой полезной статистики, например:
/proc/meminfo — статистика по памяти;
/proc/diskstats — статистика по дискам;
/proc/net/dev — счётчики трафика на сетевых картах;

А ещё есть данные в папке /sys/class, например счётчики трафика на отдельных сетевых картах:
/sys/class/net/eth0/statistics/rx_bytes
/sys/class/net/eth0/statistics/tx_bytes
/sys/class/net/eth0/statistics/rx_packets
/sys/class/net/eth0/statistics/tx_packets

Там же есть данные по параметрам сетевой карты, например, скорость соединения, режим дуплекса.

CentOS: Запуск демона при помощи systemd

Установил net-snmp из исходников, т.к. пакет требует наличия библиотек mariadb, которые конфликтуют с установленным mysql.

Для нормального запуска демона посредством systemd создал файл /usr/lib/systemd/system/snmpd.service:
[Unit]
Description=Net-SNMP daemon
Documentation=man:snmpd(8) man:snmpd.conf(5)
After=network.target

[Service]
ExecStart=/usr/local/net-snmp/sbin/snmpd -f -c /etc/snmpd.conf -p /var/run/snmpd.pid
ExecReload=/bin/kill -HUP ${MAINPID}
ExecStop=/bin/kill -TERM ${MAINPID}

[Install]
WantedBy=multi-user.target

Обратите внимание на ключ "-f" — не уходить в фон. Так systemd может прочитать pid процесса. Иначе у меня не получилось, опция «PIDFile=» не помогла.

Теперь демон нормально обрабатывается командой systemctl:
systemctl enable snmpd.service
systemctl start snmpd.service
systemctl status snmpd.service
systemctl stop snmpd.service


Дополнение: скрипт для запуска демона ЯндексДиск

Создаём файл "/usr/lib/systemd/system/yandex-disk.service":
[Unit]
Description=Yandex Disk daemon
Documentation=man:yandex-disk(8)
After=network.target

[Service]
Type=simple
RemainAfterExit=true
ExecStart=/bin/yandex-disk start
ExecStop=/bin/yandex-disk stop

[Install]
WantedBy=default.target


Затем активируем его:
systemctl enable yandex-disk
И запускаем:
systemctl start yandex-disk
Проверяем:
systemctl status yandex-disk

Подробности можно посмотреть отдельно:
yandex-disk status

Изменение параметров RAID-массива на контроллере HP Smart Array P440ar

Конечно, все возможности по изменению параметров RAID-массива я не рассматривал, у меня была конкретная задача. После добавления новых дисков я решил изменить тип массива с RAID5 на RAID1+0.
Управление контроллером осуществляется посредством утилиты hpssacli, операционная система — CentOS 7.2.

Читать дальше →

CentOS 7: Ещё несколько записей себе на память

Подмонтировать папку в папку:
mount --bind /old /new
В /etc/fstab описывается вроде бы так:
/old /new none bind 0 0

Вход в однопользовательский режим, это я ещё не проверял:
RHEL 7 /CentOS 7 Boot Single User Mode
init=/bin/sh at the end of line that starts with linux in Grub2 (In case of VMWare like KVM or VirtualBox use rb.break instead of inti=/bin/sh)
run mount -o remount,rw /sysroot when the system boots
run chroot /sysroot
run passwd
run touch /.autorelabel
run exit to leave chroot
run exit to logout

Изменить опции уже подмонтированного устройства:
mount -o remount,noatime,nodiratime /data

Управление сервисами:
systemctl status nginx.service
Если там указано disabled, а нам надо запускать сервис, то надо его включить:
systemctl enable nginx.server
А дальше просто:
systemctl start nginx.server
systemctl status nginx.server
systemctl reload nginx.server
systemctl stop nginx.server
systemctl disable nginx.server

Права по-умолчанию для папки /dev/snd — в файле /lib/udev/rules.d/50-udev-default.rules привести соответствующую строку к следующему виду (убедитесь, что кавычки скопировались обычные, двойные):
SUBSYSTEM==«sound», MODE=«0666», GROUP=«audio»

После обновления системы пропал crond, причём его нету среди установленных пакетов. Можно установить его вручную:
yum install cronie

Отключить IPv6:
sysctl net.ipv6.conf.all.disable_ipv6=1
sysctl net.ipv6.conf.default.disable_ipv6=1

CentOS 7: MariaDB

Настраиваем репозиторий — в папке /etc/yum.repos.d создаём файл mariadb.repo со следующим содержимым:
# MariaDB 10.1 CentOS repository list - created 2015-09-11 06:33 UTC
# http://mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1


Это конфиг для моей версии. Можно сгенерировать этот конфиг прямо на сайте MariaDB — downloads.mariadb.org/mariadb/repositories/

Затем устанавливаем пакеты:
yum install MariaDB-server MariaDB-client

CentOS 7: Отключение FirewallD и возвращение iptables

Может я и тупой, но после получаса изучения документации на FirewallD не понял даже как посмотреть имеющиеся правила, а синтаксис команды firewall-cmd вызывает у меня безотчётное неприятие. Короче решил я, что будет лучше использовать то, что я знаю хоть немного, нежели мучаться с этим пусть гипотетически более современным и мощным инструментом.

Действия для включения iptables и отключения FirewallD:

yum install iptables-services
systemctl mask firewalld.service
systemctl enable iptables.service
systemctl enable ip6tables.service
systemctl stop firewalld.service
systemctl start iptables.service
systemctl start ip6tables.service

CentOS: установка VMWare Player

Скачиваем дистрибутив с официального сайта. Скаченный файл, например, VMware-Player-7.0.0-2305329.x86_64.bundle — это шелл-скрипт. Запускаем установку:
sh VMware-Player-7.0.0-2305329.x86_64.bundle

После успешной установки в меню программ System появится пункт «VMWare Player».

Удалить его можно вот так:
sh VMware-Player-7.0.0-2305329.x86_64.bundle --uninstall-product vmware-player