Советы по администрированию

Материал из База знаний Etersoft
Перейти к: навигация, поиск

Советы по администрированию

Общие

  • Для форматирования однострочного XML-файла в построчный с отступами по тегам: xmllint --format <file>
  • Для обеспечения работы chromium-browser в контейнере OpenVZ нужно выполнить при остановленном контейнере vzctl set VEID --save --capability sys_admin:on (см. багу 22703).
  • Остановка зависшего контейнера OpenVZ.
  • Настройка bridge в OpenVZ (vznetaddbr и # vzctl set 501 --netif_add breth0,,,,breth0 --save)
  • Проверка сертификата SSL и просмотр цепочки: openssl s_client -connect skobkin.ru:443
  • Посмотреть дефолтные дефайны gcc: gcc -dM -E - < /dev/null
  • Склеивание PDF: gs -q -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=output.pdf file1.pdf file2.pdf file3.pdf [...] lastfile.pdf
  • Настройка принудительной перезагрузки: http://portal.itauth.com/2007/10/29/linux-howto-emergency-reboot-remote-machine
  • Чтобы ссылки с кириллицей не отображались и копировались в firefox так: http://ru.wikipedia.org/wiki/%D0%A3%D1%82%D0%B8%D0%BD%D0%B0%D1%8F_%D1%82%D0%B8%D0%BF%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F, открываем страничку about:config и ставим network.standard-url.escape-utf8 в false. Получаем в результате более понятную ссылку http://ru.wikipedia.org/wiki/Утиная_типизация
  • Для chromium решения для ссылок с кириллицей пока нет. Вот заявка для Chromium.
  • Восстановление загрузчика GRUB: http://www.whoopis.com/howtos/howto_restore_mbr_grub.php
  • Создание конфига для grub2: grub-mkconfig -o /boot/grub/grub.cfg
  • Копирование большого файла на другую машину с докачкой и ограничением скорости в 50Кб: rsync -avP --progress файл server:/каталог --bwlimit=50
  • fastboot в параметрах ядра — загрузка с пропуском проверки дисков, файл /forcefsck в корне - принудительная проверка после перезагрузки
  • Выключение selinux: setenforce 0. Навсегда: в /etc/selinux/*
  • Использование SysRq через echo N > /proc/sysrq-trigger.
  • Разрешение ftp-логина в домашний каталог для vsftpd: allow_writeable_chroot=YES
  • Пакет c-interpreter: C -e 'printf("Hello\n");'
  • Добавление строки в лог ядра, чтобы понять где мы: echo "SOME" >/dev/ksmg. А можно вообще dmeg -T освоить.
  • Узнать TTL для домена на кэширующем DNS-сервере: dig +noauthority +noquestion +noadditional +nostats @8.8.8.8 etersoft.ru SOA (в выводе будет $TTL IN ... после SOA — данные SOA)

Хостинг

  • Команда mysqlcheck -u root -p -r -A выполняет проверку на запущенной базе. Скрипт на eterhost.ru лежит в /root/bin/check_mysql.sh
  • Запуск mysql без проверки паролей: /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --skip-grant-tables --skip-networking
  • В ALT Linux используется chroot /var/lib/mysql, поэтому запускаем так: /usr/sbin/mysqld --basedir=/usr --datadir=/db --user=mysql --pid-file=mysqld.pid --skip-external-locking --skip-grant-tables --skip-networking
  • Установка полных прав и пароля для пользователя в MySQL: GRANT ALL PRIVILEGES ON *.* TO 'bob'@'%.loc.gov' IDENTIFIED BY 'newpass' WITH GRANT OPTION; FLUSH PRIVILEGES;
  • Напрямую в таблицу: UPDATE mysql.user SET Password=PASSWORD('пароль') WHERE User='root';
  • Для полного перенаправления через Apache пишем в .htaccess: Redirect permanent / http://new.server.ru. Но лучше через nginx.
  • Установить пароль для главного пользователя MediaWiki: php maintenance/changePassword.php --user=WikiSysop --password=newpassword
  • Включение статистики apache: <Location /apache-stat> SetHandler server-status </Location>, и включить через a2enmod модуль status
  • Изменение ограничения на размер загружаемых файлов в связке nginx+apache+php: Для ограничения в 25Мб установить в php.ini upload_max_filesize=25M, post_max_size=25M, также memory_limit должен быть больше 25M, в nginx.conf дописать client_max_body_size 25m;
  • Для установки ограничения на размер вложения в roundcube настройка меняется в /usr/share/roundcube/.htaccess.

Администрирование

Файловые системы и диски

  • Дефрагментация XFS. Посмотреть состояние: # xfs_db -c frag -r /dev/sda1 . Выполнить дефрагментацию: xfs_fsr /dev/sda1
  • Преобразование образа диска в образ для VirtualBox: VBoxManage converfromraw <input_file> <output_file> --format VDI
  • Вручную запустить LVM: # modprobe device-mapper ; vgchange -a y /dev/lvm0
  • Восстановление ext2/ext3/ext4 с повреждённым Super block. Смотрим, где находятся копии суперблоков: mke2fs -n /dev/xxx. Запускаем исправление: fsck.ext4 -b super_block /dev/xxx
  • Включение контроля целостности RAID областями (ускоряет восстановление): mdadm --grow --bitmap=internal --bitmap-chunk=131072 /dev/md0. См. http://romanrm.ru/mdadm-raid
  • Создание нового диска для RAID 1: Создаём дамп таблицы разделов # sfdisk -d /dev/sda > /tmp/p.dump ; На на новом диске: # sfdisk /dev/sdc < /tmp/p.dump

Добавляем новые разделы командами mdadm --add /dev/md0 /dev/sda1. Например, eterbug #9172.

  • Всё про смарт
  • Расширение раздела на диске: ptmax (пакет собран для ALT Linux).
  • Удаление TYPE linux_raid_member (при выводе blkid, при монтировании через mount): mdadm --zero-superblock [--force] /dev/sd?
  • HDD sector remap (см. mhdd под DOS). Под Linux не нашёл.
  • partclone для копирования разделов (только занятые блоки)
  • включение логов в syslog при systemd: в /etc/systemd/journald.conf ForwardToSyslog=yes и serv systemd-journald restart

SSH

  • Для установления постоянного ssh-соединения для проброса портов используем autossh
  • Включение хэширования посещённых узлов в openssh: HashKnownHosts
  • Настройка VPN поверх ssh
  • Чтобы соединение ssh не замерзало: в конфиге /etc/openssh/sshd_config вписать KeepAlive yes ClientAliveInterval 60 (почему-то есть ещё TCPKeepAlive)
  • Упрощённое шифрование (для локальной сети): ssh -c arcfour (rsync -e "ssh -c arcfour" )

Пакеты

  • Downgrade пакетов
  • Отладка apt: # apt-get -o Debug::pkgProblemResolver=1
  • Как обновить filesystem при /home на NFS: mount /var/empty/ /home -o bind ; epmi filesystem ; umount /home

Прочее

  • Проброс порта при обращении на localhost (iptables localhost redirect): работать не будет. Увы.
  • Проверка ntp: # ntpq -c peers ; ntptrace 192.168.0.1
  • Перезапуск очереди postfix, чтобы сообщения в очереди начали обрабатываться заново: postsuper -r ALL, и пр.
  • Проверка скорости передачи: epmi iperf на двух машинах; iperf -s на одной и iperf -c other-host на другой. Передаёт 10 секунд данные и говорит какая производительность сети
  • Выключение --nolisten tcp для X-сервера: см. Как отключить nolisten tcp для X-сервера
  • Ограничение устанавливаемых локалей: Вписать в /etc/rpm/macros строку с перечнем локалей: %_install_langs C:en_US:ru_RU. После этого удалить /usr/lib/locale и epm reinstall glibc-locales.
  • Перечитывание PCI-шины (PCI-E) (после добавления карты): echo "1" > /sys/bus/pci/rescan.
  • Для выключения PC Speaker (динамика): rmmod pcspkr и blacklist pcspkr в /etc/modprobe.d
  • Настройка в thunderbird внешних приложений для открытия ссылок

Оборудование


Советы по администрированию/устаревшие