Введение в Linux команды

В сердце каждого современного Mac и Linux компьютер “Терминал”. Терминал превратился из текст на компьютере terminals 1960-х и 70-х годов, которые сами заменили перфокарты в качестве основного способа взаимодействия скомпьютер.Он также известен как командная оболочка, или просто “оболочка.” Windows имеет один, тоже, но это называется “Командная строка” и происходит от MS-DOS из 1980s.

Mac, Linux и Windows, компьютеры сегодня находятся в основном управляется через удобный многофункциональный графический пользовательский интерфейс (GUI) с меню, полосы прокрутки и перетащить и падение интерфейс.Но все основные вещи все еще может быть достигнуто путем ввода текстовых команд в терминал или командную prompt.

Использование Finder или Проводника, чтобы открыть папку сродни cd команды (“Изменение каталогов”).Просмотр содержимого папки как ls (сокращение от “списка”, или dir В Microsoft в командной строке).И есть сотни других для перемещения файлов, редактирование файлов, запуск приложений, управление изображениями, резервное копирование и восстановление вещи, и многое more.

Итак, почему кто-то захочет возиться с этими текстовых команд, когда вы можете использовать мышь вместо этого?Основная причина в том, что они очень полезны для контроля удаленных компьютеров, на которых GUI недоступен, особенно веб-серверов, и особенно Linux веб-серверов, которые были лишены всех ненужных графический software.

Иногда эти постное Linux серверов можно управлять через интерфейс веб-браузера, например, Cpanel или Plesk, позволяя создавать базы данных, адресов электронной почты и веб-сайтов, но иногда этого не достаточно.Эта статья предусматривает широкое внедрение в текст команды и ситуации, в которых они полезны.Мы рассмотрим следующие:

  • Почему зная несколько команд полезно;
  • Выдача команд на Вашем собственном компьютере;
  • Использование SSH для входа на веб-сервере;
  • Как ваши подшипников: pwd cd ls;
  • Просмотр и перемещение файлов: cat more head tail mv cp rm;
  • Поиск файлов: find;
  • Просматривая и редактирования файлов: grep vi;
  • Резервное копирование и восстановление файлов и баз данных: tar zip unzip mysqldump mysql;
  • Разрешения файла:. chmod

Почему Зная несколько команд Linux Есть Useful

Как разработчик веб-сайта или администратора сервера, вы получаете большой актив в становлении комфортно с этими командами: на сайте чрезвычайных ситуаций, для настройки сервера и для вашего резюме.Она также может сэкономить вам деньги.Многие хостинг-компании предлагают полностью управляемых серверов, но при высокой ежемесячной премии.Или же они берут на час для технических support.

Возможно, вам необходимо создать архив большие файлы или внести изменения в httpd.conf файл или выяснить, почему изображение вашего сайта естьвдруг остановился нагрузки.Вы не можете заплатить $ 50 до администратора вашего сервера на пять минут работы.Эта статья даст вам инструменты, чтобы сделать такие изменения yourself.

А почему “Linux” команды?Два основных типа серверов, доступных сегодня: Windows и UNIX.UNIX-серверов на базе Linux включают (которая отделилась в 1991), Mac OS X (2002) и несколько более традиционных UNIX системах, таких как BSD, Solaris и HP-UX.Linux команды в основном UNIX команды и так будет работать на всех из них.На самом деле, я использую термин “Linux” здесь только потому, что она является более общим и менее пугающим, чем “UNIX.” Windows серверов, с другой стороны, имеют гораздо меньшие доли на рынке и все чаще контролируется с помощью графического интерфейса, такие как Пульт дистанционного Desktop __ и 4 | VNC, а не команда line.

В самом деле, ноябрь 2011 Исследование показало, что Apache приходится около 65% всех веб-servers.Apache обычно работает в популярной конфигурации LAMP: Linux, Apache, MySQL и PHP.Microsoft была на втором, с 15%.Третье место Nginx работает на Linux, UNIX, Mac и Windows.Таким образом, команды в этой статье, будет работать по крайней мере две трети всех servers.

Выдачи команд на собственный Computer

Вы можете быстро экспериментировать с текстом команды на своем компьютере.В Mac с OS X, перейдите в Приложения → Служебные программы и запустить терминал.На ПК с Windows, перейдите в меню Пуск → Все программы → Стандартные и выберите пункт “Командная строка”. Об Ubuntu Linux, перейдите в Приложения → Стандартные и выберите Terminal.

В Windows вы должны увидеть это:


Команда Windows, prompt

Это командной строки (т.е. оболочка, строку или терминал) на свой компьютер.Вы можете ввести dir В Windows или ls на Linux или Mac, затем “Enter”, чтобы увидеть список файлов в текущей “Каталог” (то есть папку, местоположения или пути)

Все, что мы будем делать для остальной части этой статьи открывает одну из этих терминалов на удаленном компьютере: веб-server.

Вы, возможно, использовал VNC или Remote Desktop, которая позволяет фактически просмотра рабочего стола на чужом компьютере: ваш экран показывает свой экран, мышь контролирует их мышь, клавиатура имитирует их keyboard.

