- How to mount a device of gpt type?
- 2 Answers 2
- GPT смонтировать
- Problem mounting GPT disk partition
- How To Add New Disk in Ubuntu 20.04
- Finding the New Hard Drive in Ubuntu
- Ubuntu Disk Partition From Command Line
- Ubuntu Format Disk ext4 from Command Line
- Mount Drive Ubuntu
- Auto Mount Drive Linux
- Conclusion
- If you like what you are reading, please:
- Share this:
How to mount a device of gpt type?
In Linux Mint 18.3 which boots from an HDD, I want to mount an external SSD. When I run the command sudo fdisk -l , I get all the drives and partitions as well as the SSD and when I run sudo blkid , I get the type and UUID of each of them. I know that gpt and mbr are the partition scheme for storage drives and ext4 or other extension of ext are the file system types in linux . However, the type for ssd is mentioned as gpt in the results from the aforementioned commands. I tried to mount the SSD by editing the fstab file in /etc/fstab and adding this line ( I set the mount point as /media/ssd-mountpoint ) : uuid=
gpt is a partition type (vs dos ), and not a file system. Can you share the full out put of fdisk -l /dev/nvme0n1 ? IS this a new disk, or have you used it before on other systems. nvme01n1 is the full disk, if it has been partitioned, and formatted there should be a /dev/nvme01n1p1 as well.
recent versions of fdisk do support gpt, but yes parted might be better to use. I’m not sure what version of fdisk comes with mint 18.3
You cannot mount a disk that has no filesystem on it: first you’ll need to create a filesystem, then you can mount it. For a data disk, it is possible to just use the whole disk for a single filesystem, making partitioning optional. So the order of operations should be: first optionally partitioning and/or LVM, then creating a filesystem (specifying the desired FS type), then mounting it. For a data disk, partitioning is not mandatory but makes it easier to detect that the disk is in use, should the disk be accessed in another system for any reason.
2 Answers 2
First let’s reach to the the description of the first three fields of fstab format, from man fstab :
The following is a typical example of an fstab entry:
LABEL=t-home2 /home ext4 defaults,auto_da_alloc 0 2
The first field (fs_spec). This field describes the block special device or remote filesystem to be mounted.
The second field (fs_file). This field describes the mount point (target) for the filesystem
The third field (fs_vfstype). This field describes the type of the filesystem. Linux supports many filesystem types: ext4, xfs, btrfs, f2fs, vfat, ntfs, hfsplus, tmpfs, sysfs, proc, iso9660, udf, squashfs, nfs, cifs, and many more. For more details, see mount(8).
The first parameter is device identification, it can be either UUID= or /dev/nvme0n1 (or whatever else device name is reported by blkid or lsblk utilities).
The second parameter is the mount point, i.e. where you want the mounted filesystem to appear in your local filesystem, for example /mnt/mydisk , assuming you have created such a directory and it is entirely empty.
Finally, gpt is not a type of filesystem, and that’s what is expected in this field. In the context of fdisk and gdisk utilities, gpt is the partitioning scheme applied to divide the whole of the disk into partitions. This partitioning scheme corresponds to the type of partition table, residing in a (relatively) small block of data, around 1MB, starting at the zero position of the /dev/nvme0 (note, no n1 suffix) device. The actual filesystem is what resides in the n1 partition (just past the partition table), and it will typically have one of the types listed my man fstab
You can use this command sudo fsck -N /dev/nvme0n1 to tell you the filesystem to put there. More specifically this command will tell you which «flavour» of fsck command recognized this filesystem (this way telling you its type, in an roundabout way, e.g. if the filesystem was recognized by fsck.ext4 that means you can put ext4 there)
GPT смонтировать
Дано: внешний HDD с USB интерфейсом. При подключении возникает устройство sdh. На нём, судя по fdisk, GPT. sdh1 не возникает. Как смонтировать винчестер и забрать с него данные?
/dev/sdh: x86 boot sector; partition 1: starthead 0, startsector 1, 4294967295 sectors, extended partition table (last)\011, code offset 0x0
Удостоверься, что в ядре твоего дистрибутива linux включена поддержка GPT, т.е. присутствует опция CONFIG_EFI_PARTITION.
Если её нет, то ядро не поддерживает GPT разметку и устройства с разделами созданы не будут.
Но ты можешь воспользоваться таким скриптом grub rescue no such partition (комментарий) для поиска суперблока файловой системы и её монтирования, только нужно знать тип файловой системы.
kostik87 ★★★★★ ( 23.04.14 22:36:36 MSK )
Последнее исправление: kostik87 23.04.14 22:43:33 MSK (всего исправлений: 2)
cat /boot/config-3.7.10-1.1-desktop|grep EFI
CONFIG_EFI_PARTITION=y
CONFIG_EFI=y
CONFIG_EFI_STUB=y
CONFIG_FB_EFI=y
CONFIG_EFI_VARS=y
Если разделы только что созданы, ну или не только что, но всё равно не видны, но ты уверен, что они там есть, то попробуй вызвать утилиту ‘partprobe’:
kostik87 ★★★★★ ( 23.04.14 23:42:49 MSK )
Последнее исправление: kostik87 23.04.14 23:45:03 MSK (всего исправлений: 1)
gdisk -l /dev/sdh
GPT fdisk (gdisk) version 0.8.5
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Warning! Secondary partition table overlaps the last partition by
4294966385 blocks!
You will need to delete this partition or resize it in another utility.
Disk /dev/sdh: 1565565872 sectors, 746.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 5F659824-6196-4A06-9A94-7B32ADEC5741
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 1565565838
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 5860532223 2.7 TiB 0700
partprobe /dev/sdh
Error: Can’t have a partition outside the disk!
Problem mounting GPT disk partition
$ sudo mount -t ext4 /dev/sda1 disk/ mount: special device /dev/sda1 does not exist
$ dmesg | grep sda [ 1.367508] sd 0:0:0:0: [sda] 5860533168 512-byte logical blocks: (3.00 TB/2.72 TiB) [ 1.367514] sd 0:0:0:0: [sda] 4096-byte physical blocks [ 1.367607] sd 0:0:0:0: [sda] Write Protect is off [ 1.367611] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 [ 1.367654] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 1.367936] sda: [ 1.392417] sd 0:0:0:0: [sda] Attached SCSI disk
$ sudo fdisk -l /dev/sda Disk /dev/sda: 3000.6 GB, 3000592982016 bytes 256 heads, 63 sectors/track, 363376 cylinders Units = cylinders of 16128 * 512 = 8257536 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x00000000 Device Boot Start End Blocks Id System /dev/sda1 1 45423 366283322+ ee GPT Partition 1 does not start on physical sector boundary.
$ sudo parted /dev/sda print Error: /dev/sda: unrecognised disk label
$ cat /boot/config-2.6.32-5-amd64 | grep EFI CONFIG_EFI=y CONFIG_FB_EFI=y CONFIG_EFI_VARS=m CONFIG_CACHEFILES=m # CONFIG_CACHEFILES_DEBUG is not set # CONFIG_CACHEFILES_HISTOGRAM is not set CONFIG_EFI_PARTITION=y
How can I mount this GPT partition? EDIT: I’ve just attached the same disk that is failing to another machine and I can see the contents without a hitch. Putting it back to the original box, I am having the same issue.
How To Add New Disk in Ubuntu 20.04
In this article you will learn how to add new disk in Ubuntu 20.04, how to partition, format disk and mount new disk from command line.
Finding the New Hard Drive in Ubuntu
For this tutorial I attached to my Linux new 20Gb hard drive. To determine the path to the new hard drive run command:
After execute lshw command you will see output like:
$ sudo lshw -C disk -short H/W path Device Class Description ================================================= /0/87/0.0.0 /dev/cdrom disk VMware IDE CDR10 /0/88/0.0.0 /dev/sda disk 53GB Virtual disk /0/88/0.2.0 /dev/sdb disk 21GB Virtual disk
Where is /dev/sdb path to new installed disk.
Now we need partition new disk.
Ubuntu Disk Partition From Command Line
For partitioning we will use gdisk command (for the disks < 2TB can be used fdisk). Lets create new GPT partition on our new /dev/sdb disk.
GPT fdisk (gdisk) version 1.0.5 Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries in memory. Command (? for help):
Output show its blank disk and we don’t have any partition on disk.
If we type “?” and enter, we will see all available options:
b back up GPT data to a file c change a partition's name d delete a partition i show detailed information on a partition l list known partition types n add a new partition o create a new empty GUID partition table (GPT) p print the partition table q quit without saving changes r recovery and transformation options (experts only) s sort partitions t change a partition's type code v verify disk w write table to disk and exit x extra functionality (experts only) ? print this menu
(If your disk is not blank and and have partitions on it you need delete with d command ans save changes with w).
Select “n” to add a new partition
and accept all defaults by pressing “enter”:
Command (? for help): n Partition number (1-128, default 1): First sector (34-41943006, default = 2048) or size: Last sector (2048-41943006, default = 41943006) or size: Current type is 8300 (Linux filesystem) Hex code or GUID (L to show codes, Enter = 8300): Changed type of partition to 'Linux filesystem'
finally press “w” then “y” write table to disk and exit:
Command (? for help): w Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): y OK; writing new GUID partition table (GPT) to /dev/sdb. The operation has completed successfully.
Ubuntu Format Disk ext4 from Command Line
Now we can format disk to ext4 file system using mkfs.ext4 command :
$ sudo mkfs.ext4 /dev/sdb mke2fs 1.45.5 (07-Jan-2020) Found a gpt partition table in /dev/sdb Proceed anyway? (y,N) y Creating filesystem with 5242880 4k blocks and 1310720 inodes Filesystem UUID: ea5ee8eb-178c-4ead-ad35-e0f5302e0b2d Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
Our /dev/sdb disk now formatted as ext4 lets check:
Mount Drive Ubuntu
To manually mount drive in Linux we need create mount:
and mount new disk to mount point /mnt/disk2
$ sudo mount /dev/sdb /mnt/disk2/
Auto Mount Drive Linux
For automatic mount disk in Ubuntu at boot you need edit /etc/fstab file. Ubuntu recommends use in fstab disk UUID instead of path.
To get /dev/sdb disk device UUID type:
/dev/sdb: UUID="205c9347-c533-43e2-a4a8-d92599604977" TYPE="ext4"
Open /etc/fstab with any text editor and add next line:
UUID=205c9347-c533-43e2-a4a8-d92599604977 /mnt/disk2 ext4 defaults 0 1
To apply new /etc/fstab settings run:
Or just reboot your Ubuntu server.
Now you can use new disk /mnt/disk2
Conclusion
In this article you just learn how to add new disk in Ubuntu 20.04, how to format hard drive to Linux est4 file system, how to configure automatic mount at boot.