Как я могу установить Steam игры на внешние диски / точки монтирования с Ubuntu 18.04? (решение найдено)

Возможное решение этой проблемы было дано

Я новичок в Ubuntu, и мне не терпится полностью удалить Windows с моего ПК. Но у меня есть проблема.

Я установил Steam на свой компьютер под управлением Ubuntu 18.04, но я не могу установить игры на другой жесткий диск.

Я уже прошел настройки пара и попытался вручную изменить местоположение, но это ограничивает мои точки установки каталогом /home/someuser. (Он не позволит мне получить доступ к другим областям компьютера.)

Я даже пытался подключить диск к /home/someuser (с правильными параметрами разрешения на чтение и запись). Это не появляется в паре. Тогда я попытался создать тот же каталог через интерфейс установки Steam. Я могу создать папку с тем же именем, к которому подключен диск, но он по-прежнему говорит, что сохраняет на диск, на котором установлена ​​моя сборка Linux (а не на смонтированном диске).

Я также попытался вручную добавить созданную точку монтирования: /media/steamgames (то, что я назвал одной из моих точек монтирования) в Steam. Я получил ошибку разрешения на чтение / запись. (но я изменил разрешение на точку монтирования на 777 и передал право собственности на мой someuser.

Оба диска, на которые я пытаюсь установить, отформатированы как ext4. Кроме того, я попытался сделать постоянное монтирование через /etc/fstab (это тоже не сработало.).

Монтирование папки в домашнюю папку

Когда я пытаюсь добавить папку, все, что доступно, это папки в домашней папке. dir. Когда я пытаюсь добавить папку с тем же именем, что и подключенный диск, или добавить точку /media, я получаю эту ошибку:

failed to create a folder, this drive is read-only.

Это изменения, которые я сделал в /etc/fstab:

#Entry for /dev/sdd1
UUID=ebd692b7-333f-4c60-9031-624a97b07b5d /media/Steam ext4 rw,users,exec,auto 0 0

  #Entry for /dev/sdc2 :
  UUID=0d688471-2966-4fe7-af74-d639e83f224b /home/cory/1.0TB-Hard-Disk         ext4 rw,users,exec,auto 0 0

Ls -la в моем домашнем каталоге

cory@Cory-MS-7A38:~$ ls -la
total 208
drwxr-xr-x 31 cory cory  4096  四  16 20:36 .
drwxr-xr-x  3 root root  4096  一  13 14:09 ..
drwxrwxrwx  4 cory cory  4096  四  15 22:21 1.0TB-Hard-Disk

Вот изображение того, что я вижу в своей галерее Steam. Как уже говорилось, я уже пытался добавить диск, который я смонтировал на /home/cory/1.0TB-Hard-Disk. Но, видимо, что-то не так, потому что на нем только 3 гигабайта.

0
задан 19 April 2019 в 08:54

2 ответа

В конце концов, я выяснил причину проблемы.

Steam (или, по крайней мере, моя версия Steam) устанавливается вместе с Flatpak. Flatpak фактически не имеет доступа к файловой системе каталога / home. он создает среду песочницы в Home/user/.var/app/com.valvesoftware.Steam

Чтобы вручную переопределить это, я создал точку монтирования за пределами /home (ВАЖНО ДЕЛАТЬ ЭТО ВНЕ ДОМА ИЛИ МОЖЕТ БЫТЬ МЕНЬШЕ ЧТО-ТО) Я назвал свой точка монтирования /media/1.0TB-Hard-Disk

Затем

flatpak override --user --filesystem=/media/1.0TB-Hard-Disk com.valvesoftware.Steam

Дополнительную информацию об этом можно найти здесь: https://github.com/flathub/com .valvesoftware.Steam / вики / Часто задаваемые вопросы [-114]

0
ответ дан 19 April 2019 в 08:54

Из вашего описания сложно определить, что вызывает permission error. Итак, вот что вы можете попробовать:

Смонтировать внешний диск для нового пользователя

Добавить внешний диск в /etc/fstab и смонтировать его на дом нового пользователя:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>    
UUID=0d688471-2966-4fe7-af74-d639e83f224b /home/steamuser ext4 rw 0 0

Затем создайте папку и пользователя:

$ sudo mkdir -p /home/steamuser
$ sudo adduser steamuser
Adding user `steamuser' ...
Adding new group `steamuser' (1001) ...
Adding new user `steamuser' (1001) with group `steamuser' ...
The home directory `/home/steamuser' already exists.  Not copying from `/etc/skel'.
adduser: Warning: The home directory `/home/steamuser' does not belong to the user you are currently creating.
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Changing the user information for steamuser
Enter the new value, or press ENTER for the default
    Full Name []: 
    Room Number []: 
    Work Phone []: 
    Home Phone []: 
    Other []: 
Is the information correct? [Y/n]

## Copy skeleton
$ sudo cp -Tr /etc/skel /home/steamuser

## Set owner and group
$ sudo chown -R steamuser:steamuser /home/steamuser/

## should look like this:
$ ls -la /home/steamuser/
total 48
drwxr-xr-x 3 steamuser steamuser  4096 Apr 17 17:06 .
drwxr-xr-x 5 root      root       4096 Apr 17 17:00 ..
-rw-r--r-- 1 steamuser steamuser   220 Apr 17 17:06 .bash_logout
-rw-r--r-- 1 steamuser steamuser  3771 Apr 17 17:06 .bashrc
-rw-r--r-- 1 steamuser steamuser  8980 Apr 17 17:06 examples.desktop
drwx------ 2 steamuser steamuser 16384 Apr 17 16:59 lost+found
-rw-r--r-- 1 steamuser steamuser   807 Apr 17 17:06 .profile

Затем войдите (через GUI) как steamuser, установите и запустите steam. Не копируйте вещи из своего старого дома, возможно, это является частью проблемы.

0
ответ дан 19 April 2019 в 08:54

Другие вопросы по тегам:

Похожие вопросы: