Консольные команды: различия между версиями
Перейти к навигации
Перейти к поиску
Langator (обсуждение | вклад) м (Новая страница: «==Основные команды== <source lang="bash">#Показать версию ядра Linux; uname -a # На экран выводиться информ...») |
Langator (обсуждение | вклад) м |
||
Строка 3: | Строка 3: | ||
<source lang="bash">#Показать версию ядра Linux; | <source lang="bash">#Показать версию ядра Linux; | ||
uname -a | uname -a | ||
+ | |||
# На экран выводиться информация о версии операционной системы Debian и оснваных на ней дистрибутивах; | # На экран выводиться информация о версии операционной системы Debian и оснваных на ней дистрибутивах; | ||
lsb_release -a | lsb_release -a | ||
Строка 13: | Строка 14: | ||
# Очищение экрана терминала; | # Очищение экрана терминала; | ||
− | clear | + | clear |
# Отправляет на терминалы других пользователей сообщение "Привет"; | # Отправляет на терминалы других пользователей сообщение "Привет"; | ||
Строка 40: | Строка 41: | ||
# Копирование сайта целиком и конвертирование ссылок для автономной работы. | # Копирование сайта целиком и конвертирование ссылок для автономной работы. | ||
− | wget --convert-links -r http://www.linux.org/ | + | wget --convert-links -r http://www.linux.org/ |
# Создание и настройка Dial-Up соединения для выхода в Интернет по модему; | # Создание и настройка Dial-Up соединения для выхода в Интернет по модему; | ||
Строка 77: | Строка 78: | ||
# Показывает IP-адрес введенного сайта; | # Показывает IP-адрес введенного сайта; | ||
host itshaman.ru | host itshaman.ru | ||
− | + | </source> | |
==Директории и файлы== | ==Директории и файлы== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Выводит текущий путь; |
− | # | + | pwd |
− | # | + | |
− | # | + | # Выводит список файлов и каталогов по порядку; |
− | # | + | ls |
− | + | ||
− | + | # Выводит форматированный список всех файлов и директорий, включая скрытые; | |
− | + | ls -laX | |
− | + | ||
− | + | # Переход в домашнюю директорию; | |
− | + | cd | |
− | + | ||
− | + | # Переход в директорию /home; | |
− | # mkdir /home/Mut@NT/shaman | + | cd /home |
− | + | ||
− | + | # Создание пустого файла /home/primer2; | |
− | + | touch /home/primer2 | |
− | + | ||
− | # | + | # Показать содержимое файла /home/primer2; |
− | # | + | cat /home/primer2 |
+ | |||
+ | # Выводит конец файла. Удобно при работе с логами и большими файлами; | ||
+ | tail /var/log/messages | ||
+ | |||
+ | # Редактирование файла /home/primer2; | ||
+ | nano /home/primer2 | ||
+ | |||
+ | # Вторая команда Linux для редактирования файла; | ||
+ | gedit /home/primer2 | ||
+ | |||
+ | # Добавление к концу файла "Последняя строчка" в файл /home/primer2; | ||
+ | echo "Последняя строчка" | sudo tee -a /home/primer2 | ||
+ | |||
+ | # Копирует /home/Mut@NT/primer.tx в home/primer.txt; | ||
+ | cp /home/Mut@NT/primer.txt /home/primer.txt | ||
+ | |||
+ | # Cоздает символическую ссылку /home/primer к файлу /home/Mut@NT/primer.txt; | ||
+ | ln -s /home/Mut@NT/primer.txt /home/primer | ||
+ | |||
+ | # Создание директории с именем shaman; | ||
+ | mkdir /home/Mut@NT/shaman | ||
+ | |||
+ | # Удаление директории с именем shaman; | ||
+ | rmdir /home/Mut@NT/shaman | ||
+ | |||
+ | # Удаление директории с вложенными фалами; | ||
+ | rm -rf /home/Mut@NT/shaman | ||
+ | |||
+ | # Копирование директорий; | ||
+ | cp -la /dir1 /dir2 | ||
+ | |||
+ | # Переименование директории; | ||
+ | mv /dir1 /dir2 | ||
+ | |||
+ | # Выводит на экран размер заданной директории. Можно использовать для определения размера файлов; | ||
+ | du -sh /home/Mut@NT/ | ||
+ | |||
+ | # Поиск всех файлов с именем primer; | ||
+ | locate primer | ||
</source> | </source> | ||
− | + | ||
+ | ==Права доступа== | ||
+ | |||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Изменение прав доступа к директории только для /home. 0777 – разрешение на чтение/запись/исполнение для всех групп; |
− | + | chmod 0777 /home/ | |
− | + | ||
− | + | # Рекурсивное изменение прав доступа к директории /home. 777 – разрешение на чтение/запись/исполнение для всех групп. Все вложенные директории и файлы будут иметь права 0777; | |
+ | chmod -R 0777 /home/ | ||
+ | |||
+ | # Изменение владельца и группы только для файла /home/primer.txt; | ||
+ | chown Mut@NT:ITShaman /home/primer.txt | ||
+ | |||
+ | # Изменение владельца для всего содержимого директории /home; | ||
+ | chown -R Mut@NT /home/ | ||
</source> | </source> | ||
− | + | ||
+ | ==Работа с архивами== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Создать tar-архив с именем primer.tar содержащий /home/primer.txt; |
− | + | tar cf primer.tar /home/primer.txt | |
− | + | ||
− | + | # Cоздать tar-архив с сжатием Gzip по имени primer.tar.gz; | |
− | + | tar czf primer.tar.gz /home/primer.txt | |
− | + | ||
+ | # Cоздать tar-архив с сжатием Bzip2 по имени primer.tar.bz; | ||
+ | tar cjf primer.tar.bz2 /home/primer.txt | ||
+ | |||
+ | # Распаковать архив primer.tar в текущую папку; | ||
+ | tar xf primer.tar | ||
+ | |||
+ | # Распаковать tar-архив с Gzip; | ||
+ | tar xzf primer.tar.gz | ||
+ | |||
+ | # Распаковать tar-архив с Bzip2; | ||
+ | tar xjf primer.tar.bz | ||
</source> | </source> | ||
− | + | ||
+ | ==Установка программ== | ||
+ | |||
+ | ===Просмотр установленных=== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | # Показать список установленных пакетов RPM в системе; | |
− | + | rpm -qa | |
− | # | + | |
− | + | # Показать список установленных пакетов DEB в системе; | |
− | # | + | dpkg -l |more |
− | # | + | |
− | + | # Ищет в индексах наличее доступного пакета и выводит на экран краткую информацию о нужном пакете (очень полезная команда для поиска и установки программ из консоли); | |
+ | apt-cache search имя пакета | ||
+ | |||
+ | # Полная информация о указанном пакете; | ||
+ | apt-cache showpkg имя пакета | ||
</source> | </source> | ||
− | + | ||
+ | ===Установка и удаление пакетов=== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | # Установка RPM пакета pkgname.rpm; | |
− | + | rpm -i pkgname.rpm | |
− | + | ||
− | + | # Удаление RPM пакета pkgname; | |
− | + | rpm -e pkgname | |
− | # | + | |
− | + | # Установка всех пакетов в директории; | |
− | # | + | dpkg -i *.rpm |
− | + | ||
− | + | # Обновление списка доступных пакетов из Internet; | |
+ | apt-get update | ||
+ | |||
+ | # Обновление доступной версии установленных пакетов в системе; | ||
+ | apt-get upgrade | ||
+ | |||
+ | # Установка DEB пакета pkgname; | ||
+ | apt-get install pkgname | ||
+ | |||
+ | # Удаление DEB пакета pkgname; | ||
+ | apt-get remove pkgname | ||
+ | |||
+ | # Установка всех пакетов в директории; | ||
+ | dpkg -i *.deb | ||
</source> | </source> | ||
− | + | ||
+ | ==Мониторинг работы и просмотр логов== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Информация в реальном времени о загруженных процессах, потребление ОЗУ; |
− | # | + | top |
− | # | + | |
− | # | + | # Более расширенная on line-статистика о загруженных процессах (разработчик http://htop.sourceforge.net); |
− | # | + | htop |
− | + | ||
+ | # Показывает log-файл загрузки ОС и нахождения новых устройств; | ||
+ | dmesg | ||
+ | |||
+ | # Показывает расширенную статистику потребления ресурсов системы в процентах (для некоторых дистрибутивов необходима установка пакета sysstat); | ||
+ | mpstat 1 | ||
+ | |||
+ | # Показать расширенную статистику по использованию виртуальной памяти; | ||
+ | vmstat 2 | ||
+ | |||
+ | # Показать расширенную статистику прерываний по устройствам; | ||
+ | iostat 2 | ||
</source> | </source> | ||
− | + | ||
+ | ==Информация об устройствах== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Информация об уже установленных устройствах (в некоторых дистрибутивах требует доставить пакет procinfo); |
− | # | + | lsdev |
− | + | ||
− | + | # Показать полную информацию о модели процессора (частота, поддерживаемые инструкции и т.д.); | |
− | # watch -n1 'cat /proc/interrupts' | + | cat /proc/cpuinfo |
− | # | + | |
− | # | + | # Показать расширенную информацию о занимаемой оперативной памяти (MemTotal, MemFree, Buffers, Cached, SwapCached,HighTotal, HighFree, LowTotal и т. д.); |
− | # | + | cat /proc/meminfo |
− | # | + | |
− | + | # Показать размер раздела выделенного под swap; | |
− | # | + | grep SwapTotal /proc/meminfo |
− | # | + | |
+ | # Показать информацию о прерываниях; | ||
+ | watch -n1 'cat /proc/interrupts' | ||
+ | |||
+ | # Информация о используемой и свободной ОЗУ и Swap-файле (-m указывает, что отображать нужно в Мб); | ||
+ | free -m | ||
+ | |||
+ | # Показать список всех устройств и их параметров; | ||
+ | lshal | ||
+ | |||
+ | # Показать все устройства в системе (названия взяты из директории /proc/devices); | ||
+ | cat /proc/devices | ||
+ | |||
+ | # Показать обнаруженные PCI-устройства; | ||
+ | lspci -tv | ||
+ | |||
+ | # Показать обнаруженные USB-устройства; | ||
+ | lsusb -tv | ||
+ | |||
+ | # Показать информацию о версии BIOS компьютера; | ||
+ | dmidecode | ||
+ | |||
+ | # Выводит строку ModeLine для Вашего монитора на параметрах экрана 1024x768x75Hz; | ||
+ | gtf 1024 768 75 | ||
</source> | </source> | ||
− | + | ||
+ | ==Жесткие диски и файловая система | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Информация о всех подключенных жестких и сменных дисках; |
− | # | + | fdisk -l |
− | + | ||
− | # | + | # Полная информация о IDE/ATA жестких дисках; |
− | # | + | hdparm -I /dev/sda |
− | + | ||
− | + | # Выводит SMART-информацию о разделе жесткого диска /dev/sda1 (необходима установка пакета smartmontools); | |
− | # | + | smartctl -a /dev/sda1 |
− | # | + | |
− | + | # Выводит UUID всех доступных накопителей информации в системе; | |
− | + | blkid | |
− | + | ||
− | + | # Показывает производительность жесткого диска; | |
− | + | hdparm -tT /dev/sda | |
− | + | ||
− | # | + | # Показывает полную информацию о примонтированных устройсвах; |
− | + | mount | column -t | |
+ | |||
+ | # Показывает только примонтированные разделы жесткого диска; | ||
+ | cat /proc/partitions | ||
+ | |||
+ | # Показывает свободное место на разделах; | ||
+ | df -sh | ||
+ | |||
+ | # Монтирует раздел /dev/sda1 к точке монтирования /mnt; | ||
+ | mount /dev/sda1 /mnt | ||
+ | |||
+ | # Монтирует большинство CD-ROM`ов; | ||
+ | mount -t auto /dev/cdrom /mnt/cdrom | ||
+ | |||
+ | # Монтирует IDE CD-ROM; | ||
+ | mount /dev/hdc -t iso9660 -r /cdrom | ||
+ | |||
+ | # Монтирует SCSI CD-ROM; | ||
+ | mount /dev/scd0 -t iso9660 -r /cdrom | ||
+ | |||
+ | # Монтирование FreeBSD разделов в Linux; | ||
+ | mount -t ufs -o ufstype=ufs2,ro /dev/sda3 /mnt | ||
+ | |||
+ | # Монтирование сетевых ресурсов (SMB); | ||
+ | mount -t smbfs -o username=vasja,password=pupkin //pup/Video | ||
+ | |||
+ | # Монтирование ISO-образов; | ||
+ | mount -t iso9660 -o loop /home/file.iso /home/iso | ||
+ | |||
+ | # Монтирование раздел с файловой системой FAT 16/32 (к примеру USB-накопитель) к точки монтирования /mnt с возможностью записи; | ||
+ | mount /dev/sdb1 -t vfat -o rw /mnt | ||
+ | |||
+ | # Отмонтирует раздел от точки монтирования /mnt; | ||
+ | umount /mnt | ||
</source> | </source> | ||
− | + | ||
+ | ==Сеть== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Показать параметры всех сетевых; |
− | # | + | ifconfig |
− | # | + | |
− | + | # Показать параметры сетевого интерфейса eth0; | |
− | # ifconfig eth0 192.168.50.254 netmask 255.255.255.0 Задать основной IP адрес сетевому интерфейсу eth0; | + | ifconfig eth0 |
− | + | ||
− | + | # Показывает состояние сетевого интерфейса eth0 (для некоторых дистрибутивов требуется установка пакета ethtool). Команда ethtool применяется только для проводных подключений, не работает с беспроводными интерфейсами; | |
− | + | ethtool eth0 | |
− | + | ||
− | + | # Принудительно задать скорость сетевому интерфейсу 100Mbit и режим Full duplex и отключить автоматическое определение; | |
− | + | ethtool -s eth0 speed 100 duplex full autoneg off | |
− | + | ||
− | # | + | # Задать основной IP адрес сетевому интерфейсу eth0; |
− | # route -n Выводит на экран таблицу маршрутизации; | + | ifconfig eth0 192.168.50.254 netmask 255.255.255.0 |
− | + | ||
− | + | # Задать основной IP адрес сетевому интерфейсу eth0; | |
− | + | ip addr add 192.168.50.254/24 dev eth0 | |
− | # | + | |
− | # | + | # Задать дополнительный IP адрес сетевому интерфейсу eth0; |
− | # | + | ifconfig eth0:0 192.168.51.254 netmask 255.255.255.0 |
− | + | ||
− | + | # Задать дополнительный IP адрес сетевому интерфейсу eth0; | |
− | + | ip addr add 192.168.51.254/24 dev eth0 label eth0:1 | |
− | + | ||
− | # | + | # Запустить сетевой интерфейс eth0; |
− | # | + | ifconfig eth0 up |
− | + | ||
− | + | # Отключить сетевой интерфейс eth0; | |
− | + | ifconfig eth0 down | |
+ | |||
+ | # Смена MAC адреса; | ||
+ | ifconfig eth0 hw ether 00:01:02:03:04:05 | ||
+ | |||
+ | # Перезагрузка DHCP клиента; | ||
+ | /etc/init.d/dhcpd restart | ||
+ | |||
+ | # Проверка сетевого соединения. Пингуется IP адрес 192.168.0.2 (пинговать можно ya.ru); | ||
+ | ping 192.168.0.2 | ||
+ | |||
+ | # Выводит на экран таблицу маршрутизации; | ||
+ | route -n | ||
+ | |||
+ | # Выводит на экран таблицу маршрутизации; | ||
+ | netstat -rn | ||
+ | |||
+ | # Показывает список всех открытых портов; | ||
+ | netstat -an | grep LISTEN | ||
+ | |||
+ | # Показывает список всех открытых портов в сеть Internet; | ||
+ | lsof -i | ||
+ | |||
+ | # Активные соединения с интернетом; | ||
+ | netstat -tup | ||
+ | |||
+ | # Показывает все открытые сокеты; | ||
+ | socklist | ||
+ | |||
+ | # Список приложений, которые открывают порты; | ||
+ | netstat -anp --udp --tcp | grep LISTEN | ||
+ | |||
+ | # Показывает статус firewall (статус iptables); | ||
+ | iptables -L -n -v | ||
+ | |||
+ | # Открывает доступ ко всем портам; | ||
+ | iptables -P INPUT ACCEPT | ||
+ | |||
+ | # Открывает доступ ко всем портам; | ||
+ | iptables -P FORWARD ACCEPT | ||
+ | |||
+ | # Открывает доступ ко всем портам; | ||
+ | iptables -P OUTPUT ACCEPT | ||
+ | |||
+ | # Удаляет все цепочки; | ||
+ | iptables -X | ||
+ | |||
+ | # "Поднятие" NAT на интерфейсе eth0; | ||
+ | iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | ||
+ | |||
+ | # Перенаправление порта 20022, который использется для ssh; | ||
+ | iptables -t nat -A PREROUTING -p tcp -d 78.31.70.238 --dport 20022 -j DNAT --to 192.168.16.44:22 | ||
+ | |||
+ | # Перенаправление диапазона портов 993-995; | ||
+ | iptables -t nat -A PREROUTING -p tcp -d 78.31.70.238 --dport 993:995 -j DNAT --to 192.168.16.254:993-995 | ||
+ | |||
+ | # Проверка статуса NAT; | ||
+ | iptables -L -t nat | ||
</source> | </source> | ||
− | + | ||
+ | ==ISO== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # cdrecord -scanbus | + | # Показывает все доступные CD-ROM; |
− | + | cdrecord -scanbus | |
+ | |||
+ | # Создание ISO образов с диска CD-ROM; | ||
+ | dd if=/dev/hdc of=/tmp/mycd.iso bs=2048 conv=notrunc | ||
</source> | </source> | ||
− | + | ||
+ | ==Пользователи и группы== | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # Показывает сводную информацию по текущему пользователю (логин, UID, GID, группы); |
− | # | + | id |
− | # | + | |
− | # | + | # Показать информацию о пользователе Mut@NT; |
− | # | + | finger Mut@NT |
− | # | + | |
− | # | + | # Показывает последних зарегистрированных пользователей; |
− | + | last | |
− | + | ||
− | # | + | # Показывает имя текущего пользователя и время входа; |
+ | who | ||
+ | |||
+ | # Добавление нового пользователя Mut@NT; | ||
+ | useradd Mut@NT | ||
+ | |||
+ | # Добавление группы ITShaman; | ||
+ | groupadd ITShaman | ||
+ | |||
+ | # Добавляет пользователя Mut@NT в группу ITShaman (для Debian-подобных дистрибутивов); | ||
+ | usermod -a -G ITShaman Mut@NT | ||
+ | |||
+ | # Добавляет пользователя Mut@NT в группу ITShaman (SuSE); | ||
+ | groupmod -A Mut@NT ITShaman | ||
+ | |||
+ | # Удаление пользователя Mut@NT; | ||
+ | userdel Mut@NT | ||
+ | |||
+ | # Удаление группы ITShaman; | ||
+ | groupdel ITShaman | ||
</source> | </source> | ||
+ | |||
==Процессы== | ==Процессы== | ||
<source lang="bash"> | <source lang="bash"> | ||
# Показать все загруженные процессы; | # Показать все загруженные процессы; | ||
ps axjf | ps axjf | ||
+ | |||
# Показать PID определенного процесса – sshd; | # Показать PID определенного процесса – sshd; | ||
pgrep -l sshd | pgrep -l sshd | ||
+ | |||
# Показать PID вашей оболочки; | # Показать PID вашей оболочки; | ||
echo $$ | echo $$ | ||
+ | |||
# Показать PID процесса использующий порт 22; | # Показать PID процесса использующий порт 22; | ||
fuser -va 22/tcp | fuser -va 22/tcp | ||
+ | |||
# Показывает PID процесса имеющего доступ к /home; | # Показывает PID процесса имеющего доступ к /home; | ||
fuser -va /home | fuser -va /home | ||
+ | |||
# Показывает список процессы, которые используют /home; | # Показывает список процессы, которые используют /home; | ||
lsof /home | lsof /home | ||
+ | |||
# Выводит на экран текущее состояние процесса httpd; | # Выводит на экран текущее состояние процесса httpd; | ||
killall 0 httpd | killall 0 httpd | ||
+ | |||
# «Убить» процесс с PID 4712; | # «Убить» процесс с PID 4712; | ||
kil 4712 | kil 4712 | ||
+ | |||
# Посылает процессу с PID`ом 4712 сигнал TERM - завершить процесс; | # Посылает процессу с PID`ом 4712 сигнал TERM - завершить процесс; | ||
killall TERM 4712 | killall TERM 4712 | ||
+ | |||
# Посылает процессу с именем httpd сигнал HUP - остановить процесс; | # Посылает процессу с именем httpd сигнал HUP - остановить процесс; | ||
killall HUP httpd | killall HUP httpd | ||
+ | |||
# “Убить” все процессы имеющие доступ к /home; | # “Убить” все процессы имеющие доступ к /home; | ||
fuser -k -TERM -m /home | fuser -k -TERM -m /home | ||
+ | |||
+ | |||
'''''Важные сигналы посылаемые процессам:''''' | '''''Важные сигналы посылаемые процессам:''''' | ||
*1 - HUP остановить процесс | *1 - HUP остановить процесс | ||
Строка 266: | Строка 513: | ||
*15 - TERM завершить процесс | *15 - TERM завершить процесс | ||
</source> | </source> | ||
+ | |||
==Runlevels== | ==Runlevels== | ||
+ | |||
<source lang="bash"> | <source lang="bash"> | ||
'''''“Уровни загрузки” бывают:''''' | '''''“Уровни загрузки” бывают:''''' | ||
Строка 276: | Строка 525: | ||
*Runlevels=5 Графический режим; | *Runlevels=5 Графический режим; | ||
*Runlevels=6 Перезагрузка компьютера. | *Runlevels=6 Перезагрузка компьютера. | ||
− | + | ||
+ | |||
# Показывает список всех скриптов с соответствующими им Runlevels; | # Показывает список всех скриптов с соответствующими им Runlevels; | ||
chkconfig --list | chkconfig --list | ||
+ | |||
# Показывает разрешенные Runlevels только отдельного скрипта, в нашем случае udev; | # Показывает разрешенные Runlevels только отдельного скрипта, в нашем случае udev; | ||
chkconfig --list udev | chkconfig --list udev | ||
+ | |||
# Выставление скрипту udev значений Runlevels по-умолчанию (для Debian-подобных дистрибутивов); | # Выставление скрипту udev значений Runlevels по-умолчанию (для Debian-подобных дистрибутивов); | ||
update-rc.d udev defaults | update-rc.d udev defaults | ||
+ | |||
# Добавление скрипту udev Runlevels 3 и 5; | # Добавление скрипту udev Runlevels 3 и 5; | ||
chkconfig udev --level 35 on | chkconfig udev --level 35 on | ||
+ | |||
# Изменить параметры для скрипта udev (для Debian-подобных дистрибутивов); | # Изменить параметры для скрипта udev (для Debian-подобных дистрибутивов); | ||
update-rc.d udev start 20 2 3 4 5 . stop 20 0 1 6 | update-rc.d udev start 20 2 3 4 5 . stop 20 0 1 6 | ||
+ | |||
# Отключение у udev всех Runlevels; | # Отключение у udev всех Runlevels; | ||
chkconfig udev off | chkconfig udev off | ||
+ | |||
# Отключение у udev всех Runlevel (для Debian-подобных дистрибутивов); | # Отключение у udev всех Runlevel (для Debian-подобных дистрибутивов); | ||
update-rc.d -f udev remove | update-rc.d -f udev remove | ||
+ | |||
# Очень удобная настройка Runlevels (необходима установка пакета sysv-rc-conf); | # Очень удобная настройка Runlevels (необходима установка пакета sysv-rc-conf); | ||
sysv-rc-conf | sysv-rc-conf | ||
</source> | </source> | ||
+ | |||
==Работа с ядром и модулями== | ==Работа с ядром и модулями== | ||
<source lang="bash"> | <source lang="bash"> | ||
# Показать версию ядра Linux; | # Показать версию ядра Linux; | ||
uname -a | uname -a | ||
+ | |||
# Список всех модулей загруженных в ядро; | # Список всех модулей загруженных в ядро; | ||
lsmod | lsmod | ||
+ | |||
# Загрузка модуля на примере isdn; | # Загрузка модуля на примере isdn; | ||
modprobe isdn | modprobe isdn | ||
+ | |||
# Создание сжатого образа ядра системы; | # Создание сжатого образа ядра системы; | ||
make | make | ||
+ | |||
# Компиляция модуля; | # Компиляция модуля; | ||
make modules | make modules | ||
+ | |||
# Установка модуля; | # Установка модуля; | ||
make modules_install | make modules_install | ||
+ | |||
# Установка в ядро системы; | # Установка в ядро системы; | ||
make install | make install | ||
</source> | </source> | ||
+ | |||
==Pабота с LiveCD== | ==Pабота с LiveCD== | ||
<source lang="bash"> | <source lang="bash"> | ||
Строка 316: | Строка 581: | ||
chroot /mnt | chroot /mnt | ||
</source> | </source> | ||
+ | |||
==Конвертирование== | ==Конвертирование== | ||
<source lang="bash"> | <source lang="bash"> | ||
# Выводит список всех доступных кодировок; | # Выводит список всех доступных кодировок; | ||
iconv -l | iconv -l | ||
+ | |||
# Смена кодировки. Был файл file_cp1251.txt с кодировкой cp1251, а в итоге получился файл file_utf8.txt с кодировкой utf8; | # Смена кодировки. Был файл file_cp1251.txt с кодировкой cp1251, а в итоге получился файл file_utf8.txt с кодировкой utf8; | ||
iconv -f cp1251 -t UTF-8 -o file_cp1251.txt > file_utf8.txt | iconv -f cp1251 -t UTF-8 -o file_cp1251.txt > file_utf8.txt | ||
+ | |||
# Конвертируется name.pdf в постраничные JPEG изображения (в некоторых дистрибутивах необходимо установить пакет imagemagick); | # Конвертируется name.pdf в постраничные JPEG изображения (в некоторых дистрибутивах необходимо установить пакет imagemagick); | ||
convert name.pdf name-%03d.jpg# | convert name.pdf name-%03d.jpg# | ||
+ | |||
# Конвертируются JPEG изображения в PDF (в некоторых дистрибутивах необходимо установить пакет imagemagick); | # Конвертируются JPEG изображения в PDF (в некоторых дистрибутивах необходимо установить пакет imagemagick); | ||
convert *.jpeg name.pdf | convert *.jpeg name.pdf | ||
+ | |||
# Конвертируем видео | # Конвертируем видео | ||
mencoder -o videoout.avi -oac mp3lame -ovc lavc -srate 11025 -channels 1 -af-adv force=1 -lameopts preset=medium -lavcopts vcodec=msmpeg4v2:vbitrate=600 -mc 0 vidoein.AVI | mencoder -o videoout.avi -oac mp3lame -ovc lavc -srate 11025 -channels 1 -af-adv force=1 -lameopts preset=medium -lavcopts vcodec=msmpeg4v2:vbitrate=600 -mc 0 vidoein.AVI | ||
+ | |||
# Копирование треков с AudioCD в текущую директорию wav-файлами; | # Копирование треков с AudioCD в текущую директорию wav-файлами; | ||
cdparanoia -B | cdparanoia -B | ||
+ | |||
# Конвертирование wav-файлов в mp3 с качеством 256 kb/s; | # Конвертирование wav-файлов в mp3 с качеством 256 kb/s; | ||
lame -b 256 in.wav out.mp3 | lame -b 256 in.wav out.mp3 | ||
+ | |||
# Конвертирование wav-файлов в Ogg Vorbis с качеством 256 kb/s; | # Конвертирование wav-файлов в Ogg Vorbis с качеством 256 kb/s; | ||
oggenc in.wav -b 256 out.ogg | oggenc in.wav -b 256 out.ogg | ||
</source> | </source> | ||
+ | |||
==Печать== | ==Печать== | ||
<source lang="bash"> | <source lang="bash"> | ||
# Выбор принтера по-умолчанию. В примере выбран принтер Canon LBP-2900; | # Выбор принтера по-умолчанию. В примере выбран принтер Canon LBP-2900; | ||
export PRINTER=lbp2900 | export PRINTER=lbp2900 | ||
+ | |||
# Распечатать на принтере Canon LBP-2900 две копии файла name.txt; | # Распечатать на принтере Canon LBP-2900 две копии файла name.txt; | ||
lpr #2 name.txt | lpr #2 name.txt | ||
+ | |||
# Удаление всех задач с принтера по-умолчанию; | # Удаление всех задач с принтера по-умолчанию; | ||
lprm - | lprm - | ||
</source> | </source> | ||
+ | [[Категория:Руководства]] |
Версия 10:08, 20 апреля 2011
Основные команды
#Показать версию ядра Linux;
uname -a
# На экран выводиться информация о версии операционной системы Debian и оснваных на ней дистрибутивах;
lsb_release -a
# На экран выводится информация о версии операционной системы SuSE;
cat /etc/SuSE-release
# Описание иерархии файловой системы (для чего нужна каждая директория в linux);
man hier
# Очищение экрана терминала;
clear
# Отправляет на терминалы других пользователей сообщение "Привет";
wall Привет
# Показывает текущую дату и время;
date
# Показывает в удобной форме предыдущий, текущий и последующий месяц (типо календарь);
cal -3
# Показать текущее время и работу системы без перезагрузки и выключения;
uptime
# Показать сетевое имя компьютера;
hostname
# Показать информацию о доменом имени linux.org;
whois linux.org
# Изменить переменной окружения http_proxy, для использования интернета через proxy-сервер;
export http_proxy=http://your.proxy:port
# Скачать файл http://itshaman.ru/images/logo_white.png в текущую папку;
wget http://itshaman.ru/images/logo_white.png
# Копирование сайта целиком и конвертирование ссылок для автономной работы.
wget --convert-links -r http://www.linux.org/
# Создание и настройка Dial-Up соединения для выхода в Интернет по модему;
pppconfig
# Создание и настройка выхода в Интернет через ADSL-модем;
pppoeconf
# Выполнить последнюю команду;
!!
# Показать последние 50 набранных команд;
history | tail -50
# Завершить сеанс текущего пользователя;
exit
# Меняет пароль текущего пользователя;
passwd
# Выход из Linux;
shutdown -h now
# Выход из Linux;
poweroff
# Перезагрузка системы;
reboot
# Cтатистика перезагрузок;
last reboot
# Настройка Wine - НЕэмулятор WinAPI;
winecfg
# Показывает IP-адрес введенного сайта;
host itshaman.ru
Директории и файлы
# Выводит текущий путь;
pwd
# Выводит список файлов и каталогов по порядку;
ls
# Выводит форматированный список всех файлов и директорий, включая скрытые;
ls -laX
# Переход в домашнюю директорию;
cd
# Переход в директорию /home;
cd /home
# Создание пустого файла /home/primer2;
touch /home/primer2
# Показать содержимое файла /home/primer2;
cat /home/primer2
# Выводит конец файла. Удобно при работе с логами и большими файлами;
tail /var/log/messages
# Редактирование файла /home/primer2;
nano /home/primer2
# Вторая команда Linux для редактирования файла;
gedit /home/primer2
# Добавление к концу файла "Последняя строчка" в файл /home/primer2;
echo "Последняя строчка" | sudo tee -a /home/primer2
# Копирует /home/Mut@NT/primer.tx в home/primer.txt;
cp /home/Mut@NT/primer.txt /home/primer.txt
# Cоздает символическую ссылку /home/primer к файлу /home/Mut@NT/primer.txt;
ln -s /home/Mut@NT/primer.txt /home/primer
# Создание директории с именем shaman;
mkdir /home/Mut@NT/shaman
# Удаление директории с именем shaman;
rmdir /home/Mut@NT/shaman
# Удаление директории с вложенными фалами;
rm -rf /home/Mut@NT/shaman
# Копирование директорий;
cp -la /dir1 /dir2
# Переименование директории;
mv /dir1 /dir2
# Выводит на экран размер заданной директории. Можно использовать для определения размера файлов;
du -sh /home/Mut@NT/
# Поиск всех файлов с именем primer;
locate primer
Права доступа
# Изменение прав доступа к директории только для /home. 0777 – разрешение на чтение/запись/исполнение для всех групп;
chmod 0777 /home/
# Рекурсивное изменение прав доступа к директории /home. 777 – разрешение на чтение/запись/исполнение для всех групп. Все вложенные директории и файлы будут иметь права 0777;
chmod -R 0777 /home/
# Изменение владельца и группы только для файла /home/primer.txt;
chown Mut@NT:ITShaman /home/primer.txt
# Изменение владельца для всего содержимого директории /home;
chown -R Mut@NT /home/
Работа с архивами
# Создать tar-архив с именем primer.tar содержащий /home/primer.txt;
tar cf primer.tar /home/primer.txt
# Cоздать tar-архив с сжатием Gzip по имени primer.tar.gz;
tar czf primer.tar.gz /home/primer.txt
# Cоздать tar-архив с сжатием Bzip2 по имени primer.tar.bz;
tar cjf primer.tar.bz2 /home/primer.txt
# Распаковать архив primer.tar в текущую папку;
tar xf primer.tar
# Распаковать tar-архив с Gzip;
tar xzf primer.tar.gz
# Распаковать tar-архив с Bzip2;
tar xjf primer.tar.bz
Установка программ
Просмотр установленных
# Показать список установленных пакетов RPM в системе;
rpm -qa
# Показать список установленных пакетов DEB в системе;
dpkg -l |more
# Ищет в индексах наличее доступного пакета и выводит на экран краткую информацию о нужном пакете (очень полезная команда для поиска и установки программ из консоли);
apt-cache search имя пакета
# Полная информация о указанном пакете;
apt-cache showpkg имя пакета
Установка и удаление пакетов
# Установка RPM пакета pkgname.rpm;
rpm -i pkgname.rpm
# Удаление RPM пакета pkgname;
rpm -e pkgname
# Установка всех пакетов в директории;
dpkg -i *.rpm
# Обновление списка доступных пакетов из Internet;
apt-get update
# Обновление доступной версии установленных пакетов в системе;
apt-get upgrade
# Установка DEB пакета pkgname;
apt-get install pkgname
# Удаление DEB пакета pkgname;
apt-get remove pkgname
# Установка всех пакетов в директории;
dpkg -i *.deb
Мониторинг работы и просмотр логов
# Информация в реальном времени о загруженных процессах, потребление ОЗУ;
top
# Более расширенная on line-статистика о загруженных процессах (разработчик http://htop.sourceforge.net);
htop
# Показывает log-файл загрузки ОС и нахождения новых устройств;
dmesg
# Показывает расширенную статистику потребления ресурсов системы в процентах (для некоторых дистрибутивов необходима установка пакета sysstat);
mpstat 1
# Показать расширенную статистику по использованию виртуальной памяти;
vmstat 2
# Показать расширенную статистику прерываний по устройствам;
iostat 2
Информация об устройствах
# Информация об уже установленных устройствах (в некоторых дистрибутивах требует доставить пакет procinfo);
lsdev
# Показать полную информацию о модели процессора (частота, поддерживаемые инструкции и т.д.);
cat /proc/cpuinfo
# Показать расширенную информацию о занимаемой оперативной памяти (MemTotal, MemFree, Buffers, Cached, SwapCached,HighTotal, HighFree, LowTotal и т. д.);
cat /proc/meminfo
# Показать размер раздела выделенного под swap;
grep SwapTotal /proc/meminfo
# Показать информацию о прерываниях;
watch -n1 'cat /proc/interrupts'
# Информация о используемой и свободной ОЗУ и Swap-файле (-m указывает, что отображать нужно в Мб);
free -m
# Показать список всех устройств и их параметров;
lshal
# Показать все устройства в системе (названия взяты из директории /proc/devices);
cat /proc/devices
# Показать обнаруженные PCI-устройства;
lspci -tv
# Показать обнаруженные USB-устройства;
lsusb -tv
# Показать информацию о версии BIOS компьютера;
dmidecode
# Выводит строку ModeLine для Вашего монитора на параметрах экрана 1024x768x75Hz;
gtf 1024 768 75
==Жесткие диски и файловая система
# Информация о всех подключенных жестких и сменных дисках;
fdisk -l
# Полная информация о IDE/ATA жестких дисках;
hdparm -I /dev/sda
# Выводит SMART-информацию о разделе жесткого диска /dev/sda1 (необходима установка пакета smartmontools);
smartctl -a /dev/sda1
# Выводит UUID всех доступных накопителей информации в системе;
blkid
# Показывает производительность жесткого диска;
hdparm -tT /dev/sda
# Показывает полную информацию о примонтированных устройсвах;
mount | column -t
# Показывает только примонтированные разделы жесткого диска;
cat /proc/partitions
# Показывает свободное место на разделах;
df -sh
# Монтирует раздел /dev/sda1 к точке монтирования /mnt;
mount /dev/sda1 /mnt
# Монтирует большинство CD-ROM`ов;
mount -t auto /dev/cdrom /mnt/cdrom
# Монтирует IDE CD-ROM;
mount /dev/hdc -t iso9660 -r /cdrom
# Монтирует SCSI CD-ROM;
mount /dev/scd0 -t iso9660 -r /cdrom
# Монтирование FreeBSD разделов в Linux;
mount -t ufs -o ufstype=ufs2,ro /dev/sda3 /mnt
# Монтирование сетевых ресурсов (SMB);
mount -t smbfs -o username=vasja,password=pupkin //pup/Video
# Монтирование ISO-образов;
mount -t iso9660 -o loop /home/file.iso /home/iso
# Монтирование раздел с файловой системой FAT 16/32 (к примеру USB-накопитель) к точки монтирования /mnt с возможностью записи;
mount /dev/sdb1 -t vfat -o rw /mnt
# Отмонтирует раздел от точки монтирования /mnt;
umount /mnt
Сеть
# Показать параметры всех сетевых;
ifconfig
# Показать параметры сетевого интерфейса eth0;
ifconfig eth0
# Показывает состояние сетевого интерфейса eth0 (для некоторых дистрибутивов требуется установка пакета ethtool). Команда ethtool применяется только для проводных подключений, не работает с беспроводными интерфейсами;
ethtool eth0
# Принудительно задать скорость сетевому интерфейсу 100Mbit и режим Full duplex и отключить автоматическое определение;
ethtool -s eth0 speed 100 duplex full autoneg off
# Задать основной IP адрес сетевому интерфейсу eth0;
ifconfig eth0 192.168.50.254 netmask 255.255.255.0
# Задать основной IP адрес сетевому интерфейсу eth0;
ip addr add 192.168.50.254/24 dev eth0
# Задать дополнительный IP адрес сетевому интерфейсу eth0;
ifconfig eth0:0 192.168.51.254 netmask 255.255.255.0
# Задать дополнительный IP адрес сетевому интерфейсу eth0;
ip addr add 192.168.51.254/24 dev eth0 label eth0:1
# Запустить сетевой интерфейс eth0;
ifconfig eth0 up
# Отключить сетевой интерфейс eth0;
ifconfig eth0 down
# Смена MAC адреса;
ifconfig eth0 hw ether 00:01:02:03:04:05
# Перезагрузка DHCP клиента;
/etc/init.d/dhcpd restart
# Проверка сетевого соединения. Пингуется IP адрес 192.168.0.2 (пинговать можно ya.ru);
ping 192.168.0.2
# Выводит на экран таблицу маршрутизации;
route -n
# Выводит на экран таблицу маршрутизации;
netstat -rn
# Показывает список всех открытых портов;
netstat -an | grep LISTEN
# Показывает список всех открытых портов в сеть Internet;
lsof -i
# Активные соединения с интернетом;
netstat -tup
# Показывает все открытые сокеты;
socklist
# Список приложений, которые открывают порты;
netstat -anp --udp --tcp | grep LISTEN
# Показывает статус firewall (статус iptables);
iptables -L -n -v
# Открывает доступ ко всем портам;
iptables -P INPUT ACCEPT
# Открывает доступ ко всем портам;
iptables -P FORWARD ACCEPT
# Открывает доступ ко всем портам;
iptables -P OUTPUT ACCEPT
# Удаляет все цепочки;
iptables -X
# "Поднятие" NAT на интерфейсе eth0;
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# Перенаправление порта 20022, который использется для ssh;
iptables -t nat -A PREROUTING -p tcp -d 78.31.70.238 --dport 20022 -j DNAT --to 192.168.16.44:22
# Перенаправление диапазона портов 993-995;
iptables -t nat -A PREROUTING -p tcp -d 78.31.70.238 --dport 993:995 -j DNAT --to 192.168.16.254:993-995
# Проверка статуса NAT;
iptables -L -t nat
ISO
# Показывает все доступные CD-ROM;
cdrecord -scanbus
# Создание ISO образов с диска CD-ROM;
dd if=/dev/hdc of=/tmp/mycd.iso bs=2048 conv=notrunc
Пользователи и группы
# Показывает сводную информацию по текущему пользователю (логин, UID, GID, группы);
id
# Показать информацию о пользователе Mut@NT;
finger Mut@NT
# Показывает последних зарегистрированных пользователей;
last
# Показывает имя текущего пользователя и время входа;
who
# Добавление нового пользователя Mut@NT;
useradd Mut@NT
# Добавление группы ITShaman;
groupadd ITShaman
# Добавляет пользователя Mut@NT в группу ITShaman (для Debian-подобных дистрибутивов);
usermod -a -G ITShaman Mut@NT
# Добавляет пользователя Mut@NT в группу ITShaman (SuSE);
groupmod -A Mut@NT ITShaman
# Удаление пользователя Mut@NT;
userdel Mut@NT
# Удаление группы ITShaman;
groupdel ITShaman
Процессы
# Показать все загруженные процессы;
ps axjf
# Показать PID определенного процесса – sshd;
pgrep -l sshd
# Показать PID вашей оболочки;
echo $$
# Показать PID процесса использующий порт 22;
fuser -va 22/tcp
# Показывает PID процесса имеющего доступ к /home;
fuser -va /home
# Показывает список процессы, которые используют /home;
lsof /home
# Выводит на экран текущее состояние процесса httpd;
killall 0 httpd
# «Убить» процесс с PID 4712;
kil 4712
# Посылает процессу с PID`ом 4712 сигнал TERM - завершить процесс;
killall TERM 4712
# Посылает процессу с именем httpd сигнал HUP - остановить процесс;
killall HUP httpd
# “Убить” все процессы имеющие доступ к /home;
fuser -k -TERM -m /home
'''''Важные сигналы посылаемые процессам:'''''
*1 - HUP остановить процесс
*2 - INT прервать процесс
*3 - QUIT выйти
*9 - KILL “убить” процесс
*15 - TERM завершить процесс
Runlevels
'''''“Уровни загрузки” бывают:'''''
*Runlevels=0 Выключение компьютера;
*Runlevels=1 режим Single-User;
*Runlevels=2 Текстовый режим без поддержки сети;
*Runlevels=3 Текстовый режим с поддержкой сети;
*Runlevels=4;
*Runlevels=5 Графический режим;
*Runlevels=6 Перезагрузка компьютера.
# Показывает список всех скриптов с соответствующими им Runlevels;
chkconfig --list
# Показывает разрешенные Runlevels только отдельного скрипта, в нашем случае udev;
chkconfig --list udev
# Выставление скрипту udev значений Runlevels по-умолчанию (для Debian-подобных дистрибутивов);
update-rc.d udev defaults
# Добавление скрипту udev Runlevels 3 и 5;
chkconfig udev --level 35 on
# Изменить параметры для скрипта udev (для Debian-подобных дистрибутивов);
update-rc.d udev start 20 2 3 4 5 . stop 20 0 1 6
# Отключение у udev всех Runlevels;
chkconfig udev off
# Отключение у udev всех Runlevel (для Debian-подобных дистрибутивов);
update-rc.d -f udev remove
# Очень удобная настройка Runlevels (необходима установка пакета sysv-rc-conf);
sysv-rc-conf
Работа с ядром и модулями
# Показать версию ядра Linux;
uname -a
# Список всех модулей загруженных в ядро;
lsmod
# Загрузка модуля на примере isdn;
modprobe isdn
# Создание сжатого образа ядра системы;
make
# Компиляция модуля;
make modules
# Установка модуля;
make modules_install
# Установка в ядро системы;
make install
Pабота с LiveCD
# Cмена root-окружения на /mnt. После этого коневой раздел, примонтировнный к /mnt, будет использоваться как родной;
chroot /mnt
Конвертирование
# Выводит список всех доступных кодировок;
iconv -l
# Смена кодировки. Был файл file_cp1251.txt с кодировкой cp1251, а в итоге получился файл file_utf8.txt с кодировкой utf8;
iconv -f cp1251 -t UTF-8 -o file_cp1251.txt > file_utf8.txt
# Конвертируется name.pdf в постраничные JPEG изображения (в некоторых дистрибутивах необходимо установить пакет imagemagick);
convert name.pdf name-%03d.jpg#
# Конвертируются JPEG изображения в PDF (в некоторых дистрибутивах необходимо установить пакет imagemagick);
convert *.jpeg name.pdf
# Конвертируем видео
mencoder -o videoout.avi -oac mp3lame -ovc lavc -srate 11025 -channels 1 -af-adv force=1 -lameopts preset=medium -lavcopts vcodec=msmpeg4v2:vbitrate=600 -mc 0 vidoein.AVI
# Копирование треков с AudioCD в текущую директорию wav-файлами;
cdparanoia -B
# Конвертирование wav-файлов в mp3 с качеством 256 kb/s;
lame -b 256 in.wav out.mp3
# Конвертирование wav-файлов в Ogg Vorbis с качеством 256 kb/s;
oggenc in.wav -b 256 out.ogg
Печать
# Выбор принтера по-умолчанию. В примере выбран принтер Canon LBP-2900;
export PRINTER=lbp2900
# Распечатать на принтере Canon LBP-2900 две копии файла name.txt;
lpr #2 name.txt
# Удаление всех задач с принтера по-умолчанию;
lprm -