Заметки (upd. 10.03.2019)

update 10.03.2019

Здесь будут добавляться заметки. Время проходит, что-то забывается. Вспоминаем детали…
1. Маска подсети
2. Как рекурсивно поменять права каталогам или файлам
3. Узнать свой белый (внешний) ip v4 через терминал
4. Справка о командах по ключевому слову
5. Алиасы GNU bash
6. Освободить место в корневом разделе путем удаления старых ядер Ubuntu 
7. Автозапуск ICES2
8. Первый запуск sys­tem-con­fig-sam­ba - ошибка
9. Установка mailu­tils и настройка post­fix для отправки @gmail.com почты из CLI и скриптов
10. Смена(сброс) пароля защиты php­MyAd­min утилиты .htpass­wd
11. Установка задания cron обновления базы данных fup­pes директории tor­rent в Nas4free
12. После установки (переустановки) Ubun­tu 18.04 ноутбук зависает при перезагрузке и выключении (Leno­vo B5030)

***

1. Маска подсети — битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети (при этом, в отличие от IP-адреса, маска подсети не является частью IP-пакета).

$ sudo apt install ipcalc
$ ipcalc xxx.xxx.xxx.xxx/xx 
$ ipcalc -n xxx.xxx.xxx.xxx/xx 

Скачать Sub­net Mask.xlsx

***

2. Как рекурсивно поменять права каталогам или файлам

find /dir/dir/dir_destination/ -type d -exec chmod 755 {} \;
Эта команда рекурсивно пройдется по указанному ("/dir/dir/dir_destination/") каталогу и всем его подкаталогам и изменит права на 755 только у каталогов (-type d)

Похожим образом действуем и с файлами:
find /dir/dir/dir_destination/ -type f -exec chmod 644 {} \;
всем файлам - 644.

Если необходимо применить действия только к определенным файлам, подходящим по маске, то действуем так:
find /dir/dir/dir_destination/ -type f -name '*.htm*' -exec chmod 644 {} \;

А если нужно применить команду только к файлам или каталогам определенного владельца, то
find /dir/dir/dir_destination/ -type d or f -user file­own­er -exec chmod 0755 {} \;

***

3. Узнать свой белый (внешний) ip v4 через терминал
sudo apt-get install curl && curl http://icanhazip.com
либо
curl icanhazip.com
curl ifconfig.co
curl ifconfig.me
wget -O - -q icanhazip.com

***

4. Справка о командах по ключевому слову

man -k net­work | grep con­fig­ure  -  находит справку о командах по ключевому слову, аналогично  -  apro­pos net­work | grep con­fig­ure

ifcon­fig (8) - con­fig­ure a net­work interface
iwcon­fig (8) - con­fig­ure a wire­less net­work interface
iwpriv (8) - con­fig­ure option­als (pri­vate) para­me­ters of a wireless…

***

5. Алиасы GNU bash

alias — встроенная команда Bash и других оболочек для сокращения команд и их последовательностей. Также возможно переопределение команд и подстановка в них параметров. Википедия

Посмотреть существующие алиасы -
~$ alias

Создание алиасов
~$ nano .bashrc
в конце файла вставляем
# my aliases
alias имя_нового_алиаса='команда'
Пример: 
alias myip='curl http://icanhazip.com'
затем жмем клавиши CTRL+O, ENTER, CTRL+X
Перезапускаем bash…

~$ myip
Profit.

***

6. Освободить место в корневом разделе путем удаления старых ядер Ubuntu
Проверяем наличие установленных ядер в системе
$ dpkg --list | grep linux-image
$ dpkg --list | grep linux-headers
Удаляем старые ненужные ядра
$ sudo apt-get purge linux-image-X.XX.X-XXX
$ sudo apt-get purge linux-headers-X.XX.X-XXX
где X.XX.X-XXX номер версии ядра
Перезагружаемся.

***

7.Автозапуск ICES2
Автозапуск ices2 желательно настроить после того, как запустится icecast2, для этого можно добавить процесс в автозагрузку графической оболочки. Добавим команду ices2 /etc/ices2/ices-playlist.xml в правило автозагрузки. Для того, что бы процесс запустился, необходимо в файле ices-playlist.xml в строке <param name="file">/etc/ices2/playlist.txt</param> указать полный путь /etc/ices2/playlist.txt

Либо создать задание cron, - стартовать ices2 через минуту после старта системы, т. е. когда уже должен загрузиться icecast2. Для этого в CLI пишем
EDITOR=nano crontab -e
откроется файл редактирования задач cron
Вставим в него
SHELL=/bin/bash
@reboot sleep 60 && ices2 /etc/ices2/ices-playlist.xml
После последней строки не забываем нажать возврат каретки "Enter".
Сохраням и выходим
Система ответит
crontab: installing new crontab
Profit.

***

8. Первый запуск sys­tem-con­fig-sam­ba - ошибка
1. При запуске sys­tem-con­fig-sam­ba система ругается на то, что не найден файл libuser.conf. Просто создадим этот файл
sudo touch /etc/libuser.conf
sudo chmod 664 /etc/libuser.conf

2. Ubun­tu 18.04 не видит разшаренные ресурсы машин с OS Windows
Добавим в файл /etc/samba/smb.conf после строки
work­group = 'Ваша рабочая группа'
следующую строку
client max pro­to­col = NT1
 Сохранение и выход.
Перезапустим samba
sudo ser­vice smbd restart
Profit.
 3. Пользователи WINDOWS XP не могут зайти по паролю на sam­ba-ресурс UBUNTU18.04
В файл /etc/samba/smb.conf добавим ntlm auth = yes 
Profit.

***

9. Установка mailu­tils и настройка post­fix для отправки @gmail.com почты из CLI и скриптов

Установка на Ubun­tu 18.04

$ sudo apt update -y && sudo apt upgrade -y

$ sudo apt install mailutils

при вопросе выбора отмечаем установку "Интернет сайт", далее по умолчанию.

Настройка

$ sudo nano /etc/postfix/main.cf

в конец файла добавляем

# Relay­ing Post­fix SMTP via GMAIL
relay­host = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes

если Ubun­tu 16.04, то еще добавим

compatibility_level = 2

сохраняем и выходим. Далее создаем

$ sudo nano /etc/postfix/sasl_passwd

и вносим

[smtp.gmail.com]:587    Имя вашего почтового ящика@gmail.com:Пароль от почтового ящика gmail

Пример:

[smtp.gmail.com]:587    Vasya@gmail.com:vasinpassword

сохраняем и выходим. Далее

$ sudo chmod 400 /etc/postfix/sasl_passwd
$ sudo postmap /etc/postfix/sasl_passwd
$ cat /etc/ssl/certs/Thawte_Premium_Server_CA.pem | sudo tee -a /etc/postfix/cacert.pem

если выходит ошибка, то меняем Thawte_Premium_Server_CA.pem на thawte_Primary_Root_CA.pem (см. ниже)

$ cat /etc/ssl/certs/thawte_Primary_Root_CA.pem | sudo tee -a /etc/postfix/cacert.pem

$ sudo /etc/init.d/postfix reload
$ sudo ser­vice post­fix restart

Шлем мыло и проверяем почту друга Васи) …

echo "Hi Friend!" | mail -s "Test Mes­sage" -a "From: Test <Vasya@gmail.com>" Drug.Vasi@pochtadruga.com

В логах не должно быть ошибок

$ nano /var/log/mail.log

… Prof­it.

***

10. Смена(сброс) пароля защиты php­MyAd­min утилиты .htpass­wd

$ sudo htpass­wd -c /etc/phpmyadmin/.htpasswd user­name

***

11. Установка задания cron обновления базы данных fup­pes директории tor­rent в Nas4free
# nano /path/to/folder/torrent/fuppes_rebuild

#!/bin/sh
# fuppes_rebuild
/etc/rc.d/fuppes stop
rm /path/to/folder/torrent/filedb/fuppes.db
/etc/rc.d/fuppes start >/dev/null &

#

где fuppes.db файл базы данных fuppes
Далее Ctrl+o Enter Ctrl+x
затем идем в браузер
GUI Nas4free
Система -> Дополнительно -> cron -> +
1. /bin/sh /path/to/folder/torrent/fuppes_rebuild
2. Назначаем пользователя root
3. Описание …
4. Время устанавливаем по желанию, к примеру каждую первую минуту в 9, 15 и 18 часов во все дни, месяцы и дни недели.
Проверяем…

***

12. После установки (переустановки) Ubun­tu 18.04 ноутбук зависает при перезагрузке и выключении (Leno­vo B5030)
Решение нестандартное. Это сброс BIOS до заводского состояния путем отключения батареи на материнской плате на несколько секунд и последующая настройка (при необходимости) той же конфигурации, что и была до сброса. Другие решения не помогали).

***

Добавить комментарий