Введение в консоль для начинающих

Автор: DropC

Введение



Данная статья будет абсолютно не интересна опытным линуксойдам, но вот новичкам станет хорошим подспорьем и шпаргалкой в работе.
Администрирование и настройка Linux непрерывно связаны с командной строкой, от этотго никуда не денешься. Поэтому начинающие линуксойды часто задаются вопросом "куда тут тыкать?". Начнем.

Работа с сетью.



Первое, с чем приходиться сталкиваться-- это настройка сети, т.к. именно сеть позволяет найти необходимую в работе информацию.
ifconfig показать все сетевые протоколы и их параметры
ifconfig eth0 показать параметры интерфейса eth0
ifup eth0 активировать (поднять) сетевой интерфейс eth0
ifdown eth0 отключить сетевой интерфейс eth0
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 Задать конфигурацию IP адреса
dhclient получить параметры с DHCP-сервера
route -n Показать таблицу роутинга
route add -net 0/0 gw IP_адрес_шлюза задать шлюз
route del 0/0 gw IP_адрес_шлюз удалить статический маршрут
traceroute _адрес_ показать путь пакета до узла
whois _адрес_ получить информацию об узле
netstat -p --inet показать активные соединения с интернетом
netstat -lp --inet Показать прослушиваемые порты в системе (и кто их слушает)

Работа с файловой системой


Следующими по важности, на мой взгляд, являются команды создания директорий, их изменения и т.д.

cd _путь_
cd .. перейти на уровень выше
cd ../.. перейти на 2 уровня выше
cd перейти в домашний каталог
cd - перейти в предыдущий каталог
pwd показать путь к текущей директории
ls показать файлы и директории в текущей директории
ls -l показать подробности о файлах и директориях
ls -a показать скрытые файлы
mkdir _имя_ создать директорию в текущей
mkdir -p _путь_ создать директорию в указанном месте
rm _имя_ удалить
rmdir dir1 удалить директорию с именем dir1
mv [имя1 или путь1] [имя2 или путь2] переместить\переименовать
cp [что копировать] [куда копировать]
ln -s [На что сделать ссылку] [имя ссылки] создать символическую ссылку

Управление deb-пакетами


Естественно при эксплуатации системы придется устанавливать и удалять программы. Так получилось, что я работал только в deb-дистрибутивах, поэтому приведу обзор команд для apt-get и dpkg.

DPKG
dpkg -i _имя_пакета_ установит или обновит ранее установленный пакет.
dpkg -r _имя_пакета_ удалит ранее установленный пакет, но сохранит файл конфигурации.
dpkg -l отобразит список всех установленных пакетов.
dpkg -s _имя_пакета_ отобразит информацию по конкретному пакету.
dpkg -P _имя_ удалит ранее установленный пакет и удалит файл конфигурации.

APT
apt-get install _имя_пакета_ установит пакет.
apt-get update получить список пакетов доступных для обновления.
apt-get upgrade обновит все установленные пакеты.
apt-get remove _имя_пакета_ удалит пакет.
apt-get check поможет узнать о конфликтующих пакетов, а также поломанных зависимостях пакетов .
apt-get -f install исправит выявлены нарушенные зависимости.
apt-get -d только загрузить - не устанавливать и не распаковывать архивы
apt-get -s ничего не делать, имитировать выполнение
apt-get -y предполагается ответ Yes на все вопросы, сами вопросы не выводить
apt-get -f продолжать, даже если проверка целостности не удачна

г-н Кузнецов дополнил следующим:

Системные операции:
init 3 -- фактически остановка Х-сервера.
init 5 -- запуск Х-сервера.
useradd (adduser) -- добавить пользователя
make -- компиляция программ. Подробности не известны.
exit -- завершить сеанс
passwd -- сменить пароль
~/<адрес> -- относительный адрес с учётом каталога в котором вы сейчас находитесь.
"|" -- конвеер. позволяет перенаправить выход одной команды на ввод другой. например: "help | more".
".." -- каталог, родительский для данного.
man <команда>- руководство по команде. Для закрытия руководства команда "q".
"*" -- набор любых символов в имени файла.
"?" -- любой символ в имени файла.
">" -- перенаправить вывод в указанное место.
"<" -- ввести данные из указанного места.
">>" -- то-же, что и ">", но данные добавляются к файлу,а не затирают старый.
ps -- выдаёт список процессов. Полный список процессов командой ps -aux
shutdown -- завершение равоты
reboot -- перезагрузка
mknod -- создание устройства (ничего толком не известно).


Операции над файлами:
cp <ключ> <источник> <назначение> -- копирование <источник>- что <назначение>- куда. ключей много
ls <ключ> <каталог> (dir = ls)-- показывает содержимое каталога <каталог>. Важные ключи: -a -- не скрывать файлы начинающиеся с "."; -l -- использовать широкий формат; -p -- добавлять "/" к каталогам;
more -- выводит файл по частям
cd -- перейти в каталог
pwd -- показать путь к текущей директории
mkdir <адрес>/<каталог>-- создание каталога <каталог> в папке <адрес>. Если адрес не указан, то в рабочем каталоге.
mv <источник> <назначение> -- перемещает <источник> в <назначение>. Если перемещать в файл, то содержимое затирается. Также можно использовать для переиминования.
rm <файл_1> <файл_2> -- удаляет файлы <файл_1> и <файл_2>.
rmdir <каталог_1> <каталог_2> -- удаляет <каталог_1> <каталог_2>, если они пустые.
cat <файл_1> <файл_2> -- выводит файли разом.
cat -- выводит на экран введённые с клавиатуры данные. Используя совместно с конвеером можно создать файл.
grep <образец> <файл_1> <файл_2> -- выдает все строки в названных файллах, которые содержат заданный <образец>.
sort -- сортировать что-то по имени. Ключи: -r -- в обратном порядке.
ln <файл> <имя_2> -- создание жёсткой ссылки. В пределах одной файловой системы создаётся два имени файла. Это выглядит как два синхронизированных файла. Для удаления файла надо удалить обе ссылки.
ln -s <файл> <имя_2> -- создание символической ссылки.
wc <ключ> <файл> -- подсчитывает пааметры файла: -c - число байт, -m - напечатать число знаков, -l - напечатать число переводов строк.
less -- позволяет просмотреть содержимое файла.
zcat -- копирует сжатый входной файл на устройство стандартного вывода с автоматический распаковкой.
gzip, tar -- сжимает файл в соответствующий формат.


