Вопрос или проблема
Я хочу подключить сетевой диск LAN, к которому я смогу получить доступ из Files/Nautilus сразу после входа в свой рабочий стол Ubuntu.
Я могу сделать это вручную с помощью следующей команды:
sudo mount -t cifs -o user=user,password=***,vers=1.0 //192.168.XX.XX/sda1 /media/sda1/
Если я перезагружаю систему, я теряю расположение файла моего диска и снова выполняю команду вручную. Другой ручной метод, который работает:
Ctrl+L, а затем ввод smb://192.168.XX.XX/sda1/
Вы можете порекомендовать мне учебник, который позволит мне достичь моей цели, или сообщить мне шаги для монтирования этого сетевого диска, который кстати подключен к моему роутеру.
Опция с пользовательским скриптом и crontab
- Создайте .sh скрипт
- Добавьте вашу строку без sudo:
#!/bin/bash
mount -t cifs -o user=user,password=***,vers=1.0 //192.168.XX.XX/sda1 /media/sda1/
- Добавьте привилегии
sudo chmod 700 ./your_script.sh
- Назначьте владельцем root
sudo chown root:root ./your_script.sh
- Измените ваш crontab как пользователь sudo, добавив следующую строку
sudo crontab -e
@reboot sleep 30 && /bin/sh /full_path_to_file/your_script.sh
Описание
Crontab запустит ваш скрипт через 30 секунд после перезагрузки (чтобы избежать ситуации, когда некоторые сервисы «просыпаются», когда вы запускаете скрипт).
Ад. 3 и Ад. 4 – Защитят ваш скрипт, так что только пользователи с правами sudo смогут читать/записывать/выполнять.
Ад. 5 – Используйте sudo crontab
для запуска работ от имени root.
Опция с fstab:
- Создайте файл с учетными данными:
sudo nano /etc/cred_1
username=myUser
password=my$Password!
- Привилегии для чтения/записи
sudo chmod 600 /etc/cred_1
- Откройте fstab и добавьте строку с монтированием cifs
sudo nano /etc/fstab
//192.168.100.100/folder /home/mnt cifs credentials=/etc/cred_1,users,uid=114,gid=1002,file_mode=0770,dir_mode=0770 0 0
- uid,gid – это идентификатор пользователя/группы:
id username
. - file_mode и dir_mode используются, потому что cifs не поддерживает параметр umask.
Ответ или решение
Чтобы настроить постоянное монтирование сетевого диска в Ubuntu 22.04.1 LTS, вы можете воспользоваться двумя методами: при помощи создания скрипта и использования задачи в crontab, а также через файл fstab. Рассмотрим оба варианта подробно.
1. Настройка через скрипт и crontab
Шаг 1: Создание скрипта
Создайте bash-скрипт, который будет выполнять команду монтирования.
#!/bin/bash
mount -t cifs -o user=имя_пользователя,password=ваш_пароль,vers=1.0 //192.168.XX.XX/sda1 /media/sda1/
Шаг 2: Установите права выполнения для скрипта
sudo chmod 700 ./ваш_скрипт.sh
Шаг 3: Передайте права владельца root
sudo chown root:root ./ваш_скрипт.sh
Шаг 4: Настройте crontab для автоматического запуска скрипта при загрузке системы
Откройте crontab для редактирования:
sudo crontab -e
Добавьте следующую строку, чтобы скрипт запускался через 30 секунд после загрузки:
@reboot sleep 30 && /bin/sh /путь_к_скрипту/ваш_скрипт.sh
Описание
Этот метод предусматривает автоматический запуск скрипта через 30 секунд после загрузки системы с целью избежать возможных конфликтов с другими службами, запускающимися при старте.
2. Настройка через файл fstab
Шаг 1: Создайте файл с данными для аутентификации
Создайте файл и укажите имя пользователя и пароль:
sudo nano /etc/cred_1
Вставьте в файл следующие строки:
username=имя_пользователя
password=ваш$пароль
Шаг 2: Установите права доступа к файлу
sudo chmod 600 /etc/cred_1
Шаг 3: Добавьте строку монтирования в fstab
Откройте файл /etc/fstab:
sudo nano /etc/fstab
Добавьте следующую строку для монтирования сетевого диска:
//192.168.XX.XX/sda1 /media/sda1 cifs credentials=/etc/cred_1,uid=ваш_id,gid=ваш_gid,file_mode=0770,dir_mode=0770 0 0
Описание
Использование /etc/fstab
обеспечивает автоматическое монтирование диска при старте системы. Обратите внимание на параметры uid
и gid
, которые нужно заменить на ваши реальные идентификаторы пользователя и группы, чтобы обеспечить корректные права доступа.
Дополнительные советы
- Обязательно замените все шаблонные части (
имя_пользователя
,ваш_пароль
,192.168.XX.XX
и т.д.) на актуальные для вашей конфигурации. - Второй параметр в строке
fstab
указывает точку монтирования, убедитесь, что данная директория существует. - Всегда тестируйте изменения с помощью команды
sudo mount -a
для проверки конфигурации fstab перед перезагрузкой системы.
Следуя этим шагам, вы сможете настроить постоянное монтирование сетевого диска и обеспечить его доступность при каждой загрузке.