summaryrefslogtreecommitdiff
path: root/LINUX/BEGIN.md
diff options
context:
space:
mode:
Diffstat (limited to 'LINUX/BEGIN.md')
-rw-r--r--LINUX/BEGIN.md218
1 files changed, 218 insertions, 0 deletions
diff --git a/LINUX/BEGIN.md b/LINUX/BEGIN.md
new file mode 100644
index 0000000..d5b7615
--- /dev/null
+++ b/LINUX/BEGIN.md
@@ -0,0 +1,218 @@
+/boot - 500Mb - ext2
+/ 20Gb - ext4
+swap = озу
+/home - остальное
+
+```sh
+# Изменение текстового редактора по умолчанию:
+sudo update-alternatives --config editor
+```
+
+```bash
+sudo apt update && sudo apt upgrade -y
+sudo apt install mc ranger nload tmux wireguard samba gpg pass smartmontools lm-sensors
+
+# Диски:
+mkdir 1Tb-a 1Tb-temp 2Tb-a 2Tb-b
+sudo blkid
+lsblk
+# редактируем /etc/fstab, монтируем диски и RAID по UUID:
+sudo mount -a
+sudo systemctl daemon-reload
+
+# Samba:
+
+
+
+
+
+
+sudo apt-get install -f
+# Эта команда подтянет нужные пакеты и переустановит проблемный.
+
+
+# Какая версия установлена:
+lsb_release -a
+```
+
+## КОНСОЛЬ клавиши##
+```sh
+Ctrl-a - перейти в начало
+Ctrl-e - перейти в конец
+
+Ctrl-w - вырезать слово перед курсором
+Ctrl-k - вырезать от курсора и до конца строки
+Ctrl-u - вырезать от курсора и назад до начала строки
+Ctrl-y - вставить вырезанное
+Ctrl- <- (Alt- )
+Ctrl- -> (Alt- )
+
+Ctrl-u - очищает слева от курсора
+Ctrl-k - очищает справа от курсора
+Ctrl-r - поиск по истории команд
+
+history - список всех введенных команд
+
+reset - исправить вывод
+
+mkdir 123/name/345 -p - создать папку с полным путем
+
+cat /var/log/syslog | grep ssh
+```
+## Файловая система SWAP ( файл подкачки ) ##
+```sh
+# Создание swap-пространство на разделе hda3
+mkswap /dev/hda3
+
+# Включить swap-пространство, расположенное на разделе hda3
+swapon /dev/hda3
+
+# Активировать swap-пространства, расположенные на разделах hda2 и hdb3
+swapon /dev/hda2 /dev/hdb3
+```
+## TERMINAL ##
+```bash
+# добавить сторонний репозиторий:
+sudo add-apt-repository ppa:name_rep/ppa
+
+# Обновление информации о пакетах и обновление самих пакетов
+sudo apt update && sudo apt upgrade -y
+
+# Установка пакетов
+sudo apt install -y htop curl wget build-essential git openssh-server
+sudo apt install nload git tmux vim mc wireguard gpg pass
+
+# Редактор по умолчанию:
+update-alternatives --config editor
+
+# Печатаем сразу в файл
+echo «Hello World !» > /tmp/file.txt
+
+
+cat /etc/*-release
+whoami
+whatis
+whereis
+
+# - выводит файл в консоль
+cat (-n)
+
+# - выводит текст задом на перед
+tac
+
+# - поиск в тексте
+grep <какой> file.txt
+
+# найти и вывести все что начинается с '#':
+sudo grep -v ^#/etc/ssh/sshd_config
+
+# + убрать все пустые строки в выводе:
+sudo grep -v ^#/etc/ssh/sshd_config | grep -v ^$
+
+# + посчитать кол-во строк в выводе:
+sudo grep -v ^#/etc/ssh/sshd_config | grep -v ^$ | wc -l
+
+# посчитать общее кол-во строк в файле:
+sudo wc -l /etc/ssh/sshd_config
+
+# - если текст длинный и перемещаемся кнопками вверх и вниз если нажать "/" то откроется строка для поиска в этом файле "n" - перемещаемся в поиске вперед и "ctrl+n" - назад "q" - выход
+less
+
+# - последние или первые 10 строк файла `"-f"` онлайн просмотр
+tail / head
+
+# - создание каталога с путем
+mkdir -p
+
+# - переместить/переименовать
+mv
+
+# - просмотр сразу 2 каталогов
+ls dir1 dir2
+
+# - копирование `-r` - копируем каталог
+cp
+
+# - удаление каталога
+rm -r
+```
+## GROUP ##
+```sh
+groupadd # — не выводит ничего при создании группы; лучше при использовании в скрипте, так как нет лишнего вывода на терминал
+
+addgroup # — выводит создаваемый <gid> при создании группы.
+--gid 5555 # - можно задать при создании
+
+groupdel
+delgroup
+
+# Чтобы пользователю добавить дополнительную группу можно воспользоваться командой 
+usermod -aG
+-a #— добавляет к текущим группам пользователя дополнительные. Без этой опции группы заменяются на новые, а с этой опцией к старым группам добавляются новые;
+-G #— указывает, что работать будем с дополнительными группами а не с первичной.
+#(`usermod -aG testgroup alex`)
+# Утилитой <usermod> нельзя удалять дополнительные группы, можно только не используя опцию **-a**, написать список групп в которые должен будет входить данный пользователь, не указав ту группу, из которой вы хотите удалить пользователя.
+
+# Если мы хотим поменять пользователю первичную группу, то нужно использовать опцию -g:
+usermod -g testgroup alex
+
+id alex
+# uid=1000(alex) gid=1002(testgroup) группы=1002(testgroup),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),109(netdev)`
+
+# И вернем все как было:
+usermod -g alex alex
+
+# Еще один способ добавить пользователя в дополнительную группу (и наверное более запоминающийся) это использовать утилиту adduser, при этом утилите вначале передается имя пользователя, затем группы:
+adduser alex testgroup
+
+# Удалить пользователя из группы можно командой deluser:
+deluser alex testgroup
+
+# И так, для добавления или удаления пользователя в дополнительную группу я бы рекомендовал использовать команды adduser и deluser. А для изменения первичной группы команду usermod -g.
+```
+## PASSWD ##
+```sh
+passwd - изменить пароль текущему пользователю
+
+/etc/passwd
+/etc/group
+/etc/shadow
+
+# В passwd хранится информация о пользователях в системе, вот информация о пользователе alex:
+grep alex /etc/passwd
+
+alex:x:1000:1000:Alexandr,,,:/home/alex:/bin/bash
+
+# То что после имени идет буква «x» означает что пароль зашифрован в файле shadow.
+
+# В /etc/group хранится информация о группах в системе, вот информация о группе alex и о дополнительных группах пользователя alex:
+grep alex /etc/group
+
+cdrom:x:24:alex
+floppy:x:25:alex
+audio:x:29:alex
+dip:x:30:alex
+video:x:44:alex
+plugdev:x:46:alex
+netdev:x:109:alex
+alex:x:1000:
+
+# Здесь вначале идет имя группы, потом символ «x» обозначает что пароль зашифрован, затем gid, затем пользователи Linux для которых эта группа является дополнительной. Таким образом группа alex имеет gid=1000, а пользователь alex входит в дополнительные группы cdrom, floppy и так далее.
+
+# В /etc/shadow хранятся соленые хэши паролей пользователей, вот например строка для alex:
+grep alex /etc/shadow
+
+alex:$y$j9T$STsC82fbWIlhONPF0rXcm1$a.c./bIw7BUBiewrYoKnEBGBAH3Z5UGsWCFQsW3HOR8:19006:0:99999:7:::
+
+# Строка файла содержит поля разделённые двоеточиями, в полях находится следующая информация:
+
+- имя пользователя;
+- хеш пароля;
+- дата последней смены пароля в днях начиная с 1 января 1970 года, чем больше число, тем новее пароль;
+- минимальный срок действия пароля, если 0 то неограничен;
+- максимальный срок действия пароля;
+- период предупреждения о необходимости сменить пароль;
+- период неактивности пароля — у меня пустое поле, период неактивности отсутствует;
+- дата истечения срока действия учётной записи — у меня пустое поле, учётная запись никогда не устаревает;
+- зарезервированное поле для использования в будущем.
+```