Терминал похож на этот, но без фантазии меню или полос прокрутки.Если бы вы были подключить клавиатуру и экран на вашем веб-сервере, сидя в несгораемом фундаменте где-то, вы, вероятно, увидите одно из этих терминалов, терпеливо ожидая, когда ваше имя пользователя и password.

Использование SSH для входа в Ваш веб-Server

Приложение SSH или Secure Shell, используется для входав веб-серверах.Он часто принимает те же имя пользователя и пароль, FTP, но он должен быть разрешен вашего хоста.Если у вас есть выделенный сервер Web, он, вероятно, уже разрешены.Если вы используете облако хостинга, то вам, возможно, придется просить его первым.Если вы находитесь на виртуальный хостинг, вы определенно должны просить его, и администратор может refuse.

В Linux или Mac, открыть терминал как описано выше, и введите следующую команду:

ssh -l username www.myserver.com

-l означает “Вход в”, и имя пользователя идет после него.Если SSH разрешен, то он будет запрашивать пароль.Если нет, то вы получите сообщение об ошибке, подобное этому:

SSH Command and Connection Error
Запуск ssh команды и отказывают access

On Windows, вам нужно скачать некоторые SSH программного обеспечения. Putty является популярным и простым выбором.Он загружает в виде одного файла EXE, который можно сохранить на рабочем столе и запустить сразу.Введите ваш сайт, как имя хоста, проверьте SSH опцию “Тип подключения” и нажмите Он будет просить ваше имя пользователя и тогда ваш password.

Running Putty on Windows
Запуск Putty на Windows, для того, чтобы SSH на веб-server

