Перейти к содержанию

Топ полезных команд

Отправить тестовое письмо:

echo "test" | mail -s "Test Subject" user@gmail.com

Выполнить PHP функцию в консоли:

php -r "echo phpinfo();" | grep date.timezone

Отключить спящий режим на ubuntu server:

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

Для проверки набора переменных BASH_ENV:

$ env | grep BASH_ENV

Замер скорости диска:

dd if=/dev/zero of=testfile bs=4k count=1310720
dd if=testfile of=/dev/null bs=4k count=1310720

Обновить locate:

/usr/libexec/locate.updatedb

Изменить текстовый редактор для конкретного случая:

export EDITOR=ee; crontab -e

Удалить snapd в Ubuntu Server:

$ sudo apt purge snapd
$ sudo apt-mark hold snapd
snapd помечен как зафиксированный.

Удалить старые данные telegraf в Influxdb 1.8:

$ docker exec -ti influxdb influx 
Connected to http://localhost:8086 version 1.8.10
InfluxDB shell version: 1.8.10
> use telegraf;
Using database telegraf
> DELETE WHERE time < '2022-06-01'

будут удалены все записи до 2022-06-01

Работа с сетью

Изменением маршрута:

route change default 192.168.1.1

Выключаем IPv6:

sudo nano /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

Работа с Mysql

Вывод переменных:

mysql> SHOW VARIABLES;
env

Дамп базы database:

mysqldump -u root -p database > dump.sql

mysqldump -u root -p --routines --all-databases --default-character-set=utf8 > dump.sql
mysqldump -uuser -ppassword --events --routines --triggers database > dump.sql

Создать безопасную авторизацию к Mysql:

mysql_config_editor set --login-path=local --host=localhost --user=phpmyadmin --password

Вывод сохраненных данных для авторизации:

mysql_config_editor print --all

[local]
user = phpmyadmin
password = *****
host = localhost

/usr/local/bin/mysql --login-path=local -D phpmyadmin

Загрузка базы:

MariaDB [(none)]> SET names 'utf8';
MariaDB [(none)]> source dump.sql

Вывод настроек кодировок:

MariaDB [(none)]> SHOW VARIABLES LIKE "%char%";

После установки сервера необходимо установить root пароль для доступа к БД, удалить анонимного пользователя и тестовую БД:

mysql_secure_installation

Вывод списка баз данных:

show databases;

Вывод списка таблиц:

show tables;

Вывод списка пользователей:

select User, Host, Password from mysql.user;

Создать пользователя со всеми правами:

CREATE USER 'login'@'%' IDENTIFIED BY 'PASSWD';
GRANT ALL PRIVILEGES ON *.* TO 'login'@'%';
CREATE USER 'login'@'localhost' IDENTIFIED BY 'PASSWD';
GRANT ALL PRIVILEGES ON *.* TO 'login'@'localhost';
FLUSH PRIVILEGES;

Создать пользователя asterisk и дать доступ только к базе asterisk:

CREATE USER 'asterisk'@'%' IDENTIFIED BY 'asterisk';
CREATE DATABASE asterisk;
GRANT ALL PRIVILEGES ON asterisk.* TO 'asterisk'@'%';
FLUSH PRIVILEGES;

Удалить пользователя:

DROP USER 'login'@'localhost';

Посмотреть права пользователя:

SHOW GRANTS FOR 'backend'@'172.20.0.6';

Работа с архивами

Создать .tar.gz:

tar -czvf file.tar.gz /full/path — создать .tar.gz (архив)
tar -cjvf file.tar.bz2 /full/path — создать .tar.bz2 (архив)

Распаковать .tar:

tar -xvf file.tar.gz

Распаковать gz:

gunzip yourfile.gz

Распаковать многотомный архив:

7za x arch.7z.001

Получить листинг файлов в архиве:

tar -tf <path_to_tarfile>

Извлечь конкретный файл из архива:

tar -xf <path_to_tarfile> [<file_1_in_archive> <file_2_in_archive> ..]

Скопировать файл на сервер:

scp -P 12322 file.tar login@111.111.111.111:/home/user

Запуск программ от супер пользователя:

ee /usr/local/etc/super.tab
jexec              /usr/sbin/jexec                  имяпользователя, пользователь
asterisk           /usr/local/sbin/asterisk         имяпользователя
Запускать:
super asterisk -rvvv

Работа с пользователями

Добавить пользователя:

sudo adduser testuser

или задать пользователя с конкретными gid и uid:

sudo groupadd asterisk -g 8000
sudo useradd asterisk -u 8000 -g 8000 -m -s /usr/sbin/nologin

Добавить пользователя testuser в существующую группу asterisk:

sudo usermod -aG asterisk testuser

Freebsd

Добавить нового пользователя vasya в систему и добавить этого пользователя в группу clients.

pw useradd vasya -G clients

Удалить пользователя:

rmuser

Руссификация консоли

ee ~/.login_conf
me:\
        :charset=UTF-8:\
        :lang=ru_RU.UTF-8:

Показать превышение дисковой коты по jail:

df | grep -v devfs | grep "/jails/" | awk '{if($5>90) print $6,$5}' | sed 's/\/Zjails\///g' | column -t

Задать переменную для запуска скриптов из "/root/bin":

ee ~/.cshrc
set path=($path /root/bin)

Примонтировать бакет в Яндекс облаке (для дебаг режима можно использовать ключи "-d -f"):

s3fs namebucket /srv/namebucket -o passwd_file=/root/.passwd-s3fs -o url=http://storage.yandexcloud.net -o use_path_request_style

Если при монтировании бакета выводится ошибка:

fuse: failed to open fuse device: No such file or directory

Значит не загружен модуль fuse, проверить вывод:

# kldstat
Id Refs Address            Size     Name
 1   17 0xffffffff80200000 20647c8  kernel
 2    1 0xffffffff82266000 381130   zfs.ko
 3    2 0xffffffff825e8000 a380     opensolaris.ko
 4    1 0xffffffff82821000 2328     ums.ko
 5    1 0xffffffff82824000 2e4a8    pf.ko

Загружаем модуль:

kldload fuse

К началу