我阅读了 gparted 的这个文档,以便在移动分区时从引导问题中恢复。为了grub在 gparted 终端上测试命令,我想打开终端,但没有从我的 Ubuntu 13.04 中找到方法。当我sudo gparted &在 shell 终端上运行时,它会打开 GUI,因此我无法测试命令。如何打开终端?
我有一块西部数据 4TB 硬盘 (WD40PURZ)。看来,对驱动器进行分区的推荐过程会导致以下结果:来自 Linux 内核的警告“最佳传输大小 33553920 字节,不是物理块大小(4096 字节)的倍数”。我应该担心这个吗?
我已经用谷歌搜索了这个,几乎所有我能找到的就是回答一个 bash 脚本,这对我不起作用。我找到的答案告诉我要做:
echo "yes" | ./script
Run Code Online (Sandbox Code Playgroud)
或者
./script <<< yes
Run Code Online (Sandbox Code Playgroud)
或类似的东西。它对我不起作用。我的猜测是因为我想做的是自动回答一个可执行程序,而不是一个脚本。更具体地说,我想自动回答parted。这里
parted -a optimal /dev/sda mklabel msdos
Warning: The existing disk label on /dev/sda will be destroyed and
all data on this disk will be lost. Do you want to continue?
Yes/No? _
Run Code Online (Sandbox Code Playgroud)
我试着做
echo "yes" | parted -a optimal /dev/sda mklabel msdos
Run Code Online (Sandbox Code Playgroud)
和
parted -a optimal /dev/sda mklabel msdos <<< yes
Run Code Online (Sandbox Code Playgroud)
两种方法都没有用。那些没有回答yes到parted提示。
那么,如何在parted不使用 bash 脚本的情况下自动回答该提示?
我有适用于 RaspberryPi 4 的 Ubuntu 20.10 的 microSD 卡。 microSD 卡的大小为 32GB,但总共只占用了大约 2GB 的空间。我想将其克隆到 16GB microSD 卡上,虽然我知道如何使用 GUI 工具成功完成此操作,但我很难使用 CLI。
到目前为止我想出的步骤是:
parted -l,显示我要缩小的分区有 number 2。umount /dev/sdb1和卸载了所有分区umount /dev/sdb2e2fsck -f /dev/sdb2resize2fs /dev/sdb2 10Gparted /dev/sdb resizepart 2 10G此时,我打开 GParted 只是为了直观地验证我的工作,并且在分区 /dev/sdb2 上遇到此错误:
如果我现在将此 microSD 卡插入我的 RaspberryPi 4,它将无法启动并卡在这个屏幕上:
我只是在这里玩玩,所以我不怕丢失任何数据,我只是想学习如何使用 CLI 正确缩小 RaspberryPi microSD 的分区。
我按照此处的说明进行操作:https ://help.ubuntu.com/community/InstallingANewHardDrive
它说:
4) 创建一个分区,占据驱动器上的所有空间:
(parted) mkpart primary 0 05)检查结果是否正确:
(parted) print
但是,当我这样做时,我得到:
$sudo parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
(parted) unit GB
(parted) mkpart primary 0 0
(parted) print
Model: ATA Some SSD (scsi)
Disk /dev/sda: 240GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 0.00GB 0.00GB 0.00GB primary
Run Code Online (Sandbox Code Playgroud)
0GB 的开始和结束以及 …
我正在尝试在我的 linux 机器中调整一个胖 32 分区的大小。以下是系统的规格。
编辑:从这个分区备份数据不是我想要的。我想看看是否有一种方法可以在不丢失数据的情况下尝试。它更像是分析而不是任务。
到目前为止我尝试过的:尝试使用 parted 工具,因为 gparted 需要一个 UI。尽管我能够缩小这个分区,但由于文件碎片,它会导致不必要的问题。例如,当我运行文件系统检查时缩小后,我收到了一些错误,比如没有找到几个文件的链。
我不能使用像 resizee2fs 这样的工具,因为它只支持 ext 文件系统(如果我在这里错了,请纠正我)。
我尝试使用工具 fatresize,尽管我能够成功地将它安装在我的 debian 中,但我无法获得 arm 的可安装程序,无论我获得什么链接,都会在第 1 行语句本身上引发错误。
有人可以帮我提供他们能提供的任何信息吗?
如何使用命令行创建交换分区gparted?(parted)
我已经成功创建了一个分区,但似乎无法将分区设置为Linux swap / Solaris。我试过了
mkpart extended linux-swap -512MB -1s
// -> Error: Invalid number.
&
mkpart extended linux-swap(v1) -512MB -1s
// -> Error: Invalid number.
&
mkpart
type: extended
Start: -512MB
End: -1s
// this works, but I can't set the FS-TYPE
Run Code Online (Sandbox Code Playgroud)
// 帮助页面
(parted) help mkpart
mkpart PART-TYPE [FS-TYPE] START END make a partition
PART-TYPE is one of: primary, logical, extended
FS-TYPE is one of: zfs, btrfs, nilfs2, ext4, ext3, ext2, fat32, fat16, …Run Code Online (Sandbox Code Playgroud) parted ×7
partitioning ×5
command-line ×2
bash ×1
fdisk ×1
gparted ×1
grub2 ×1
hard-drive ×1
scripts ×1
ssd ×1