RTFM.WIKI

Ordnung muß sein. Ordnung über alles (18+)

Инструменты пользователя

Инструменты сайта


Боковая панель


Навигация


Линкшэринг


WTF?!

Написать в спортлото

Донат Данкинс


Добавить новую страницу

Вы не можете добавлять страницы
linux:centos:centos_tnt

Содержание

CentOS советы

HowTo - Как сделать xyz?

Очистить файлы btmp и wtmp

Сломалась ротация логов, что привело к переполнению диска из-за файла /var/log/btmp

Быстро очистить файл можно командой

# cat /dev/null > /var/log/btmp

killall: command not found

man killall

# yum install psmisc

Как надежно удалить файл

Через утилиту shred. Она уже есть в пакете coreutils.

Обновление до 6.x_latest версии с CentOS 6.4/6.3/6.2/6.1/6.0

Посмотреть версию ОС

# cat /etc/redhat-release
CentOS release 6.5 (Final)

Обновить

# yum clean all
# yum update glibc* yum* rpm* python*
# yum update
</code

==== Где взять свежую версю Git для CentOS? ====

Собрать из Git! Ха-ха-ха!

Действительно, в CentOS 6 доступна довольно старая версия:

<code>
[dx@dx ~]# git --version
git version 1.7.12.4

Свежую версию Git можно установить из репозитория Ghettoforge

CentOS 5

rpm -Uvh http://mirror.symnds.com/distributions/gf/el/5/gf/x86_64/gf-release-5-8.gf.el5.noarch.rpm

CentOS 6

rpm -Uvh http://mirror.symnds.com/distributions/gf/el/6/gf/x86_64/gf-release-6-8.gf.el6.noarch.rpm

CentOS 7

http://mirror.symnds.com/distributions/gf/el/7/gf/x86_64/gf-release-7-8.gf.el7.noarch.rpm
[dx@dx ~]## yum provides git

git-1.7.1-3.el6_4.1.i686 : Fast Version Control System
Repo        : base
Matched from:

git-2.6.0-1.gf.el6.i686 : Fast Version Control System
Repo        : installed
Matched from:
Other       : Provides-match: git

P.S. WTF, зачем мне может понадобиться новая версия git?! Всё что надо есть в EPEL! Оказывается может. В CentOS, как и в Debian древний софт, как бивни мамонта, зато stable блин. Когда делал простой скрипт обновления phpmyadmin git ругался. fix https://davejamesmiller.com/blog/automatic-upgrades-for-phpmyadmin

Как распаковать содержимое rpm-пакета?

via http://michael-xiii.blogspot.ru/2011/11/rpm.html

Обычный rpm-пакет - это архив формата cpio вместе с некоторым набором метаданных.

Распаковать его можно

# rpm2cpio package.rpm | cpio -dimv

Параметры и флаги:

  • имя rpm-файла, который необходимо распаковать и перенаправить вывод на архиватор cpio.
  • -i - распаковать архив,
  • -d - сохранить структуру директорий.
  • -v - вывести список распакованных файлов,
  • -m - наследовать даты модификаций извлекаемых файлов.

Как рестартнуть все сервисы без перезагрузки OS

via http://www.vds54.ru/help/kak-restartnut-vse-servisy-without-reboot

Если требуется перезагрузить все сервисы на CentOS без ребута самого сервера, то для простоты можно воспользоваться следующей командой:

LANG=C chkconfig --list | grep 3:on | awk '{system("/etc/init.d/"$1 " restart")}'

Посмотреть список сервисов, которые будут перезапущены таким образом можно следующим образом:

LANG=C chkconfig --list | grep 3:on

P.S. будьте осторожны, так как /etc/init.d/networking и sshd будут так же перезапущены.

Запустить скрипт через каждые 30 минут

Каждые 30 минут

*/30 * * * * /path/script.sh

Запускать в XX:00 и XX:30

00,30 * * * * /path/script.sh

Открываем crontab в nano

EDITOR=nano crontab -e

Делаем nano редактором по-умолчанию (добавляем в .bash_profile).

# export EDITOR=/usr/bin/nano

Red Hat Enterprise Linux Release Dates

Проверить скорость диска

Проверить скорость записи диска. Данная команда пишет 512 МБ на диск и потом показывает скорость. Важным ключом является conv=fdatasync. Она заставляет dd сделать sync и убедится что все данные действительно записаны на диск. Если не использовать этот ключ, то dd будет писать в память и бенчмарк получится неверный

# dd if=/dev/zero of=/tmp/speedtest bs=1M count=512 conv=fdatasync; rm -f /tmp/speedtest

via

Как создать swap файл?

Создаём swap-файл размером 256MB

