====== Полезные консольные команды Linux ====== ===== Информация о системе ===== * Посмотреть, кто залогинен в систему в данный момент: ''who'' * Свободное место на жестких дисках: ''df -h | grep /hd'' * Наблюдать за свободной памятью (выход -- Ctrl+C): ''watch free'' * Uptime + кто залогинен: ''w'' * Данные с [[linux:temperaturemonitoringinlinux|температурных датчиков]]: ''sensors'' * Информация о <<железе>>: ''hwinfo'' (о конкретной части: ''hwinfo cpu'' или, к примеру, ''hwinfo memory'') * Информация DMI ([[wp>SMBIOS]]) в читабельном виде: ''dmidecode'' (в <<нечитабельном>>: ''sudo dd if=/dev/mem bs=64k skip=15 count=1 | strings | less'') * Информация о процессах, памяти, диске и сетевых интерфейсах на одном экране: ''saidar'' ===== Работа с файловой системой ===== * Создание нескольких вложенных директорий: ''mkdir -p tmp/a/b/c'' или даже так: ''mkdir -p project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}'' * Вывод листинга текущей директории с описанием содержимого файлов: ''ls -1 | xargs file'' * Фильтр файлов за определенную дату: ''ls -l | awk \'$6 == "2006-12-24"\''' * Посмотреть, какой процесс мешает размонтировать устройство: ''sudo lsof /dev/sda1'' * Удалить MBR диска hda: :!: ''dd if=/dev/zero of=/dev/hda bs=512 count=1'' :!: * Управление и мониторинг RAID-массивов: ''mdadm'' (читайте ''man mdadm'') * Преобразование кодировок в названии файлов: ''convmv'' (удобно при скачивании виндовых торрентов/архивов) ==== Поиск файлов ==== * Поиск файлов с именем filename в текущей и всех вложенных директориях и вывод их листинга: ''find ./ -name "filename" -print | xargs ls -alp'' * Поиск и подсветка цветом строки ''text'' в папке ''/home/gluek/Documents'' в выводом имени найденных файлов: ''grep -EHnr --color text /home/gluek/Documents'' ==== Запись дисков ==== * Найти пишущий привод: ''sudo cdrecord -scanbus dev=ATAPI'' ==== RAID ==== * Создаем RAID 1: mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/hdb1 /dev/hdc1 * Смотрим статус RAID 1: ''cat /proc/mdstat'' * Создаем файловую систему на RAID разделе: ''mkfs.ext3 /dev/md0'' * Проверка диска в массиве **(запускать от root)**: ''mdadm -E /dev/hdb1'' * Отправка отчета в случае сбоя на почту **(добавить в crontab root'а)**: --- [[http://www.opennet.ru/tips/info/881.shtml|Мониторинг и восстановление программного RAID в Linux]] */30 * * * * root mdadm --monitor --scan -1 --mail=mrgluek@gmail.com ===== Работа с архивами и образами ===== * Запаковать папку /home в архив file.tar.gz: ''tar zcvf file.tar.gz /home'' * Распаковать архив file.zip: ''unzip file.zip'' * Распаковать архив file.tar.gz: ''tar zxvf file.tar.gz'' * Распаковать архив file.tar.bz2: ''tar jxvf file.tar.gz'' * Подключить iso образ myiso.iso в файловую систему: ''sudo mkdir /mnt/myiso/; sudo mount myiso.iso /mnt/myiso/ -o ro,loop=/dev/loop0'' --- [[ConvertingVariousImageFormatsToISO|Преобразование различных образов дисков в формат ISO]] * Создать загрузочную дискету с FreeDOS: ''makebootdisk'' //(удобно для обновления прошивок железа)// * Перенести файлы с сервера на сервер: ''tar -cf - path_to_archive | gzip - | ssh login@domain "cat - > archive.tar.gz"'' --- [[http://xpoint.ru/forums/computers/os/unix/thread/40371.xhtml|источник]] ==== Работа с образами дисков ==== * Сделать упакованную резервную копию всего диска: ''sudo dd if=/dev/sda | gzip -cn > image.gz'' * Восстановить обратно: ''sudo gzip -cd image.gz | sudo dd of=/dev/sda'' Проверить статус работы команды ''dd'' в ходе её выполнения можно, отправив сигнал ''SIGUSR1'' (зависит от системы, иногда ''SIGINFO''), например вот так: ''kill -s SIGUSR1 12345'' (где ''12345'' --- PID ''dd'') ===== Работа в графической среде ===== * Информация о X сервере: ''xdpyinfo'' * Узнать, какой шрифт будет использован, если приложение запросило serif: ''fc-match serif'' (подробнее: [[http://gq.net.ru/2007/11/08/fontconfigs-fonts-priority/|Задание приоритета шрифтов в fontconfig at GQ’s blog]]) ==== Работа в KDE ==== * Свернуть приложение в трей (в примере --- Konsole): ''ksystraycmd --window 'Konsole' --hidden'' * Для поиска нужного окна можно пользоваться такой командой: ''sleep 3; xwininfo'' //(пауза 3 секунды сделана специально --- чтобы успеть переключиться из консоли в нужное окно, а затем кликнуть на него; информация об окне будет в консоли, нам нужен Window id, а точнее то, что находится в кавычках)// ===== Работа в сети ===== * Статистки сетевых соединений: ''iptraf'' (см. http://iptraf.seul.org/) * Информация о сетевой карте (скорость и тип соединения): ''sudo ethtool eth0'' * Смена мак-адреса сетевой карты (до перезагрузки): ''sudo ifconfig eth0 hw ether xx:xx:Xx:xx'' [[http://mydebianblog.blogspot.com/2007/02/blog-post_24.html подробнее...]] * Список windows shares в сети: ''nmap -p 139 192.168.1.1-255'' * Список доступных shares на машине: ''smbclient -N -L 192.168.1.1'' ===== Ссылки ===== * [[http://www.allcommands.com/|Universal Command Guide for Operating Systems]] --- действительно большой справочник по командам различных ОС.