Полезные команды Linux

Материал из Movable Type Wiki
Перейти к: навигация, поиск

Содержание

Для некоторых задач Movable Type могут потребоваться навыки работы с командной строкой Linux. Это очень просто, достаточно знать основные команды, которые понимает Linux-сервер.

Взаимодействие с сервером происходит по протоколу SSH, поэтому, если вы работаете в ОС Windows, вам необходимо будет установить программу для работы с SSH (в Linux и Mac OS ничего дополнительно устанавливать не требуется):

  • PuTTY (русскоязычный сайт PuTTY) — бесплатная программа для работы с SSH, не требующая установки.
  • ExtraPuTTY — расширенная версия PuTTY.
  • SecureCRT — мощная программа для работы по SSH (поддерживающая многие другие протоколы).


Архивация/Разархивация

Создание tar.gz-архива:

tar czf имя-архива.tar.gz имя-папки

Распаковка tar.gz-архива:

tar xzf имя-архива.tar.gz

Создание tar.bz2-архива:

tar cjf имя-архива.tar.bz2 имя-папки

Распаковка tar.bz2-архива:

tar xjf имя-архива.tar.bz2

Распаковка rar-архива:

unrar x имя-архива.rar

Работа с файлами и папками

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

ls

Полный список файлов и папок, включая скрытые:

ls -a

Сменить директорию:

cd имя-каталога

Примеры использования:

  • cd / — переход в корневую директорию диска;
  • cd .. — переход на один уровень выше;
  • cd ../.. — переход на 2 уровня вверх;
  • cd $HOME — переход в домашнюю директорию (достаточно набрать просто cd);
  • cd /home/имя-папки/имя-подпапки — переход в указанную папку.

Создание папки:

mkdir имя-папки

Удаление файла или папки:

rm имя-файла

Удаление файлов и папок рекурсивно (включая все вложенные файлы и папки):

rm -r имя-папки

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

cp имя-файла имя-копии-файла

Скопировать папку:

cp -r имя-папки имя-копии-папки

Переименовать файл:

mv имя-файла новое-имя-файла

Если «новое-имя-файла» — это папка, то файл будет перемещён в эту папку.

Создать символическую ссылку:

ln -s имя-файла имя-ссылки

Изменение прав доступа (CHMOD) у файла или папки:

chmod 755 имя-папки

Изменение прав доступа (CHMOD) у всех файлов рекурсивно:

find . -type f | xargs chmod 644

Изменение прав доступа (CHMOD) у всех файлов с определённым расширением рекурсивно:

find . -name '*.cgi' -type f | xargs chmod 755

Изменение прав доступа (CHMOD) у папок рекурсивно:

find . -type d | xargs chmod 755

Бэкап базы данных

Бекап базы данных с помощью mysqldump (команда должна быть в одной сроке):

mysqldump --user=ПОЛЬЗОВАТЕЛЬ --host=ХОСТ -acnqQ --single-transaction --default-character-set=КОДИРОВКА --password=ПАРОЛЬ -- БАЗА_ДАННЫХ | sed "s#^CREATE TABLE#\0 IF NOT EXISTS# ; s#^INSERT INTO#REPLACE INTO#" | gzip -qf9c > /home/username/путь-где-будут-храниться-бэкапы/имя-базы-данных-`date +%Y-%m-%d`.sql.gz

Пример кодировки: cp1251, utf8.

Работа с Perl

Выполнение Perl-скрипта:

perl имя-скрипта.cgi

Установка модулей Perl через CPAN:

install ИМЯ::МОДУЛЯ

Перед выполнением этой команды необходимо войти в CPAN, выполнив следующую команду:

perl -MCPAN -e "shell"

Другие полезные команды

Закачать файл на сервер:

wget http://example.com/filename.zip

Список процессов:

top

Список процессов определённого пользователя:

top -u имя-пользователя

Текущая дата:

date

Сменить пароль:

passwd

Сменить пароль у определённого пользователя:

passwd имя-пользователя

Показать информацию и ядре:

uname -a

Показать информацию о CPU:

cat /proc/cpuinfo

Показать информацию о памяти:

cat /proc/meminfo

Показать информацию об использовании дисков:

df

Перезапустить какой-нибудь сервис:

/etc/init.d/имя-сервиса команда

Например: /etc/init.d/apache2 restart

Информация об использовании памяти и swap:

free

Возможное расположение приложения:

whereis имя-приложения

Например: whereis apache2

Перезагрузить сервер (полная перезагрузка):

reboot

Клавиатурные сочетания

  • Ctrl+C — завершить текущую команду.
  • Ctrl+D — разлогиниться (аналогично exit).
  • Ctrl+W — удалить одно слово в текущей строке.
  • Ctrl+U — удалить строку.
  • !! — повторить последнюю команду.
  • exit — разлогиниться.

Другие списки Linux-команд

  • Команды на Gluek's Wiki
  • Большой список команд на Linux SoftWare Library
  • A couple of tricks with the secure shell (англ.) — Различные трюки работы с SSH
  • commandlinefu.com (англ.) — Сборник команд Linux
  • shell-fu (англ.) — Ещё один сборник команд
  • Программы UNIX-подобных операционных систем — сборник команд в Википедии.

Авторы этой статьи

Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты