Calculate Forum

Приятные мелочи: Основные команды командной сроки в OS Linux.

tutorials

#1

Приятные мелочи: Основные команды командной сроки в OS Linux.

Как узнать версию OS (Debian, Ubuntu и.т.д.)

 # lsb_release -a

Более простой вариант

 # cat /etc/issue

Показывает какой дистрибутив Вы используете

Welcome to \n.\O (Calculate Linux Desktop 15.12 KDE SC 4)

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

 # last reboot 

Как получить информацию о CPU ?

 # cat /proc/cpuinfo

Как извлечь DVD/CD ?

 # eject

Удобная утилита для сбора информации о системе и “железе” - inxi

 # inxi -U

Hardware Lister, входит в пакет sys-apps/lshw - утилита для сбора информации о системе и “железе”

 # lshw

Показывает информацию о материнской плате и слотах расширения PCI.

 # lspci

Выводит информацию об устройствах (DMA, IRQ, IO ports).

 # lsdev

Информация о процессоре (cpu info)-показывает содержимое файла cpuinfo. Заметьте, что все файлы в каталоге /proc это не настоящие файлы, а просто удобная форма доступа к системной информации.

 # cat /proc/cpuinfo

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

 # cat /proc/interrupts

Узнать информацию о жестком диске (вместо /dev/hda может быть /dev/hdb, /dev/hdc и т.д.)
Определение системной информации из командной строки в Linux:

 # smartctl -a /dev/hda; hdparm -i /dev/hda

