+38 (067) 901-63-22 Вс 09:00—18:00
+38 (067) 901-63-22 Вс 09:00—18:00
usapolukr

Например: VDoc

Корзина

0 товара(ов) на сумму
0 грн.

Команды Linux (FreeBSD), а так же PHP из моей памятки

В процессе работы, много лет я формировал текстовый файл с заметками о полезных программах.

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

Архивировать файл в архив rar из командной строки с разбиением на 1 Гб:

rar a -r -v1000000k /mnt/d/backups/base_2008_04_11 /var/lib/mysql

где,

/mnt/d/backups/base_2008_04_11 - название нового архива.

/var/lib/mysql - название архивируемой папки.

Принудительное указание кодировки:

SET NAMES кодировка

, где кодировка, та кодировка, в которой у вас (по вашему мнению) данные. Например, для русской виндовой кодировки (windows-1251) это будет cp1251, для KOI8-R – koi8r, для UTF-8 – utf8 и так далее. В дальнейшем она будет упоминаться как «кодировка«.

SET NAMES кодировка;

SET character_set_database=кодировка;

SET character_set_server=кодировка;

Нужно для того, чтоб коннект к MySQL подключался под нужной нам кодировкой, а не кодировкой по умолчанию. Это отправляется, как команды SQL.

===== MySQL =====

Дамп базы данных

/usr/local/bin/mysqldump -h MySQL.int -u 21ru -p 21ru

Загрузка данных из дампа.

/usr/local/bin/mysql -h MySQL.int -u 21ru -p 21ru < base.dump

==== SVN =====

svnserve -d -r /var/repos_svn

svn checkout svn://host.example.com/project1

svn copy http://svn.example.com/framework/trunk http://svn.example.com/rpb/trunk -m "Creating a private branch of framework" - копирование проекта.

svnadmin create /var/repos_svn --fs-type bdb

Архивация файлов с помощью Zip:

zip -r filename.zip files

Извлечение файлов:

unzip filename.zip

Где мы живём.

http://www.wikimapia.org/#y=50517718&x=30462148&z=...

Это адрес на Гугл-карте, где мы живём :)

Для phpNuke, каталога компаний

/* Последние зарегистрированные компании в справочнике компаний */

SELECT * FROM `nuke_catalog`

order by pid desc

LIMIT 10

Для phpNuke, удаление новых линков, которыми иногда заспамливают...

/* Удаление новых линков */

DELETE FROM `nuke_links_newlink`

perror 23 - выводит описание ошибки. (Даже забыл, что такая команда есть...)

Решение проблемы с лимитом количества файлов в FreeBSD, насколько я помню:

4.4. Мне необходимо увеличить количество одновременно открытых файлов. Как это сделать?

Воспользоваться утилитой sysctl. Для увеличения лимита до 20000 файлов, добавьте в файл /etc/sysctl.conf строку

fs.file-max = 200000

и выполните команду

/sbin/sysctl -p /etc/sysctl.conf

cat /proc/sys/fs/file-max - текущее количество открітіх файлов.

/etc/security/limits.conf

* - nofile 8192

Управление MySQL

mysqladmin --user=root --password=your_password shutdown; - остановка сервера MySQL

myisamchk *.MYI - диагностика файлов.

myisamchk -r -q tbl_name - режим быстрого восстановления файлов.

myisamchk -r - режим восстановления файла.

/etc/mysql/my.cnf - настройка MySQL.

Сохранение информации в формате cp1251:

mysqldump --default-character-set=cp1251 --user=root --password=your_password nerusoft nuke_portfolio > /usr/tmp/nukep.sql

/var/lib/mysql - расположение баз данных в mysql.

/usr/sbin/apache2 -k stop -DSSL - перезагрузка Apache2 в FreeBSD.

apache2 -k start - запуск Apache (для FreeBSD)

mtop - просмотр процессов MySQL.

Вывод логов

tail -f /var/log/apache2/nerusoft.com-combined.log - доступ к сайту nerusoft.com

tail -f /var/log/mail.log - лог почты.

tail -f /var/log/syslog - системный лог.

tail -f /var/log/apache2/access.log - просмотр логов Apache (для FreeBSD).

