Linux: командная строка - это не страшно

Осваиваем командную строку. Практические советы.
Караул! Помогите! После (установки, изменения состава пакетов, настройки видеокарточки - нужное подчеркнуть) графический интерфейс не грузится, только командная строка. Что делать?! Такие вопросы через один встречаются на форумах, посвященных Linux. Что делать? - вводить команды. Ниже даны примеры с разъяснениями по самым распространенным вопросам при работе с командной строкой, задаваемым обычно на форумах.

После установки системы я вижу на экране строку
login:
Что делать?

Необходимо ввести имя пользователя, указанное на этапе установки, либо root, нажать на Enter, затем ввести пароль, который просила ввести программа установки.
root - это суперпользователь в Unix системах.
Внимание! Работать постоянно с правами пользователя root крайне нежелательно с точки зрения безопасности. Работайте под root'ом только при необходимости вводить много команд, которые требуют привелегий суперпользователя. Одну-две команды, требующие прав root, можно выполнить с помощью команды sudo в сессии обычного пользователя, к примеру
$sudo /sbin/ifconfig
Также следует учесть, что не все нижеприведенные примеры могут оказаться работоспособными в любом дистрибутиве, так как могут отсутствовать необходимые пакеты.

Что значит "прочитать man по mount" ?
Это означает, что в командной строке необходимо выполнить команду
#man mount
man показывает справочную информацию.
#man man
выведет справочную информацию о себе.

Как узнать информацию о используемой системе?
#uname -a

Как узнать из командной строки установлена ли в системе та или иная программа и в каком каталоге именно?
#locate
либо командой поиска
#find / -name
которая умеет искать не только по имени программы. Больше информации можно узнать, выполнив команду
#man find

Как узнать сколько свободного места на диске(дисках)?
#df
Команда показывает информацию об использованном и свободном месте для каждого смонтированного раздела.

Как отредактировать текстовый (конфигурационный) файл?
Необходимо выполнить команду
#vi
если ответом системы на вышеприведенную команду будет сообщение, что команда не найдена, значит текстовый редактор vi не установлен в системе. Можно попробовать другие редакторы
#joe
#vim
#pico
Необходимо учитывать, что в Linux в именах файлов имеет значение регистр букв. т.е. XORG.conf и xorg.conf - это разные файлы.

Я не нашел в системе текстовый редактор, но надо создать файл на несколько строк. Возможно ли это без текстового редактора?
Возможно. Предположим, необходимо создать исполняемый файл script.sh с двумя строками
#!/bin/sh
/bin/ls -sl

Выполняем:
echo '#!/bin/sh' > script.sh
echo '/bin/ls -sl' >> script.sh
chmod +x script.sh

Как создать пустой файл с именем README?
echo > README

Как создать директорию с именем video?
md video

Как узнать, какие модули ядра загружены?
#lsmod

Как просмотреть текстовый файл?
#less

В лог-файле много строк. Как просмотреть только строки, содержащие слово "Error" ?
#cat | grep "Error"
Внимание! различается регистр букв, т.е. "error" и "Error" даст разные результаты.

Как вывести последние n строк текстового файла?
#cat | tail -n
Пример: посмотреть последние 20 строк файла системных сообщений
#cat /var/log/messages | tail -20

Как просмотреть последние системные сообщения?
#dmesg

Где находится и как называется конфигурационных файл графической подсистемы?
Во всех современных дистрибутивах это
/etc/X11/xorg.conf

Как загрузить модуль ядра?
#insmod

либо
#modprobe

Как посмотреть сколько жестких дисков видит система и какие разделы на них?
#fdisk -l

Как "увидеть флешку"?
После подключения необходимо выполнить монтирование раздела с Flash-накопителем. Сначала необходимо выполнить команду
#dmesg
чтобы посмотреть какое имя устройства система назначила накопителю. Пусть имя утройства будет /dev/sda, а имя раздела - /dev/sda1. Монтируем:
#mount /dev/sda1 /mnt/flash
где /mnt/flash - существующий каталог.
Теперь содержимое Flash-накопителя можно посмотреть в каталоге /mnt/flash

Как размонтировать раздел?
#umount

Как перейти в определенный каталог?
#cd
Пример: перейти в каталог /etc/X11
#cd /etc/X11

Как удалить файл?
#rm

Как удалить каталог?
#rm -R

