Once it clicks you’ll think the drive letter thing is stupid. I can have 10 partitions from five different drives all seamlessly mounted on the filesystem on various paths and any program using them would be none the wiser.
Edit to clarify: You’re just explaining back-end stuff that should be completely invisible to users (and normally is). The parent comment specifically mentioned partitions, when you install a new Linux OS the installer asks you “how do you want your drive split up? where do you want the swap, and how much?” etc etc. which a newbie can’t even begin to answer, it shouldn’t even ASK that if the user didn’t specifically choose to set this completely manually.
As another commentor said most Linux distros will do that for you.
If you still aren’t sure then the answer is generally: swap should be at least as big as you have RAM at least if you want to hibernate. If you don’t want to hibernate then you can make it smaller but it might impact system performance when low on memory.
For file systems they will often offer you LVM or ZFS or occasionally BTRFS as options. These all allow you to make system snapshots (like the concept of restore points in Windows). If you like the idea of that then say yes, otherwise you will get slightly better performance not using those systems. ZFS and BTRFS also have other uses like RAID-like functionality and detecting and possibly correcting data corruption - with only one drive these features are not as useful though.
BCacheFS is new to the mainline kernel and does much the same as ZFS and BTRFS, when distros start offering this as a supported option it’s probably a good idea to use this, kind of unfinished at the moment though.
Edit: also if it asks if you want a separate /home generally you want to say no. Unless it’s a btrfs subvolume or zfs dataset in which case say yes.
ZFS and BTRFS also have other uses like RAID-like functionality and detecting and possibly correcting data corruption - with only one drive these features are not as useful though.
Yes they are. Regarding data integrity (bit rot or read/write errors) though. Regarding data backup, no.
BCacheFS is new to the mainline kernel and does much the same as ZFS and BTRFS, when distros start offering this as a supported option it’s probably a good idea to use this, kind of unfinished at the moment though.
I think kernel support is planned for version 6.7… I think.
Yeah, that is still too unsable in real world scenarios.
Still, it’s great that people are doing this from scratch, not just build on what Oracle throws at us. I do wish they address the RAID5/6 issue properly, not just throw it under the carpet like BTRFS. I did hear that they are working on fixing RAID5/6 in BTRFS, but I haven’t looked at how far things are. I still use it with mdadm in the background for the array.
It’s not exactly backend. It’s how UNIX like OSes work. Sooner or later, you’re gonna have to learn this. The idea behind what @[email protected] said was (IMO) better have this in the back of your mind when it comes to Linux, cuz you’re gonna need it sooner or later. Just keep it tucked away for when the time comes.
To be fair, I haven’t thought about the USB low-levei devices in years. Nowadays most things just work, and if they don’t you do a quick lsusb to check it actually sees the device then you Google what package you need to install.
Yeah… compiling from source to get a kernel module loaded is a part of the past now. Though we still do it from time to time, for some obscure pieces of hardware (like my Microtek scanner 😒), but things just generally work out of the box.
That’s actually one of my biggest gripes with Linux, it seems very difficult to keep track of physical drives and their mount points for when you need to swap things out. I still find it a bit cumbersome, and I’ve been using Linux since 2005.
lsblk is not enough? It shows drives, partitions and their mount points. It also shows multiple mount points if one partition is mounted in multiple places (e.g. via btrfs subvolumes)
I prefer monolithic systems because I can put the discs wherever I want. Using lsblk or just the mount command you get a list of all the mountpoints of different devices.
Admittedly, the names of the devices can be confusing but it’s something I have gotten accustomed to.
mount
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sys on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
dev on /dev type devtmpfs (rw,nosuid,relatime,size=8141320k,nr_inodes=2035330,mode=755,inode64)
run on /run type tmpfs (rw,nosuid,nodev,relatime,mode=755,inode64)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
/dev/sdb2 on / type ext4 (rw,noatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,inode64)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=37,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=22556)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,nosuid,nodev,relatime,pagesize=2M)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,noatime,inode64)
/dev/sda2 on /mnt/tera-home type ext4 (rw,relatime)
/dev/sdb1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=1629900k,nr_inodes=407475,mode=700,uid=1000,gid=1001,inode64)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1001)
portal on /run/user/1000/doc type fuse.portal (rw,nosuid,nodev,relatime,user_id=1000,group_id=1001)
Yes I can see that’s very convenient for seeing your drives. 😜
Of course you have to filter out filesystems without a format like ext*, ntfs or FAT as they don’t represent external disks. mount also doesn’t let you see unmounted devices, that’s why I use lsblk
Yes, grep is cool, but I use/need it so rarely, I can never remember the syntax.
My system has functioned so reliably for years, that I hardly ever need to do any fixing or configuration.
The only need for maintenance, is basically hardware upgrades. 👍
Pretty amazing IMO. 😀
Start using a more “terminal heavy” distro, you’ll learn the syntax by hart 😂.
Or just try and do more of the things you usually do with a GUI, over the terminal. I initially learned that so many things are just better done over the terminal. Why? Cuz the GUI doesn’t usually have all of the options. This is usually not the case with Windows because almost everything is GUI based, Windows doesn’t actually have an equivalent of what the terminal is in UNIX like OSes. That’s why it has the CMD/PS/WSL mess that it has now. The combo of the three of them tend to replace what the terminal is in UNIX like OSes.
In the end, even they admitted (not publically of course) that true power comes from using a terminal/command line based tools. You can specify to do almost any combo of switches, something that a GUI can almost never do, especially with complex programs, like let’s say, ffmpeg. Can you imagine how complicated a GUI would be if every possible combo of command line arguments can be made with said GUI? It’ll be better off to just use the terminal, lol 😂.
I very rarely need to do anything in the terminal that takes more than a couple of minutes. I grew up with terminal based systems, and IMO nothing will ever beat the Amiga in clever design and nice terminal with way more intuitive commands. I never really liked Unix, and Linux is essentially like Unix when you use the Terminal.
I’ve been using computers since 1979, so I admit I don’t play with them like I used to.
I don’t have Ubuntu snap, or anything called snaps installed. I’m using Manjaro, but if snap was there originally I have removed it. No way I’d use that.
bh /mnt/tera-home/home/bh lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 931,5G 0 disk
ââsda1 8:1 0 300M 0 part
ââsda2 8:2 0 922,4G 0 part /mnt/tera-home
ââsda3 8:3 0 8,8G 0 part
sdb 8:16 0 238,5G 0 disk
ââsdb1 8:17 0 300M 0 part /boot/efi
ââsdb2 8:18 0 238,2G 0 part /
sdc 8:32 0 931,5G 0 disk
ââsdc1 8:33 0 931,5G 0 part
sdd 8:48 0 698,6G 0 disk
ââsdd1 8:49 0 512M 0 part
ââsdd2 8:50 0 698,1G 0 part
sde 8:64 0 256,2G 0 disk
What’s the weirdo “ââ” for? It would look 10 times better without.
Edit:
Ah apparently a terminal character compatibility problem, it’s supposed to be a graphics character showing indentation. 🤷♀️
You don’t need to. It is handled automatically. When I plug in a drive it mounts automatically. If I want to unmount or mount partitions I just open up gnome disks and click the toggle mount button.
Under the hood I believe it is just udev rules I think.
No it’s not, and you still need to identify what data is on what drive when swapping. I am not aware of a distro where a drive is auto-mounted with write privileges after you install it.
Most will require you to just enter your user’s password when mounting, that’s it. Though, yes, your user has to be in the storage group, otherwise you might not get full read/write access (unless you mount with sudo manually that is), especially if it’s a real disk, not a USB drive. Even physical discs comnected over USB usually have no problems with persmissions, but ones connected via SATA or M2, yeah, those can have permission read/write issues (user credentials required).
Also wise, though most distros don’t do this: add your local user to the storage and networking groups. Makes setting things up a lot easier. Otherwise, you’d have to use root/sudo to do most of these things.
What? Are you talking removable drives? Because there is no distro I’m aware of, that automatically mounts a newly installed disk.
Also usually systems don’t grant write privileges for EXT4 or other security featured formats. But only for FAT32 and ExFAT and other “lesser” formats.
So often you have to switch to root, and grant those privileges to your user account.
I can make it work, but I don’t have a clear idea of what I’m doing especially with the partitions. I`m still too used to thinking in drive letters.
Once it clicks you’ll think the drive letter thing is stupid. I can have 10 partitions from five different drives all seamlessly mounted on the filesystem on various paths and any program using them would be none the wiser.
Everything is a file. You can control all of your hardware just by writing data to different files.
On Windows you have C, D and COM1, COM2
On Linux and other *nixes you normally have /dev/sda1, /dev/sdb1 and /dev/ttyUSB0
Titty USBs??? No wonder nerds love Linux!
Yeah, they come in “handy” 😂.
this doesn’t help at all
Edit to clarify: You’re just explaining back-end stuff that should be completely invisible to users (and normally is). The parent comment specifically mentioned partitions, when you install a new Linux OS the installer asks you “how do you want your drive split up? where do you want the swap, and how much?” etc etc. which a newbie can’t even begin to answer, it shouldn’t even ASK that if the user didn’t specifically choose to set this completely manually.
most installers for just works distros give you a recommended configuration that you can just click “yes” to
As another commentor said most Linux distros will do that for you.
If you still aren’t sure then the answer is generally: swap should be at least as big as you have RAM at least if you want to hibernate. If you don’t want to hibernate then you can make it smaller but it might impact system performance when low on memory.
For file systems they will often offer you LVM or ZFS or occasionally BTRFS as options. These all allow you to make system snapshots (like the concept of restore points in Windows). If you like the idea of that then say yes, otherwise you will get slightly better performance not using those systems. ZFS and BTRFS also have other uses like RAID-like functionality and detecting and possibly correcting data corruption - with only one drive these features are not as useful though.
BCacheFS is new to the mainline kernel and does much the same as ZFS and BTRFS, when distros start offering this as a supported option it’s probably a good idea to use this, kind of unfinished at the moment though.
Edit: also if it asks if you want a separate /home generally you want to say no. Unless it’s a btrfs subvolume or zfs dataset in which case say yes.
LVM has snapshot support 🤨? Is this a new thing?
Yes they are. Regarding data integrity (bit rot or read/write errors) though. Regarding data backup, no.
I think kernel support is planned for version 6.7… I think.
Yeah it’s included in kernel 6.7. Still probably too new to really use as they are still working on certain features like erasure code/parity.
Without another drive it can’t rebuild data, so all it can do is detect corruption not correct it.
Yeah, that is still too unsable in real world scenarios.
Still, it’s great that people are doing this from scratch, not just build on what Oracle throws at us. I do wish they address the RAID5/6 issue properly, not just throw it under the carpet like BTRFS. I did hear that they are working on fixing RAID5/6 in BTRFS, but I haven’t looked at how far things are. I still use it with mdadm in the background for the array.
I would just stick to the defaults.
Systems don’t always give defaults. That’s what the guy I am replying to is complaining about.
It’s not exactly backend. It’s how UNIX like OSes work. Sooner or later, you’re gonna have to learn this. The idea behind what @[email protected] said was (IMO) better have this in the back of your mind when it comes to Linux, cuz you’re gonna need it sooner or later. Just keep it tucked away for when the time comes.
To be fair, I haven’t thought about the USB low-levei devices in years. Nowadays most things just work, and if they don’t you do a quick
lsusb
to check it actually sees the device then you Google what package you need to install.Yeah… compiling from source to get a kernel module loaded is a part of the past now. Though we still do it from time to time, for some obscure pieces of hardware (like my Microtek scanner 😒), but things just generally work out of the box.
The Linux mint installer does this automatically. All you need to choose is whether you want to wipe your drive or install along side a existing os
Edit: added specifics
That’s actually one of my biggest gripes with Linux, it seems very difficult to keep track of physical drives and their mount points for when you need to swap things out. I still find it a bit cumbersome, and I’ve been using Linux since 2005.
lsblk is not enough? It shows drives, partitions and their mount points. It also shows multiple mount points if one partition is mounted in multiple places (e.g. via btrfs subvolumes)
I prefer monolithic systems because I can put the discs wherever I want. Using
lsblk
or just themount
command you get a list of all the mountpoints of different devices.Admittedly, the names of the devices can be confusing but it’s something I have gotten accustomed to.
mount
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sys on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
dev on /dev type devtmpfs (rw,nosuid,relatime,size=8141320k,nr_inodes=2035330,mode=755,inode64)
run on /run type tmpfs (rw,nosuid,nodev,relatime,mode=755,inode64)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
/dev/sdb2 on / type ext4 (rw,noatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,inode64)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=37,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=22556)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,nosuid,nodev,relatime,pagesize=2M)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,noatime,inode64)
/dev/sda2 on /mnt/tera-home type ext4 (rw,relatime)
/dev/sdb1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=1629900k,nr_inodes=407475,mode=700,uid=1000,gid=1001,inode64)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1001)
portal on /run/user/1000/doc type fuse.portal (rw,nosuid,nodev,relatime,user_id=1000,group_id=1001)
Yes I can see that’s very convenient for seeing your drives. 😜
Of course you have to filter out filesystems without a format like ext*, ntfs or FAT as they don’t represent external disks.
mount
also doesn’t let you see unmounted devices, that’s why I uselsblk
That’s why grep also exists 😒.
Yes, grep is cool, but I use/need it so rarely, I can never remember the syntax.
My system has functioned so reliably for years, that I hardly ever need to do any fixing or configuration.
The only need for maintenance, is basically hardware upgrades. 👍 Pretty amazing IMO. 😀
Start using a more “terminal heavy” distro, you’ll learn the syntax by hart 😂.
Or just try and do more of the things you usually do with a GUI, over the terminal. I initially learned that so many things are just better done over the terminal. Why? Cuz the GUI doesn’t usually have all of the options. This is usually not the case with Windows because almost everything is GUI based, Windows doesn’t actually have an equivalent of what the terminal is in UNIX like OSes. That’s why it has the CMD/PS/WSL mess that it has now. The combo of the three of them tend to replace what the terminal is in UNIX like OSes.
In the end, even they admitted (not publically of course) that true power comes from using a terminal/command line based tools. You can specify to do almost any combo of switches, something that a GUI can almost never do, especially with complex programs, like let’s say, ffmpeg. Can you imagine how complicated a GUI would be if every possible combo of command line arguments can be made with said GUI? It’ll be better off to just use the terminal, lol 😂.
I very rarely need to do anything in the terminal that takes more than a couple of minutes. I grew up with terminal based systems, and IMO nothing will ever beat the Amiga in clever design and nice terminal with way more intuitive commands. I never really liked Unix, and Linux is essentially like Unix when you use the Terminal.
I’ve been using computers since 1979, so I admit I don’t play with them like I used to.
Yeah, I get it, neither do I. Time is limited, real life comes first, work, family and all that.
Everything should be mounted in fstab. Post your cat /etc/fstab.
I’m betting it’s pretty easy to read.
Devices you mount after startup like external USB don’t show up in fstab do they?
No and since systemd you actually can have an empty fstab file too (booting via solely automounting is possible)
No, their mount points are usually in
/run/media/[username]/[partition_label]
… or if it doesn’t have a label, the UUID of the partition.Yes, I know, but that’s not automatic, and automatic mount-points vary for removable drives based on DE and distro.
That’s a very large amount of things to show up. Maybe use lsblk instead? Reminds me of snaps.
I just removed snapd and snapd-glib and the list is 3 lines shorter.
I don’t have Ubuntu snap, or anything called snaps installed. I’m using Manjaro, but if snap was there originally I have removed it. No way I’d use that.
lsblk is better, but still a bit confusing:
What’s the weirdo “ââ” for? It would look 10 times better without.
Edit:
Ah apparently a terminal character compatibility problem, it’s supposed to be a graphics character showing indentation. 🤷♀️
OK I have something called snapd, which I may want to remove.
extra/snapd 2.61.1-1 [installed]
Service and tools for management of snap packages.
You don’t need to. It is handled automatically. When I plug in a drive it mounts automatically. If I want to unmount or mount partitions I just open up gnome disks and click the toggle mount button.
Under the hood I believe it is just udev rules I think.
No it’s not, and you still need to identify what data is on what drive when swapping. I am not aware of a distro where a drive is auto-mounted with write privileges after you install it.
Most will require you to just enter your user’s password when mounting, that’s it. Though, yes, your user has to be in the storage group, otherwise you might not get full read/write access (unless you mount with sudo manually that is), especially if it’s a real disk, not a USB drive. Even physical discs comnected over USB usually have no problems with persmissions, but ones connected via SATA or M2, yeah, those can have permission read/write issues (user credentials required).
Also wise, though most distros don’t do this: add your local user to the storage and networking groups. Makes setting things up a lot easier. Otherwise, you’d have to use root/sudo to do most of these things.
I should if you use a GUI. Normally the largest partition is mounted automatically.
What? Are you talking removable drives? Because there is no distro I’m aware of, that automatically mounts a newly installed disk.
Also usually systems don’t grant write privileges for EXT4 or other security featured formats. But only for FAT32 and ExFAT and other “lesser” formats.
So often you have to switch to root, and grant those privileges to your user account.