tail -f /var/log/apache2/nerusoft.com-combined.log - просмотр логов Apache (для FreeBSD).

tail -f /var/log/apache2/error.log - лог ошибок Апача.

Команда tail -f выводит последние строчки логов. Причём программа остаётся "висеть" и выводить каждую строчку, которая поступает в лог. Очень полезная команда для системных администраторов для наблюдения за сервером в режиме "реального времени".

VHCS2

/etc/init.d/vhcs2_daemon restart - перезагрузка vhcs2.

Полезные утилиты и редакторы в Юникс

vi - редактирование больших файлов.

zile

jed - редактор в стиле Pascal (рекомендую. Позволяет редактировать очень большие файлы и при этом, комфортная работа, как в редакторах Borland).

zed - text editor.

ed - text editor.

dpkg -l - просмотр пакетов.

tar -cvf filename.tar files/directories - Архивация с помощью Tar.

tar -tvf foo.tar - просмотр содержимого файла tar.

tar -xvf foo.tar - извлечение содержимого архива.

view - просмотр текущих пользователей.

aptitude - программа установки пакетов.

apt-cache search строка поиска - Выбор определённог пакета.

aptitude install firebird2-super-server - установка Firebird.

aptitude --purge firebird2-super-server - удаление Firebird.

Смена пароля администратора в MySQL через командную строку

mysql --user=root --password=your_password

SET PASSWORD FOR "root"@ "server" = PASSWORD( "********" )

mysqladmin -h хост -u пользователь password 'новый пароль'

Загруженность процессоров

top - загруженность процессора на FreeBSD

Слабенькая команда, т.к. показывает всё как 1 процессор. Поэтому, рекомендую утилиту:

htop - показывает загруженность процессоров.

Занятость дискового пространства

df -m - занятость дисковых разделов в Мегабайтах.

squid restart - перезагрузка прокси-сервера SQUID.

\var\www\html\lightsquid\lightsquid.cfg - запреты на squid.

Установка пароля на папку средствами Apache

htpasswd -b /usr/local/apache/conf/.htpasswd sergey YourPassword

cat /usr/local/apache/conf/.htpasswd - вывод паролей .htpasswd

/usr/local/apache/bin/htpasswd -c -m /usr/local/apache/conf/.htpasswd sergey

Sudo

/usr/local/etc/sudoers - пользователи, записанные в Sudo (для FreeBSD).

sudo -s -получение права администратора.

QMail+VPopmail

/etc/rc.d/rc.qmail start - перезагрузка qmail.

/usr/local/etc/rc.d/qmail.sh start

/home/vpopmail/domains - путь к папкам пользователей vpopmail.

./vsetuserquota

./vsetuserquota olya@nerusoft.com 1000000000 - Установка квоты в байтах.

./vadddomain ecoclinic.com.ua - добавление домена.

./vadduser sysadmin@mydomain.org - добавление пользователя.

./vuserinfo sysadmin - получение информации о пользователе.

./vdominfo earth.mydomain.org - просмотр информации о домене.

./vdeluser postmaster@mydomain.org - удаление пользователя.

/usr/home/vpopmail/domains - тут складируется почта.

/etc/mail/control - настройка почты.

http://www.rudjuk.kiev.ua/cgi-bin/qmailadmin - администрирование почты.

http://www.rudjuk.kiev.ua/cgi-bin/vqadmin

Установка даты

date 0504042054 - установка даты 2005 год, 04 апреля, 20 часов 54 мин.

ndc restart - перезагрузка информации после настройки ftp.

/* Поднимание зоны */

/etc/namedb - объявление доменов.

/etc/hosts - Хосты.

ndc reload

/etc/groupfile - добавление в группу.

whois zp.ua - получение информации о домене.

Настройка Ftp:

/usr/local/etc/proftpd.conf - Конфигурационый файл.

/usr/local/etc/rc.d/proftpd.sh - перезагрузка Ftp.

/usr/local/etc/rc.d/proftpd.sh start - Стартование FTP.

/usr/local/etc/proftpd.conf - Доступ по FTP.

Определение паролей пользователя и почтовый ящик

>> pw user add dima1 -m

>> passwd dima1

>> pw user add dima1 -m -s /bin/false - указываем, что нельзя пользователю подкл. по ssh-порту.

