- Консоль Linux
- Управление консолью Linux
- Команды консоли Linux
- Типичное использование консоли:
- Скопировать фалы rsync:
- Навигация и операции с файлами
- Специальные обозначения в консоли
- Основные команды в консоли Linux
- 1. Простейшие действия
- 2. Стандартные команды и команды, дающие информацию по системе команд (всегда набираются в одной строке)
- 3. Работа с сетью
- 4. Некоторые команды администрирования
- 5. Контроль процессов
- 6. Встроенные в Linux программные утилиты и языки
Консоль Linux
Консоль Linux абсолютно волшебный и удобный инструмент, позволяющий управлять всей системой короткими командами, причём можно сотворять абсолютно что угодно — от установки программ, до изменения оболочки, и в целом это экономит кучу времени, и это главная причина почему стоит пользоваться консолью.. (В Windows чтоб установить программу необходимо прошёлкать сколько-то окон и поснимать галочки, чтоб лишнее не поставилось, здесь же одна команда и получаешь необходимое, тоже можно получить и при установки deb пакетов или из центра программ или вообще собрать программу из исходников прям в системе — куча возможностей на любой вкус.)
Запустить консоль Linux можно запустив терминал (Ctrl+Alt+T зависит от сборки), находится он в
Пуск (Меню) → Администрирование → Терминал (Или слева при раскрытии меню, зависит от оболочки..)
Для KDE: Пуск (Kickoff) → Система → Терминал. Или в файловом менеджере Dolphin он всегда под рукой горячая клавиша F4.
Полезной опцией является тот момент, что в консоли можно запустить любое приложение и оно будет туда складывать свой вывод, таким образом можно ловить ошибки приложений..
Например перейдём в папку и напишем ./start-tor-browser
В Линуксе расширение файла может не быть, исполняемым может быть любой файл у которого стоят разрешения на выполнение (можно выставить правой клавишей в свойствах или chmod +x ./start-tor-browser ) в Виндовс обычно исполняемые только .exe и ещё некоторые файлы.
Управление консолью Linux
Часто понадобится запрашивать привилегии суперпользователя root для многих действий связанных с установкой, изменением файлов итп. Для этого предусмотрен механизм предоставления необходимого количества привилегий, но не более — sudo . Эта команда следует перед другими и вводится пароль пользователя для разрешения на запуск, в Линуксе везде где производятся существенные изменения — запрашивается пароль.
Имейте ввиду, в целях безопасности консоль Линукс не отображает вводимые пароли, но по факту они вводятся.
В редких случаях и это не советуется, можно запросить права суперпользователя и что-то сделать под ним не вводя каждый раз sudo , если поставить Debian или разные серверные дистрибутивы, в консоли необходимо прописать su , но поскольку в сборках пароль суперпользователя не задан, то можно получить доступ к суперпользователю написав
sudo su
Если ввести любую команду, напрмиер, apt , то можно увидеть описание или apt и 2 раза TAB и увидеть только список функций. Если написать man apt попадаем в описание (мануал) к текущей функции. Ещё помощь можно получить в утилитах, к примеру если ввести ls —help ..
При работе в консоли (терминале) в текстовым редактором nano , чтоб сохранить изменения нажмите закрыть Ctrl+X и подтвердите сохранение, отмена Ctrl+C (во многих случаях прервать любое действие эта команды Ctrl+C или q ).
Ctrl+D отключиться (отлогиниться) от текущего пользователя, сервера. Повторное нажатие закрывает консоль..
В любой ситуации не теряйтесь, обычно есть подсказки на экране, что жать..
Для копирования используется сочетание Ctrl+Shift+C , для вставки Ctrl+Shift+V (альтернатива: правая кнопка мышки или Ctrl+Insert с Shift+Insert).
Можно ещё не мучить себя и использовать любой текстовой редактор с графическим режимом:
Kate умеет сохранять системные файлы по факту сохранения, т.е. просто открывайте в нём любые интересующие файлы и при сохранении вводите пароль и в дамках, без консоли.
Историю команд можно посмотреть введя history , если нажимать стрелки вверх вниз, будут подставляться прошлые введённые команды. Повторить команду можно введя !! (два восклицательных знака, но стрелку вверх и энтер(ввод) быстрее..)
Команды консоли Linux
Никогда не выполняйте команд, назначения которых не понимаете. Команды консоли Linux, дают огромную власть, в том числе и удалить все файлы 1 командой..
Линукс загружен в память и скорее всего будет работать не смотря на удаление системы до момента перезагрузки. Кстати это ещё одно отличие позволяющее обновлять систему на горячую — нет блокировки файлов системой, не требуется постоянных перезагрузок как в Windows.
Типичное использование консоли:
Было несколько раз на старых сборках, после обновления заглючивало оболочку и компьютер отказывался перезагружаться или выключаться , но из консоли подчинился:
Изменение прав и/или владельца можно осуществить через Действия root (Root Actions Servicemenu). Подробнее права Линукс chmod описаны в соседней статье.. ( -R рекурсивно пройти по всем файлам/каталогам внутри)
Иногда необходимо выяснить какой дистрибутив , название и прочие данные:
Посмотреть диски в системе:
Установка, удаление программ:
-y — соглашаться со всеми вопросами установщика, он обычно сообщает всякие глупости, мол необходимо дополнительно будет поставить связанные библиотеки или приложение займёт столько то места на диске.. В основном используются install и remove . Можно перечислить сразу несколько пакетов для установки sudo apt install -y name1 name2.
Дописать в конец файла:
Если вместо >> поставить > , то файл перезапишется.
Правильно записывать в файлы, для которых необходимы права суперпользователя, можно так:
echo может иметь иметь опции/параметры:
Если включена -e, Escape последовательности для вставки специальных символов:
Внутри sh скрипта во флаге echo -e нет необходимости если указан интерпретатор для исполнения сценария(скрипта) #!/bin/sh, консоль использует более новый #!/bin/bash..
Скопировать фалы rsync:
Как-то словил проблему при копировании на диск с 5900 оборотов и меньшей максимальной скоростью диска, на 7200 оборотов (он на порядок быстрее), видимо переполнение буферов идёт или ещё что-то, винт разгоняет копирование свыше 120-160мб/с и принимающий начинает щёлкать головкой, в то время как на 5900 скоростей свыше 90мб/с не замечал. В итоге помогло ограничение скорости копирования. Выставил чуть меньше 90мб/с и вуаля никаких щелчков. Утилита очень полезна если необходимо передать файл на другой сервер или для передачи файлов с ломающегося диска.
В случае присутствия пробелов будут ошибки — возьмите в кавычки, я обычно такой формой пользуюсь:
-a, —archive — работа в режиме архивирования, сохраняются права доступа и информация о владельцах.
—partial — сохранять частично переданные файлы.
—progress — показать % выполнения во время передачи.
-P — эквивалент для —partial —progress (сохранять недокаченные файлы, показывать прогресс).
—ignore-existing — пропускать уже существующие на приёмнике disc2 (так можно немного ускорить, например для видео, они точно не меняются).
—delete — удалять те, которых нет на источнике disc1.
—bwlimit=KBPS — ограничение скорости копирования.
-v — показывать подробности.
-c — сравнивать файлы при помощи подсчёта контрольных сумм (по умолчанию по дате и размеру). Выполняется очень долго..
-n — ничего не делать, только показать что будет скопировано.
Линукс постоянно радует такими мелочами, в системе по умолчанию есть большинство необходимого, а Виндовс беги ищи, устанавливай — трать время..
Навигация и операции с файлами
Возможно пригодится и знание базовых команд для перемещения и управления файлами..
- pwd — показывает директорию в которой находитесь, иногда бывает необходима в случае сокращения в консоли, например домашняя папка отобразится как
cd — переходит в указанную папку, например cd
ls — линейно выводит список папок и файлов в текущей директории или указанной
ls /home . Чтоб вывести построчно с указанием прав и владельца необходимо добавить аргумент -l . Чтоб увидеть скрытые файлы и папки -a . Отсортировать по размеру -S . Отсортировать по расширению -X .
В итоге имеем команду ls -la или ls -la /путь/к/каталогу .
du * — считает размер директории, например du -hs * или du -hc /путь .
Аргументы:
-h — human-readable показывает вес файлов в Кб, Мб итд..
-с — подсчитывает сумму..
-s — показать только общий вес файлов..
А вот как можно вывести в отсортированном виде du -hc * | sort -rn
find — Поиск файлов и директорий
Думаю примеров достаточно, за остальным в man find..
Бывает необходимо найти где находится в системных папках та или иная утилита
cat — выводит содержимое файла, например cat /proc/bus/input/devices .
Ещё можно заниматься извращениями, например, копирование содержимого файла Linux в другой файл cat файл1 > файл2
Если файл был не пустым, он будет перезаписан, если воспользоваться >> будет дописан в конец файла2. Можно склеить два отдельных файла в один: cat файл1 файл2 > файл3
mkdir — создаёт директорию, например mkdir -p /путь/к/папке -p создаст рекурсивно все каталоги, если их нет иначе будет выдавать сообщение об ошибке, мол старшего каталога нет..
Сразу с правами mkdir -p -m 755 /путь/к/папке
cp — копирует файл/папку, cp опции файл-источник файл-приемник
cp -r /что /куда
-r — рекурсивно, все подкаталоги
-a = -dR —preserve=ALL не будет следовать по ссылкам (копировать от туда все файлы), а только рекурсивно скопирует: ссылки, файлы, папки с сохранением атрибутов.
-f, —force — перезаписывать существующие файлы
-i, —interactive — спрашивать, необходимо ли перезаписывать существующие файлы
-L — копировать не символические ссылки, а то, на что они указывают
-n — не перезаписывать существующие файлы
-P — не следовать символическим ссылкам
-s — не выполнять копирование файлов в Linux, а создавать символические ссылки
-u — скопировать файл, только если он был изменён
-x — не выходить за пределы этой файловой системы
-p — сохранять владельца, временные метки и флаги доступа при копировании
-t — считать файл-приемник директорией и копировать файл-источник в эту директорию
-v — вывести список обработанных файлов
—attributes-only — не копировать содержимое файла, а только флаги доступа и владельца
Параметров больше, сомотрите man cp в консоли.. (q — выход)
При копировании группы файлов, последнее имя трактуется как место назначения, а все предшествующие файлы, как исходные объекты. В других командах, например mv и rm, также разрешены множественные аргументы.
mv — позволяет перемещать или переименовывать каталоги и файлы
mv /что /куда
-f — заменять файл, если он уже существует
-i — спрашивать, необходимо ли заменять существующие файлы
-n — не заменять существующие файлы
-u — заменять файл только если он был изменен
-v — вывести список обработанных файлов
-r — рекурсивно пройти все вложенные папки
-f — не запрашивать подтверждения операций
Специальные обозначения в консоли
/ — означает домашнюю директорию текущего пользователя.
Клавиша TAB во время набора текста — автозаполнение..
Поздравляю, с этого момента ты продвинутый пользователь Linux : )
Страница сгенерирована за 0.002347 секунды На один процесс веб-сервера: 426 стр./сек. Всего Apache может отдать: 109 056 стр./сек. Выделено php памяти: 463.2 KB, real_usage: 2 MB © Все права защищены 2004 — 2021 | Карта сайта Отслеживать изменения в Твиттере Политика конфиденциальности | Браузер построил за сек. Полное время сек. Источник Основные команды в консоли LinuxОперационная система Linux очень нравится программистам и любителям «поковыряться», потому что в ней предусмотрено активное использование консоли, содержащей сотни команд. Если вы решили серьезно взяться за изучение этой гибкой ОС, следует для начала выучить в Линукс основные команды. Зачем же существуют в Linux команды консоли? Вводя их в консоль, пользователь может оперативно совершать массу действий: открытие, перемещение и копирование файлов, просмотр различной информации и статистики, мониторинг и отладка, получение подробной информации о системе, видоизменение программной и визуальной части системы. И это лишь часть возможностей, которые вы получаете, благодаря этим командам. Многие имеют дополнительные параметры, а некоторые и вовсе без них не работают. Для начала попробуйте просто вводить команды в консоль и изучать их действие. Возможность видоизменять систему командами делает Linux очень универсальной оперативной системой. Вы можете настроить её под себя, изменив в ней всё что угодно. Сначала команды могут показаться сложными, но хорошенько выучив их, вы значительно ускорите работу с компьютером и начнете получать истинное удовольствие, понимая, что всё в ней настроено вами под ваши нужды. Помните, что для полноценной работы с консолью вам нужны права администратора. Ниже представлен список основных команд в консоли Linux и их расшифровка. 1. Простейшие действияls — выдать список файлов в текущем каталоге. cd [каталог] — сменить текущий каталог. Если имя каталога не указывается, то текущим становится домашний каталог пользователя. cp — копировать файлы. mv — переместить или переименовать файл. ln -s — создать символическую ссылку. rm — удалить файлы. mkdir — создать новый каталог. rmdir — удалить пустой каталог. rm -r (рекурсивное удаление) — удалить файлы или каталоги и их подкаталоги. ОСТОРОЖНЕЙ с этой командой, поскольку пока у Linux нет системы полного восстановления удаленных файлов (если вы не пользуетесь специальными программами для помещения удаленных файлов в специальный каталог, что-то вроде «корзинки» в ОС Windows). cat — вывод содержимого файла на стандартный вывод (по умолчанию — на экран). cat > more — просмотр содержимого длинного текстового файла по страницам. less — просмотр содержимого текстового файла с возможностью вернуться к предыдущим страницам. Нажмите q, когда захотите выйти из программы. «less» — аналог команды DOS «more», хотя очень часто «less» бывает более удобной чем «more». pico — редактировать текстовый файл с помощью текстового редактора pico. lynx — просмотр файла html или WWW ссылки с помощью текстового браузера Lynx. tar -zxvf — распаковать архив tgz или tar.gz find — name имя_файла — найти файл с именем «имя файла» и отобразить результат поиска на экране. Поиск начинается с каталога ; «имя_файла» может содержать маску для поиска. pine — хорошая текстово-ориентированная программа для чтения электронной почты. mc — запустить программу управления файлами «Midnight Commander» (Выглядит как «Norton Commander», но по своим возможностям ближе к far). ./Имя_Программы — запустить на исполнение исполняемый файл в текущем каталоге, если текущего каталога нет в списке каталогов, указанных в переменной окружения PATH. xterm (в X терминале) — запустить простой терминал в графической оболочке X-windows. Для того чтобы выйти из него, наберите «exit». 2. Стандартные команды и команды, дающие информацию по системе команд (всегда набираются в одной строке)pwd — вывести имя текущего каталога. whoami — вывести имя под которым Вы зарегистрированы. date — вывести дату и время. time — выполнить программу и получить информацию о времени, нужном для ее выполнения. Не путайте эту команду с date. Например: Я могу определить выполнить команду ls и узнать, как много времени требуется для вывода списка файлов в каталоге, набрав последовательность: time ls who — определить кто из пользователей работает на машине. rwho -a — определение всех пользователей, подключившихся к вашей сети. Для выполнения этой команды требуется, чтобы был запущен процесс rwho. ruptime — какие машины работают в сети, и какие остановлены. finger — системная информация о зарегистрированном пользователе. Попробуйте: finger uptime — количество времени, прошедшего с последней перезагрузки операционной системы. ps a — вывести список текущих процессов в Вашем сеансе работы. top — интерактивный список текущих процессов, отсортированных по использованию центрального процессора. uname -a — вывести информацию о версии операционной системы. free — вывести информацию по использованию памяти. df -h — вывести информацию о свободном и используемом месте на дисках. du . -bh | more — вывод на экран информации о размере файлов и каталогов, начиная с текущего каталога. set|more — вывести текущие значения переменных окружения. (Не для всех shell. Для csh/tcsh — printenv | more, хотя set тоже покажет полезную информацию.) echo $PATH — вывести значение переменной окружения «PATH» Команда echo может использоваться для вывода значений любых переменных окружения. Воспользуйтесь командами set или printenv для получения полного списка. 3. Работа с сетьюssh — обеспечивает безопасное вхождение в удаленный сеанс работы с другой машиной, а также позволяет выполнить заданную команду на удаленной машине без вхождения в сеанс работы: ssh [-l Ваше_имя_пользователя_на_удаленной_машине] — вхождение в сеанс на удаленной машине. Используйте имя машины или ее IP адрес. (Вы должны быть зарегистрированы на этой удаленной машине). Если Ваше_имя_пользователя одинаково на локальной и удаленной машинах, то его можно не набирать, т.е.: ssh — позволит Вам войти в сеанс на удаленной машине ssh — выполнит на удаленном компьютере заданную команду и передаст Вам на экран результат ее выполнения (При установлении соединения по ssh Вы должны будете ввести пароль, который Вы имеете на удаленном компьютере; при этом пароль будет передан по сети в зашифрованном виде, т.е. безопасным образом.) scp — обеспечивает безопасное копирование файлов в сети: scp @ : — cкопирует файл с локального компьютера в Вашу корневую директорию на удаленном компьютере (наличие «:» в конце команды обязательно). telnet — связаться по telnet с другой машиной. Войдите в сеанс работы после установления связи с помощью вашего пароля. ftp — связаться по ftp с удаленным компьютером. Этот тип связи хорош для копирования файлов с/на удаленную машину. Предпочтительно не пользоваться командами telnet и ftp, а использовать только ssh и scp, поскольку они обеспечивают безопасность сетевого соединения! hostname -i — показывает IP адрес компьютера, на котором Вы работаете. 4. Некоторые команды администрированияalias ls=»ls -Fskb —color» — создать alias-псевдоним для того чтобы одной командой можно было запустить более сложную комбинацию команд. Поместите создание alias в файл /etc/bashrc если вы хотите, чтобы эти псевдонимы были доступны всем пользователям вашей системы. Для tcsh — формат определения alias другой: alias la ‘ls -AF —color=none’ kapasswd — команда для изменения пароля для доступа к файловой системе AFS. При работе на базовом Linux-кластере ЛИТ следует пользоваться только этой командой (а не командой passwd!) для изменения пароля для вхождения в кластер. passwd — изменить свой пароль на каком-либо локальном компьютере. chmod — изменить права доступа к файлу, владельцем которого вы являетесь. ls -l имя_файла Если файл доступен всеми способами всем пользователям, то напротив имени файла будет следующая комбинация букв: rwxrwxrwx chmod a+r junk Эта команда отнимет право доступа на исполнение файла у всех кроме пользователя и группы: chmod o-x junk Для получения дополнительной информации наберите chmod —help или man chmod или почитайте любое руководство по Linux. Вы можете установить права доступа по умолчанию для создаваемых вами файлов с помощью команды»umask» (наберите man umask). chown — изменить владельца файлов. chgrp — изменить группу для файла. Вы можете использовать две последние команды, после того как сделали копию файла для кого-либо. 5. Контроль процессовps axu | grep — отобразить все процессы, запущенные в системе от Вашего имени пользователя. kill — «убить» процесс. Для начала определите PID Вашего «убиваемого» процесса при помощи ps. killall — «убить» все процессы по имени программы. xkill (в терминале X window) — «убить» процесс, на окно которого укажите курсором. 6. Встроенные в Linux программные утилиты и языкиemacs (в X терминале) — редактор emacs. Очень многофукционален, но весьма сложен для неопытных пользователей. gcc — GNU C компилятор. В сети есть очень хорошие руководства по использованию. g++ — GNU C++ компилятор. perl — очень мощный скриптовый язык. Чрезвычайно гибкий, но с довольно сложным синтаксисом. Очень популярен среди продвинутых пользователей. python — современный и довольно элегантный объектно-ориентированный интерпретатор. Выглядит таким же мощным и немного проще, чем perl. g77 — GNU FORTRAN компилятор. f2c — перекодировщик из FORTRAN в C. fort77 — компилятор FORTRAN. Выполняет f2c, а затем использует gcc или g++. grep — поиск фрагмента текста в файлах, удовлетворяющего набранной маске. Маска определяется с помощью стандартной системы обозначений, называемой «регулярные выражения». tr — translation utility (другими словами — замена букв в текстовом файле). gawk — GNU awk (используется для обработки форматированных текстовых файлов). Лучше вызывать просто awk. sed — утилита для обработки текстовых файлов. Источник |