Азбука Linux — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
(Изменение зависимостей пакета deb)
(samba public config)
 
(не показано 8 промежуточных версий этого же участника)
Строка 78: Строка 78:
  
 
==Монтирование NTFS и FAT, FAT32 дисков в Ubuntu и права на общий доступ к ним==
 
==Монтирование NTFS и FAT, FAT32 дисков в Ubuntu и права на общий доступ к ним==
 +
 +
https://disnetern.ru/add-new-hdd-ubuntu/
 +
 
При установке Ubuntu можно сразу указывать какой диск с какой файловой системой куда и как монтировать, система сама пропишет правильный конфиг в файл fstab. Если же по каким-то причинам мы это не сделали вначале, можно без проблем проделать это вручную.
 
При установке Ubuntu можно сразу указывать какой диск с какой файловой системой куда и как монтировать, система сама пропишет правильный конфиг в файл fstab. Если же по каким-то причинам мы это не сделали вначале, можно без проблем проделать это вручную.
  
 
И так, для начала нам нужно узнать UUID идентификатор диска или его порядок в таблице разделов .
 
И так, для начала нам нужно узнать UUID идентификатор диска или его порядок в таблице разделов .
 +
 
Выполняем команду в консоли:
 
Выполняем команду в консоли:
 +
 +
<source lang=bash>
 
sudo blkid
 
sudo blkid
 +
</source>
  
 
должно показать что-то похожее:
 
должно показать что-то похожее:
Строка 96: Строка 103:
 
Далее правим конфиг fstab, вводим в консоли:
 
Далее правим конфиг fstab, вводим в консоли:
  
sudo gedit /etc/fstab
+
<source lang=bash>
 +
sudo nano /etc/fstab
 +
</source>
  
 
Добавляем в конце файла строку:
 
Добавляем в конце файла строку:
Строка 106: Строка 115:
 
для FAT, FAT32
 
для FAT, FAT32
  
 +
<source lang=bash>
 
UUID=нужный_идентификатор  /путь_к_разделу  vfat shortname=mixed,codepage=850,umask=002,uid=1000,gid=100,noauto,user 0 0
 
UUID=нужный_идентификатор  /путь_к_разделу  vfat shortname=mixed,codepage=850,umask=002,uid=1000,gid=100,noauto,user 0 0
 +
</source>
  
 
так же можно вместо UUID ввести порядковый номер раздела, например так:
 
так же можно вместо UUID ввести порядковый номер раздела, например так:
  
 +
<source lang=bash>
 
/dev/sda2 /home/myuser/disk  ntfs-3g rw,users,locale=ru_RU.UTF-8 0 0
 
/dev/sda2 /home/myuser/disk  ntfs-3g rw,users,locale=ru_RU.UTF-8 0 0
 +
</source>
  
 
Перегружаем систему, наслаждаемся :)
 
Перегружаем систему, наслаждаемся :)
  
Теперь дадим права пользователям расшаривать общий доступ к папкам:
+
 
  
 
sudo gedit /etc/samba/smb.conf
 
sudo gedit /etc/samba/smb.conf
Строка 120: Строка 133:
 
находим секцию [global] и в неё добавляем:
 
находим секцию [global] и в неё добавляем:
  
usershare owner only = false
+
==Правильное копирование папок==
 +
https://habr.com/ru/company/ruvds/blog/471092/
 +
 
 +
<source lang="bash">
 +
cp -a /source/. /target
 +
</source>
  
 
==samba public config==
 
==samba public config==
 
<source lang="ini">
 
<source lang="ini">
 
[global]
 
[global]
  workgroup = group               #ваша рабочая группа
+
workgroup = group
  server string = server-samba %v #строка комментария (описания),
+
server string = Samba server %v
                                  #которая будет видна в сетевом окружении
+
netbios name = server
  netbios name = server           #netbios-имя вашего сервера
+
security = user
  security = user                 #этот параметр указывает,
+
map to guest = Bad Password
                                  #как будут себя вести клиенты
+
max log size = 1000
  map to guest = Bad Password     #указывает попытку зайти "Гостем"
