Linux Mount Drive: Difference between revisions

From Chorke Wiki
Jump to navigation Jump to search
 
(63 intermediate revisions by the same user not shown)
Line 6: Line 6:
  lsblk
  lsblk
  findmnt
  findmnt
  ──────────────────────────────────────────────────
  ───────────────────────────────────────────────
  findmnt /
  findmnt /
   
   
Line 24: Line 24:


|}
|}
==Formate==
<source lang="bash" highlight="6,20,22,24,29">
gdisk /dev/sdb
:"
GPT fdisk (gdisk) version 1.0.3


==Good To Know==
Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present
 
 
***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by
typing 'q' if you don't want to convert your MBR partitions
to GPT format!
***************************************************************
 
 
Command (? for help): o
This option deletes all partitions and creates a new protective MBR.
Proceed? (Y/N): Y
 
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.
"
</source>
----
<source lang="bash" highlight="6,9,13,18,26,31,36">
gdisk /dev/sdb
:"
GPT fdisk (gdisk) version 1.0.3
 
Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present
 
Found valid GPT with protective MBR; using GPT.
 
Command (? for help): v
 
No problems found. 7814037101 free sectors (3.6 TiB) available in 1
segments, the largest of which is 7814037101 (3.6 TiB) in size.
 
Command (? for help): n
Partition number (1-128, default 1): 1
First sector (34-7814037134, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-7814037134, default = 7814037134) or {+-}size{KMGTP}:
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): 8300
Changed type of partition to 'Linux filesystem'
 
Command (? for help): v
 
No problems found. 2014 free sectors (1007.0 KiB) available in 1
segments, the largest of which is 2014 (1007.0 KiB) in size.
 
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.
"
</source>
----
<source lang="bash">
mkfs.ext4 /dev/sdb1
mkdir -p /nas/nas_00
chmod 775 /nas/nas_00
mount /dev/sdb1 /nas/nas_00
</source>
 
<source lang="bash">
lsblk
:"
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk
├─sda1  8:1    0  256M  0 part /boot
└─sda2  8:2    0 465.5G  0 part /
sdb      8:16  0  3.7T  0 disk
└─sdb1  8:17  0  3.7T  0 part /nas/nas_00
"
</source>
 
==Auto Mount==
<source lang="bash">
blkid
:'
/dev/sda1: LABEL_FATBOOT="boot" LABEL="boot" UUID="6284-658D" TYPE="vfat" PARTUUID="d8d2ce21-01"
/dev/sda2: LABEL="rootfs" UUID="3a324232-335f-4617-84c3-d4889840dc93" TYPE="ext4" PARTUUID="d8d2ce21-02"
/dev/sdb1: UUID="d585a513-6325-450d-95d8-7c7f1d56f08e" TYPE="ext4" PARTLABEL="nas0" PARTUUID="387a56e5-25a9-4953-8d50-00c2d6ad6539"
'
</source>
'''fstab entry might be like below:'''
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    auto,nofail,x-systemd.device-timeout=30  0      0
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    nofail,x-systemd.device-timeout=30  0      0
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    auto,nofail,noatime,rw,user  0      0
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl  0      2
 
<source lang="bash">
cat /etc/fstab
:"
proc            /proc          proc    defaults          0      0
PARTUUID=d8d2ce21-01  /boot          vfat    defaults          0      2
PARTUUID=d8d2ce21-02  /              ext4    defaults,noatime  0      1
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    auto,nofail,noatime,rw,user  0      0
# a swapfile is not a swap partition, no line here
#  use  dphys-swapfile swap[on|off]  for that
"
</source>
 
<source lang="bash">
mount -a
findmnt --verify
findmnt --verify --verbose
findmnt --verify --tab-file /etc/fstab --verbose
</source>
 
<source lang="bash">
lsblk
:"
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk
├─sda1  8:1    0  256M  0 part /boot
└─sda2  8:2    0 465.5G  0 part /
sdb      8:16  0  3.7T  0 disk
└─sdb1  8:17  0  3.7T  0 part /nas/nas_00
"
</source>
 
==Mounting==
{|
{|
| valign="top" |
| valign="top" |
  ──────────────────────────────────────────────────
  '''mount'''
───────────────────────────────────────────────
lsblk
mkdir /mnt/chorke
mount /dev/sda2 /mnt/chorke/
ls -lah /mnt/chorke/
 
| valign="top" |
'''unmount'''
───────────────────────────────────────────────
lsblk
umount /mnt/chorke/
ls -lah /mnt/chorke/
rm -rf /mnt/chorke/
 
|}
 
==Unmounting==
{|
| valign="top" |
'''udisks2''' (new system)
───────────────────────────────────────────────
lsblk
udisksctl unmount -b /dev/sda1
udisksctl power-off -b /dev/sda
 
| valign="top" |
'''udisks''' (old system)
───────────────────────────────────────────────
lsblk
udisks --unmount /dev/sda1
udisks --detach /dev/sda
 
|}
 
==Resize Volume Group==
1. '''unmount:'''
    sudo umount /dev/mmcblk0p3
2. '''resize:''' physical volume
    sudo pvresize /dev/mmcblk0p3
3. '''validate:''' physical volume size
    sudo pvs
4. '''resize:''' logical volume
    sudo lvresize -L +20480 fedora_fedora/root /dev/mmcblk0p3
    sudo lvresize -L +20G fedora_fedora/root /dev/mmcblk0p3
    sudo lvresize -l +100%FREE /dev/fedora_fedora/root
    df -h /
    sudo xfs_growfs /dev/fedora_fedora/root
    sudo resize2fs /dev/fedora_fedora/root
5. '''validate:''' logical volume size
    sudo lvs
    df -h /
6. '''remount:'''
    sudo mount -a
 
==Knowledge==
{|
| valign="top" |
───────────────────────────────────────────────
  apt update
  apt update
  apt install lshw
  apt install lshw
apt install fuse3
apt install eject
  apt install gdisk
  apt install gdisk
apt install rsync
  apt install hdparm
  apt install hdparm
  apt install ntfs-3g
  apt install ntfs-3g
apt install udisks2
apt install progress
apt install nfs-common
  cat /proc/mounts
  cat /proc/mounts
  mount|grep ^/dev
  mount|grep ^/dev
  ls -la /mnt/
  ls -la /mnt/
mount -a
mv /opt/finology/ /nas/nas_00/
ln -s /nas/nas_00/finology /opt/finology
chown -h pi:pi /opt/finology


| valign="top" |
| valign="top" |
  ──────────────────────────────────────────────────
  ───────────────────────────────────────────────
rsync -r --progress source target
udisksctl unmount -b /dev/sda1
lsblk -o NAME,FSTYPE,UUID
  cat /proc/self/mounts
  cat /proc/self/mounts
  hdparm -N /dev/sda
  hdparm -N /dev/sda
watch progress -w
  ls -la /dev/sda*
  ls -la /dev/sda*
eject /dev/dvd
parted -l
  fdisk -l
  fdisk -l
  mount -l
  mount -l
  df -aTh
  df -aTh
df -hT
  mount
  mount
  lshw
  lshw
sudo parted -l|grep ntfs
sudo mkdir  /mnt/e-drive
sudo mount -t ntfs-3g /dev/nvme0n1p5 /mnt/e-drive
|}
|}
==SD Clone==
apt search piclone
apt install piclone
./sdclone /dev/sda /dev/mmcblk0
./sdclone /dev/sda /dev/macblk0
==RPI Clone==
'''If sda size more than 2TB'''
git clone https://github.com/billw2/rpi-clone.git; cd rpi-clone
cp rpi-clone rpi-clone-setup /usr/local/sbin
rpi-clone-setup -t testhostname
rpi-clone -f -p 256M sda