# отключаем swap
swapoff -a
# создаём swap-файл размером 256 МБ
dd if=/dev/zero of=/swap bs=1M count=256
# инициализируем созданный swap-файл
mkswap /swap
# включаем swap
swapon -a

Добавляем информацию о swap в файл /etc/fstab

/swapfile	swap	swap	defaults	0 0

Вариант для ленивых - https://github.com/Cretezy/Swap

# wget https://raw.githubusercontent.com/Cretezy/Swap/master/swap.sh -O swap
# sh swap 1G

Если возникла ошибка msgid "memory exhausted by input buffer of size %zu bytes (%s)"

Неправильно

dd if=/dev/zero of=/swapfile bs=1G count=4
dd: memory exhausted by input buffer of size 1073741824 bytes (1.0 GiB)

Правильно

dd if=/dev/zero of=/swap bs=1M count=4000

Как очистить swap и кэш памяти (cached memory)

Очистить swap

swapoff -a && swapon -a

Куда исчезают при этом данные? :)

Очистить кэш памяти

Начиная с Linux ядра 2.6.16 у администраторов системы появилась возможность принудительной очистки системных кэшей (https://linux-mm.org/Drop_Caches)

Очистить pagecache

echo 1 > /proc/sys/vm/drop_caches

Очистить dentrie и inode кэши

echo 2 > /proc/sys/vm/drop_caches

Очистить pagecache, dentrie и inode кэши

echo 3 > /proc/sys/vm/drop_caches

Бытует мнение, что перед выполнением необходимо запустить команду sync. Проверить FIXME

Вывести список установленных rpm из определенного репозитория

Изменить hostname в CentOS

В файл /etc/sysconfig/network добавить

HOSTNAME="foobar.domain.com"

Выполнить команду

# hostname foobar.domain.com

В файл /etc/hosts добавить

127.0.0.1       localhost localhost.localdomain
192.168.13.77   foobar.domain.com
# /etc/init.d/network restart

Количество соединений с одного IP

Количество соединений с одного IP

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1
netstat -an | grep 80 | wc -l

Есть ли аналог --no-install-recommends в CentOS?

В CentOS старый PHP и он не обновляется

Joomla требует минимум 5.3.10

# View the Changelog

# Because CentOS and the upstream vendor have backported security patches, the version numbers can often be misleading when you look for CVE fixes. Checking the changelog of a package is a good way to see if the fix has been implemented. Once again, rpm comes to the rescue.

rpm -q --changelog <packagename> | less

# Using less isn't necessary, but for some packages like the kernel, the changelog can be quite long. Using less helps to make things more readable. 

Ошибки

/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

Узнать где доступна либа

# yum provides ld-linux.so.2
glibc-2.17-260.el7.i686 : The GNU libc libraries
Repo        : base
Matched from:
Provides    : ld-linux.so.2

Установка пакета

# yum install glibc.i686

Для старых систем

# yum install glibc.i386

Для Debian

# apt-get install ia32-libs

Another app is currently holding the yum lock

Ошибка Another app is currently holding the yum lock; waiting for it to exit…

# ps aux | grep yum
# kill yum-PID

Если не помогло

# rm /var/run/yum.pid
# yum update

iptables: line 268: restorecon: command not found

Ошибка

iptables: Saving firewall rules to /etc/sysconfig/iptables: /etc/init.d/iptables: line 268: restorecon: command not found 

Решение

# yum install policycoreutils

error: cannot open Packages database in /var/lib/rpm

Ошибка

rpmdb: Thread/process 23378/140496680339200 failed: Thread died in Berkeley DB library
error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db3 -  (-30974)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

Error: rpmdb open failed

Как починить

# db_recover -h /var/lib/rpm
# yum clean all

Или так

# mv /var/lib/rpm/__db* /tmp/
# rpm --rebuilddb
# yum clean all

Из Mac OS (Linux?) нет доступа к Samba (CentOS 7)

Ошибка

Как исправить

Установить предыдущую версию Samba через yum downgrade

Либо берем RPMы здесь ftp://mirror.switch.ch/pool/4/mirror/centos/7.2.1511/updates/x86_64/Packages/ и делаем rpm -i pkg.rpm

Список необходимых пакетов

libsmbclient-4.2.3-12.el7_2.x86_64.rpm
libwbclient-4.2.3-12.el7_2.x86_64.rpm
samba-4.2.3-12.el7_2.x86_64.rpm
samba-client-libs-4.2.3-12.el7_2.x86_64.rpm
samba-common-4.2.3-12.el7_2.noarch.rpm
samba-common-libs-4.2.3-12.el7_2.x86_64.rpm
samba-common-tools-4.2.3-12.el7_2.x86_64.rpm
samba-libs-4.2.3-12.el7_2.x86_64.rpm

yum, curl, php, java, etc не работают, illegal instruction

Ошибка возникает если

  • Установлен RHEL/CentOS 6.8
  • Виртуальная машина Xen
  • Установлен флаг AES

К примеру Wordpress при этом в режиме nginx+php-fpm падает с ошибкой 502 Bad Gateway.

Как исправить работу Wordpress (nginx+fpm)

Добавить строку

putenv("NSS_DISABLE_HW_AES=1");

в файлы

index.php
wp-cron.php
wp-load.php
/wp-admin/admin.php

Либо добавляем в конфиг fpm пуля переменную

env[NSS_DISABLE_HW_AES] = 1 в файл /etc/php-fpm.d/admin.conf

http://www.sctechgroup.com/2016/06/07/segfaults-libfreeblpriv3-upgrading-rhel-6-8-illegal-instruction/

3.10.0-327.el7 crashes on every boot

initcall_blacklist=clocksource_done_booting

Передать ядру при загрузке параметр initcall_blacklist=clocksource_done_booting kernel

Добавить в файл /etc/default/grub такой же параметр

...
GRUB_CMDLINE_LINUX="rhgb quiet initcall_blacklist=clocksource_done_booting"  
...

Выполнить

# grub2-mkconfig -o /etc/grub2.conf

-bash: netstat: command not found

Опа, netstat выпилили из дефолта

# yum whatprovides netstat
 
net-tools-2.0-0.17.20131004git.el7.x86_64 : Basic networking tools
Repo        : @base
Matched from:
Filename    : /usr/bin/netstat

Окэй Google yum

# yum install net-tools

Ошибка Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again

Решение

# yum --disablerepo=epel -y update ca-certificates

Куда пропало место на диске?

atomic-release, The GPG keys listed for

warning: rpmts_HdrFromFdno: Header V3 RSA/SHA1 Signature, key ID 4520afa9: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY.art.txt

The GPG keys listed for the "CentOS / Red Hat Enterprise Linux 6 - atomicrocketturtle.com" repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.

Скачиваем новый GPG ключ

# wget https://www.atomicorp.com/RPM-GPG-KEY.atomicorp.txt
# mv RPM-GPG-KEY.atomicorp.txt /etc/pki/rpm-gpg/RPM-GPG-KEY.atomicorp.txt
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY.atomicorp.txt

либо так

# rpm --import https://www.atomicorp.com/RPM-GPG-KEY.atomicorp.txt

Редактируем файл /etc/yum.repos.d/atomic.repo

gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY.atomicorp.txt   
         file:///etc/pki/rpm-gpg/RPM-GPG-KEY.art.txt

Если не помогло, то отключаем проверку GPG

gpgcheck=0

либо доверяем настроить .repo скрипту Atomic

# wget -q -O - http://www.atomicorp.com/installers/atomic | sh

su mysql - account is currently not available

http://wiki.rfremix.ru/index.php/Запуск_команд_от_имени_системных_пользователей

Это происходит из-за того, что у этих пользователей в качестве шела указан /sbin/nologin. Можно воспользоваться параметром -s для указания другого шела:

su - nobody -s /bin/sh

/usr/bin/ld: cannot find -lz

Ошибка /usr/bin/ld: cannot find -lz

Решение

# yum install zlib-static

Ошибка /usr/bin/ld: cannot find -lpthread

Решение

yum install glibc-static

Ошибка /usr/bin/ld: cannot find -lstdc++

Решение

yum install libstdc++-static

Не запускается sshd: /var/empty/sshd must be owned by root

Ошибка

# service sshd start
/var/empty/sshd must be owned by root and not group or world-writable

Решение

# chown root:root /var/empty/sshd
# chmod 711 /var/empty/sshd
# /etc/init.d/sshd start

Another MySQL daemon already running with the same unix socket

# service mysqld stop
# rm -rf /var/lib/mysql/mysql.sock
# service mysqld start

В итоге, недавно в багтреке mysql я нашел ту же проблему. Во всем виновато обновление centos. После обновления папка /tmp имеет неверные права, из-за чего не удаляется корректно сокет, а также не создается. Решение такое: 1) Удаляем сокет (решение выше по ссылке) 2) Меняем chmod 777 -R /tmp 3) Перезагружаем сервер. Если после этого сервер баз данных поднялся сразу, значит проблема решена

Warning: SuexecUserGroup directive requires SUEXEC wrapper

Появилось после установки prefork вместо itk

# chown root:root  /usr/sbin/suexec
# chmod 4755 /usr/sbin/suexec 

Ссылки

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
 
This website uses 🍪 for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information
linux/centos/centos_tnt.txt · Последние изменения: 2019/06/14 17:44 (внешнее изменение)