>> pw user del test

/etc/group - группы.

passwd - определение пароля.

nslookup fisherdream.kiev.ua - просмотр существования домена.

/usr/local/samba/lib - Samba

Изменение пути к MySQL (для FreeBSD)

/usr/local/bin/safe_mysqld - Тут указываются пути.

Перезагрузка MySQL (FreeBSD)

/usr/local/etc/rc.d/mysql-server.sh stop

/usr/local/etc/rc.d/mysql-server.sh start

Перезагрузка Apache в FreeBSD

/usr/local/apache/bin/apachectl restart

/usr/local/apache/bin/apachectl stop

/usr/local/apache/bin/apachectl start

Почта

/etc/mail/relay-domains - релей.

/etc/mail/access - запрет доступа.

===== Статистика ========

http://192.168.5.90/Home/statistic

/usr/local/sarg/sarg.conf

/usr/bin/sarg

-d Дата с-по dd/mm/yyyy-dd/mm/yyyy(Напр.: 22/12/2003-22/12/2003 – за 22.12.2003)

-i Отчёт по пользователям и IP address

-p Использовать Ip Address вместо userid (в отчёте)

======= Наблюдение текущих соединений ============

/usr/local/bin/trafshow -i ed0 - внешняя сетевая карта.

/usr/local/bin/trafshow -i rl1

/usr/local/bin/trafshow -i ed1 - внутренняя сетевая карта.

http://www.nic.ru/whois/ - определение страны.

shutdown -r now - перезагрузка сервера сейчас.

==== Хосты =======

/etc/hosts

tracerout - трассировка домена в Linux, FreeBSD.

Include в PHP

include ("adresses.inc")

?>

tail -f /usr/local/squid/logs/access.log - доступ к статистике на прокси-сервере.

/usr/local/etc/rc.d/samba.sh stop - перезапуск Samba.

/usr/local/etc/rc.d/samba.sh start

/usr/local/bin/smbpasswd username - Определение пароля в Samba.

csh - удобный интерпретатор командной строки.

VDS - виртуальный выделенный сервер по методу Virtuozo.

http://www.zend.com/free_download - сайт Zend Optimizer.

Fedora Core

Upgrading Fedora Core

Upgrading Fedora Using Yum

winecfg - настройка wine.

trafshow -i eth0 -s 1

DarkStat - статистика о трафике на сервере

http://91.196.0.45:666/

sudo darkstat

sudo darkstat -p 8080

ntop

netspeed

flowscan

dsniff

driftnet - сетевой трафик.

dnstop - анализ трафика DNS

vnstat -u -i eth0

vnstat

mutt - Программа отправки почты.

Файл: fstab

/dev/sdb5 /usr/disk_d vfat noexec,

codepage=866, iocharset=koi8-r 0 0

/dev/sdb5 /usr/disk_d ext3 noexec,

codepage=866, iocharset=koi8-r 0 0

Монтирование:

mount -t vfat /dev/sdb5 /mnt/d

umount /usr/disk_d

mount -t ext3 /dev/sdb5 /mnt/d

mount -t fs_type device mount_point

Параметр fs_type (который должен следовать за -t) задает тип файловой системы, например: ext2 -- основная файловая система Linux, ext3 -- ее более новая версия (с журналированием), iso9660 -- для CD-ROM, vfat и ntfs -- для FAT16/32 и NTFS соответственно. Встречаются и другие варианты. NTFS может не поддерживаться по умолчанию (это проверяется в файле /proc/filesystems или /etc/filesystems), в таком случае, вероятно, придется перекомпилировать ядро, включив ее поддержку. При наличии драйвера в виде модуля может оказаться достаточно команды наподобие modprobe ntfs.

Следующий параметр (device) указывает монтируемый том в стандартном синтаксисе Linux, соответственно, /dev/hda1 -- первый раздел первого жесткого диска (Primary Master) и т. д. Последний -- собственно точка монтирования, т. е. самый обыкновенный каталог, который к этому моменту уже должен существовать.

hddtemp - проверка температуры винчестера

sudo apt-get install program_name - установка программ в Linux.

Как автоматически запускать программы при входе в GNOME

* Система -> Параметры -> Сеансы

* Сеансы

Запускаемые при старте программы -> Создать/Правка/Удалить

SQL

SELECT Day(`time`),Month(`time`),Year(`time`),CONCAT("dd","ff")

update `nuke_stories`

set DateNews=CONCAT(Day(`time`),'.',Month(`time`),'.',Year(`time`))

netstat -tap

# uname -a

# nginx -v

# php -v


/etc/init.d/bind9 start - старт DNS-сервера.

dig rudjuk.kiev.ua - информация о домене.

Проверка mx-записи:

nslookup

>set type=mx

> ваш_домен.дом

pecl install fileinfo - инсталляция fileinfo

Обновление Ubuntu:

sudo apt-get update

sudo apt-get upgrade

clamscan -r /var - проверка на вирусы в Linux.

pecl install apc - установка APC.

===== Тестирование ================

# Измерение памяти (ps aux: VSZ "virtual set size" и RSS "resident set size").

# Тестирование ApacheBenchmark (2 раза подряд)

ab -c 5 -n 1000 http://nerusoft.com/

http_load -rate 5 -seconds 10 urls

netperf - проверка скорости работы по сети.

siege - тестирование по http-регрессии.

apache benchmark - проверка нагрузочной способности Apache.

ab http://nerusoft.com

pathping ae-it.info - путь прохождения пакета.

sudo apt-get install subversion

tcpdump -i rl0 -n -p | grep smtp - просмотр всех smtp-пакетов.

Доступность домена в мире

http://host-tracker.com - проверка доступности интернет-адреса в мире.

host -t ns rudjuk.kiev.ua 213.186.116.138

Отправка почты из консоли:

$cat какой_либо_текстовый_файл |mail test@virtual1.domain

tcpdump - просмотр передаваемых пакетов

netstat -an Просмотр портов

/usr/sbin/apache2ctl startssl - запуск apache с ssl.

netstat -tap

http://www.ispconfig.org/ - ISPConfig.

/etc/init.d/postfix restart - перезагрузка Postfix.

/bin/sh /root/ispconfig/httpd/bin/apachectl startssl

#### /etc/init.d/postfix start

#### /etc/init.d/saslauthd start

#### /usr/sbin/authdaemond

// Start Bind

/etc/init.d/bind9 start

http://www.ispconfig.org/

### /etc/init.d/courier-authdaemon restart

### /etc/init.d/courier-imap restart

### /etc/init.d/courier-imap-ssl restart

### /etc/init.d/courier-pop restart

### /etc/init.d/courier-pop-ssl restart

### /etc/init.d/postfix restart

/etc/init.d/proftpd restart - перезагрузка FTP-сервера ProFTP

http://www.howtoforge.com/perfect_setup_ubuntu704_...

/usr/bin/updatedb - Обновление базы данных обновлений.

Настройка почты: http://www.linux16.net/node/250

/usr/sbin/apache2 -k restart

Отключение UpdateDB:

sudo chmod -x /etc/cron.daily/slocate

FreeBSD

who w Кто подключен на данный момент к FreeBSD.

last Отображает список последних терминальных сессий.

users Список текущих пользователей

pw Создание, модификация и удаление пользователей и групп

pw deluser пользователь pw user del пользователь rmuser Удаление пользователя

pw user add Пользователь -m adduser Модификация пользователя

pw user add Пользователь -m -s /bin/false Создание пользователя без возможности подключения по Shell

passwd Пользователь Изменение пароля пользователя

cal календарь

date дата

ls Список файлов

ls -1

cat Просмотр текстового файла

cp name1 name2 Копирование файлов

mv filename1 filename2 Перемещение файла

diff name1 name2 Сравнение файлов

grep текст Извлечение из файла строк, включающих текст

mkdir Создание каталога

rmdir Удаление каталога

find -name текст Ищет файл по названию

mount Подключение диска

umount Отключение диска

df Просмотр свободного пространства

ps auxww

ps ux Показывает активные процессы

kill номер процесса Освобождение процессов

kill -9 номер процесса Принудительное завершение процессов

less Утилита для разбиения просматриваемой информации на страницы

man Помощь

info Помощь

vi

view Просмотр текстового файла

ee Редактирование текстового файла.

id Сообщает информацию о пользователе

pwd Показывает текущий каталог

