Antecedentes
Sou um usuário apaixonado do PLEX Media Server ("PMS"). Eu estava executando o PMS e o uTorrent em um Mac Mini no meu quarto. A mídia descarregada do uTorrent da Internet para um NAS WDMyCloud de 2Tb ("NAS") em minha LAN e PMS em casa transmitia mídia do NAS para os clientes na LAN doméstica e na Internet. Tudo funcionou muito bem.
Eu queria reduzir o ruído, adicionar mais espaço de armazenamento e organizar as coisas de forma a ter uma pegada de energia mais leve (um Raspberry PI 3 não era suficiente). Por isso, reciclei um portátil i5 SONY Vaio mais antigo (mas ainda não velho) (o "SONY") e um disco rígido USB de 1,5 TB.
Então, agora estou usando:
-
A SONY está executando o mal-humorado Ubuntu Core 16.04.4 LTS, totalmente atualizado e atualizado em 2 de março de 2018, como segue:
stefano@SONY:/$ uname -a
Linux SONY 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Ele é executado sem cabeça, sem qualquer GUI. Eu ssh para ele, conforme necessário, através da minha LAN com fio (sem wi-fi).
-
My 2Tb WDMyCloud NAS, executando o Debian da seguinte forma:
WDMyCloud:/dev# uname -a
Linux WDMyCloud 3.2.26 #1 SMP Thu Jul 9 11:14:15 PDT 2015 wd-2.4-rel armv7l GNU/Linux
-
Meu disco rígido USB de 1,5 TB mais antigo que aparece como "Story_1_5Tb_2" ("STORY"). Ele está conectado ao NAS, o que, consequentemente, mostra o seguinte:
WDMyCloud:/dev# lsblk -f
NAME FSTYPE LABEL MOUNTPOINT
sda
|-sda1 linux_raid_member
| '-md1 ext3 /
|-sda2 linux_raid_member
| '-md1 ext3 /
|-sda3 swap [SWAP]
|-sda4 ext4 /DataVolume
|-sda5
|-sda6
|-sda7
'-sda8
sdb
'-sdb1 ntfs Story 1.5Tb /var/media/Story_1_5Tb_2
Situação atual
Na SONY, existem os seguintes usuários:
stefano@SONY:/home/plex$ cut -d: -f1 /etc/passwd
root
daemon
[...]
nobody
[...]
stefano
plex
debian-transmission
Esses usuários foram adicionados ao grupo mediaserver
.
stefano@SONY:/home/plex$ getent group mediaserver | awk -F: '{print $4}'
stefano,plex,debian-transmission,daemon,nobody
O armazenamento nativamente no NAS (WDMyDrive) e no disco rígido USB de 1.5Tb (Story_1_5Tb_2) foi montado da seguinte forma:
stefano@SONY:/home/plex$ ls -l
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 2 12:00 story
drwxr-xr-x 2 plex mediaserver 0 Mar 2 10:50 WDMyCloud
stefano@SONY:/home/plex$ ls -l story
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 1 13:40 Shared [A]
drwxr-xr-x 2 plex mediaserver 0 Mar 1 13:40 Shared [B]
drwxr-xr-x 2 plex mediaserver 0 Feb 25 23:02 System Volume Information
-rwxr-xr-x 1 plex mediaserver 0 Feb 28 06:49 temp.ts
drwxr-xr-x 2 plex mediaserver 0 Mar 2 09:49 Shared [C]
drwxr-xr-x 2 plex mediaserver 0 Mar 1 18:19 Shared [D]
stefano@SONY:/home/plex$ ls -l WDMyCloud
total 0
drwxr-xr-x 2 plex mediaserver 0 Feb 24 09:19 Shared [E]
drwxr-xr-x 2 plex mediaserver 0 Feb 21 12:32 Shared [F]
drwxr-xr-x 2 plex mediaserver 0 Feb 21 12:29 Shared [G]
drwxr-xr-x 2 plex mediaserver 0 Nov 20 2016 Shared [H]
[other shares]
O /etc/fstab
da SONY é o seguinte:
GNU nano 2.5.3 File: /etc/fstab
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sdb1 during installation
UUID=6e54f9e7-5579-437b-9e7d-5f76b3fe146e / ext4 errors=remount-ro 0 1
# swap was on /dev/sdb5 during installation
UUID=59f57e49-82e9-4be3-b53a-1a65c0e771ae none swap sw 0 0
# These are the mounts needed to let PLEX find the media shared in WDMyCloud and Story_1.5Tb
#
//WDMyCloud/Public /home/plex/WDMyCloud cifs _netdev,uid=plex,gid=mediaserver,rw,guest 0
#
//WDMyCloud/Story_1_5Tb_2 /home/plex/story cifs _netdev,uid=plex,gid=mediaserver,rw,guest 0
- Eu atribuí propriedade dos compartilhamentos a
uid=plex
para que o PMS pudesse operar no NAS e na HISTÓRIA
- Eu permiti
gid=mediaserver
para que stefano,plex,debian-transmission,daemon,nobody
também pudesse operar
- O mesmo motivo por trás da opção de especificar
rw
(ler e gravar) como uma opção de montagem
O compartilhamento WDMyCloud (montado em /home/plex/WDMyCloud
) corresponde a uma pasta Public
no NAS, da seguinte forma:
WDMyCloud:/DataVolume/shares# ls -l
total 32
drwxrwxrwx+ 12 root share 4096 Mar 2 10:50 Public
drwxrwxrwx+ 2 root share 4096 Mar 8 2017 SmartWare
drwxrwxrwx+ 2 root share 4096 Mar 2 10:39 Stefano
lrwxrwxrwx 1 root share 24 Mar 2 10:43 Story_1_5Tb_2 -> /var/media/Story_1_5Tb_2
drwxrwxrwx+ 2 root share 4096 Mar 8 2017 TimeMachineBackup
O que funciona
- Luz como uma pena, o núcleo do Ubuntu voa como um foguete no meu 4-yo SONY i5.
- A execução em um SO privado de todos não é necessária, o PMS transcodifica e transmite como um encanto. Ele reconheceu perfeitamente os compartilhamentos de rede (tanto o NAS quanto o STORY) e é capaz de operá-los. Quando necessário, ele é capaz de mover, adicionar e excluir arquivos, independentemente de onde eu acessar sua interface da web.
- A rede também é ótima e o PMS transmite para a Internet e fora da minha LAN doméstica.
- Transmissão instalada, o daemon inicia na inicialização e a interface da web é acessível: a partir da interface da web, posso carregar torrents e links magnéticos. Enquanto os carrego, a Transmission acessa a internet e tenta fazer o download.
Ótimo, mas ...
O que não funciona
De alguma forma, não consegui deixar a Transmission escrever na HISTÓRIA.
... então:
- O daemon do Trasmission lança
- a interface da web é acessível a partir da LAN doméstica (sem necessidade de abrir outras portas no meu roteador, por enquanto) e
- posso adicionar torrents, mas ...
... torrents NÃO serão baixados, por causa de uma " Permissão negada ".
Aparentemente, o usuário debian-transmission
(suponho que ele é o cara) não tem permissão para escrever na HISTÓRIA.
O que eu tentei
-
chmod simbólico - > sem sucesso
plex@SONY:/home/plex$ ls -l
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 2 12:00 story
drwxr-xr-x 2 plex mediaserver 0 Mar 2 10:50 WDMyCloud
plex@SONY:/home/plex$ ls -l /home/plex/story
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 1 13:40 Shared [A]
drwxr-xr-x 2 plex mediaserver 0 Mar 1 13:40 Shared [B]
drwxr-xr-x 2 plex mediaserver 0 Feb 25 23:02 System Volume Information
-rwxr-xr-x 1 plex mediaserver 0 Feb 28 06:49 temp.ts
drwxr-xr-x 2 plex mediaserver 0 Mar 2 09:49 Shared [C]
drwxr-xr-x 2 plex mediaserver 0 Mar 1 18:19 Shared [D]
plex@SONY:/home/plex$ sudo chmod -R g+w /home/plex/story
[sudo] password for plex:
plex@SONY:/home/plex$ ls -l
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 2 12:00 story
drwxr-xr-x 2 plex mediaserver 0 Mar 2 10:50 WDMyCloud
plex@SONY:/home/plex$ ls -l /home/plex/story
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 1 13:40 Shared [A]
drwxr-xr-x 2 plex mediaserver 0 Mar 1 13:40 Shared [B]
drwxr-xr-x 2 plex mediaserver 0 Feb 25 23:02 System Volume Information
-rwxr-xr-x 1 plex mediaserver 0 Feb 28 06:49 temp.ts
drwxr-xr-x 2 plex mediaserver 0 Mar 2 09:49 Shared [C]
drwxr-xr-x 2 plex mediaserver 0 Mar 1 18:19 Shared [D]
-
chmod Absolute - > sem sucesso
plex@SONY:/home/plex$ sudo chmod -R 0770 /home/plex/story
plex@SONY:/home/plex$ ls -l
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 2 12:00 story
drwxr-xr-x 2 plex mediaserver 0 Mar 2 10:50 WDMyCloud
-
Eu até tentei setuid - Eu pensei que talvez se a Transmission pudesse ler e executar um arquivo na STORY ele também poderia escrever e deletar se o arquivo tivesse privilégios de proprietário. Foi um tiro longo e, claro ... não funcionou .
plex@SONY:/home/plex$ sudo chmod -R u+s /home/plex/story
plex@SONY:/home/plex$ ls -l
total 0
drwxr-xr-x 2 plex mediaserver 0 Mar 2 12:00 story
drwxr-xr-x 2 plex mediaserver 0 Mar 2 10:50 WDMyCloud
-
Então eu li que poderia ser o sistema de arquivos ntfs do STORY montado com o cifs. Como eu aprendi, aparentemente o Linux geralmente só lê a partir dos sistemas de arquivos ntfs e o ntfs-3g é necessário.
Outra chance, porque eu posso escrever em um sistema de arquivos ntfs ou não. No meu caso, uid=plex
pode escrever, mas os membros de gid=mediaserver
não podem: isso é estranho.
Mas removi a linha Story_1_5Tb_2
de /etc/fstab
e tentou ntfs-3g
- > sem sucesso.
plex@SONY:/home/plex/story$ sudo ntfs-3g //WDMyCloud/Story_1_5Tb_2 /home/plex/story
[sudo] password for plex:
ntfs-3g: Failed to access volume '//WDMyCloud/Story_1_5Tb_2': No such file or directory
ntfs-3g 2015.3.14AR.1 integrated FUSE 28 - Third Generation NTFS Driver
Configuration type 7, XATTRS are on, POSIX ACLS are on
Copyright (C) 2005-2007 Yura Pakhuchiy
Copyright (C) 2006-2009 Szabolcs Szakacsits
Copyright (C) 2007-2015 Jean-Pierre Andre
Copyright (C) 2009 Erik Larsson
Usage: ntfs-3g [-o option[,...]] <device|image_file> <mount_point>
Options: ro (read-only mount), windows_names, uid=, gid=,
umask=, fmask=, dmask=, streams_interface=.
Please see the details in the manual (type: man ntfs-3g).
Example: ntfs-3g /dev/sda1 /mnt/windows
News, support and information: http://tuxera.com
Como o local não mudou, talvez o rtfs-3g não reconheça montagens de rede?
Por que o chmod não está funcionando? ... e por que a montagem com -o gid=mediaserver,rw
não está funcionando?
A unidade STORY é um disco rígido USB, formatado para NTFS e conectado ao NAS. Eu posso acessá-lo e uid=plex
como seu dono tem tudo: ler, executar e escrever. Tudo está conectado dentro de uma LAN com fio (cabeada, não wifi). Eu realmente preciso ser capaz de permitir que Transmission ("uid = debian-transmission") escreva no drive STORY.
O problema é que o uTorrent instalado no Mac Mini no meu quarto ainda pode acessar a HISTÓRIA - por que não a transmissão na SONY? O que estou fazendo errado?