==References==
==References==
{|
| valign="top" |
* [https://askubuntu.com/questions/583909 How do I check where devices are mounted?]
* [https://askubuntu.com/questions/583909 How do I check where devices are mounted?]
* [https://unix.stackexchange.com/questions/178638 Eject or Safely Remove vs Unmount]
* [https://askubuntu.com/questions/46588 Auto mount NTFS partitions]
* [https://askubuntu.com/questions/164926 Auto mount at startup]
* [https://unix.stackexchange.com/questions/387129 Safely remove drive]
* [https://unix.stackexchange.com/questions/35508 Eject USB drives]
* [https://manpages.ubuntu.com/findmnt.8 findmnt]
* [https://manpages.ubuntu.com/findmnt.8 findmnt]
* [https://manpages.ubuntu.com/mount.8 mount]
* [https://manpages.ubuntu.com/mount.8 mount]
* [https://manpages.ubuntu.com/lsblk.8 lsblk]
* [https://manpages.ubuntu.com/lsblk.8 lsblk]
* [https://manpages.ubuntu.com/df.1 df]
* [https://manpages.ubuntu.com/df.1 df]
| valign="top" |
* [https://superuser.com/questions/228657/which-linux-filesystem-works-best-with-ssd#:~:text=Filesystem%20EXT4%20+%20TRIM Best SSD File System for Linux is EXT4 + TRIM]
* [https://unix.stackexchange.com/questions/3158 HDD partition naming convention in Linux]
* [https://unix.stackexchange.com/questions/7051 Remount a USB Hard drive from Nautilus]
* [https://unix.stackexchange.com/questions/252822 Difference between <code>/mnt</code> vs <code>/media</code>]
* [https://unix.stackexchange.com/questions/483708 Power On a USB Hard drive after it Off]
* [https://unix.stackexchange.com/questions/110250/ Copy a folder with a Progress Bar]
* [https://www.raspberrypi.org/forums/viewtopic.php?t=22957 Mount a NTFS USB Hard drive]
* [https://unix.stackexchange.com/questions/3575 Display transfer speed in Bash]
* [https://blog.westerndigital.com/ssd-endurance-speeds-feeds-needs/#:~:text=Terabytes%20Written%20(TBW) Terabytes Written (TBW)]
* [https://help.ubuntu.com/community/Fstab Fstab File Configuration]
| valign="top" |
* [https://raspberrypi.stackexchange.com/questions/106090/ Does Raspberrypi 4 support boot from GPT partitioned Disk]
* [https://unix.stackexchange.com/questions/347013/ <code>fstab</code> meaning of <code>noauto,nofail,user,noatime</code>]
* [https://developer.ibm.com/technologies/linux/tutorials/l-gpt/ Make the most of large drives with GPT and Linux]
* [https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh Mount Remote File Systems Over SSH]
* [https://www.tomshardware.com/how-to/boot-raspberry-pi-4-usb Boot Raspberry Pi 4 From a USB SSD]
* [https://docs.microsoft.com/en-us/windows-server/storage/disk-management/change-an-mbr-disk-into-a-gpt-disk Convert an MBR disk into a GPT disk]
* [https://serverfault.com/questions/174181/ Validate fstab without rebooting]
* [https://blog.sleeplessbeastie.eu/2019/01/21/how-to-verify-fstab-file/ Verify fstab file]
* [https://github.com/billw2/rpi-clone RPI Clone]
* [https://wiki.archlinux.org/index.php/GPT_fdisk GPT fdisk]
|-
| colspan="3" |
----
|-
| valign="top" |
* [https://forum.openmediavault.org/index.php?thread/20727-can-t-create-shared-folders/ Can't Create Shared Folders]
* [https://linuxroutes.com/extend-linux-mount-point/ Extend Linux Mount Point]
| valign="top" |
| valign="top" |
|}

Latest revision as of 23:24, 20 January 2023

mount
df
lsblk
findmnt
───────────────────────────────────────────────
findmnt /

TARGET SOURCE         FSTYPE OPTIONS
/      /dev/mmcblk0p2 ext4   rw,noatime
lsblk

NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda           8:0    0  3.7T  0 disk 
├─sda1        8:1    0  128M  0 part 
└─sda2        8:2    0  3.7T  0 part 
mmcblk0     179:0    0 59.6G  0 disk 
├─mmcblk0p1 179:1    0  256M  0 part /boot
└─mmcblk0p2 179:2    0 59.4G  0 part /

Formate

gdisk /dev/sdb
:"
GPT fdisk (gdisk) version 1.0.3

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by
typing 'q' if you don't want to convert your MBR partitions
to GPT format!
***************************************************************


Command (? for help): o
This option deletes all partitions and creates a new protective MBR.
Proceed? (Y/N): Y

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.
"

gdisk /dev/sdb
:"
GPT fdisk (gdisk) version 1.0.3

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): v

No problems found. 7814037101 free sectors (3.6 TiB) available in 1
segments, the largest of which is 7814037101 (3.6 TiB) in size.

Command (? for help): n
Partition number (1-128, default 1): 1
First sector (34-7814037134, default = 2048) or {+-}size{KMGTP}: 
Last sector (2048-7814037134, default = 7814037134) or {+-}size{KMGTP}: 
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): 8300
Changed type of partition to 'Linux filesystem'

Command (? for help): v

No problems found. 2014 free sectors (1007.0 KiB) available in 1
segments, the largest of which is 2014 (1007.0 KiB) in size.

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.
"

mkfs.ext4 /dev/sdb1
mkdir -p /nas/nas_00
chmod 775 /nas/nas_00
mount /dev/sdb1 /nas/nas_00
lsblk
:"
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   256M  0 part /boot
└─sda2   8:2    0 465.5G  0 part /
sdb      8:16   0   3.7T  0 disk 
└─sdb1   8:17   0   3.7T  0 part /nas/nas_00
"

Auto Mount

blkid
:'
/dev/sda1: LABEL_FATBOOT="boot" LABEL="boot" UUID="6284-658D" TYPE="vfat" PARTUUID="d8d2ce21-01"
/dev/sda2: LABEL="rootfs" UUID="3a324232-335f-4617-84c3-d4889840dc93" TYPE="ext4" PARTUUID="d8d2ce21-02"
/dev/sdb1: UUID="d585a513-6325-450d-95d8-7c7f1d56f08e" TYPE="ext4" PARTLABEL="nas0" PARTUUID="387a56e5-25a9-4953-8d50-00c2d6ad6539"
'
fstab entry might be like below:
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    auto,nofail,x-systemd.device-timeout=30  0       0
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    nofail,x-systemd.device-timeout=30  0       0
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    auto,nofail,noatime,rw,user  0       0
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl  0       2
cat /etc/fstab
:"
proc            /proc           proc    defaults          0       0
PARTUUID=d8d2ce21-01  /boot           vfat    defaults          0       2
PARTUUID=d8d2ce21-02  /               ext4    defaults,noatime  0       1
PARTUUID=387a56e5-25a9-4953-8d50-00c2d6ad6539  /nas/nas_00      ext4    auto,nofail,noatime,rw,user  0       0
# a swapfile is not a swap partition, no line here
#   use  dphys-swapfile swap[on|off]  for that
"
mount -a
findmnt --verify
findmnt --verify --verbose
findmnt --verify --tab-file /etc/fstab --verbose
lsblk
:"
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   256M  0 part /boot
└─sda2   8:2    0 465.5G  0 part /
sdb      8:16   0   3.7T  0 disk 
└─sdb1   8:17   0   3.7T  0 part /nas/nas_00
"

Mounting

mount
───────────────────────────────────────────────
lsblk
mkdir /mnt/chorke
mount /dev/sda2 /mnt/chorke/
ls -lah /mnt/chorke/
unmount
───────────────────────────────────────────────
lsblk
umount /mnt/chorke/
ls -lah /mnt/chorke/
rm -rf /mnt/chorke/

Unmounting

udisks2 (new system)
───────────────────────────────────────────────
lsblk
udisksctl unmount -b /dev/sda1
udisksctl power-off -b /dev/sda
udisks (old system)
───────────────────────────────────────────────
lsblk
udisks --unmount /dev/sda1
udisks --detach /dev/sda

Resize Volume Group

1. unmount: 
   sudo umount /dev/mmcblk0p3

2. resize: physical volume
   sudo pvresize /dev/mmcblk0p3

3. validate: physical volume size
   sudo pvs

4. resize: logical volume
   sudo lvresize -L +20480 fedora_fedora/root /dev/mmcblk0p3
   sudo lvresize -L +20G fedora_fedora/root /dev/mmcblk0p3
   sudo lvresize -l +100%FREE /dev/fedora_fedora/root

   df -h /
   sudo xfs_growfs /dev/fedora_fedora/root
   sudo resize2fs /dev/fedora_fedora/root

5. validate: logical volume size
   sudo lvs
   df -h /

6. remount:
   sudo mount -a

Knowledge

───────────────────────────────────────────────
apt update
apt install lshw
apt install fuse3
apt install eject
apt install gdisk
apt install rsync
apt install hdparm
apt install ntfs-3g
apt install udisks2
apt install progress
apt install nfs-common
cat /proc/mounts
mount|grep ^/dev
ls -la /mnt/
mount -a
mv /opt/finology/ /nas/nas_00/
ln -s /nas/nas_00/finology /opt/finology 
chown -h pi:pi /opt/finology
───────────────────────────────────────────────
rsync -r --progress source target
udisksctl unmount -b /dev/sda1
lsblk -o NAME,FSTYPE,UUID
cat /proc/self/mounts
hdparm -N /dev/sda
watch progress -w
ls -la /dev/sda*
eject /dev/dvd
parted -l
fdisk -l
mount -l
df -aTh
df -hT
mount
lshw
sudo parted -l|grep ntfs
sudo mkdir  /mnt/e-drive
sudo mount -t ntfs-3g /dev/nvme0n1p5 /mnt/e-drive

SD Clone

apt search piclone
apt install piclone
./sdclone /dev/sda /dev/mmcblk0
./sdclone /dev/sda /dev/macblk0

RPI Clone

If sda size more than 2TB
git clone https://github.com/billw2/rpi-clone.git; cd rpi-clone
cp rpi-clone rpi-clone-setup /usr/local/sbin
rpi-clone-setup -t testhostname
rpi-clone -f -p 256M sda

References