При запуске системы ядро печатает длинную последовательность сообщений, эти сообщения информируют состоянии ядра (например, об объеме доступной памяти) и внешних устройствах, обнаруженных в системе. Эта информация необходима при диагностике проблем с аппаратными устройствами или их конфигурацией, а также при определении наименований устройств системы, соответствующих оборудованию (например, возможно, что ваша сетевая карта обнаружена как устройство ne0 или ne1. Обычно при загрузке эти сообщения прокручиваются на экране слишком быстро, чтобы извлечь из них какую-либо пользу, однако команда dmesg позволяет их просмотреть.

 # dmesg

или так

 # dmesg | less

Эта программа дает общую информацию об оконной системе. Версию, релиз Х, загруженные модули и расширения, разрешение экрана, глубину цвета, количество и параметры “экранов” клиент-сервера, а также еще кое-какую информацию.

 # xdpyinfo

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

 # xvinfo

Как узнать количество свободной памяти и получить прочую стратистику о памяти ?

 # free

Выводит информацию о системе -версию,релиз кернела,Сетевое имя системы,Тип процессора,тип платформы и операционной системы.

 # uname -a

Узнать, сколько времени прошло с момента последнего запуска системы

 # uptime

сколько времени в секундах прошло с начала “эры” Юникс

 # echo "GMT = `date +%s` seconds since 1970"

Показывает информацию о хардиске а также информацию о партициях.

 # fdisk -l

Для проверки текущего состояния служб в Linux Like Debian

 # service --status-all

Для того, чтобы получить список запущенных/остановленных служб на всех уровнях выполнения. Используется в Linux Like Debian

 # chkconfig --list | more

Управление автозагрузкой в debian Существует три простые утилиты для управления стартовыми и инициализационными скриптами

 # update-rc.d

 # rcconf

 # file-rc

Для проверки текущего состояния служб в Linux Like Gentoo - добавление/удаление служб на том или ином уровне запуска

 # rc-update

Показывает список пользователей, входивших в Вашу систему в последнее время. Действительно неплохая идея - проверять этот список в качестве меры предосторожности в Вашей системе.

 # last

Просмотр информации о системной активности, представленной в файле (/var/
В составе пакета в Gentoo Linux - app-admin/sysstat

 # sar

где xx номер текущего дня). sar может показать много вариантов системной информации, включая статистику загруженности процессора, статистику ввода/вывода, и статистику сетевого траффика за текущий день и (обычно) за несколько предыдущих.

 # log/sarxx

Выводит информацию использовании памяти, процессора, областях swap и т.п.

 # vmstat

Информация о системе
Определение процессов и информации о них из командной строки в Linux

 # procinfo

Без параметров выводит список процессов, запущенных в данной сессии (т.е. в том же окне, что и ps).

 # ps

пользователь выводит список всех процессов указанного пользователя.

 # ps -u

Программа, позволяющая оперативно отслеживать, какие процессы запущены в системе и какие из них потребляют больше всего процессорного времени.

 # top

Команда lsblk выводит список дисков и их разделов целиком и в удобном виде

 # lsblk 

Показывает обьем занимаемого места на ваших хардисках

 # df -h

Как получить статистику использования файловой системы ?

 # df -ah 

Показывает обьем занимаемого места конкретной директории

 # du -sh; du -sh /home/username

или man ls

 # ls -lsR /root

Позволяет увидеть размер всех директорий в данном каталоге

 # find . -maxdepth 1 -type d -print | xargs du -sh | sort -rn

или

 # find . -maxdepth 1 -type d -exec du -sk {} \; | sort -rn

“Обнуляет” файл. Особенно полезно для чистки логов. Может использоваться вместо touch file для создания новых файлов.

 # :>file

То же, что и

 # cat /dev/null > file

Просмотр файла без комментариев и пустых строк. Особенно удобно для просмотра конфигов.

 # egrep -v "^#|^[:blank:]*$" file

Более простой вариант предыдущей команды, если у вас нет пустых строк, состоящих из пробельных символов, или они вас не беспокоят.
Все что касается изменения прав доступа на файлы папки

 # egrep -v "^#|^$" file

Как найти файл ?

 # find /foldername -name name-of-file
Пример: 
 # find /home -name *vertito* 
 # locate *vertito* 

Как найти все файлы в определенной директории которые содержат определенную строку ?

 # find /home/vertito -exec grep -li искомая_строка {} \\\\; 

Как найти файл с определенным именем и удалить его ?

 # find / -name имя_файла.txt -exec rm -rf {} \\\\; 

Как удалить файлы во временной категории, которые старше одного месяца ?

 # find /tmp -mtime 31 -exec rm -rf {} \\\\; 

Изменяем права доступа на все файлы Файл - чтение запись.

 # find . -type f -exec chmod 644 {} \; find /home/username/test -type f -exec chmod 644 {} \;

Изменяем права доступа на все папки. Каталог - выполнение
Команды для форматирования вывода:

 # find . -type d -exec chmod 755 {} \; find /home/username/test -type d -exec chmod 755 {} \;

Как найти файлы с правами 750 ?

 # find / -type f -perm 750

Как найти все файлы, которые никому не принадлежат ?

 # find / -nouser 

Как найти все файлы принадлежащие конкретному пользователю ?

 # find /home -user user_name

Покажет только строки вывода от command содержащие слово word

 # command |grep word

Команда которая остановит вывод при достижении нижней границы экрана и продолжит по строкам при нажатии Enter - less

 # command |less

Заставит команды ограничивающие вывод до размера экрана (на пример man) продолжать после достижения нижней строки -cat

 # command |cat

Будет сортировать строки вывода от command в обратном порядке - tac

 # command |tac

Направит вывод от command в файл или устройство - out

 # command > out

Добавит вывод от command в файл out
Определение сетевой информации из командной строки в Linux

 # command >> out

Как узнать под каким именем вы вошли ?

 # whoami

Как узнать кто сейчас активен на сервере через SSH ?

 # w

или

who -w

Как установить дату и время с NTP сервера (сервер точного времени) ?

 # ntpdate 0.fedora.pool.ntp.org

Как узнать сколько времени прошло с загрузки системы ?

 # uptime 

Показывает информацию о сетевых сервисах

 # netstat -lp --inet

Как вывести статистику сети ?

 # netstat -s

Показывает активные соединения из/в системе

 # netstat -p --inet

Как узнать какие порты слушают на вашем IP адресе ?

 # nmap -sT -O your-ip-address 

Как узнать кому принадлежит домен ?

 # whois google.com 

Команда lsof, которая показывает все открытые файлы, с опцией -i показывает сетевые соединения вместе с процессами к которым они относятся:

 # lsof -i

Позволяет отслеживать файл с логами в online режиме.

 # tail -f /var/log/файл с логами

Как вывести содержимое сайта в терминал ?

 # elinks -dump “http://www.gmanews.tv/forex.php” 
 # lynx -dump “http://www.gmanews.tv/forex.php” 
 # links -dump “http://www.gmanews.tv/forex.php”

Как сохранить содержимое сайта в файл ?

 # elinks -dump “http://www.gmanews.tv/forex.php” > file1 
 # lynx -dump “http://www.gmanews.tv/forex.php” > file2 
 # links -dump “http://www.gmanews.tv/forex.php” > file3

Как запустить консольную команду в фон ?

 # program-name & 

Как получить первые 10 строк файла ?

 # head -10 file.txt

Как получить последние 10 строк файла ?

 # tail -10 testfile.txt

Как вывести содержимое файла ?

 # cat testfile.txt 

Как удобно просмотреть содержимое файла ?

 # less testfile.txt 

Как отсортировать содержимое файла в порядке убывания ?

 # sort -r newfile.txt 

Как получить больше информации о какой-либо команде ?

Пример: 
 # man elinks 
 # apropos elinks 
 # whatis elinks 
 # info elinks

Как следить за изменением в выводе какой-либо команды ?

Пример: 

 # watch ifconfig 

 # watch netstat -t 

Как распечатать номера строк текстового файла ?

 # cat -n yourfile.txt

Как узнать сколько времени исполняется команда ?
Перед командой написать time

 # time sync
 # time ls -l    
 # time cl-update -eovRf

Как увидеть календарь ?

 # cal 
 # cal -3

Полезные ссылки:

1.Основные команды командной сроки в Linux:
http://kubuntu.ru/node/4381

2. Справочник по командам, используемым в linux. Справочник во вложении (Спасибо- Алексею Чуклимову).
http://www.calculate-linux.org/boards/40/topics/10010

3. Шпаргалка по линукс-командам
http://opensourcerules.net/komanda_linux.html

Основы_Linux.Небольшой_Hand-book4.htm (409 KB)
Основы_Linux.Небольшой_Hand-book_LPI_101_full.pdf (545 KB)


#2

lshw - детализированная информацию о «железе»


#3

Alexander Medvedovsky wrote:

lshw - детализированная информацию о «железе»

Спасибо! Добавлю.


#4

Как узнать версию OS (Debian, Ubuntu и.т.д.)

Непонятно только причём тут убунта. Полезность статьи теряется.
Неплохо приводить пакеты, которым принадлежат утилиты. Например sys-apps/lsb-release.
А вот почему он правильно не детектит кальку, уже интересно )


