Начало работы с Linux

Linux
Начало работы с Linux

Linux — это многопользовательская, многозадачная, многопоточная и многопроцессорная операционная система со стабильной производительностью на основе POSIX и Unix, которую можно свободно использовать и свободно распространять.

Linux — одна из многих операционных систем.В настоящее время популярные операционные системы для серверов и ПК включают Linux, Windows, UNIX и т. д.

LinuxОсновательЛинус Торвальдс (также разработчик git)

linux-creater.png

Основные дистрибутивы Linux:

Ubuntu (Убунту), RedHat (Красная Шляпа),CentOS, Debian [изменение бабочки], Fedora, SuSE, OpenSUSE

как появился юникс

unix.png

Ричард СтоллманПроект ГНУ

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

  • Компании-разработчики программного обеспечения могут зарабатывать деньги, предоставляя услуги и обучая.

gnu.png

Отношения между Linux и Unix

linux-unix.png

(У Redhat есть две версии: redhat и centOS)

Refrences:

www.w3cschool.cn/linux/

С . на .net/linux_tutor…

«Линукс-кухня Brother Bird»Manual.Basic 51.net/v birds-Linux…

1. Права доступа к файлам Linux

Каждый пользователь в Linux должен принадлежать к группе и не может быть независимым от группы. В Linux каждый файл имеет понятие владельца, группы и других групп.

лс-аль(л):

ls -l (псевдоним ll можно посмотреть)

linux-ls.png

Информация в каждом столбце слева направоразрешения, подключения, владелец, группа пользователей, размер файла, дата изменения, имя файла

Десять букв в первом столбце представляют тип и права доступа к файлу, а первый символ означает, что файл является «каталогом, файлом или файлом ссылки и т. д.», что означает:

  • d: представляет каталог

  • -: представляет файл

  • l: представляет файл подключения

  • b: представляет интерфейсное устройство, доступное для хранения в файле устройства.

  • c: представляет устройство последовательного порта в файле устройства. такие как клавиатура, мышь и т.

Следующие 9 символов, каждая группа из 3 символов, комбинация трех параметров "rwx" (доступен для чтения, записи, исполняемый eXecute), (порядок rwx3 не может быть изменен, другими словами, первый или есть r, или ничего, не может быть w или x), три комбинации представляют «разрешение владельца файла», «разрешение той же группы пользователей», «разрешение другой группы пользователей, не входящей в эту».

linux-permission.png

Важность разрешений:

  • функция защиты системы;

  • Команда разрабатывает программное обеспечение или функции обмена данными;

Изменить атрибуты и разрешения файла:

  • chgrp: изменить группу пользователей, к которой принадлежит файл (изменить группу)

    • chgrp [-R] users 目录或文件: изменить группу пользователей файла по этому пути на «пользователи».
    • Эта новая группа пользователей должна существовать в /etc/group, иначе будет сообщено об ошибке.
    • Если последним параметром является каталог, это означает, что только пользовательская группа файлов в этом каталоге будет изменена на эту.
    • R означает, что если последним параметром является каталог, измените пользовательскую группу файлов в текущем каталоге и всех файлов в подкаталогах на это.
  • chown: изменить владельца файла (сменить владельца)

    • chown [-R] 用户名 文件或目录: изменить владельца всех файлов в этом каталоге на это имя пользователя.
    • Это имя пользователя должно быть в /etc/passwd.
    • Эта команда может изменить как владельца файла, так и группу пользователей:
    • chown [-R] 用户名:用户组名 目录/文件(оба : и . в порядке)
    • chown [-R] 用户名.用户组名 目录/文件
    • Так как имя пользователя может иметь десятичную точку, при появлении имени пользователя с десятичной точкой система ошибется, поэтому мы обычно используем: для соединения имени пользователя и имени группы пользователей.
    • Вы также можете изменить только имя группы пользователей:chown [-R] .用户组名 目录/文件
  • chmod: изменить права доступа к файлам

    Есть два способа изменить права доступа к файлу: изменить права с помощью цифр или символов

    1. Изменить разрешения с помощью чисел

    Существует 9 основных разрешений для файлов Linux, а именно владелец, группа и другие, каждое из которых имеет свои собственные права на чтение, запись и выполнение. В этом методе r=4, w=2, x=1, и три значения каждой группы складываются вместе, чтобы сформировать трехзначное число. Например:

    Мастер файла: rwx = 4+2+1=7;

    ​ Пользователи в одной группе: rwx=4+2+1=7;

    ​ Другие: ---=0+0+0=0;

    Таким образом, команда выглядит следующим образом:

    chmod [-R] 770 文件/目录

    1. Изменить разрешения с помощью символов

      Используйте u, g, o для представления разрешений трех удостоверений пользователя, группы и других, а a представляет все, то есть все удостоверения. + (присоединить), - (удалить), = (установить).

    chmod u/g/o/a +/-/= r/w/x 文件/目录

    Пример: владелец файла может читать, записывать и выполнять; пользователи в той же группе и другие пользователи могут читать и выполнять.

    chmod u=rwx,go=rx 文件名

    Предполагая, что вы не знали атрибутов файла раньше, и теперь вы просто хотите, чтобы каждый мог выполнить файл, тогда:

    chmod a+x 文件/目录

    Предполагая, что вы раньше не знали атрибутов файла, а теперь просто хотите сделать невозможным запись для пользователей в той же группе и других пользователей, тогда:

    chmod go-w 文件/目录

Значение разрешений на каталоги и файлы:

  • Значение разрешений на файлы.

    • r: представляет фактическое содержимое этого файла, которое можно прочитать
    • w: представляет содержимое файла, которое можно редактировать, добавлять или изменять (но не включает удаление файлов).
    • x: указывает, что файл имеет разрешение на выполнение системой.
  • Что означают разрешения для каталогов

    • r: представляет разрешение на чтение списка структуры каталога (вы можете использовать команду ls, чтобы прочитать все списки в каталоге)

    • w: Это разрешение очень мощное для каталога, указывая на то, что у вас есть разрешение на изменение списка структуры каталогов.

      Есть:

      • Создание новых файлов и каталогов
      • Удалить существующий файл или каталог (независимо от разрешений файла)
      • Переименовать существующий файл или каталог
      • Переместить файлы и каталоги в этот каталог
    • x: хотя каталог нельзя использовать для выполнения, x в каталоге показывает, может ли пользователь войти в каталог и стать рабочим каталогом. (Так называемый рабочий каталог — это ваш текущий каталог, то есть, если каталог не имеет прав x, то вы не можете войти в каталог для работы через команду cd).

Можете ли вы войти в определенный каталог, это связано только с разрешением x каталога.

Максимально допустимое имя файла или каталога в Linux — 255 символов, а полное имя файла, включая полный путь (/), — 4096 символов.


2. Структура системных каталогов Linux

файловая система линуксИерархическийДревовидная структура каталогов, верхним уровнем в этой структуре является корневой каталог «/», а затем создавать другие каталоги в этом каталоге. В мире Linux все является файлом

Структура системного каталога Linux

После входа в систему введите ls / в текущем командном окне и вы увидите

linux-catalog.png

Вот объяснение этих каталогов:

/binbin — это сокращение от Binary. Этот каталог содержит наиболее часто используемые команды.

/bootЗдесь хранятся некоторые основные файлы, используемые при запуске Linux, в том числе некоторые файлы подключения и файлы изображений.

/devdev — это сокращение от Device (устройство). В этом каталоге хранятся внешние устройства Linux.Способ доступа к устройству в Linux такой же, как и способ доступа к файлу.

/etcЭтот каталог используется для хранения всех файлов конфигурации и подкаталогов, необходимых для системного администрирования.

/homeДомашний каталог пользователя. В Linux у каждого пользователя есть собственный каталог. Как правило, имя каталога дается в честь учетной записи пользователя.

/libВ этом каталоге хранится самая основная динамическая общая библиотека системы, и ее функция аналогична файлу DLL в Windows. Почти все приложения должны использовать эти общие библиотеки.

/lost+foundЭтот каталог обычно пуст.При незаконном отключении системы здесь сохраняются некоторые файлы.

/media linuxСистема автоматически идентифицирует некоторые устройства, такие как U-диск, CD-ROM и т. д. После идентификации Linux смонтирует идентифицированное устройство в этот каталог.

/mntСистема предоставляет этот каталог, чтобы пользователи могли временно монтировать другие файловые системы.Мы можем смонтировать дисковод компакт-дисков в /mnt/, а затем войти в этот каталог, чтобы просмотреть содержимое дисковода компакт-дисков.

/optЭто каталог, в котором установлено дополнительное программное обеспечение для хоста. Например, если вы устанавливаете базу данных ORACLE, вы можете поместить ее в этот каталог. По умолчанию пусто.

/procЭтот каталог является виртуальным каталогом, который представляет собой отображение системной памяти, и мы можем получить системную информацию, напрямую обратившись к этому каталогу. Содержимое этого каталога находится не на жестком диске, а в памяти. Мы также можем напрямую изменить некоторые файлы в нем. Например, мы можем заблокировать команду ping хоста с помощью следующей команды, чтобы другие не могли пинговать вашу машину : эхо 1> /proc /sys/net/ipv4/icmp_echo_ignore_all.