Сетевые операции
ping -- пропинговать указанный адрес
ifconfig <соединение> -- показать параметры сетевого интерфейса. Если не указано конкретно, то показываются все.
ifup <соединение> -- активация сетевого интерфайса
ifdown <соединение> -- отключение сетевого интерфейса
ifconfig eth0 netmask -- задать конфигурацию IP-адреса
dhclient -- получить параметры с DHCP-сервера
route -n -- Показать таблицу роутинга(?)
route add -net 0/0 gw -- Задать шлюз(?)
route del 0/0 gw -- Удалить статический маршрут(?)
traceroute <адрес> -- Показать путь пакета до узла
whois <адрес> Получить информацию об узле
netstat -p --inet -- Показать активные соединения с интернетом
netstat -lp --inet -- Показать прослушиваемые порты и кто их слушает


Системные папки:
/bin -- многие системные утилиты.
/dev -- драйверы устройств и ссылки на них.
/sbin -- двоичные системные файлы, используемые администратором. утилиты.
/home -- <без комментариев>
/lib -- содержит образы разделяемых (системных) библиотек.
/proc -- сюда монтируется оперативная память
/tmp -- <без комментариев>
/usr -- здесь содержится большинство приклдных программ. Напимер, /usr/X386 - файлы Х-сервера, а /usr/src - исходные коды.
/dev/null -- не существующая папка. всё направленное сюда будет удалено.
/etc -- сисемные файлы и параметры конфигурации
/etc/securetty -- определяет терминалы, с которых root может войти в систему
/etc/shells -- список доступных оболочек
/etc/motd -- Сообщение дня
/etc/magic -- с помощью этого файла определяется тип файла
/etc/inittab -- Конфигуpационный файл init
/etc/fstab (и /etc/mtab) -- файлы описания монтируемых ФС.
/etc/inittab -- файл, описывающий автозагрузку(не проверено)
/etc/shutdown.rc. -- описывает процессы, происходящие при выключении.
/etc/passwd -- описание пользователей, групп и паролей (спокойтесь, пароли зашифрованны Smiling)
/etc/shadow -- сюда вынесены пароли в современных системах
/etc/printcap -- конфигурация принтера
/etc/rc -- командные файлы, выполняемые при запуске системы
/etc/fdprm -- Таблица паpаметpов дисковода, опpеделяющая фоpмат записи. Устанавливается пpогpаммой setfdprm
/var -- изменяюшиеся файлы, например логи
/var/spool/mail -- здесь обычно хранится почта, в зашифрованном виде


Устройства и операции над ними
fdformat -- форматирование дискеты или поиск плохих блоков на ней
badblocks -- поиск плохих блоков а любом диске
lpd, lpq, lprm, lpc, lpr -- команды управления принтером. что куда не известно.
mkfs -- создание файловой системы -t -- указать её тип
mount <устройство> <каталог> -- монтирует файловые системы, описанные в файлах /etc/fstab или /etc/mtab
/dev/fd0H1440 -- стандартный дисковод, первый
umount -- демонтирует примонтированные файловые системы.
dd if=<источник> of=<назначение> -- точный перенос данных с источника на назначение. и тем и другим может быть как файл, так и запоминающее устройство(работоспособность не проверена)


Управление процессами (не проверенно на практике):
"&" -- после команды обозначает, что она запущена в фоновом режиме.
jobs -- выдаёт список запущенных задач.
kill %<номер>-- завершает задачу под заданным номером. Если вместо номера используется PID, то "%" не нужен.
fg -- перевод задачи на передний план.
bg -- перевод зпущенной задачи на задний план.


Права доступа:
Общий формат: -rwxrwxrwx, где первый символ - тип объекта, вервая тройка - разрешение на чтение/запись/исполнение для владельца, вторая тройка для группы, третья - для всех остальных.
chmod <+,-> <файл> -- смена прав доступа. <+,-> - добавить или убрать право, - кому (a - всем, u - владельцу, g - группе, o - другим), - какое право, <файл> - для какого файла. Параметры писать без скобок и пробелоа.
ls -l (dir -l) -- просмотреть права доступа к файлу


Другое:
yes -- выдаёт непрерывный поток "y". Осторожно! Используется вся свободная мощьность процесссора!
vi / joe -- запуск редакторов vi или joe


Ну вот пожалуй и все. По крайней мере это все, что я знаю Smiling. Если будут предложения по дополнению, то рассмотрю.
09.05.2008 - 18:28
Стоит заметить, что в Debian сейчас рекомендуется использовать aptitude вместо apt-get. В то же время, в Ubuntu по-прежнему рекомендуется использовать apt-get.
RSS-материал RSS-материал