Монтирование дисков в Linux

Монтирование дисков в Linux 

  1. Список дисков
  2. Список разделов с UUID
  3. Задать метку разделу
  4. Монтирование диска
  5. Монтирование CD/DVD-ROM
  6. Монтирование ISO-образа
  7. Монтирование сетевых дисков SMB
  8. Монтируем сетевой диск через SSH
  9. Монтирование FTP
  10. Монтирование на постоянной основе через fsab

 

Список дисков

$ sudo fdisk -l

Показывает все подключенные устройства.

 
Пример вывода
Disk /dev/sdb: 40 GiB, 42949672960 bytes, 83886080 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xa0fced0d

Device     Boot Start      End  Sectors Size Id Type
/dev/sdb1       2048 83886079 83884032  40G 83 Linux

Disk /dev/sda: 8 GiB, 8589934592 bytes, 16777216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x7cded649

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sda1          2048 15988735 15986688  7.6G 83 Linux
/dev/sda2      15990782 16775167   784386  383M  5 Extended
/dev/sda5      15990784 16775167   784384  383M 82 Linux swap / Solaris

Disk /dev/sdd: 69.1 MiB, 72482816 bytes, 141568 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

 

Список разделов с UUID

$ sudo blkid -o list
 
Привет вывода
device                  fs_type    label       mount point                  UUID
-----------------------------------------------------------------------------------------------------------------
/dev/sda1               ext4                   /                            6f7b5cc1-7ceb-46de-a372-b432561a6ea4
/dev/sda5               swap                   <swap>                       2fc0af49-024e-4fb2-9086-0ce37226f8c8
/dev/sdb1               ext4                   /media/xvdb1                 7c974e1c-c52f-4505-8b6f-f134cbda79aa
/dev/cdrom              iso9660                /mnt                         2016-08-22-05-30-52-00
​$ ls -l /dev/disk/by-uuid
 
Пример вывода 
total 0
lrwxrwxrwx 1 root root 10 Jun 16 14:22 2016-08-22-05-30-52-00 -> ../../sdd
lrwxrwxrwx 1 root root 11 Jun 16 14:22 2fc0af49-024e-4fb2-9086-0ce37226f8c8 -> ../../sda5
lrwxrwxrwx 1 root root 11 Jun 16 14:22 6f7b5cc1-7ceb-46de-a372-b432561a6ea4 -> ../../sda1
lrwxrwxrwx 1 root root 11 Jun 16 14:22 7c974e1c-c52f-4505-8b6f-f134cbda79aa -> ../../sdb1

 

Задать метку разделу

$ sudo e2label /dev/sda1 Debian

 

Монтирование диска

$ sudo mount /dev/sdb1 /home/user/drive

Размонтирование диска

$  sudo umount /dev/sdb1

 

Монтирование CD/DVD-ROM

$ sudo mount -t iso9660 -o ro /dev/cdrom /cd

 

Монтирование ISO-образа

$ sudo mount -t iso9660 -o loop /home/file.iso /home/iso

 

Монтирование сетевых дисков SMB

$ sudo mount -t smbfs -o username=user,password="pa$$word" //192.168.0.10/download /home/user/download
$ sudo mount -t smbfs -o guest,iocharset=utf8 //192.168.0.10/download /home/user/download

Для Window нужно использовать протокол CIFS

$ sudo mount -t cifs -o guest //192.168.0.10/download /home/user/download

 

Монтируем сетевой диск через SSH

sudo apt-get install sshfs
sudo mkdir /home/user/remote-ssh
sudo sshfs user@192.168.0.10:/path/on/remote/ /home/user/remote-ssh
# Или по SSH ключу:
sudo sshfs -o IdentityFile = ~/.ssh/id_rsa user@192.168.0.10:/path/on/remote/ /home/user/remote-ssh
$  df -h
Filesystem                    Size  Used Avail Use% Mounted on
udev                          7,8G     0  7,8G   0% /dev
tmpfs                         1,6G   34M  1,6G   3% /run
tmpfs                         7,8G  225M  7,6G   3% /dev/shm
tmpfs                         5,0M  4,0K  5,0M   1% /run/lock
tmpfs                         7,8G     0  7,8G   0% /sys/fs/cgroup
/dev/sda1                     596M   26M  571M   5% /boot/efi
/dev/sda3                     110G   96G  7,7G  93% /
/dev/sdb1                     917G   17G  854G   2% /mnt/sdb1
tmpfs                         1,6G  140K  1,6G   1% /run/user/1000
user@192.168.0.10:/home/user  7,4G  2,7G  4,4G  38% /home/user/remote-ssh

 

 Монтируем сетевой диск по FTP

Иногда очень удобно работать с удаленным FTP просто как с файловой системой. Вэтом нам поможет утилита curlftpfs.

Устанавливаем curlftpfs:

$ sudo apt-get update
$ sudo apt-get install curlftpfs

Создаем точку монтирования, если необходимо:

$ sudo mkdir /mnt/ftp

Монтируем:

$ sudo curlftpfs ftp-user:ftp-password@site.com /mnt/ftp/

Монтируем на постоянной основе, используя /etc/fstab. Для этого добавим строчку:

curlftpfs#ftp-user:ftp-password@site.com /mnt/ftp fuse allow_other,uid=1000,gid=1000,umask=0022 0 0

Если держать пароль в /etc/fstab не хочется, можно перенести данные авторизации в .netrc

$ sudo nano /root/.netrc

В него добавляем:

machine site.com
login ftp-user
password ftp-password
Устанавливаем права:
$ sudo chmod 600 /root/.netrc

Монтируем  все файловые системы, указанные в fstab и проверяем:

$ sudo mount -a
$ df -h
 
Пример вывода df -h
Filesystem                 Size  Used Avail Use% Mounted on
/dev/sda1                  7.4G  4.4G  2.7G  63% /
udev                       10M     0   10M   0% /dev
tmpfs                      202M   28M  174M  14% /run
tmpfs                      503M     0  503M   0% /dev/shm
tmpfs                      5.0M     0  5.0M   0% /run/lock
tmpfs                      503M     0  503M   0% /sys/fs/cgroup
curlftpfs#ftp://site.com/  954G     0  954G   0% /mnt/ftp

 

Обращаю внимание, что не смотря на плюсы, есть и минусы. Например Размер доступного и занятого объема носителя определяется неверно.

 

Монтирование на постоянной основе через fsab

$ sudo nano /etc/fstab
 
Пример файла fstab
# <file system>                              <dir>         <type>    <options>    <dump> <pass>
/dev/sda1                                    /             ext4      defaults     1      1
/dev/sdb1                                    /media        ext4      defaults     1      1
/dev/sda5                                    swap          swap      defaults     0      0
/dev/cdrom                                   /mnt          iso9660   defaults     0      0

# HDD
UUID=7c974e1c-c52f-4505-8b6f-f134cbda79aa    /usr          ext4      defaults     0      1

# FTP
curlftpfs#site.com /mnt/ftp fuse allow_other,uid=1000,gid=1000,umask=0022 0 0

# SSH
sshfs#user@192.168.0.10:/path/om/remote /home/remote-ssh fuse.sshfs defaults 0 0

Перемонтирование всех разделов из /etc/fstab без перезагрузки системы.

$ sudo mount -a

 

Теги: Linux, hint

Комментарии (0)