После успешного входа в систему вы обычно видите приветствие.После этого вам будет предложено несколько букв и $ Знак (или # подписаться, если вы вошли в систему с правами администратора).Буквы часто представляют ваше имя пользователя и где ты родом, или имя сервера.~ означает, что вы находитесь в вашем домашнем каталоге.$ есть строки, это означает, что вы можете начать ввод команд сейчас, что-то вроде:

Successful SSH to a server
успешных SSH входа в систему на веб-сервере.$ означает, что мы можем начать печатать commands.

Следующий раздел представляет несколько основных commands.

Получение Вашего Bearings

В Windows, когда вы идете в «Мои документы» из меню Пуск, он открывает “Мои документы» в Windows Explorer и показывает его содержимое.Если некоторые любопытные коллеги шли и спросил: “Что каталоге вы занимаетесь?” Вы могли бы сказать: “Я in. Мои документы”

Если вы SSH’ed к серверу как пользователь “Admin”, вы бы землю in домашний каталог администратора, наверное /home/admin.Вы можете проверить это с помощью команды pwd., Которая показывает ваше текущее местоположение (т.е. папка, каталог или путь)

The pwd and ls commands
pwd команда говорит вам, где вы находитесь, cd изменения каталога и ls показано содержимое directory.

Для перехода в другой каталог, воспользуйтесь cd Команда с назначения, например, так:

cd /

Это приведет к изменению в каталог /, в верхней части всю структуру каталогов UNIX.Команда ls выводит содержимое текущего каталога, в этом случае /.

На скриншоте выше, терминал цветом.Темно-синий записей подкаталогов, и черные записей файлов.Много интересного материала на веб-серверах происходит в /etc /home и /var каталоги.Используя только cd и ls, вы можете исследовать ваш сервер и узнать, где вещи is.

При использовании cd, можно задать новый каталог абсолютно (начиная с косой чертой, например, /var/www) или относительно вашего текущего местоположения (без первоначального косая черта).Вы также можете создать каталог с двумя точками.Практика с последовательностью ниже, нажав “Enter” после каждой команды.Можете ли вы догадаться, что последняя команда скажет вам,

cd /var
ls
cd www
ls
cd ..
pwd

Просмотр и перемещение Files

На многих серверах Linux, веб-сайты находятся в /var/www/vhosts.Вы можете проверить на сервере, выполните следующие действия:

cd /var/www/vhosts
ls

Если вы видите список сайтов, вы можете переместить в одну из них.В главном каталоге сайта, вы, вероятно, увидите те же файлы, что вы видите, когда вы FTP на сайт, такие вещи, как httpdocs (где находятся файлы вашего сайта есть), httpsdocs (если у вас есть отдельный защищенный веб-сайт),conf (файлы конфигурации), statistics (журналы и составлена ​​статистика), error_docs private и more.

Вы можете изменить в общедоступных вашего сайта каталога, который составляет myserver.com/httpdocs В данном примере:

cd myserver.com
ls
cd httpdocs
ls

Сейчас вы приехали, и вы можете запустить новую команду, cat, которая выводит на экран содержимое файла.Например, если у вас есть index.html файл, запустите:

cat index.html

Если ваш index.html файл больше, чем несколько строк, он будет проносятся мимо в тумане.Вы можете использовать more команду, чтобы показать это медленно, по одной странице за раз.После того как вы введите следующую команду, она покажет вам первую страницу.Вы можете нажать на пробел, чтобы показать следующую страницу, “Enter”, чтобы показать следующую строку, а Q к quit.

more index.html

Вы также можете показать только первые несколько или несколько последних строк файла с head и tail команды.Это показывает 10 строк по умолчанию, но вы можете пройти в любом количестве:

head index.html
tail -20 index.html

Если вы хотели бы переименовать этот файл, используйте mv команды, сокращенно «ход»:

mv index.html indexold.html

Точно так же, cp является копией команды, а rm удаляет files.

cp index.html indexold.html
rm indexold.html

Ниже строки команд в действии.Для того, она подтверждает текущей директории с pwd, смотрит на содержимое с ls, index.html с cat, то переименовывает его с mv, и, наконец, удаляет его с rm, С большим количеством ls между ними, чтобы показать changes.

The cat and mv commands
cat mv и rm команды в действии, для отображения, перемещения и удаления file.

More Advanced Совет: Изменение Prompt

Обратите внимание, что в нашем первоначальном примеров, полные строки включены в текущий каталог.Например, в [admin@myserver /]$, / указано, что пользователь находится в / каталог.В примере, непосредственно выше, она была удалена, иначе это был бы переполнен скриншот постоянно говорят [admin@myserver /var/www/vhosts/myserver.com/httpdocs]$.

Вы можете изменить запрос на то, что вы хотите, установив PS1 переменной среды.Вот несколько примеров, в том числе последняя директория пользователя, хоста и тока:

PS1="[woohoooo ]$ "
PS1='[${USER}@${HOSTNAME} ${PWD}]$ '

Поиск Files

На больших веб-сайтов, файлы могут быть потеряны.Может быть, вы смутно помните загрузки новой версии логотипа вашего клиента около четырех месяцев назад, но с тех пор он впал в немилость и был заменен.Теперь, на ровном месте, клиент хочет его обратно.Вы можете скачать все, от сервера с помощью FTP и поиск файлов с помощью Finder или Explorer.Или вы можете войти в систему и искать с помощью команды line.

find Команда поиска с помощью файлов по имени, размеру и времени изменения.Если вы просто дать ему каталог, она будет перечислять все, что каталог содержит.Попробуйте это:

find /var/www

Вы, вероятно, увидите много-много имен файлов, проносящихся мимо.Если у вас есть много сайтов, он может продолжаться в течение нескольких минут.Вы можете остановить его, нажав Control C (т.е. удерживая кнопку управления на клавиатуре и нажав на букву C).Вот таким образом, чтобы прервать Linux команды.Более полезная команда будет выглядеть так:

find /var/www | more

Символ трубе (|) принимает вывод одной команды (в данном случае, в длинный список файлов, созданных find) и передает его в другую команду (в данном случае more, который показывает,одной странице файлов одновременно).Как и выше, нажмите клавишу пробела, чтобы показать следующую страницу, а Q к quit.

Для поиска конкретного имени файла, добавить -name и имя файла.Вы можете использовать \* как дикие карты (обратная косая черта не всегда необходимо, но является хорошей практикой с find команды).Вы можете комбинировать поиск с помощью -o (за “или”).Если оставить в стороне -o, он становится «и».

find /var/www -name logo.gif
find /var/www -name \*.gif
find /var/www -name \*.gif -o -name \*.jpg

Вы можете также искать по размеру, добавив -size.Таким образом, вы можете взглянуть на все GIF-файлы между 5 и 10 KB:

find /var/www -name \*.gif -size +5k -size -10k

Аналогично, чтобы найти файл, который был последним изменилось между 90 и 180 дней назад, вы можете использовать -ctime:

find /var/www -name \*.gif -ctime +90 -ctime -180

В обоих этих случаях, вы, вероятно, также хотят знать реальный размер файла и дату последнего изменения.Для этого, вы можете добавить -printf, которая похожа на функцию C printf в том, что вы используете % регистрация для вывода различной информации.Эта команда выводит файлразмер (до 15 символов в ширину), дата и время изменилось (вплоть до наносекунд) и имя файла:

find /var/www -name \*.gif -size +5k -size -10k -ctime +90 -ctime -180 -printf "%10s  %c  %p\n"

С этой громадины, вы, надеюсь найти недостающий файл.Вот пример:

Variations on the find command
Поиск все GIF-файлы в пределах одного сайта, и отображение размеров файлов, изменились времена и файл names.

Другой полезный параметр составляет -cmin, которая позволяет увидеть файлы, которые были изменены в течение последних нескольких минут.Так что, если что-то пойдет не так на сайте, вы можете запустить, чтобы увидеть все, что изменилось в последние 10 минут:

find /var/www -cmin -10 -printf "%c %p\n"

Это покажет файлы и каталоги, которые были изменены.Таким образом, он не будет показывать файлы, которые были удалены (потому что они больше не существует), но он будет показывать каталоги, которые они были сняты с.Чтобы показать только файлы, добавлять -type f:

find /var/www -cmin -10 -type f -printf "%c %p\n"

More Advanced Совет: Чтение Manual

У меня не было помнить все варианты выше.Я консультировался руководство несколько раз, вот так:

man find

Во время чтени …

Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров

Comments are closed.