#5

Alexander Tratsevskiy wrote:

Как узнать версию OS (Debian, Ubuntu и.т.д.)

Непонятно только причём тут убунта. Полезность статьи теряется.
Неплохо приводить пакеты, которым принадлежат утилиты. Например sys-apps/lsb-release.
А вот почему он правильно не детектит кальку, уже интересно )

HowTo я еще переделаю!

Есть проблема в ИТ компаниях. Ты “линуксойд” ООО, а как узнать у “АрчЛинукс” (Debian,CentOS, Mageia, Zentyal,Slackware и еще куча других какие предыдущим админа в голову пришло внедрять в организациях) какие службы запущены. Сожалению нам достаётся “линуксойдам” зоопарк “линуксов” где я должен помнить по памяти все команды… За последние время я столкнулся с таким зоопарком “линуксов” что просто жуть… да многие команды bash у них стандартны… но реализация системы так иногда так сильно отличаются друг от друга.


#6

Если честно то мне нравятся только 3 дистрибутива Linux
1.Calculate Linux - спасибо Вам за работу!
2.Debian Linux без GUI. (Mint Linux на база Debian)
3.Suse Linux.


#7

1. Десктоп - Calculate Linux/Sabayon/DragonflyBSD
2. Сервер - FreeBSD/CSS(с оговорками)/Ubuntu
3. Полигон-конструктор - FreeBSD/CSS/gentoo
как-то так


#8

Alexander Tratsevskiy wrote:

А вот почему он правильно не детектит кальку, уже интересно )

а должен? лезем в скрипт:

 # Defines the data files
INFO_ROOT="/etc"                              # directory of config files
INFO_LSB_FILE="lsb-release"                   # where to get LSB version
INFO_DISTRIB_SUFFIX="release"                 # <distrib>-<suffix>
ALTERNATE_DISTRIB_FILE="/etc/debian_version"  # for Debian [based distrib]

оно желает /etc/lsb-release или /etc/debian_version

в кальке ни того, ни другого нет и близко


#9

Виктор Кустов wrote:

  1. Десктоп - Calculate Linux/Sabayon/DragonflyBSD
  2. Сервер - FreeBSD/CSS(с оговорками)/Ubuntu
  3. Полигон-конструктор - FreeBSD/CSS/gentoo
    как-то так

Прости за незнание, а что такое CSS + (с оговорками)?


#10

CSS - Calculate Scratch Server
С оговорками потому что поддержка собственно сервера - в ж-е, внятной политики развития нет (и как мне кажется не будет). Для полигона-конструктора это неважно.


#11
find . -maxdepth 1 -type d -print | xargs du -sh | sort -rn

проще
du -h -d 1 /xxxx (вариант генты du -h --max-depth=1 /xxxx)

но да, без сортировки


#12

Виктор Кустов wrote:

CSS - Calculate Scratch Server
С оговорками потому что поддержка собственно сервера - в ж-е, внятной политики развития нет (и как мне кажется не будет). Для полигона-конструктора это неважно.

Спасибо! Ответ понятен.