Как посмотреть содержимое текущего каталога?
#ls

Как посмотреть содержимое определенного каталога?
#ls

Команда ls не показывает размер файлов. Что делать?
#ls -sl

Как скопировать файл?
#cp

Как выполнить исполняемый файл?
Если файл находится в текущем каталоге, то необходимо выполнить
#./
Если файл находится не в текущем каталоге:
#//

Я точно знаю, что файл исполняемый, но при попытке его выполнить система сообщает, что "отказано в доступе". Что делать?
Если при этом Вы работаете учетной записью пользователя root, то это значит, что файлу не присвоен атрибут исполняемый. Необходимо выполнить команду
#chmod +x

Как выяснить, установлен ли в системе определенный rpm-пакет?
#rpm -qa | grep ""

Как установить rpm-пакет?
#rpm -i

Как посмотреть список исполняемых процессов?
#ps -ax

Как посмотреть загруженность системы, выделенную память, какая программа сколько потребляет ресурсов?
#top
Чтобы прервать выполнение top необходимо нажать q

Как получить информация о процессоре?
#cat /proc/cpuinfo

Как получить расширенную информацию о распределении памяти?
#cat /proc/meminfo

Как получить информацию об устройствах pci?
#lspci

Как получить информацию об устройствах в системе?
#lsdev

Как посмотреть сетевые соединения?
#netstat

Как посмотреть только http-соединения?
#netstat | grep "http"

Как посмотреть какие процессы какие сетевые соединения открыли?
#lsof -i

Что значит пропинговать mail.ru ?
Это значит послать запросы по протоколу ICMP на хост mail.ru. Выполняется командой
#ping mail.ru
Таким образом можно проверить наличие сетевого соединения с ближайшим хостом или определить наличие в сети определенного узла. Однако, иногда сеть или хост специально закрывают от ICMP-пакетов в целях обеспечения безопасности.

Что значит протрассировать (дать трассерт на) хост mail.ru ?
Это означает, что необходимо дать команду
#traceroute mail.ru
Данная команда показывает узлы, через которые проходит запрос и задержку до них.

Как посмотреть информацию о сетевых интерфейсах?
#ifconfig

Как отключить (положить) сетевой интерфейс?
#ifconfig down
Обычно интерфейс на первой сетевой карте имеет имя eth0

Как включить (поднять) сетевой интерфейс?
#ifconfig up

Как посмотреть "физическую" информацию о интерфейсе?
#ethtool

Как просмотреть таблицу маршрутизации?
#route

Как прописать маршрут по умолчанию для интерфейса eth1?
#route add default gw dev eth1

Как удалить маршрут по умолчанию?
#route del default

Как просмотреть настройки файрвола?
#iptables -L

Как отключить файрвол?
#iptables -P INPUT ACCEPT
#iptables -P OUTPUT ACCEPT
#iptables -P FORWARD ACCEPT
#iptables -F
#iptables -X
Внимание! после перезагрузки системы настройки файрвола снова вступят в действие.

Я запустил в консоли программу и не знаю как из нее выйти?
Обычно для того, чтобы прервать выполнение программы необходимо нажать Ctrl+C
Однако, это справедливо не для всех програм.

Как "убить" процесс?
#kill
Номер процесса можно узнать, выполнив команду ps ax

"Убить" процесс с помощью kill не получается? Что делать?
Выполнить команду
#kill -9

Как "убить" все процессы с определенным именем?
Выполнить команду
#killall

Как перезагрузить компьютер?
#reboot

Как выключить компьютер?
#halt

После изменения настроек графическая система не загружается. Что делать?
Залогиниться под учетной записью root. Выполнить
#X -configure
#cp /home/root/xorg.conf.new /etx/X11/xorg.conf

Залогиниться пользователем. Выполнить
$startx

Команды, специфические для Ubuntu/Kubuntu

Как обновить список доступных в репозитариях пакетов?
$sudo apt-get update

Как обновить установленные пакеты?
$sudo apt-get upgrade

Как установить пакет?
$sudo apt-get install name
где name - имя пакета

Как найти пакет в списке доступных?
$sudo aptitude search name
где name - имя пакета

Как в Ubuntu 10.04 перенести кнопки окна слева на право?
Необходимо выполнить команду
$gconftool-2 --set /apps/metacity/general/button_layout --type string "menu:minimize,maximize,close"