+
 
 +
[2tb]
 +
comment = public
 +
path = /media/hdd2-2tb
 +
guest ok = yes
 +
public = yes
 +
writeable = yes
 +
browseable = yes
 +
read only = no
 +
create mask = 0777
 +
directory mask = 0777
 +
force create mode = 0777
 +
force directory mode = 0777
 +
#принуждаем быть владельцем общего ресурса пользователя sambauser
 +
force user=nobody
 +
#принуждаем быть владельцем общего ресурса группу users
 +
force group=nobody
  
[public]
 
  comment = public                #описание директории, видно
 
                                  #в сетевом окружении
 
  path = /home/public              #путь к общей директории
 
  guest ok = yes                  #при значениее "yes" этого параметра
 
                                  #пароль при входе в общую папаку не
 
                                  #нужен
 
  public = yes
 
  writeable = yes
 
  browseable = yes                #общая папка не скрыта
 
 
</source>
 
</source>
 
[[Категория:Raspberry Pi]]
 
[[Категория:Raspberry Pi]]

Текущая версия на 13:48, 25 октября 2022

Новичкам в работе с Linux системами Debian/Raspbian и для осваивания Raspberry PI могут помочь некоторые программы и утилиты:

Полезные программы

Putty - утилита для подключения к консоли по ssh из windows ,скачать можно тут. Позволяет удаленно настраивать linux системы по сети или через Интернет. Вы получаете доступ к консоли как бы находясь на самом linux..

Полезные пакеты

mc (Midnight Commander) - удобный файловый менеджер,для включения более удобного редактора можно поставить соотвествующие галки в настройках.mc

htop - управление процессами и мониторинг памяти в системах linux.

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

sudo apt-get install <название пакета> -установка пакета из репозитория ,например чтобы установить файловый менеджер mc выполним sudo apt-get install mc.

apt-cache search <название пакета> - поиск в репозитории пакетов с таким именем. Предварительно необходимо установить пакет apt-cache.

apt-file search <имя файла> - поиск в репозитории пакетов в которых есть файлы с указанным именем. Предварительно необходимо установить пакет apt-file.

sudo apt-get update - обновление локального списка доступных в репозитории пакетов. Желательно выполнять эту комманду перед установкой новогопакета.

sudo apt-get upgrade - обновление установленных пакетов.

Выполнение команд от имени администратора

sudo - утилита запуска программ c правами суперпользователя,например чтобы запустить программу mc с правами суперпользователя необходимо набрать "sudo mc" - это даст возможность правки системных файлов папке etc.Далее ниже в описании команд,где это необходимо,будет сразу указано что необходимо выполнить запуск с командой sudo.

sudo su - войти с правами администратора, в дальнейшем sudo можно уже не указывать

ifconfig - выводит список сетевых интерфейсов, позволяет задать/поменять адрес например sudo ifconfig eth0 192.168.0.110

reboot - Перезагрузка. Команда reboot завершает работающие процессы сигналом SIGTERM (15), команда shutdown позволяет работающим сервисам самостоятельно завершить работу с помощью прилагаемых init скриптов. Это позволяет КОРРЕКТНО завершить работу, почистить кеш где нужно и где это предусмотрено, выполнить какие либо промежуточные действия. Всегда используйте shutdown вместо reboot

shutdown -r 0 - Перезагрузка.

shutdown -h 0 - Выключение компьютера.

sudo passwd root - задать пароль чтобы можно было заходить под root (например для удаленной отладки)


tar - консольный архиватор.Например команда tar xzf имя_файла.tar.gz разархивирует содержимое в текущую папку.

i2c-tools - утилита для поиска i2c устройств на шине. Пример использования sudo i2cdetect -y 0 сканирует на шине 0 (для ревизии платы 1 номер шины 0 ,для ревизии платы 2 - шина 1)i2c

В данном примере утилита находит датчик давления BMP085 по адресу 77 (HEX).

alsamixer - регулировка громкости звука

Подключение модулей ядра:

Для немедленной загрузки модуля ядра можно выполнить команду sudo modprobe <название модуля>

Для автозагрузки необходимо прописать в файле /etc/modules названия модулей каждый с новой строки,открыв файл ,например в редакторе mc через F4.

Применяемые модули в raspberry pi:

snd-bcm2835 - общий модуль для работы с GPIO.

w1-gpio , w1_therm для работы с шиной 1-wire,которую используют датчики температуры ds18B20. Используется для подключения вывод GPIO 4.

i2c-bcm2708 , i2c-dev для работы шины I2C ,на которой например работает датчик давления BMP085 и микросхемы расширения портов.

Изменение зависимостей пакета deb

# Распакуйте deb 
ar x golden-linux.deb
# создаст три файла: debian-binary control.tar.gz data.tar.'''x'''z
# Распаковать архив управления и запоминаем что там было
FILES=$(tar zxvf control.tar.gz)
# исправить зависимости в control (используйте текстовый редактор)
nano control
# запоковываем control.tar.gz: 
tar zcf control.tar.gz $FILES
# собираем deb, порядок файлов важен!
ar rcs newpackage.deb debian-binary control.tar.gz data.tar.xz

Монтирование NTFS и FAT, FAT32 дисков в Ubuntu и права на общий доступ к ним

https://disnetern.ru/add-new-hdd-ubuntu/

При установке Ubuntu можно сразу указывать какой диск с какой файловой системой куда и как монтировать, система сама пропишет правильный конфиг в файл fstab. Если же по каким-то причинам мы это не сделали вначале, можно без проблем проделать это вручную.

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

Выполняем команду в консоли:

sudo blkid

должно показать что-то похожее:

/dev/sda1: LABEL="M-PM-^WM-PM-0M-QM-^@M-PM-5M-PM-7M-PM-5M-QM-^@M-PM-2M-PM-8M-QM-^@M-PM->M-PM-2M-PM-0M-PM-=M-PM-> M-QM-^AM-PM-8M-QM-^AM-QM-^BM-PM-5M-PM-<M-PM->M-PM-9" UUID="A898D59D98D56A78" TYPE="ntfs" 
/dev/sda2: LABEL="disk" UUID="30286E84286E4944" TYPE="ntfs" 
/dev/sda3: UUID="513b5ee6-d7c9-4249-a250-a413c76eaf54" TYPE="ext4" 
/dev/sda4: UUID="bf5cd121-9d5e-44dc-bfd0-df33a4180282" TYPE="ext4" 
/dev/mapper/cryptswap1: UUID="41c94518-619d-4651-8fcf-fb6dafb44f9a" TYPE="swap"

Далее правим конфиг fstab, вводим в консоли:

sudo nano /etc/fstab

Добавляем в конце файла строку:

для NTFS

UUID=нужный_идентификатор /путь_к_разделу ntfs-3g rw,users,locale=ru_RU.UTF-8 0 0

для FAT, FAT32

UUID=нужный_идентификатор   /путь_к_разделу  vfat shortname=mixed,codepage=850,umask=002,uid=1000,gid=100,noauto,user 0 0

так же можно вместо UUID ввести порядковый номер раздела, например так:

/dev/sda2 /home/myuser/disk  ntfs-3g rw,users,locale=ru_RU.UTF-8 0 0

Перегружаем систему, наслаждаемся :)


sudo gedit /etc/samba/smb.conf

находим секцию [global] и в неё добавляем:

Правильное копирование папок

https://habr.com/ru/company/ruvds/blog/471092/

cp -a /source/. /target

samba public config

[global]
workgroup = group
server string = Samba server %v
netbios name = server
security = user
map to guest = Bad Password
max log size = 1000

[2tb]
comment = public
path = /media/hdd2-2tb
guest ok = yes
public = yes
writeable = yes
browseable = yes
read only = no
create mask = 0777
directory mask = 0777
force create mode = 0777
force directory mode = 0777
#принуждаем быть владельцем общего ресурса пользователя sambauser
force user=nobody
#принуждаем быть владельцем общего ресурса группу users
force group=nobody