/rootЭтот каталог является домашним каталогом системного администратора, также известного как суперавторизованный пользователь.

/sbins означает Super User, в котором хранится программа управления системой, используемая системным администратором.

/selinuxЭтот каталог уникален для Redhat/CentOS.Selinux — это механизм безопасности, похожий на брандмауэр Windows, но этот механизм сложнее.Этот каталог используется для хранения файлов, связанных с selinux.

/srvВ этом каталоге хранятся некоторые данные, которые необходимо извлечь после запуска службы.

/sysЭто большое изменение в ядре linux2.6. В этом каталоге установлена ​​новая файловая система sysfs в ядре 2.6.Файловая система sysfs объединяет информацию следующих трех файловых систем: файловая система proc для информации о процессах, файловая система devfs для устройств и файл devpts для псевдо -система терминалов. Файловая система является визуальным отражением дерева устройств ядра. При создании объекта ядра соответствующие файлы и каталоги также создаются в подсистеме объектов ядра.

/tmpЭтот каталог используется для хранения некоторых временных файлов.

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

/usr/bin: Приложения, используемые системными пользователями.

/usr/sbin: более продвинутые программы управления и системные демоны, используемые суперпользователями.

/usr/src: каталог по умолчанию для исходного кода ядра.

/varВ этом каталоге хранятся вещи, которые постоянно расширяются, и мы привыкли размещать эти часто изменяемые каталоги в этом каталоге. Включает в себя различные файлы журнала.

В системе Linux есть несколько каталогов, которые являются более важными.Обычно вам нужно быть осторожным, чтобы не удалить или произвольно изменить внутренние файлы. /etc: Как упоминалось выше, это файл конфигурации в системе.Если вы измените файл в этом каталоге, это может привести к сбою запуска системы. /bin, /sbin, /usr/bin, /usr/sbin: это каталог по умолчанию, в котором размещаются исполняемые файлы.Например, ls находится в каталоге /bin/ls. Стоит отметить, что /bin, /usr/bin — инструкции для системных пользователей (обычных пользователей, кроме root), а /sbin, /usr/sbin — инструкции для root. /var: Это очень важный каталог.В системе работает много программ, поэтому каждая программа будет генерировать соответствующие журналы, и эти журналы будут записываться в этот каталог, в частности, в каталог /var/log, кроме того, по умолчанию размещение почты тоже здесь.


3. Операции с файлами и каталогами Linux

абсолютный путь:

Путь пишется от корневого каталога /, например: /usr/share/doc Этот каталог.

относительный путь:

Способ написания пути не начинается с /.Например, если вы хотите перейти к /usr/share/man из /usr/share/doc, вы можете написать: cd ../man Это способ записи относительный путь!

Операции, связанные с каталогом

ls(см. файлы и каталоги)

cd(сменить каталог)

pwd(Показать текущий каталог)

mkdir(создать новый каталог)

mkdir [-mp] имя каталога

С помощью параметра -p вы можете самостоятельно создать многоуровневый каталог, а с помощью -m вы можете принудительно установить это свойство.

mkdir test
mkdir -p test1/test2/test3/test4*
mkdir -m 711 test2(给予新目录drwx--x--x的权限)

rmdir(удалить "пустые" каталоги)

rmdir [-p] 目录名称(-p 可以连同上层空目录一起删除)

rmdir -p test1/test2/test3/test4

cp(копировать файл или каталог)

cp [-adfilprsu] 源文件(source) 目标文件(destination
  • -a: эквивалентно значению -pdr;

  • -i: Если целевой файл уже существует и не может быть открыт, удалите его и повторите попытку;

  • -p: копирование вместе с атрибутами файла вместо использования атрибутов по умолчанию (обычно используется для резервных копий);

  • -r: рекурсивная непрерывная репликация, дляПоведение репликации каталога;

cp test testtest (将test文件重命名为testtest)
cp /var/log/wtmp .(复制到当前目录.)
cp -r /etc/ /tmp(复制etc目录下的所有内容到/tmp下,权限可能被改变了)

rm(удалить файл или каталог)

rm [-fir] 文件或目录
  • -f: принудительно означает игнорировать файлы, которые не существуют, и предупреждающее сообщение не появится;
  • -i: Интерактивный режим, перед удалением пользователю будет предложено выполнить операцию;
  • -r: удалить рекурсивно, опасно
#不能直接删除目录,删除目录的话需要加-r
rm -r /tmp/test (root用户默认会加入-i参数,询问,删除的是test文件,没有删除tmp)
touch  /tmp/aaa (新建空文件aaa)
rm /tmp/aaa(直接删除文件aaa)

mv(перемещение файлов и каталогов или переименование)

mv [-fiu] source destination
  • -f: force означает, что если целевой файл уже существует, он будет перезаписан без запроса;
  • -i: Если целевой файл уже существует, он спросит, перезаписать ли его;
  • -u: если целевой файл уже существует, а исходный код относительно новый, он будет обновлен;
mv aaa test(将文件aaa移动到目录test中)
mv test mytest(将test重命名为mytest)
mv aaa bbb ccc test(将aaa、bbb、ccc多个源文件或目录全部移动到test目录中)

просмотр содержимого файла

cat: отображать содержимое файла, начиная с первой строки;

tac: Начиная с последней строки видно, что tac — это обратная форма cat;

nl: при отображении выводить номер строки кстати;

more: Отображение содержимого файла постранично;

less: Аналогично другим, но вы можете проматывать страницу вперед;

head: посмотрите только на первые несколько строк;

tail: посмотрите только на несколько последних строк;

od: прочитать содержимое файла в двоичном формате

Просмотр содержимого файла напрямую cat, tac, nl

cat(объединить)

cat [-AbEnTv] 文件
  • -A: эквивалентно параметру интеграции -vET, который может отображать некоторые специальные символы вместо пробелов;

  • -b: указать номер строки, отображать номер строки только для непустых строк и не отмечать номер строки для пустых строк;

  • -E: отображать конец с символом разрыва строки $;

  • -n: Вывести номер строки, наряду с пустой строкой, также будет номер строки, отличный от -b;

  • -T: отображать клавишу Tab как ^T;

  • -v: Список некоторых невидимых специальных символов.

cat -n путь к файлу | tail -n +5 | head -n 6 // вывести содержимое строк с 5 по 10, включая 5 и 10

путь к файлу cat | head -n 10 | tail -n +5 // то же, что и выше

tac(обратный дисплей)

nl(добавьте номер строки для печати)

nl [-bnw] 文件

Вы можете переворачивать страницы, чтобы просматривать содержимое файла больше и меньше

more(листать страницу за страницей)

linux-more.png

Если содержимое файла большое, после команды more оно будет продолжать ждать до последующих операций.

  • Космос (Космос): листать вниз;
  • Enter: прокрутить вниз на одну строку;
  • /нить: В текущем отображаемом содержимом запросить строку;
  • :f: отображение имени файла и количества отображаемых строк;
  • q: уйти более прямо, больше не отображать содержимое файла;
  • b: страница назад, полезно только для файлов, бесполезно для каналов

less(листать страницу за страницей)

less может использовать функции кнопок вверх и вниз для перелистывания страниц вперед и назад или для запроса вверх

  • Космос (Космос): листать вниз;

  • [PageDown]: прокрутить вниз на одну страницу

  • [PageUp]: прокрутить вверх на одну страницу

  • Enter: прокрутить вниз на одну строку;

  • /нить: запрос вниз по строке;

  • ?нить: запрашивать строку вверх;

  • n: повторить предыдущий запрос (связанный с/или ?);

  • N: Повторить предыдущий запрос в обратном порядке (связанный с/или ?);

  • q: Оставлять меньше напрямую и больше не отображать содержимое файла;

Голова и хвост представления выбора данных

head(убрать первые несколько строк)

head [-n number] 文件(默认显示十行)
  • -n: за которым следует число, что означает отображение нескольких строк;

tail(уберите следующие несколько строк)

tail [-n number] 文件
tail [-f] 文件
  • -f: Указывает, что содержимое файла, подключенного за непрерывным мониторингом, обычно используется для просмотра процесса журнала.Нажмите [ctrl]+c, чтобы завершить обнаружение;

touch(изменить время файла или создать новый файл)

touch [-acdmt] 文件
  • -a: изменить только время доступа;

  • -c: изменить только время доступа, если файл не существует, новый файл не будет создан;

  • -d: вы можете следить за датой, которую хотите изменить, вместо текущей даты;

  • -m: изменить только mtime;

  • -t: вы можете следить за временем, которое хотите изменить, вместо текущего времени;


4. Редактор программ vim

Очень важно использовать текстовый редактор для редактирования файлов конфигурации параметров Linux в системе Linux, поэтому по крайней мере ознакомьтесь с одним текстовым редактором.

Итак, почему вы должны изучать vim? так как:

  • Все UNIX-подобные системы будут иметь встроенный текстовый редактор vi, других текстовых редакторов может и не быть;
  • Многие интерфейсы редактирования программного обеспечения будут активно вызывать vi;
  • vim имеет возможность редактирования программы и может активно определять правильность грамматики по цвету шрифта, что удобно для дизайна программы;
  • Процедура проста, а скорость редактирования довольно высока.

Карта клавиатуры vim:

linux-vim.png

vim фактически можно рассматривать как расширенную версию vi.

использование ви

vi разделен на три режима, а именно: общий режим, режим редактирования и режим командной строки.

общий режим

Открытие файла с помощью vi напрямую переходит в обычный режим (режим по умолчанию). В этом режиме вы можете использовать клавиши «вверх, вниз, влево и вправо» для перемещения курсора, вы можете использовать «удалить символ» или «удалить всю строку» для обработки содержимого файла, а также вы можете использовать «копировать, вставить». " для обработки данных вашего файла .

режим редактирования

В обычном режиме можно удалять, копировать, вставлять и т.д., но нельзя редактировать содержимое файла! Он не войдет в режим редактирования, пока вы не нажмете любую букву, такую ​​как «i, I, o, O, a, A, r, R». Внимание! Обычно в Linux при нажатии этих кнопок в левом нижнем углу экрана появляются слова «ВСТАВИТЬ или ЗАМЕНИТЬ», после чего можно выполнить редактирование. Если вы хотите вернуться в обычный режим, вы должны нажать кнопку «Esc», чтобы выйти из режима редактирования.

режим командной строки

В обычном режиме введите любую из трех кнопок «: / ?», чтобы переместить курсор в нижнюю строку. В этом режиме можно предусмотреть действие "поиска данных", а действия чтения, сохранения, замены большого количества символов, выхода из vi, отображения номеров строк и т.д. достигаются в этом режиме!

Обычный режим, режим редактирования и режим командной строки могут быть преобразованы друг в друга, но режим редактирования и режим командной строки не могут быть преобразованы друг в друга

Ключ Описание

  • Часть 1: Описание кнопок, доступных в обычном режиме, перемещение курсора, копирование и вставка, поиск и замена и т. д.
Как двигать курсор
h или клавиша со стрелкой влево ( ← ) Переместить курсор на один символ влево
j или клавиша со стрелкой вниз (↓) Переместить курсор вниз на один символ
k или клавиша со стрелкой вверх (↑) Переместить курсор вверх на один символ
l или клавиша со стрелкой вправо (→) Переместить курсор на один символ вправо
Если вы положите правую руку на клавиатуру, то обнаружите, что hjkl устроены так, что вы можете использовать четыре кнопки для перемещения курсора. Если вы хотите сделать несколько ходов, например, спуститься на 30 строк вниз, вы можете использовать комбинированные клавиши «30j» или «30↓», то есть добавить количество раз, которое вы хотите сделать (число), и нажать действие !
[Ctrl] + [f] Перемещение экрана «вниз» на одну страницу, что эквивалентно кнопке [Page Down] (обычно используется)
[Ctrl] + [b] Переместить экран «вверх» на одну страницу, что эквивалентно кнопке [Page Up] (обычно используется)
[Ctrl] + [d] Переместить экран «вниз» на полстраницы
[Ctrl] + [u] Переместить экран «вверх» на полстраницы
+ Переместите курсор в следующий столбец с помощью символа, отличного от пробела
- Переместите курсор в предыдущий столбец, который не является символом пробела
n Это n означает «число», например 20 . Нажатие числа с последующим пробелом перемещает курсор вправо на n символов в строке. Например, 20 переместит курсор назад на 20 символов.
0 или функциональная клавиша [Домой] Это число «0»: перейти к первому символу строки (обычно используется)
$ или функциональная клавиша [Конец] перейти к последнему символу строки (общий)
H Подведите курсор к первому символу верхней строки этого экрана.
M Подведите курсор к первому символу строки в центре экрана
L Подведите курсор к первому символу нижней строки этого экрана.
G перейти к последней строке этого файла (обычно используется)
nG n — число. Перейти к строке n этого файла. Например, 20G переместится на 20-ю строку этого файла (можно использовать с :set nu)
gg Перейдите к первой строке этого файла, что эквивалентно 1G! (обычно используется)
n n — число. Переместите курсор вниз на n строк (обычно используется)
найти и заменить
/word Найдите под курсором строку с именем word. Например, чтобы найти в файле строку vbird, просто введите /vbird! (обычно используется)
?word Найдите над курсором строку с именем word.
n N — это английский ключ. Представляет «повторить действие предыдущего поиска». Например, если мы только что выполнили команду /vbird для поиска строки vbird, после нажатия n она продолжит поиск следующей строки с именем vbird. Если вы запустите ?vbird, то нажатие n продолжит поиск вверх строки с именем vbird!
N N — английская кнопка. В отличие от n, предыдущее действие поиска выполняется для «реверса». Например, после /vbird нажмите N, чтобы найти vbird "вверх".
Использование /word с n и N очень полезно! Это позволяет вам неоднократно находить некоторые из ключевых слов, которые вы ищете!
:n1,n2s/word1/word2/g n1 и n2 — числа. Найдите строку word1 между строками n1 и n2 и замените эту строку на word2 ! Например, чтобы найти vbird между строками 100 и 200 и заменить на VBIRD: ":100,200s/vbird/VBIRD/g". (обычно используется)
:1,$s/word1/word2/g Найдите строку word1 с первой строки до последней и замените эту строку на word2 ! (обычно используется)
:1,$s/word1/word2/gc Найдите строку word1 с первой строки до последней и замените эту строку на word2 ! А перед заменой пользователю показывается символ подсказки для подтверждения необходимости замены! (обычно используется)
удалить, скопировать и вставить
x, X В строке слов x — удалить символ назад (эквивалентно клавише [del]), X — удалить символ вперед (эквивалентно [backspace] или backspace) (обычно используется)
nx n является числом и удаляет n символов в обратном порядке подряд. Например, я хочу удалить 10 символов подряд «10x».
dd Вырезать строку, в которой находится курсор (обычно используется)
D Удалить все символы от текущего курсора до конца строки, где находится курсор
ndd n — число. Удалите n столбцов вниз, где находится курсор, например, 20dd удаляет 20 столбцов (обычно используется)
d1G Удалить все данные от курсора до первой строки
dG Удалить все данные от курсора до последней строки
d$ Удаляет место, где находится курсор, до последнего символа строки
d0 Это число 0 , где находится курсор удаления, до первого символа строки
yy Скопируйте строку, в которой находится курсор (обычно используется)
nyy n — число. Скопируйте n столбцов, в которых находится курсор, например, 20yy означает копирование 20 столбцов (обычно используется)
y1G Скопируйте все данные из столбца курсора в первый столбец
yG Скопируйте все данные из столбца курсора в последний столбец
y0 Скопируйте символ, на котором стоит курсор, во все данные в начале строки
y$ Скопируйте символ, на котором находится курсор, во все данные в конце строки
p, P p означает вставить скопированные данные в следующую строку курсора, а P означает вставить их в предыдущую строку курсора! Например, сейчас я на 20-й строке и скопировал 10 строк данных. Затем после нажатия p 10 строк данных будут вставлены после исходных 20 строк, то есть будет вставлена ​​21 строка. Но что, если вы нажмете P? Затем исходная 20-я строка будет перемещена на 30-ю строку. (Часто используется) Вставить в предыдущую строку (p) и следующую строку (P) курсора
J Объедините данные столбца, в котором находится курсор, и данные следующего столбца в один и тот же столбец.
c Дедуплицировать несколько данных, например удалить 10 строк вниз, [ 10cj ]
u Отменяет предыдущее действие. Отмена (обычно используется)
[Ctrl]+r Повторить последнее действие. (обычно используется)
Это u и [Ctrl]+r — очень распространенные команды! Один - восстановить, а другой - повторить один раз ~ Используйте эти две функциональные кнопки, ваше редактирование, хе-хе! Очень счастлив!
. Не сомневаюсь! Это десятичная точка! Это означает повторить предыдущее действие. Если вы хотите повторно удалить, вставить повторно и т. д., просто нажмите десятичную точку «.»! (обычно используется)
  • Часть 2: Описание доступных кнопок для переключения из обычного режима в режим редактирования
Войдите в режим редактирования для вставки или замены
i, I Войдите в режим вставки: я означает «вставить с текущей позиции курсора», я означает «начать вставку с первого непробельного символа текущей строки». (обычно используется)
a, A Войдите в режим вставки: a означает «вставить со следующего символа, где в данный момент находится курсор», A означает «вставить с последнего символа строки, где находится курсор». (обычно используется)
o, O Войдите в режим вставки (Insert mode): это верхний и нижний регистр английской буквы о. o означает «вставить новую строку в следующую строку, где в данный момент находится курсор»; O означает вставить новую строку в предыдущую строку, где находится текущий курсор! (обычно используется)
r, R Войдите в режим замены: r заменяет только один раз символ, на котором находится курсор; R всегда заменяет текст, на котором находится курсор, пока не будет нажата клавиша ESC (обычно используется)
Среди приведенных выше клавиш слова «--INSERT--» или «--REPLACE--» появятся в левом нижнем углу экрана vi. Вы знаете действие из названия! ! Особое внимание, что мы также упоминали выше, когда вы хотите ввести символы в файл, вы должны увидеть INSERT или REPLACE в левом нижнем углу для ввода!
[Esc] Выйдите из режима редактирования и вернитесь в обычный режим (обычно используется)
  • Часть 3: Описание доступных кнопок для переключения из обычного режима в режим командной строки
Введите в командную строку сохранить, выйти и другие команды
:w Запишите отредактированные данные в файл на жестком диске (обычно используется)
:w! Если атрибут файла «только для чтения», файл принудительно записывается. Однако то, может ли он быть записан или нет, по-прежнему связано с правами доступа к файлу!
:q оставить vi (общий)
:q! Если вы изменили файл и не хотите его сохранять, используйте !, чтобы принудительно выйти без сохранения файла.
Обратите внимание, что восклицательный знак (!) в vi часто означает «обязательный»~
:wq Сохранить и выйти, если :wq! принудительно сохранить и выйти (обычно используется)
ZZ Это заглавная Z! Если файл не был изменен, не сохраняйте и уходите, если файл изменялся, сохраняйте и уходите!
:w [filename] Сохранение отредактированных данных в виде другого файла (аналогично сохранению в виде нового файла)
:r [filename] В отредактированных данных прочитать данные другого файла. То есть к строке, где находится курсор, добавляется содержимое файла «имя файла».
:n1,n2 w [filename] Сохраните содержимое от n1 до n2 в качестве имени файла.
:! command Временно выключите vi для отображения результатов выполнения команды в режиме командной строки! Например, ":!ls /home" может просматривать информацию о файле, выводимую командой ls в разделе /home в vi!
:set nu Отображение номера строки.После настройки номер строки строки будет отображаться в префиксе каждой строки
:set nonu Вопреки установленному ну, чтобы отменить номер строки!

Особенности вим

выбор блока

Когда мы нажимаем v или V или [Ctrl]+v, место, куда переместился курсор, начнет подсвечиваться

Значение кнопки выбора блока
v Выбор персонажа подсветит место, где проходит курсор!
V При выборе линии будет выделена линия, через которую проходит курсор!
[Ctrl]+v Выбор блока, вы можете выбрать данные прямоугольным способом
y Скопируйте выделенное место
d Удалить выделенное место

Редактирование нескольких файлов

Мы можем использовать vim для одновременного подключения нескольких файлов, чтобы открывать их одновременно.

Клавиши для редактирования нескольких файлов
:n редактировать следующий файл
:N Изменить предыдущий файл
:files Список всех файлов, открытых в данный момент в этом vim

Многооконная функция

Кнопка многооконного редактирования
:sp [filename] Открыть новое окно, если добавлено имя файла, это означает, что новый файл открывается в новом окне, в противном случае это означает, что два окна имеют одинаковое содержимое файла (синхронное отображение).
[ctrl]+w+ j[ctrl]+w+↓ Метод нажатия клавиш: сначала нажмите [ctrl] и удерживайте, затем нажмите w и затем отпустите все клавиши, затем нажмите j (или клавишу со стрелкой вниз), курсор может переместиться в нижнее окно.
[ctrl]+w+k[ctrl]+w+↑ То же, что и выше, но курсор перемещается в верхнее окно.
[ctrl]+w+ q На самом деле, это :q Уезжать пора! Например, если я хочу закрыть нижнее окно, используйте [ctrl]+w+↓, чтобы перейти к нижнему окну, затем нажмите :q, чтобы выйти, или [ctrl]+w+q!

5. Linux управление дисками

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

Для управления дисками в Linux обычно используются три команды: df, du и fdisk.

  • df: список общего использования диска файловой системой.
  • du: проверить использование дискового пространства
  • fdisk: для разметки диска

df

Функция параметра команды df: Показать доступное пространство для указанного файла на диске. Если имя файла не указано, будет показано свободное пространство всех смонтированных в данный момент файловых систем. Вы можете использовать эту команду для получения информации о том, сколько места занято на жестком диске и сколько места осталось.

грамматика:

df [-ahikHTm] [目录或文件名]

Опции и параметры:

  • -a : список всех файловых систем, включая специфичные для системы /proc и другие файловые системы;
  • -k : отображать каждую файловую систему в килобайтах;
  • -m : отображать каждую файловую систему в мегабайтах;
  • -h : Отображать в гигабайтах, мегабайтах, килобайтах и ​​других форматах, которые легче читать людям;
  • -H : заменить метод переноса M=1024K на M=1000K;
  • -T : Отобразить тип файловой системы вместе с именем файловой системы раздела (например, ext3);
  • -i : отображать количество инодов вместо емкости жесткого диска.

Отображение результатов емкости в удобном для чтения формате емкости

[root@www ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/hdc2             9.5G  3.7G  5.4G  41% /
/dev/hdc3             4.8G  139M  4.4G   4% /home
/dev/hdc1              99M   11M   83M  12% /boot
tmpfs                 363M     0  363M   0% /dev/shm

du

Команда Linux du также проверяет используемое пространство, но в отличие от команды df, команда Linux du проверяет пространство, используемое файлами и дисками каталогов, или несколько отличается от команды df.Вот команда Linux du.

грамматика:

du [-ahskm] 文件或目录名称

Опции и параметры:

  • -a : указать емкость всех файлов и каталогов, поскольку по умолчанию учитывается только количество файлов в каталоге.
  • -h : отображать в удобочитаемом формате емкости (г/м);
  • -s : указать общий объем, а не емкость, занимаемую каждым отдельным каталогом;
  • -S : не включает итоги в подкаталогах, немного отличается от -s.
  • -k : показать емкость в килобайтах;
  • -m : Отображение емкости списка в мегабайтах;

Пример 1

Список всех размеров файлов в текущем каталоге

[root@www ~]# du
8       ./test4     <==每个目录都会列出来
8       ./test2
....中间省略....
12      ./.gconfd   <==包括隐藏文件的目录
220     .           <==这个目录(.)所占用的总量

Когда вы вводите du напрямую без каких-либо опций, du проанализирует место на жестком диске, занимаемое файлами и каталогами в текущем каталоге.

Пример 2

Также укажите размер файла

[root@www ~]# du -a
12      ./install.log.syslog   <==有文件的列表了
8       ./.bash_logout
8       ./test4
8       ./test2
....中间省略....
12      ./.gconfd
220     .

Пример 3

Проверьте емкость, занимаемую каждым каталогом в корневом каталоге.

[root@www ~]# du -sm /*
7       /bin
6       /boot
.....中间省略....
0       /proc
.....中间省略....
1       /tmp
3859    /usr     <==系统初期最大就是他了啦!
77      /var

Подстановочный знак * для представления каждого каталога.

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

fdisk

fdisk — это инструмент для работы с таблицами разделов диска для Linux.

грамматика:

fdisk [-l] 装置名称

Опции и параметры:

  • -l : вывести все содержимое раздела следующего устройства. Если есть только fdisk -l, система выведет список всех разделов устройства, которые можно искать во всей системе.

формат диска

После того, как диск разделен, естественно отформатировать файловую систему, команда форматирования очень проста.mkfs(создать файловую систему).

грамматика:

mkfs [-t 文件系统格式] 装置文件名

Опции и параметры:

  • -t : можно подключать форматы файловой системы, такие как ext3, ext2, vfat и т. д. (система вступит в силу только в том случае, если она поддерживается)

проверка диска

fsck(проверка файловой системы) используется для проверки и поддержки несогласованных файловых систем.

Если система выключена или есть проблема с диском, вы можете использовать команду fsck для проверки файловой системы.

грамматика:

fsck [-t 文件系统] [-ACay] 装置名称

Опции и параметры:

  • -t : Тип данной файловой системы, если он уже определен в /etc/fstab или поддерживается самим ядром, этот параметр добавлять не нужно.
  • -s : выполнить инструкции fsck одну за другой для проверки
  • -A : проверить все разделы, перечисленные в /etc/fstab
  • -C : показать ход полной проверки
  • -d : распечатать результаты отладки e2fsck
  • -p : при одновременном наличии условий -A несколько проверок fsck выполняются одновременно.
  • -R : пропустить/не проверять, если также присутствует условие -A
  • -V : подробный режим отображения
  • -a : автоматическое исправление, если проверка неверна
  • -r : Если проверка неверна, пользователь ответит, следует ли это исправить.
  • -y : Опция определяет, что каждый файл автоматически вводится yes.Если вы не уверены, что не так, вы можете выполнить # fsck -y, чтобы проверить и исправить все.

Монтирование и размонтирование диска

Диски Linux монтируются с помощью команды mount и размонтируются с помощью команды umount.

Синтаксис монтирования диска:

mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点

umount [-fn] 装置文件名或挂载点

Опции и параметры:

  • -f : Принудительно удалить! Может использоваться в таких ситуациях, как сетевая файловая система (NFS), которая не может быть прочитана;
  • -n : удалить без обновления /etc/mtab.

6. Сжатие и упаковка файлов и файловых систем

В среде Linux расширение сжатых файлов в основном .tar, .tar.gz, .tgz, .gz, .Z, .bz2;

Существует множество команд сжатия, поддерживаемых Linux, и разные команды используют разные методы сжатия, поэтому они могут не иметь возможности сжимать/распаковывать файлы друг с другом.

*.Z         compress 程序压缩的文件;
*.zip       zip 程序压缩的文件;
*.gz        gzip 程序压缩的文件;
*.bz2       bzip2 程序压缩的文件;
*.xz        xz 程序压缩的文件;
*.tar       tar 程序打包的数据,并没有压缩过;
*.tar.gz    tar 程序打包的文件,其中并且经过 gzip 的压缩
*.tar.bz2   tar 程序打包的文件,其中并且经过 bzip2 的压缩
*.tar.xz    tar 程序打包的文件,其中并且经过 xz 的压缩

gzip, zcat/zmore/zless/zgrep

gzip [-cdtv#] 文件名Сжатые файлы представляют собой файлы *.gz,Исходный файл больше не существует после сжатия с помощью gzip

  • -c : Выводить на экран сжатые данные, которые можно обработать путем перенаправления потока данных;
  • -d : параметры декомпрессии;
  • -t : может использоваться для проверки согласованности сжатого файла ~ посмотреть, есть ли в файле ошибки;
  • -v : может отображать такую ​​информацию, как степень сжатия исходного файла/сжатого файла;
  • -# : # означает число, представляющее уровень сжатия, -1 — самый быстрый, но степень сжатия — худший, -9 — самый медленный, но коэффициент сжатия — лучший! По умолчанию -6

Такие команды, как zcat/zmore/zless/zgrep, аналогичны команде cat/more для просмотра и поиска сжатых файлов.

gzip test.txt   #压缩test.txt文件
gcat test.gz   #查看test.gz文件内容
gzip -d test.gz  #解压文件,和gunzip效果相同
zgrep -n 'http' services.gz  #http 这个关键字在哪几行

gzip -c test > test.gz   #压缩test,并保留原文件

bzip2, bzcat/bzmore/bzless/bzgrep

bzip2 [-cdkzv#] 文件名bzip2 должен заменить gzip и обеспечить лучшую степень сжатия, использование почти такое же, как gzip

  • -c : Выводить данные, созданные сжатым процессом, на экран!
  • -d : параметры для распаковки
  • -k : сохранить исходный файл, не удаляя исходный файл!
  • -z : параметр сжатия (значение по умолчанию, можно не указывать)
  • -v : может отображать такую ​​информацию, как степень сжатия исходного файла/сжатого файла;
  • -# : То же, что и gzip, это параметр для расчета коэффициента сжатия, -9 — лучший, -1 — самый быстрый!

tar

команда tar package, команда для упаковки нескольких файлов или каталогов в один большой файл

  • -c: создать сжатый архив
  • -x: распаковать
  • -t: просмотреть содержимое
  • -r: добавлять файлы в конец сжатого архива
  • -u: обновить файлы в исходном архиве

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

  • -z: с атрибутом gzip
  • -j: с атрибутом bz2
  • -Z: с атрибутом сжатия
  • -v: показать все процессы
  • -O: распаковать файл в стандартный вывод
  • -f: Использовать имя файла. Помните, что этот параметр является последним и является обязательным. Может следовать только имя файла.
tar -cf all.tar *.jpg #将所有.jpg的文件打成一个名为all.tar的包,-c是表示产生新的包,-f指定包的文件名

tar -rf all.tar *.gif   #将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思

tar -uf all.tar logo.gif #更新原来tar包all.tar中logo.gif文件

tar -tf all.tar #列出all.tar包中所有文件

tar -xf all.tar #解出all.tar包中所有文件

Суммировать

1. Распакуйте *.tar с помощью tar -xvf

2. Распакуйте *.gz с помощью gzip -d или gunzip

3..tar.gz и.tgz распаковать с помощью tar -xzf

4. Распакуйте *.bz2 с помощью bzip2 -d или с помощью bunzip2.

5. Разархивируйте *.tar.bz2 с помощью tar -xjf

6. *.Z распаковать с распаковкой

7. Разархивируйте *.tar.Z командой tar -xZf

8. *.rar распаковать с помощью unrar e

9. Разархивируйте *.zip с помощью unzip

Разархивируйте jdk в указанную папку:

tar -xzvf jdk-8u131-linux-x64.tar.gz -C /usr/local/java

8. Управление пакетами

RPM

Обзор оборотов

RPM (диспетчер пакетов RedHat), инструмент управления пакетами RedHat, аналогичный setup.exe в Windows.

Это упакованный инструмент установки в серии операционных систем Linux.Хотя это символ RedHat, концепция универсальна.

Формат имени пакета RPM: Apache-1.3.23-11.i386.rpm

  • имя программы "apache"
  • Номер версии программного обеспечения "1.3.23-11", основная версия и эта версия
  • «i386» — это аппаратная платформа, на которой работает программное обеспечение, общий термин для 32-разрядных микропроцессоров Intel.
  • Расширение файла «rpm», что означает пакет RPM.
Команда запроса RPM (rpm -qa)

rpm -qa(Описание функции: запросить все установленные пакеты rpm)

Из-за большого количества программных пакетов обычно применяется фильтрация. rpm -qa | пакет grep rpm

pm -qa |grep firefox  #查询firefox软件安装情况
Команда удаления RPM (rpm -e)

rpm -e RPM软件包

rpm -e --nodeps 软件包

Опции Функции
-e удалить пакет
--nodeps При удалении ПО зависимости не проверяются. В этом случае программное обеспечение, использующее этот пакет, после этого может работать некорректно.
rpm -e firefox #卸载firefox软件
Команда установки RPM (rpm -ivh)

rpm -ivh RPM包全名

Опции Функции
-i -i=установить, установить
-v -v=подробно, показать подробную информацию
-h -h=хэш, индикатор выполнения
--nodeps --nodeps, не обнаруживать прогресс зависимости

YUM

Обзор ЮМ

YUM (полное название Yellow dog Updater, Modified) — это интерфейсный менеджер пакетов оболочки в Fedora, RedHat и CentOS. Основываясь на управлении пакетами RPM, он может автоматически загружать и устанавливать пакеты RPM с указанного сервера, автоматически обрабатывать зависимости и устанавливать все зависимые пакеты одновременно, без необходимости снова и снова загружать и устанавливать пакеты.

Общие команды YUM

yum [-y] [参数]-y означает ответ «да» на все вопросы

параметр Функции
install установить пакет RPM
update обновить RPM-пакеты
check-update Проверьте, доступен ли обновленный пакет rpm
remove Удалить указанный пакет rpm
list показать информацию о пакете
clean Очистить кеш yum с истекшим сроком действия
deplist показать все зависимости пакета yum
Изменить сетевой источник YUM

Системный источник YUM по умолчанию должен быть подключен к иностранному веб-сайту Apache, а скорость сети относительно низкая.Вы можете изменить связанный сетевой источник YUM на отечественный зеркальный веб-сайт, например NetEase 163.

9. Общие команды Linux

Общие сочетания клавиш Функции
ctrl + c остановить процесс
ctrl+l Очистите экран, полностью очистите экран: сброс
ctrl + q покидать
Умеет пользоваться клавишей табуляции Советы (что более важно, чтобы предотвратить опечатки)
Клавиши вверх и вниз Найти выполненные команды
ctrl +alt переключаться между линуксом и виндой

команда справки

человек за помощью

man [命令或配置文件](Описание функции: получить справочную информацию)

man ls

help Получить справочную информацию для встроенных команд оболочки

help 命令(Описание функции: получение справочной информации для встроенных команд оболочки)

[root@hadoop101 ~]# help cd

класс каталога файлов

каталог изменения компакт-диска

cd:Change Directory切换路径

параметр Функции
компакт-диск абсолютный путь переключить путь
cd относительный путь переключить путь
компакт-диск ~ или компакт-диск вернуться в свой домашний каталог
cd - вернуться в предыдущий каталог
cd .. Вернуться в предыдущий каталог текущего каталога
cd -P Переход к фактическому физическому пути, а не к сокращенному пути
mkdir создает новый каталог

mkdir [-p] 要创建的目录

mkdir test  #创建test目录
mkfir -p test/starfish   #创建多级目录
rmdir удаляет пустые каталоги
rmdir test/starfish     #删除test下的空文件夹starfish
touch создает пустой файл
touch test/helloworld.txt   #test文件夹下创建helloworld.txt文件
cp копирует файлы или каталоги

cp [-r] source destСкопируйте исходный файл в папку назначения

cp -r ~/home/sys/tmp/ .    #复制文件夹的所有文件到当前目录
rm удаляет файл или каталог

rm [опции] deleteFile (описание функции: рекурсивно удалить все содержимое каталога)

Опции Функции
-r Рекурсивно удалить все содержимое в каталоге
-f Принудительно выполнить операцию удаления без запроса подтверждения.
-v Отображение подробного процесса выполнения команды
rm -rf dssz/   #递归删除目录中所有内容
mv перемещать файлы и каталоги или переименовывать

mv oldNameFile newNameFile(описание функции: переименовать)

mv /temp/movefile /targetFolder(Описание функции: перемещение файлов)

mv tets.txt test.txt #重命名
mv /home/star/test.txt .  #移动文件到当前目录
кот Посмотреть содержимое файла

cat [-n] 要查看的文件Может отображать номер строки для просмотра файла

просмотрщик дополнительных файлов с разделенным экраном

Команда more представляет собой текстовый фильтр на основе редактора VI, который отображает содержимое текстового файла постранично в полноэкранном режиме. В команду more встроено несколько сочетаний клавиш, подробности см. в инструкции по эксплуатации.

more 要查看的文件

действовать Описание функции
пустой ключ (пробел) Представляет страницу вниз;
Enter Это означает отклонить «одну строчку»;
q Представитель больше уходит сразу, а содержимое файла больше не отображается.
Ctrl+F прокрутить вниз на один экран
Ctrl+B Вернуться к предыдущему экрану
= Выходная строка номер текущей строки
:f Имя выходного файла и номер строки текущей строки
меньше разделенного экрана отображать содержимое файла

Команда less используется для просмотра содержимого файла на разделенном экране.Его функция аналогична команде more, но она более мощная, чем команда more, и поддерживает различные терминалы отображения. Когда команда less отображает содержимое файла, она не отображает весь файл одновременно, а загружает содержимое в соответствии с потребностями отображения, что более эффективно для отображения больших файлов.

less 要查看的文件

действовать Описание функции
пустой ключ прокрутить страницу вниз;
[pagedown] прокрутить вниз на одну страницу
[pageup] перевернуть страницу;
/нить Функция поиска "строки" вниз, n: поиск вниз, N: поиск вверх;
?нить Функция поиска "строки" вверх, n: поиск вверх, N: поиск вниз;
q оставить программу меньше;
эхо-вывод содержимого на консоль

echo [-e] [输出内容]-e: поддерживает преобразование символов с обратной косой чертой

управляющие символы эффект
\ вывод \ сам
\n новая линия
\t Символ табуляции, также известный как клавиша табуляции
[starfish:Technical-Learning$ echo -e "hello\tworld"

hello	world
head Отображает содержимое заголовка файла

head используется для отображения первой части файла.По умолчанию команда head отображает первые 10 строк файла.

head 文件(Описание функции: просмотр первых 10 строк файла)

head -n 5 文件(Описание функции: просмотр первых 5 строк файла, 5 может быть любым количеством строк)

tail выводит содержимое в конец файла

tail используется для вывода содержимого в конец файла.По умолчанию команда tail отображает последние 10 строк файла.

tail 文件(Описание функции: просмотр первых 10 строк файла)

tail -n 5 文件(Описание функции: просмотр первых 5 строк файла, 5 может быть любым количеством строк)

tail -f 文件(Описание функции: отслеживать все обновления документа в режиме реального времени)

Перенаправление вывода и >> добавление

ls -l>文件(Описание функции: Содержимое списка записывается в файл a.txt (перезаписывать))

ls -al >>文件(Описание функции: содержимое спискадобавитьдо конца файла aa.txt)

cat 文件1 > 文件2(Описание функции: перезаписать содержимое файла 1 на файл 2)

echo “内容” >> 文件

2. Практика

ls -l>houge.txt #将ls查看信息写入到文件中
ls -l>>houge.txt #将ls查看信息写入到文件中
echo hello>>houge.txt #采用echo将hello单词追加到文件中
в программной ссылке

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

ln -s [原文件或目录] [软链接名](описание функции: создать мягкую ссылку на исходный файл)

history Просмотр истории команд, которые были выполнены

history(Описание функции: просмотр истории выполненных команд)

время дата класс

date [OPTION]... [+FORMAT]

Опции Функции
-d Отображает время, указанное в указанной «строке времени», вместо текущего времени.
-s Установить системную дату и время
параметр Функции
<+> Указывает формат даты и времени для использования при отображении
дата отображает текущее время

date(Описание функции: отображение текущего времени)

date +%Y(Описание функции: отображение текущего года)

date +%m(Описание функции: отображение текущего месяца)

date +%d(Описание функции: отображение текущего дня)

date "+%Y-%m-%d %H:%M:%S"(Описание функции: отображение года, месяца, дня, часа, минуты и секунды)

date -d '1 days ago'(Описание функции: отображение времени предыдущего дня)

date -d '-1 days ago'(Описание функции: отображение завтрашнего времени)

кал просмотр календаря

cal [具体某一年](Описание функции: нет опции, отображать календарь на этот месяц)

cal 2019  #显示2019年日历

Команды управления пользователями

Система Linux является многопользовательской и многозадачной операционной системой.Любой пользователь, который хочет использовать системные ресурсы, должен сначалаСистемный администратор для подачи заявки на учетную записьномер, а затем войти в систему под этой учетной записью.

Файлы, связанные с пользователем и группой

/etc/файл пароля

Конфигурационный файл пользователя (user), записывающий различную информацию о пользователе

Значение каждой строки: Имя пользователя: Пароль: Идентификатор пользователя: Идентификатор группы: Комментарий Описание: Домашний каталог: Логин Оболочка

linux-passwd.png

/etc/теневой файл

файл конфигурации пароля

Значение каждой строки: Имя для входа: Зашифрованный пароль: Время последнего изменения: Минимальный интервал: Максимальный интервал: Время предупреждения: Время бездействия: Срок действия: Зарезервировано

linux-shadow.png

/etc/групповой файл

В конфигурационный файл группы (группы) записывается информация о группах, входящих в состав Linux.

Значение каждой строки: имя группы: пароль: идентификационный номер группы: список пользователей в группе

linux-group.png

useradd добавить нового пользователя

useradd 用户名(Описание функции: Добавить нового пользователя)

useradd -g 组名用户名(Описание функции: Добавить нового пользователя в группу)

passwd установить пароль пользователя

passwd 用户名(Описание функции: установить пароль пользователя)

id, чтобы увидеть, существует ли пользователь

id 用户名

cat /etc/passwd чтобы увидеть, какие пользователи были созданы
cat  /etc/passwd
су сменить пользователя

su 用户名称(Описание функции: при переключении пользователей вы можете получить только разрешение пользователя на выполнение, но не можете получить переменные среды)

su - 用户名称(Описание функции: переключиться на пользователя и получить пользовательские переменные среды и разрешения на выполнение)

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

  • Когда вам нужно вернуться к исходному пользователю, используйте команду выхода

  • Если su - без имени пользователя, переключиться на пользователя root по умолчанию

userdel удалить пользователя

userdel 用户名(Описание функции: удалить пользователя, но сохранить домашний каталог пользователя)

userdel -r 用户名(Описание функции: удаляется как пользователь, так и домашний каталог пользователя, при удалении пользователя удаляются все файлы, связанные с пользователем)

кто Просмотр информации о пользователе для входа в систему

whoami(Описание функции: отображение собственного имени пользователя)

who am i(Описание функции: отображение имени вошедшего в систему пользователя)

sudo позволяет обычному пользователю иметь привилегии root

1. Добавьте пользователя sysnc360 и установите для него пароль.

useradd sysnc360
passwd sysnc360

2. Изменить файл конфигурации

vi /etc/sudoers

Измените файл /etc/sudoers, найдите следующую строку (строка 91) и добавьте строку под root следующим образом:

## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
sysnc360   ALL=(ALL)    ALL

Или при настройке на использование команды sudo пароль не требуется

## Allow root to run any commands anywhere
root      ALL=(ALL)     ALL
sysnc360   ALL=(ALL)    NOPASSWD:ALL

После завершения модификации вы можете войти в систему с учетной записью sysnc360, а затем использовать команду sudo для получения привилегий root для работы.

sudo mkdir module  #用普通用户在/opt目录下创建一个文件夹
chown atguigu:atguigu module/
usermod изменить пользователя

usermod -g 用户组用户名

Опции Функции
-g Измените начальную группу входа пользователя, данная группа должна существовать. Идентификатор группы по умолчанию равен 1.
usermod -g root starfish #将用户加入到用户组

Команды управления группами пользователей

У каждого пользователя есть группа пользователей, и система может централизованно управлять всеми пользователями в группе пользователей. Различные системы Linux имеют разные правила для групп пользователей.

Например, пользователь под Linux принадлежит к группе пользователей с таким же именем, как и он, и эта группа пользователей создается одновременно с созданием пользователя.

Управление группами пользователей включает в себя добавление, удаление и изменение групп пользователей. Добавление, удаление и изменение групп на самом деле является обновлением файла /etc/group.

группадобавить группу

groupadd 组名

группаудалить группу

groupdel 组名

groupmod изменяет группы

groupmod -n 新组名 老组名

groupmod -n sysnc360 starfish #修改sysnc360组名称为starfish
cat /etc/group, чтобы увидеть, какие группы были созданы
cat  /etc/group

операция с правами доступа к файлу

chmod изменение разрешений

chmod [{ugoa}{+-=}{rwx}] 文件或目录

chmod [mode=421 ] [文件或目录]

Навыки опыта

u: владелец g: все группы o: другие a: все (сумма u, g, o)

r=4 w=2 x=1 rwx=4+2+1=7

chmod u+x test.txt #修改文件使其所属主用户具有执行权限

chmod g+x test.txt #修改文件使其所属组用户具有执行权限

chmod u-x,o+x test.txt #修改文件所属主用户执行权限,并使其他用户具有执行权限

chmod 777 test.txt #采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权限

chmod -R 777 test/ #采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权限
чоун сменил владельца

chown [-r] [最终用户] [文件或目录](Описание функции: изменение владельца файла или каталога)

группа изменения chgrp

chgrp [最终用户组] [文件或目录](Описание функции: изменение группы файла или каталога)

поиск найти класс

find находит файл или каталог

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

find [搜索范围] [选项]

Опции Функции
-name Поиск файлов в соответствии с заданным шаблоном поиска имени файла
-user Найти все файлы, принадлежащие указанному имени пользователя
-size Поиск файлов по указанному размеру файла.

По имени файла:

find opt/ -name *.txt #根据名称查找/目录下的filename.txt文件
find opt/ -user test #查找/opt目录下,用户名称为-user的文件
find /home -size +204800 #在/home目录下查找大于200m的文件(+n 大于  -n小于   n等于)
locate, чтобы быстро найти путь к файлу

Команда locate использует предустановленную базу данных locate со всеми именами файлов и путями в системе, чтобы быстро найти данный файл. Команде Locate не нужно просматривать всю файловую систему, а скорость запроса выше. Чтобы обеспечить точность результатов запроса, администратор должен регулярно обновлять момент локации.

locate 搜索文件

Опыт и навыки: Поскольку команда locate запрашивает базу данных, вы должны использовать команду updatedb для создания базы данных locate перед ее первым запуском.

updatedb
locate tmp
Поиск фильтра grep и символ вертикальной черты "|"

Символ вертикальной черты «|» указывает, что вывод результата обработки предыдущей команды передается последующей обработке команды.

grep [-n] 查找内容源文件(-n可显示行号)

Классы компрессии и декомпрессии

сжатие gzip/gunzip

gzip 文件(Описание функции: Сжатие файлов, только файлы могут быть сжаты как файлы *.gz)

gunzip 文件.gz(Описание функции: команда распаковать файл)

Навыки опыта

  • Сжимать можно только файлы, но не каталоги

  • Не храните оригинальные файлы

заархивировать/разархивировать сжатие

zip [选项] XXX.zip 将要压缩的内容(Описание функции: команда для сжатия файлов и каталогов)

unzip [选项] XXX.zip(Описание функции: распаковать файл)

почтовый вариант Функции
-r почтовый каталог
распаковать вариант Функции
-d Укажите каталог хранения распакованных файлов

Навыки опыта

Команда сжатия zip распространена как в Windows, так и в Linux и может сжимать каталоги и сохранять исходные файлы.

дегтярная упаковка

tar [选项] XXX.tar.gz 将要打包进去的内容(Описание функции: каталог упаковки, формат сжатого файла .tar.gz)

Опции Функции
-c Создать файл пакета .tar
-v показать детали
-f Укажите имя сжатого файла
-z Упаковать и сжать
-x Распакуйте файл .tar
tar -zcvf houma.tar.gz aa.txt bb.txt  #压缩文件aa和bb
tar -zcvf test.tar.gz test/ #压缩目录
tar -zxvf test.tar.gz #解压到当前目录
tar -zxvf test.tar.gz -C /opt #解压到指定目录

Класс раздела диска

df Просмотр использования дискового пространства df: disk free free hard disk

df 选项(Описание функции: перечислите общее использование диска файловой системой, проверьте использование дискового пространства файловой системой)

Опции Функции
-h Отображение в гигабайтах, мегабайтах, килобайтах и ​​других форматах, которые легче читать людям;
df -h #查看磁盘使用情况
du -h /目录  #查询指定目录的磁盘占用情况
раздел просмотра fdisk

fdisk -l(Описание функции: просмотр сведений о разделе диска, эта команда должна использоваться под пользователем root)

Описание функции

  • Linux-раздел (аналог дисков C, D, E wins)
    • Устройство: последовательность разделов
    • Загрузка: Загрузка
    • Старт: Старт с магнитной колонки X
    • Конец: до конца магнитной колонки Y
    • Блоки: Емкость
    • Id: ID типа раздела
    • Система: Тип раздела
монтировать/размонтировать монтировать/размонтировать

Для пользователей Linux, независимо от того, сколько разделов существует и к какому каталогу они относятся, это всегда корневой каталог и независимая и уникальная файловая структура.

Каждый раздел в Linux используется как часть всей файловой системы.При этом используется метод обработки, называемый "монтированием".Вся файловая система содержит полный набор файлов и каталогов, а также раздел и каталог, и раздел, который будет loaded будет иметь доступное пространство для хранения в этом каталоге.

mount [-t vfstype] [-o options] device dir(описание функции: монтирование устройства)

umount设备文件名或挂载点(Описание функции: удаление устройства)

параметр Функции
-t vfstype Указывает тип файловой системы, обычно не требуется. mount автоматически выберет правильный тип. Общие типы: CD или образ CD: iso9660DOS fat16 Файловая система: msdosWindowsФайловая система 9x fat32: vfatWindows NT Файловая система ntfs: ntfsMount Windows filesИнтернетподелиться: smbfsUNIX(LINUX) файловая сетевая папка: nfs
-o options Он в основном используется для описания метода прикрепления устройства или файла. Общие параметры: loop: используется для монтирования файла как раздела жесткого диска в систему ro: монтирование устройства в режиме только для чтения rw: монтирование устройства в режиме чтения-записи  iocharset: указывает набор символов, используемый для доступа к файлу система
device устройство для монтажа
dir Точка монтирования устройства в системе

Класс потока процесса

  1. В LINUX каждая исполняемая программа (код) называется процессом. Каждому процессу присваивается идентификационный номер.
  2. Каждый процесс соответствует родительскому процессу, и этот родительский процесс может реплицировать несколько дочерних процессов. Например www сервер.
  3. Каждый процесс может существовать двумя способами.стойка регистрацииа такжеЗа кулисами, так называемый процесс переднего плана заключается в том, что пользователь может работать на текущем экране. Фоновый процесс на самом деле работает, но из-за того, что процесс не виден на экране, фоновый режим обычно используется для выполнения [sshd, crond].
  4. общая системаСлужитьВсе они существуют как фоновые процессы, и все они находятся в системе. Это не закончится до выключения.
ps Просмотр текущего состояния системного процесса

ps:статус процесса Статус процесса

ps aux | grep xxx(Описание функции: Просмотр всех процессов в системе)

ps -ef| grep xxx(Описание функции: вы можете просмотреть отношения между дочерними и родительскими процессами)

Опции Функции
-a выбрать все процессы
-u показать все процессы для всех пользователей
-x показать процессы без терминала

3. Описание функции

(1) ps aux описание информации о дисплее

  • ПОЛЬЗОВАТЕЛЬ: каким пользователем был создан процесс
  • PID: идентификационный номер процесса
  • %CPU: процент ресурсов ЦП, занятых процессом, чем выше загрузка, тем больше ресурсов потребляет процесс;
  • %MEM: процент физической памяти, занимаемой процессом, чем выше занятость, тем больше ресурсов потребляет процесс;
  • VSZ: Размер виртуальной памяти, занимаемой процессом, в КБ;
  • RSS: размер фактической физической памяти, занимаемой процессом, в КБ;
  • TTY: в каком терминале запущен процесс. Среди них tty1-tty7 представляет локальный консольный терминал, tty1-tty6 — локальный символьный интерфейсный терминал, а tty7 — графический терминал. pts/0-255 означает виртуальный терминал.
  • STAT: статус процесса. Общие состояния: R: работает, S: спящий режим, T: остановлен, s: содержит дочерние процессы, +: в фоновом режиме
  • START: время начала процесса
  • ВРЕМЯ: этот процесс занимает вычислительное время ЦП, обратите внимание, что это не системное время.
  • КОМАНДА: команда и параметры, используемые для запуска процесса, если они слишком длинные, они будут усечены и отображены

(2) ps -ef отображать описание информации

  • UID: идентификатор пользователя
  • PID: идентификатор процесса
  • PPID: идентификатор родительского процесса
  • C: Коэффициент, который ЦП использует для расчета приоритета выполнения. Большее значение указывает на то, что процесс интенсивно использует ЦП, и его приоритет выполнения уменьшится; меньшее значение указывает, что процесс является операцией, интенсивно использующей ввод-вывод, и его приоритет выполнения увеличится.
  • STIME: время начала процесса
  • TTY: полное имя терминала
  • ВРЕМЯ: процессорное время
  • CMD: команды и параметры, используемые для запуска процесса

Если вы хотите просмотреть использование процессора и памяти процесса, вы можете использовать aux;

Если вы хотите увидеть идентификатор родительского процесса, вы можете использовать ef;

ps aux|grep java

ps -ef|grep tomcat
убить убить процесс

kill [-9] 进程号(Описание функции: убить процесс по номеру процесса, -9 означает немедленную остановку процесса)

killall 进程名称(Описание функции: Убить процесс по имени процесса, также поддерживаются подстановочные знаки, что полезно, когда система становится очень медленной из-за чрезмерной нагрузки)

pstree Просмотр дерева процессов

pstree [选项]

Опции Функции
-p Отобразить PID процесса
-u Отображает пользователя процесса
Pstree -p #用树状的形式显示进程的pid 
Pstree –u #用树状的形式进程的用户id

Управление услугами

Служба по сути является процессом, но она работает в фоновом режиме и обычно прослушивает порт и ожидает запросов от других программ, таких как (mysql, sshdбрандмауэрд.), поэтому мы также называемдемон

Команды управления сервисом:

служба имя службы [старт | стоп | перезапуск | перезагрузка | статус]

После CentOS7.0 сервис больше не используется, ноsystemctl

service iptables status #查看当前防火墙的状况
service  iptables  stop #关闭或者启用防火墙后,立即生效(临时生效,重启后恢复)
service iptables start

Уровень запуска службы (runlevel):

Просмотрите или измените уровень по умолчанию: vi /etc/inittab

Системы Linux имеют 7 уровней запуска:Обычно используются уровни 3 и 5.

  • **Уровень запуска 0:** Система находится в выключенном состоянии, уровень запуска системы по умолчанию не может быть установлен на 0, иначе она не запустится нормально.
  • **Уровень запуска 1:** Однопользовательский рабочий статус, привилегия root, используется для обслуживания системы, удаленный вход запрещен
  • **Уровень запуска 2:** Многопользовательский режим (без NFS), без поддержки сети
  • **Уровень запуска 3:**Полное многопользовательское состояние (с NFS), вход в режим командной строки консоли после входа в систему
  • **Уровень выполнения 4:** Система не используется, зарезервирована
  • **Уровень запуска 5: **Консоль X11, войдите в режим графического интерфейса после входа в систему.
  • уровень выполнения 6: Система обычно выключается и перезагружается.Уровень запуска по умолчанию не может быть установлен на 6, иначе он не запустится нормально.

Описание процесса запуска:

linux-runlevel.png

директива chkconfig

С помощью команды chkconfig вы можете настроить автозапуск/отключение для каждого уровня запуска каждой службы.

базовая грамматика

1) Просмотр служб chkconfig --list|grep xxx

2) имя службы chkconfig --list

  1. chkconfig --level 5 имя службы вкл/выкл [вы можете указать службу, определенный уровень запуска, открыть или закрыть]
chkconfig –level 1 sshd off/on #sshd 服务在 1 运行级别 off
  1. имя службы chkconfig вкл/выкл
chkconfig iptables off #  iptables 彻底关闭 ,不管是哪个级别都关闭

chkconfig --list   #显示当前系统所有服务的各个运行级别的运行状态 
top Просмотр состояния работоспособности системы

top очень похож на команду ps. Оба они используются для демонстрации процесса выполнения. Самая большая разница между top и ps заключается в том, чтоtop может обновлять запущенные процессы после выполнения в течение определенного периода времени(меняется каждые 3 секунды по умолчанию)

top [选项]

Опции Функции
-д секунд Указывает, что верхняя команда обновляется каждые несколько секунд. По умолчанию это 3 секунды команд, которые можно выполнить в интерактивном режиме верхней команды:
-i Сделайте так, чтобы top не отображал бездействующие или зомби-процессы.
-p Отслеживайте только состояние определенного процесса, указав идентификатор процесса мониторинга.
действовать Функции
P Сортировать по загрузке ЦП, по умолчанию это
M Сортировать по использованию памяти
N Сортировать по PID
q выйти сверху
Объяснение поля результата запроса

Первая строка информации — это информация об очереди задач.

содержание иллюстрировать
12:06:46 Системное текущее время
up 1 day, 13:32 Время работы системы, машина проработала 1 сутки 13 часов 32 минуты
2 users Два пользователя в настоящее время вошли в систему
load average: 0.00, 0.00, 0.00 Система имеет среднюю нагрузку за предыдущие 1 минуту, 5 минут и 15 минут. Обычно считается, что когда он меньше 1, нагрузка мала. Если он больше 1, система перегружена.

Информация о втором поведенческом процессе

Tasks: 95 total Общее количество процессов в системе
1 running Количество запущенных процессов
94 sleeping спящий процесс
0 stopped остановка процесса
0 zombie Процесс зомби. Если не 0, вам нужно вручную проверить зомби-процессы

Третья строка — информация о процессоре.

Cpu(s): 0.1%us Процент ЦП, используемый в пользовательском режиме
0.1%sy Процент ЦП, используемый системным режимом
0.0%ni Процент ЦП, занятый пользовательскими процессами, чьи приоритеты изменились
99.7%id Процент ЦП от простоя ЦП
0.1%wa Процент ЦП процессов, ожидающих ввода/вывода
0.0%hi Процент ЦП, занятый службой запроса аппаратного прерывания
0.1%si Процент ЦП, занятый службой запросов softirq
0.0%st st (Время кражи) Процент виртуального времени. Это процент времени, в течение которого виртуальный ЦП ожидает фактического ЦП при наличии виртуальной машины.

Четвертая строка — информация о физической памяти.

Mem: 625344k total Общий объем физической памяти, в КБ
571504k used Объем используемой физической памяти
53840k free Объем свободной физической памяти, мы используем виртуальную машину, и всего выделено всего 628 МБ памяти, поэтому свободной памяти всего 53 МБ.
65800k buffers Объем памяти в качестве буфера

Пятая строка - информация о разделе подкачки (свопе).

Swap: 524280k total Общий размер раздела подкачки (виртуальная память)
0k used Размер интерактивного раздела, который использовался
524280k free Размер свободного раздела подкачки
409280k cached Размер интерактивного раздела в качестве кеша
top -d 1
top -i
top -p 2575

# 执行上述命令后,可以按P、M、N对查询出的进程结果进行排序。
netstat отображает статистику сети и использование портов

netstat -anp |grep 进程号(Описание функции: просмотр сетевой информации о процессе)

netstat -nlp | grep 端口号(Описание функции: просмотр занятости номера сетевого порта)

Опции Функции
-an Расположите вывод в определенном порядке
-p Указывает, какой процесс вызывает
netstat -anp | grep java #通过进程号查看该进程的网络信息

netstat -nlp | grep 20670 #查看某端口号是否被占用

запланированная задача системы crond

управление сервисом crond
service crond restart #重新启动crond服务
crontab настройки задачи cron

crontab [选项]

Опции Функции
-e Редактируйте временные задачи crontab, он откроет vim для редактирования вашей работы.
-l Запрос задач crontab
-r Удалить все задачи crontab текущего пользователя
проект имея в виду Сфера
Первый"*" минута часа 0-59
второй"*" час дня 0-23
Третий"*" день месяца 1-31
четвертый"*" месяц года 1-12
пятый"*" день недели 0-7 (и 0, и 7 представляют воскресенье)
специальные символы имея в виду
* представляют любое время. Например, первая "*" означает, что она будет выполняться каждую минуту часа.
, Представляет прерывистое время. Например, «0 8,12,16 * * * command» означает, что команда выполняется в 8:00, 12:00 и 16:00 каждый день.
- Представляет непрерывный диапазон времени. Например, «0 5 * * 1-6 команда», что означает выполнение команды в 5:00 утра с понедельника по субботу.
*/n Представляет, как часто выполнять. Например, "*/10 * * * * command" означает выполнение команды каждые 10 минут.
время имея в виду
45 22 * ​​* * * Команда Выполнить заказ в 22:45
0 17 * * 1 команда Выполняйте заказ каждую неделю в 17:00
0 5 1,15 * * Команда Выполняйте команду в 5:00 утра 1-го и 15-го числа каждого месяца.
40 4 * * 1-5 Команды Выполнение заказов в 4:40 утра с понедельника по пятницу
*/10 4 * * * Команда Выполнять команду каждые 10 минут в 4 утра каждый день
0 0 1,15 * 1 команда 1 и 15 числа каждого месяца заказ будет выполняться в 0:00 1 числа каждой недели. Примечание. Лучше не отображать одновременно день недели и день, потому что они определяют день. Очень легко запутать администраторов.

FAQ

  • Подсчитайте количество файлов в папке /home ls –l /home/ | grep «^-» | wc -l

  • Подсчитайте количество каталогов в папке /home ls –l /home/ | grep «^d» | wc -l

  • Подсчитайте количество файлов в папке /home, в том числе в подпапках ls –lR /home/ | grep «^-» | wc -l

  • Подсчитайте количество каталогов в папке /home, в том числе в подпапках ls –lR /home/ | grep «^d» | wc -l

  • Как проверить, какие процессы в данный момент запущены в системе

    ps-aux или ps-elf

  • Как проверить, какие порты открыты в системе?

    netstat -lnp

  • Какие команды Linux вы обычно используете?

    ps, grep, tar, touch, pwd