apropos текст Все вхождения текста в базе whatis

which текст Показывает где находится команда.

locate текст Показывает все маршруты, где есть текст.

whereis текст Ищет файл текст и выдаёт полный путь к нему.

# /sbin/mount -t msdos /dev/fd0 /mnt Монтирование дисковода

% cp chmod.txt /mnt Коирование файла на монтированный дисковод

# /sbin/umount /mnt Размонтирование дисковода

/sbin/mount_cd9660 /dev/cd0a /cdrom /sbin/mount /cdrom Монтирование CDROM

/sbin/umount /cdrom Размонтирование CDROM

pkg_add /cdrom/packages/All/packagename Получение пакета

make all install Установка порта

rehash Перечитать файлы в маршрутах поиска

gunzip filename tar xvf filename tar -jxvf архив Распаковка файлов

echo $SHELL Определение используемого командного процессора

su -m Работа в режиме суперпользователя

env Перечень системных переменных

inetd.conf Прописывается Запуск сервиса firebird

inet_gds_service Название сервиса interbase

chmod 511 название файла Назначение атрибутов файла

chown root.root /etc/mail/dot-qmail

/home/vpopmail/domains/ Тут складируется почта в vpopmail

telnet localhost 25 Проверка работы qmail

/etc/rc.d/rc.M Демоны

/sbin/dmesg Список портов

/usr/local/etc/rc.d Автоматически запускаемые сервисы

/etc/crontab /var/cron/tabs Файлы, запускаемые по умолчанию

syslog.conf Настройка лог-файлов

newsyslog.conf Указание, когда файлы должны архивироваться.

% host -t mx FreeBSD.org Просмотр MX-записей

mail Получение и отправка почты

netstat -an Просмотр портов

sockstat sockstat -46 Просмотр открытых портов

nmap -v -P0 -sU - 1-65535 IP_ADDRESS Полный просмотр портов

fetch URL Получение файла из интернет

wget URL Получение и интернет страницы

fsck -f -y Проверка диска в FreeBSD

/usr/ports/net/cvsupit - путь к пакету cvsup. Апргейд коллекции портов: Редактируем /usr/share/examples/cvsup/ports-supfile и запускаем: /usr/local/bin/cvsup -g -L 2 ports-supfile Поиск: make search key="строка" - поиск пакета по ключевому слову. make search name="строка" - поиск пакета по названию пакета. Установка портов: cd /usr/ports/порт; make; make install Другие команды: make deinstall - деинсталлировать приложение. make fetch - скачать приложение из сети. make checksum - проверить контрольные суммы. make depends - перестроить зависимости. make extract - разархивировать исходные тексты в work директорию. make patch - применить патчи к приложению. make build - собрать приложение из исходных тестов. make clean - "почистить" исходники после сборки. make reinstall - переустановить приложение после удаления. make package - построить из порта package.

touch Изменяет название файла без редактирования.

gdb progname Emacs Отладчик

xxgdb Графический отладчик

% cc -g -o temp temp.c Компиляция программы

./bin/mysqladmin -u root password 'new-password'

./bin/mysqladmin -u root -h localhost password 'new-password'

SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('dima1980'); Установка пароля, совместимого со старыми паролями.

REPAIR TABLE atblenaeme;

myisamchk -r table_name myisamchk --safe -recover --force myisamchk -o -f news_ukr.MYI Восстановление таблицы.

mysqldump --tab=/path/to/some/dir --opt --full mysqlhotcopy database /path/to/some/dir Полное резервное копирование базы данных.

webbench -c 50 http://nerusoft.com/ Тестирование скорости работы веб-сервера.

rpm -i packagename.rpm

rpm -u packagename.rpm Установка и удаление пакета.

/etc/logrotate.conf

/opt/sbin/logrotate - утилита Настройка ротации логвов.

yum update Обновление конфигурации через интернет в Linux.

sysctl net. Просмотр переменных окружения

sysctl kern.maxfiles Макс. количество открытых файлов

Можно ли обойтись в FreeBSD GENERIC ядром или как изменить параметры ядра без его пересборки. [есть мнение]

man sysctl.conf; man sysctl

man loader.conf; man loader

На основе параметров в /boot/defaults/loader.conf, формируем /boot/loader.conf,

где можем указать какие модули подгружать и какие значения системных констант использовать.

Например, безе пересборки можно использовать GENERIC с /boot/loader.conf:

kern.maxusers="512"

kern.ipc.nmbclusters="16384"

null_load="YES" # Грузим модуль для Null filesystem

vinum_load="YES"

accf_http_load="YES" # HTTP request accept filter

/etc/sysctl.conf

kern.maxfiles=32000

kern.ipc.somaxconn=1024

net.inet.ip.portrange.last=30000

net.inet.tcp.sendspace=32768

net.inet.tcp.recvspace=32768

sysctl -a Вывод всех допустимых команд (более 5тыс)

Как обновить код загрузчика в FreeBSD [есть мнение]

Ставим boot-менеджер в MBR:

boot0cfg /dev/ad0

или fdisk -B -b /boot/boot0 /dev/ad0

Обновляем boot-loader (boot1 и boot2):

disklabel -B ad0s1

use.perl port Если ругается на версию Перла

pkg_add -r libxml2

pkg_add -r apache22

pkg__add, pkg_delete, pkg_info, pkg_update, pkg_version и pkg_create

/stand/sysinstall

pkg_add -nv Просмотреть что будет делать инсталляция, не проводя инсталляцию.

/var/db/pkg -f Тут лежат пакеты

dmesg Внутренний буфер сообщений

Обнаружение Syn-атак

# netstat -n -p TCP tcp 0 0 10.100.0.200:21 237.177.154.8:25882 SYN_RECV - tcp 0 0 10.100.0.200:21 236.15.133.204:2577 SYN_RECV - tcp 0 0 10.100.0.200:21 127.160.6.129:51748 SYN_RECV - tcp 0 0 10.100.0.200:21 230.220.13.25:47393 SYN_RECV -

Установка Perl

cd /usr/ports/lang/perl-5.8/ make ENABLE_SUIDPERL=yes make test make install clean rehash

Установка OpenSSL

cd /usr/ports/security/openssl make install clean rehash

Установка MySQL

cd /usr/ports/databases/mysql41-server/ make BUILD_OPTIMIZED=yes WITH_OPENSSL=yes WITH_CHARSET=cp1251 make install clean rehash

Установка скриптов для настройки MySQL

cd /usr/ports/databases/mysql41-scripts/ make install clean rehash

echo 'mysql_enable="YES"' >> /etc/rc.conf cp /usr/local/share/mysql/my-large.cnf /etc/my.cnf

Указываем где лог:

[mysqld] log=/var/log/mysql.log

touch /var/log/mysql.log chown mysql:mysql /var/log/mysql.log

/usr/local/etc/rc.d/mysql-server.sh start Стартование MySQL

cat /var/log/mysql.log Просмотр лога MySQL

/usr/local/bin/mysql_secure_installation Установка безопасности MySQL

Cyrus-SASL

http://turbogaz.kharkov-ua.com/unix/mail/patch/cyr... Патч для шифрации паролей.

cd /usr/ports/security/cyrus-sasl2/ make WITH_AUTHDAEMON=yes WITHOUT_NTLM=yes WITH_MYSQL=yes WITHOUT_OTP=yes make install clean rehash

Expect - для возможности изменения пароля через Web

cd /usr/ports/lang/expect/ make install clean

courier-authlib

cd /usr/ports/security/courier-authlib/ make config make install clean echo 'courier_authdaemond_enable="YES"' >> /etc/rc.conf /usr/local/etc/rc.d/courier-authdaemond.sh start

cat /var/log/maillog | grep authdaemond

/etc/resolv.conf - настройка сети

/etc/rc.conf

/etc/named/named.conf - настройка DNS-сервера.

/etc/nsswitch.conf - DNS-клиент

/usr/local/etc/dhcpd.conf.sample

/usr/local/etc/dhcpd.conf

netstat -nr cat /etc/rc.conf ps -axf

ssh-keygen Генерация ключей для ssh1

ssh-keygen -t rsa Генерация ключей для ssh2 RSA

ssh-keygen -t dsa Генерация ключей для ssh2 DSA

ls -la .ssh Проверка есть ли ключи для SSH

Sysinstall Настройка FreeBSD

10.02.09, 20:31