В сердце каждого современного 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
команды и отказывают access
On Windows, вам нужно скачать некоторые SSH программного обеспечения. Putty является популярным и простым выбором.Он загружает в виде одного файла EXE, который можно сохранить на рабочем столе и запустить сразу.Введите ваш сайт, как имя хоста, проверьте SSH опцию “Тип подключения” и нажмите Он будет просить ваше имя пользователя и тогда ваш password.
Запуск Putty на Windows, для того, чтобы SSH на веб-server
После успешного входа в систему вы обычно видите приветствие.После этого вам будет предложено несколько букв и $
Знак (или #
подписаться, если вы вошли в систему с правами администратора).Буквы часто представляют ваше имя пользователя и где ты родом, или имя сервера.~
означает, что вы находитесь в вашем домашнем каталоге.$
есть строки, это означает, что вы можете начать ввод команд сейчас, что-то вроде:
успешных SSH входа в систему на веб-сервере.$
означает, что мы можем начать печатать commands.
Следующий раздел представляет несколько основных commands.
Получение Вашего Bearings
В Windows, когда вы идете в «Мои документы» из меню Пуск, он открывает “Мои документы» в Windows Explorer и показывает его содержимое.Если некоторые любопытные коллеги шли и спросил: “Что каталоге вы занимаетесь?” Вы могли бы сказать: “Я in. Мои документы”
Если вы SSH’ed к серверу как пользователь “Admin”, вы бы землю in домашний каталог администратора, наверное /home/admin
.Вы можете проверить это с помощью команды pwd
., Которая показывает ваше текущее местоположение (т.е. папка, каталог или путь)
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.
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"
С этой громадины, вы, надеюсь найти недостающий файл.Вот пример:
Поиск все 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
Во время чтени …
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров