如何查看所有可用的HDD /分区?

204

我在地下室找到了一个6 GB的IDE硬盘。我想插上它,看看它上面可能有什么。该驱动器似乎在BIOS中被识别。

我在Ubuntu中找不到它来查看文件,而Ubuntu是该特定计算机上唯一的操作系统。我想知道Ubuntu是否具有Windows功能"我的电脑",它列出了所有可用的驱动器/存储设备。通常,"我的电脑"显示C:,可以打开它以查看所有目录和文件。此时,它与Ubuntu的主文件夹非常相似。

如何查看/选择该驱动器或所有可用硬盘的所有可用分区,而不以任何方式格式化或篡改内容?

    
Casey Hungler 31.08.2012 - 05:05

10 答案

353

有很多方法,但我最喜欢的是 lsblk 。这是一个演示:

sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL

这将显示以下内容:

NAME   FSTYPE   SIZE MOUNTPOINT LABEL
sda           111.8G            
├─sda1 swap     121M [SWAP]     
└─sda2 ext4   111.7G /          
sdb             2.7T            
└─sdb1 ext4     2.7T            xtreme
sdc             3.7T            
└─sdc1 ext4     3.7T            titan

显示:

  • 驱动器的名称及其所具有的分区。
  • 文件系统的类型。
  • 整个驱动器的大小以及每个分区的大小。
  • 装载点,如果可用,则为其标签。

首先查看 lsblk --help 可用的选项,您可以使用这些选项。我喜欢 lsblk ,因为如果与 fdiskparted 进行比较,则显示信息的友好方式。

    
给出答案 Luis Alvarado 17.08.2013 - 03:35
73

命令行解决方案:

  • 检查系统可以看到的驱动器:

    sudo fdisk -l
    

如果您的驱动器在列表中,您将能够看到驱动器上的分区,如下所示:

Disk /dev/sda: 160.0 GB, 160041885696 bytes
...

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          63      208844      104391   83  Linux
/dev/sda2          208845     2313359     1052257+  82  Linux swap / Solaris
/dev/sda3         2313360   312576704   155131672+  83  Linux

然后在某处创建一个目录并挂载其中一个分区。例如,要将位于 dev/sda3 只读的FAT32分区安装到目录 /media/my_test_mount 中,您可以执行

sudo mount -t cifs -o ro /dev/sda3 /media/my_test_mount

这种方法可以为您提供更多控制,因为您可以使用不同的挂载选项,例如以只读方式挂载分区。

有关详细信息,请参阅 man mount

    
给出答案 Sergey 31.08.2012 - 05:44
20

我是第二个路易斯,因为 lsblk(8) 可能是最简单明了的解。可以很容易地看到存在的内容并快速提供所需的所有信息:

sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL

为方便起见,这里列出了可以使用的所有可用列。

Available columns:
       NAME  device name
      KNAME  internal kernel device name
    MAJ:MIN  major:minor device number
     FSTYPE  filesystem type
 MOUNTPOINT  where the device is mounted
      LABEL  filesystem LABEL
       UUID  filesystem UUID
         RO  read-only device
         RM  removable device
      MODEL  device identifier
       SIZE  size of the device
      STATE  state of the device
      OWNER  user name
      GROUP  group name
       MODE  device node permissions
  ALIGNMENT  alignment offset
     MIN-IO  minimum I/O size
     OPT-IO  optimal I/O size
    PHY-SEC  physical sector size
    LOG-SEC  logical sector size
       ROTA  rotational device
      SCHED  I/O scheduler name
    RQ-SIZE  request queue size
       TYPE  device type
   DISC-ALN  discard alignment offset
  DISC-GRAN  discard granularity
   DISC-MAX  discard max bytes
  DISC-ZERO  discard zeroes data
    
给出答案 Philip 29.12.2013 - 20:51
6

Nautilus(您查看主文件夹的位置)将显示系统上所有已安装的驱动器。如果计算机识别出驱动器,则可以安装它并开始使用它。

有关安装驱动器的说明和信息,请访问:链接

    
给出答案 Histo 31.08.2012 - 05:09
6

要列出硬盘/磁盘,我使用

sudo parted -l

输出:

Model: ATA Samsung SSD 850 (scsi) 
Disk /dev/sda: 250GB 
Sector size (logical/physical): 512B/512B 
Partition Table: msdos

Number  Start   End    Size   Type      File system  Flags  
 1      1049kB  256MB  255MB  primary   ext2         boot
 2      257MB   120GB  120GB  extended  
 5      257MB   120GB  120GB  logical   lvm


Model: Linux device-mapper (linear) (dm) 
Disk /dev/mapper/ubuntu--vg-swap_1: 8573MB 
Sector size (logical/physical): 512B/512B 
Partition Table: loop

Number  Start  End     Size    File system     Flags  
 1      0.00B  8573MB  8573MB  linux-swap(v1)


Model: Linux device-mapper (linear) (dm) 
Disk /dev/mapper/ubuntu--vg-root: 111GB 
Sector size (logical/physical): 512B/512B 
Partition Table: loop

Number  Start  End    Size   File system  Flags
 1      0.00B  111GB  111GB  ext4

然后列出其他人已建议你可以使用的分区:

sudo lsblk -f

这将告诉您文件系统分区类型

    
给出答案 Layke 21.04.2015 - 10:20
4

以下解决方案非常简单,清晰,采用GUI方法,它可以准确显示您在硬盘上的布局:

  1. 转到:主要启动列表中的"系统工具"
  2. 启动"GParted"
  3. 输入您的密码(如果您是管理员,则应该是您的登录密码。) 您将看到您的硬盘布局,分区大小和使用的数量。
  4. 退出GParted应用程序
  5. 注意:除非您知道自己在做什么,否则请勿更改任何内容!

        
给出答案 Auderus 04.09.2014 - 01:40
2

(基于之前关于 lsblk 的建议)。

对于懒惰打字员(如果您不需要尺寸),您可以使用:

sudo lsblk -f

与使用 -o NAME,FSTYPE,LABEL,MOUNTPOINT

相同

例如

NAME                 FSTYPE             LABEL MOUNTPOINT
sda
└─sda1               ntfs             TOSHIBA
sdb
└─sdb1               LVM2_member
  └─root-root (dm-0) ext4                     /
    
给出答案 Jack 07.01.2015 - 10:58
1

迟到的答案,但试试这个:

  1. 打开文件(来自破折号的应用程序或打开文件夹)
  2. 转到"文件系统"
  3. 转到"媒体"
  4. 进入您的用户例如Lola Chang(来自Ubuntu.com)
  5. 它应列出所有连接的驱动器,不包括SDA 1(在您的情况下可能是C:)
给出答案 Yusuf Nayab 17.08.2013 - 03:13
1

我创建了一些正则表达式来帮助那些想要将这些数据读入某个应用程序的人。

为此,使用"-P"命令时,lsblk命令更有用。这是一个例子:

$ lsblk -P -o KNAME,FSTYPE,SIZE,MOUNTPOINT,LABEL,MODEL
KNAME="sda" FSTYPE="" SIZE="80G" MOUNTPOINT="" LABEL="" MODEL="VBOX HARDDISK   "
KNAME="sda1" FSTYPE="" SIZE="243M" MOUNTPOINT="/boot" LABEL="" MODEL=""
KNAME="sda2" FSTYPE="" SIZE="1K" MOUNTPOINT="" LABEL="" MODEL=""
KNAME="sda5" FSTYPE="" SIZE="79.8G" MOUNTPOINT="" LABEL="" MODEL=""
KNAME="dm-0" FSTYPE="" SIZE="79G" MOUNTPOINT="/" LABEL="" MODEL=""
KNAME="dm-1" FSTYPE="" SIZE="768M" MOUNTPOINT="[SWAP]" LABEL="" MODEL=""
KNAME="sr0" FSTYPE="" SIZE="1024M" MOUNTPOINT="" LABEL="" MODEL="CD-ROM          "
KNAME="sr1" FSTYPE="" SIZE="1024M" MOUNTPOINT="" LABEL="" MODEL="CD-ROM          "

您可以阅读此输出,使用一些正则表达式

/KNAME=\"(.*)\" FSTYPE=\"(.*)\" SIZE=\"(.*)\" MOUNTPOINT=\"(.)*\" LABEL=\"(.*)\" MODEL=\"(.*)\"/g

链接

如果您不需要分区的大小,可以使用mount -l to

$ mount -l
/dev/mapper/precise32-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sda1 on /boot type ext2 (rw)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw)
/vagrant on /vagrant type vboxsf (uid=1000,gid=1000,rw)

使用像这样的正则表达式来阅读它

/(.*) on (.*) type (.*) \((.*)\)/g

链接

如果您在节点中执行此操作,则可以使用某些代码将字符串转换为出现的数组,例如

stdout.split("\n").map(function(x){return x.split(/(.*) on (.*) type (.*) \((.*\))/g)}); 
    
给出答案 Thiago Mata 27.08.2014 - 20:43
1

使用以下命令行,它们将为您提供分区(位置,大小,可用空间和挂载点)的良好概览,

df -h
sudo parted -ls
sudo lsblk -f
sudo lsblk -m

如果终端窗口足够宽(例如130个字符),则可以将 lsblk 命令组合到

sudo lsblk -fm
    
给出答案 sudodus 22.10.2017 - 20:50

阅读有关标签的其他问题