Linux Mount Drive: Difference between revisions
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 | |||
== | 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