Linux: Системный администратор
1.81K subscribers
76 photos
8 videos
15 files
22 links
Здесь вы найдете полезные советы, практические материалы и интересные инсайты по администрированию Linux. Погружаемся в мир команд, скриптов и серверов вместе! 🚀

Авторский канал действующего админа 👨🏼‍💻
Download Telegram
Операции с файлами в Linux

pwd # Выводит текущий путь;
ls # Выводит список файлов и каталогов. Пример вывода форматированного списка всех файлов и директорий, включая скрытые: ls -laX ;
cd # Переход по директориям. Примеры:
cd # Переход в домашнюю директорию;
cd /home # Пример перехода в /home;
cd .. # Переход в директорию уровнем выше;
cd ~user # Перейти в домашнюю директорию пользователя user ;
touch # Создание пустого файла если нет. Пример: touch test.txt ;
rm # Удаление. Примеры:
rm test.txt # Удаление файла;
rm -rf temp # Удаление директории temp с вложенными файлами;
cp # Копирование. Примеры:
cp test.txt /home/test.txt # Копирует test.txt из текущей директории в /home ;
cp -la /dir1 /dir2 # Копирование директорий;
ln # — создание символической ссылки. Пример: ln -s /var/test.txt /home/test.txt — создать символическую ссылку к файлу /var/test.txt в директории /home;
mkdir # Создание директории. Пример: mkdir temp ;
rmdir # Удаление директории. Пример: rmdir temp ;
mv # ПеремещениеПереименование. Пример переименования директории: mv /dir1 /dir2 (аналогично с файлами);
locate # Поиск. Пример поиска везде всех файлов с именем test.txt: locate test.txt ;
find # Поиск. Примеры:
find /home/it -name test.txt # Найти файлы и директории с именем test.txt в /home/it и вложенных;
find /home/it -name "*.txt" # Найти все файлы и директории в /home/it и вложенных, имена которых оканчиваются на ‘.txt’;
find /usr/bin -type f -atime +100 # Найти все файлы в ‘/usr/bin’, время последнего обращения к которым более 100 дней;
find /usr/bin -type f -mtime -10 # Найти все файлы в ‘/usr/bin’, созданные или изменённые в течении последних 10 дней;
stat # Отображение всей доступной информации об указанном файле. Пример: stat test.txt;
file # Определяет тип файла. Пример: file test.txt ;
chmod # Права доступа;
chown # Меняет владельца файла, пример: chown www:www test.txt;
mc # запуск файлового менеджера;

#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍10🔥1
Утилита systemctl

В Systemd есть специальный инструмент для управления службами в Linux - команда systemctl. Эта утилита позволяет делать очень много вещей, начиная от перезапуска службы linux и проверки ее состояния, до анализа эффективности загрузки службы.

list-units - посмотреть все службы (юниты) которые сейчас загружены в память, аналог опции -t
list-sockets - посмотреть все сокеты служб, которые сейчас загружены в память
list-timers - посмотреть список таймеров, загруженных в память
start - запустить службу linux
stop - остановить службу linux
reload - попросить службу перечитать свою конфигурацию из файловой системы
restart - перезапустить службу
try-restart - перезапустить службу, только если она запущена
reload-or-restart - попросить службу обновить свою конфигурацию, если не поддерживается просто выполнить перезапуск службы linux
isolate - запустить только одну службу вместе с ее зависимостями, все остальные остановить
kill - отправить сигнал завершения процессу используется вместе с опциями --signal и --kill-who
clean - удалить все данные, которые касаются указанной службы, сюда входит кэш, логи, данные выполнения
is-active - проверить запущена ли служба linux
is-failed - проверить не завершилась ли служба с ошибкой
status - посмотреть состояние и вывод службы
show - посмотреть параметры управления службой в Linux
cat - посмотреть содержимое юнит файла в текстовом виде
reset-failed - очистить состояние failed для служб, которые завершились с ошибкой
list-dependencies - посмотреть зависимости службы linux
list-unit-files - вывести все установленные файлы служб
enable - добавить службу в автозагрузку
disable - удалить службу из автозагрузки
is-enabled - проверить если ли уже служба в автозагрузке
reenable - сначала выполнить disable потом enable для службы
list-jobs - все выполняющиеся задачи Systemd.
snapshot - сохранить состояние служб, чтобы потом восстановить
daemon-reload - обновить конфигурацию юнитов для всех служб
mask - сделать юнит недоступным
unmask - вернуть файл службы linux
link - добавить юнит файл, который расположен не в стандартной папке для юнитов
revert - вернуть юнит до состояния по умолчанию
edit - отредактировать параметры службы не изменяя основной файл юнита.

#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍5🔥3
Ваша система Linux, macOS, FreeBSD или Unix не хватает места на диске? Используйте кунг-фу командной оболочки du, чтобы вывести каталоги и файлы, занимающие больше всего места на диске:

du -a -x {/dir1/} | sort -n -r | head -n 10

#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍5
Свободное место на диске в Linux

Чтобы проверить использование дискового пространства вашей системы, выполните следующую команду:
df -h

Проверьте использование дискового пространства по файлам и каталогам
Если ваша система в настоящее время использует слишком много дискового пространства, выполните следующие действия, чтобы определить файлы для удаления:
Чтобы определить, какие файлы и каталоги занимают большую часть места на вашем жестком диске, выполните команду du.
du -h

