Як автоматизувати файлову систему gvfs при вході


18

Я налаштував віддалену папку в nautilus. Я завжди потрібна ця віддалена папка, тому я створив символічне посилання на нього в моїй домашній папці: ln -s ~/.gvfs/remote_folder ~/remote_folder.

Хоча, коли я вперше завантажую комп'ютер, ця папка не змонтована, і я маю доступ до неї через nautilus, щоб мати доступну в ній ~/remote_folder.

Що мені робити, щоб ця папка була ввімкнена для входу?

Відповіді:


17

Оболонка

Ви можете використовувати mountкоманду в сценарії запуску і помістити її в налаштування програми запуску . mountчудово здатний монтувати віддалені файлові системи (якщо ви надали правильні параметри та встановлені всі необхідні пакети).

Альтернативою монтування у вашому сценарії запуску є gvfs-mount Встановіть gvfs-bin . Ви можете встановити URI типу nautilus, як і nautilus. Він встановлений за замовчуванням у більшості систем Ubuntu.
Приклад використання:

gvfs-mount 'ftp://user@www.your-server.com/folder'

Додавання -uпараметра відключає аргумент, -lперераховує всі змонтовані файлові системи, --helpдає більше можливостей.

Нарешті, файл /etc/fstabзазвичай використовується для статичного монтажу файлових систем. Якщо ваш віддалений сервер є надійним, ви можете поглянути на fstab . Це різко сповільнить ваш час завантаження, якщо сервер повільний або в автономному режимі, але це має перевагу в тому, щоб забезпечити доступність файлової системи досить скоро (перш ніж gnome або X навіть завантажуються, наприклад, для використання в скриптах). Для отримання додаткової інформації ви можете ввести man fstab.

GUI шлях

Ознайомтесь з Жиголо Встановіть gigolo . Він має можливість автоматичного монтажу закладок, коли є наявна файлова система закладок.

sudo apt-get install gigolo   # or use the install link above

Біжи gigolo. У налаштуваннях є опція, яка вводить її в режим автоматичного запуску, а інша - для активації піктограми лотка. Перевірте обидва. Потім додайте закладку.

Жиголо використовувався для автоматичного монтажу


Дякую за відповідь. Я точно з нетерпінням чекав, щоб знайти це останнє більш зручне та ресурсомістке рішення. Хоча я раджу іншим людям, що вони, можливо, мають це питання, щоб прочитати всі відповіді та добре подумати над тим, що краще відповідає їх потребам.
Педро Роло

невеликий помилок: / etc / fsatab повинен бути / etc / fstab
djb

4

Спочатку встановіть пакет gvfs-bin:

sudo apt-get install gvfs-bin

потім змонтуйте потрібний URI. Наприклад:

gvfs-mount 'archive://file%253A%252F%252F%252Ftmp%252Ftest.tar/'

перевірити це:

ls -la ~/.gvfs/test.tar/

щоб його відключити, просто зателефонуйте:

gvfs-mount -u 'archive://file%253A%252F%252F%252Ftmp%252Ftest.tar/'

Зауважте, що сторінок немає для цього пакета. Щоб дізнатися більше, перерахуйте доступні бінарні файли за допомогою:

dpkg -L gvfs-bin

а потім скористайтеся опцією --help, наприклад:

gvfs-mount --help

1
Варто зазначити, що в пізніших версіях змонтований каталог закінчиться в /run/user/<uid>/gvfs/test.tar/. Див. Як отримати доступ до файлів gvfs з командного рядка?
Грег

2

Якщо ви не хочете користуватися /etc/fstab(наприклад, погано на багатокористувацьких ПК, немає доступу до кореня) або не хочете зберігати свій пароль користувача у текстовому файлі у вашій домашній папці (наприклад, у зашифрованій файловій системі) за допомогою gvfs-mount smb://$SERVERIP/$SHARE < ~/.smbcredentials_gvfs,

запустіть цей скрипт оболонки при запуску (або коли завгодно):

#!/bin/bash
USERID=`id -u $USER`; # Needed in 14.04
SHARE=exampleshare # Example
SERVERIP=192.168.2.101 # Example
nautilus smb://$SERVERIP/$SHARE & # Mount the share using nautilus. You need to have your password saved permanently
rm ~/network_$SHARE # prepare symbolic link (Example)
ln -sf /run/user/$USERID/gvfs/smb-share\:server\=$SERVERIP\,share\=$SHARE ~/network_$SHARE # Directory in Ubuntu 14.04
sleep 2 # Nautilus needs some time to mount. Killing nautilus without waiting time does not mount the share
pkill nautilus

Це змонтує потрібні спільні папки та використовує механізм збереження паролів nautilus (або Ubuntu) (не працює в SSH).


З усіх відповідей ця єдина, яка насправді стосується питання.
Luís de Sousa

2

Я зазвичай роблю постійні кріплення через fstab. Ви повинні ввести щось подібне

//servername/folder HOME/remote_server cifs username=XXXX,password=YYYY 0 0

у вашому /etc/fstab. Оскільки ви нічого не сказали про те, який саме віддалений розділ я наводив прикладsamba share

Побачити:

Другим варіантом може бути використання автофайлів , див . Довідку на сторінці wiki довідки Ubuntu .

EDIT: Дякую @ con-f-use, що нагадали мені цю. Ви можете додавати закладки лише з nautilus. Перейдіть у меню Файл> Підключитися до сервера ... на nautilus, і вам відкриється вікно діалогу, де ви можете додати закладку потрібного імені. Просто перевірте опцію Додати закладку та введіть назву закладок. Але я думаю, що він починає монтаж лише після того, як ви натиснете закладку на відміну від gigolo.

введіть тут опис зображення


1
Це має недолік у затримці завантаження вашої системи, коли віддалений сервер недоступний (відключення Інтернету, розрив підтримки та ін.)
con-f-use

1
Ви можете помістити облікові дані в окремий файл, який може читати тільки root (часто користувачі, що не користуються коренем, можуть читати / etc / fstab і, таким чином, бачити користувальницькі / паролі, що зберігаються там). Використовуйте облікові дані = / root / remove_server.credentials, де у цього файлу є два рядки, ім'я користувача = userid пароль = userids-password
djb
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.