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»

vsesovety.info/node/129

Яндекс.Метрика