Содержание

Шпаргалка по командам Linux

Шпаргалка по Linux командам терминала (консоли) для Ubuntu, Debian, Rhel, CentOS, AlmaLinux. Шпаргалка включает в себя команды из различных категорий, начиная от базовых файловых операций и заканчивая сетевыми и процессорными управлениями. Вы найдете команды для навигации по файловой системе (например, cd, ls, pwd), управления файлами и каталогами (например, cp, mv, rm, mkdir), а также команды для работы с пользователями и правами доступа (например, useradd, passwd, chmod). Кроме того, Шпаргалка включает в себя команды для работы с сетью (например, ping, wget, netstat) и процессами (например, ps, kill, top), что делает ее полезным ресурсом для тех, кто занимается администрированием серверов или разработкой программного обеспечения.

for k in `find /var/www/ -type f -name *.log -size +1M`; do echo $k && echo > $k ;done
grep -f /tmp/list /etc/asterisk/sip.conf
ps aux  | grep curl  | grep lasl | awk '{ print $2}'  | xargs -I % kill -9 %

Измерение TTFB из консоли Linux

TTFB (Time To First Byte) - это метрика производительности веб-страницы, которая измеряет время, прошедшее с момента отправки запроса на сервер до получения первого байта данных от сервера в ответ. Это важный показатель эффективности веб-сайта, поскольку он отражает время, которое требуется серверу для начала отправки данных браузеру после получения запроса.

Для измерения TTFB с помощью инструмента командной строки curl вы можете выполнить следующую команду:

curl -o /dev/null -s -w "TTFB: %{time_starttransfer}\n" <URL>

Эта команда отправляет запрос по указанному URL и измеряет время, прошедшее с момента отправки запроса до получения первого байта данных от сервера. Опция -o /dev/null указывает curl не сохранять тело ответа, -s делает вывод curl более тихим (silent mode), а опция -w "TTFB: %{time_starttransfer}\n" позволяет сформатировать вывод, чтобы отобразить только время первого байта (TTFB).

Реальный пример измерения TTFB:

:~$ curl -sw "%{time_total}\n" 'https://dieg.info' -o /dev/null
2.192508
:~$ curl -sw "%{time_total}\n" 'https://dieg.info' -o /dev/null
0.268822
:~$ curl -sw "%{time_total}\n" 'https://dieg.info' -o /dev/null
0.269864
:~$ curl -sw "%{time_total}\n" 'https://dieg.info' -o /dev/null
0.297842
:~$ curl -sw "%{time_total}\n" 'https://dieg.info' -o /dev/null
0.258807
:~$ curl -sw "%{time_total}\n" 'https://dieg.info' -o /dev/null
0.293936
:~$

При первом обращении TTFB - более 2-х секунд. При всех последующих обращений с интервалом менее одной секунды - ttfb 0.2 секунды.

Аппаратное обеспечение

Поиск

from quick_commands

Linux Command Line Cheat Sheet by DaveChild

Изменить имя сервера

sudo hostnamectl set-hostname mydomain

# Sort SIZE

ls -alShr /SSD

# Recursion Copy

cp -ir /etc/avahi/ ~/.avahi_05032022

# Копировать по маске

cp -i $(find . -name "*20220809*") 11/
scp /SSD/vm46 root@xxx.xxx.xxx.xxx:/SSD/
scp test.zip gitlab:/home/darkfire/
scp -P 22799 test.sql.gz  root@xxx.xxx.xxx.xxx:/root/
scp root@xxx.xxx.xxx.xxx:/root/ansible/playbook_LEMP.yml .

Синкается содержимое директории (для удаления нужен ключ –delete)

rsync -avzP /var/www/www-root/data/www/poiskbz/ root@xxx.xxx.xxx.xxx:/var/www/www-root/data/www/poiskbz

ip -6 route show

# Open (listen) ports

netstat -tulpn
ss -tupln

# connects

netstat -ntu|awk '{print $5}'|cut -d: -f1 -s |cut -f1,2 -d'.'|sed 's/$/.0.0/'|sort|uniq -c|sort -nk1 -r
ps auxw | grep post

#Вывести весь полный скомпилированный файл nginx.confи найти домены nginx -T | grep server_name

find . -type f | xargs grep -ni 'app1.test.com'

locate my.cnf | xargs grep -ni 'max_connections'

#Mysql

create database task43topadm;
grant all privileges on task43topadm.* to 'task43topadm'@'localhost' identified by 'toptask41' with grant option;
FLUSH PRIVILEGES;

# 2 variant

create database otglobaltech;
CREATE USER "otglobaltech"@"localhost" IDENTIFIED BY "m68NNTZ7Qp0aFjcQ";
GRANT all privileges ON otglobaltech.* TO "otglobaltech"@"localhost";
FLUSH PRIVILEGES;

mysql -e "SHOW VARIABLES LIKE '%'\G;" | grep innodb_file_per_table -B 1 -A 1

#Screen screen -S darkfire

#netcat (nc)
# check udp port
nc -z -v -u xxx.xxx.xxx.xxx 1194
# check ssh
nc -z -v 185.181.165.6 22
# check rdp 3389 or rdesktop xxx.xxx.xxx.xxx
nc -z -v xxx.xxx.xxx.xxx 3389
Connection to xxx.xxx.xxx.xxx 3389 port [tcp/ms-wbt-server] succeeded!

# Преобразовать список нод в ssh config

cat inventory | grep host | sed 's/ansible_host=//g' | awk '{print "Host "$1,"\n\tHostname " $2, "\n\t User root\n" >> "/home/darkfire/.ssh/config1"}'

# Example FOR

for i in `cat /tmp/domain.txt`;do  /usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain.edit  name=$i  owner=centrmed-new 
 email=admin@domentest.com sok=ok ; done

Заключение

Представленный набор команд не только упрощает выполнение рутинных задач, но и помогает освежить память при работе с Linux. Независимо от вашего опыта, использование Шпаргалки по Командам Linux — это отличный способ повысить производительность и уверенность в вашей работе. Уверенность в знании команд Linux — ключ к успешному взаимодействию с системой, и эта Шпаргалка — ваш надежный спутник в этом увлекательном путешествии.