Изучите нужный каталог
Чтобы просмотреть нужный каталог, выполните команду:
du -ch ИМЯ_КАТАЛОГА

Чтобы удалить нужные файлы, выполните следующую команду, где filename представляет файл для удаления:
rm -f filename

Отсортировать по размеру
Чтобы отсортировать по размеру можно воспользоваться командой sort
du -h /var/log | sort -h

Сохранение записей журнала

Файлы журналов часто занимают большой объем дискового пространства. Чтобы сохранить самые последние записи системного файла журнала при удалении лишних файлов журнала, выполните следующие действия:
Если вы еще не нашли конкретные файлы для удаления из этого каталога, выполните команду du.
Изучите выходные данные команды, чтобы определить файлы для удаления.
Для каждого файла выполните следующие команды, где filename представляет имя файла.
tail -5000 filename > filename.new
mv filename.new filename
sync

To снимите блокировку файла, перезапустите службу, создавшую файл.

ИНТЕЛЛЕКТУАЛЬНЫЕ ошибки
Чтобы отключить интеллектуальные ошибки, выполните следующие команды:
touch /var/cpanel/disablesmartcheck
/scripts/upcp


#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍51
Примеры использования команды grep в Linux

Поиск файлов с помощью команды grep
# dpkg -l | grep -i python
Команда dpkg -l выводит на экран установленные пакеты с расширением *.deb. Результат вывода с помощью символа передается по конвейеру команде grep. При этом опция -i позволяет команде игнорировать регистр в названиях.

Фильтрация содержимого файлов с помощью команды grep (игнорирование закомментированных строк)
# grep –v "#"  /etc/apache2/sites-available/default-ssl
Опция –v указывает команде, что на экран нужно выводить те строки, в которых нет искомого выражения.

Обнаружение всех файлов с расширением .mp3 с помощью команды grep
# find . –name "*.mp3" | grep –i "ABC" | grep –vi "remix"
find — утилита поиска файлов в файловой системе;
. — указывает, что поиск следует вести относительно текущего рабочего каталога;
–name — проверяет название файлов на соответствие заданному шаблону;
"*.mp3" — шаблон, соответствующий файлам искомого формата;
| — объединяет команды в конвейер (вывод первой команды передается на ввод второй — и так далее);
grep с опцией –i — поиск по выводу команды find с игнорированием регистра;
"ABC" — шаблон, по которому осуществляется поиск;
grep –vi — поиск по выводу предыдущей команды grep и исключение результатов, соответствующих заданному шаблону;
"remix" — шаблон, по которому осуществляется поиск.

Отображение строк до или после строки с результатом поиска
# ifconfig | grep –A 4 eth0
-A (от англ. After) — указанное количество строк до шаблона;
-B (от англ. Before) — указанное количество строк после шаблона.

Выведение заданного числа всех соседних строк с помощью команды grep
# ifconfig | grep -C 2 lo
В том случае, если Вы точно не знаете, какие именно соседние строки (до или после строки, содержащей шаблон) Вам нужны — воспользуйтесь командой grep с опцией -C. Следующая комбинация команд выведет на экран по 2 строки до и после строчки вывода команды ifconfig, содержащей шаблон lo:

Подсчет числа строк, содержащих искомое выражение
# ifconfig | grep -c inet6
В некоторых случаях Вам могут понадобится не сами строчки, включающие заданное выражение, а их общее количество. В таком случае воспользуйтесь опцией -c. Следующая комбинация команд выведет на экран количество строк в выводе команды ifconfig, включающих шаблон inet6.

#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍8
Команда findmnt

Это простая утилита командной строки, используемая для отображения списка подключенных файловых систем или поиска файловой системы в /etc/fstab, /etc/mtab или /proc/self/ mountinfo.

Для отображения списка подключенных файловых систем, выполните в командной строке следующую команду.
По умолчанию команда findmnt отображает файловые системы в древовидном формате.
# findmnt

Чтобы отобразить информацию в виде обычного списка, используйте параметр -l, как показано ниже
# findmnt -l

Можно выбрать отображение файловых систем только определенного типа, используя параметр командной строки -t, за которым следует тип файловой системы, такой как XFS или EXT4.
# findmnt --fstab -t xfs или # findmnt --fstab -t ext4

Поиск файловой системы, используя точку монтирования.

Например, следующая команда отображает все файловые системы /etc/fstab, где каталогом точки монтирования является /mnt/external/disk2.
# findmnt --fstab /mnt/external/disk2 # this prints bind mounts where /mnt/external/disk2 is a source
или # findmnt --fstab --target /mnt/external/disk2

Выводим все файловые системы /etc/fstab и преобразовываем теги LABEL = и UUID = в реальные имена устройств, добавьте ключ – –evaluate
# findmnt --fstab --evaluate

Отобразить только точку монтирования, в которой смонтирована файловая система с меткой «/ boot» или «/», используйте следующую команду.
# findmnt -n --raw --evaluate --output=target LABEL=/boot или # findmnt -n --raw --evaluate --output=target LABEL=/

Findmnt также позволяет отслеживать действия по монтированию, размонтированию, перемонтированию и перемещению каталога, например, в /mnt/test.
# findmnt --poll --mountpoint /mnt/test

Если вы хотите больше информации в выводе, используйте ключ –verbose.
# findmnt --real --verbose


#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍3