执行 cp 命令时输入/输出错误

执行 cp 命令时输入/输出错误

我是 Linux 新手

我正在尝试按照在 UDOO 上安装 ROS 的步骤进行操作,但遇到了下一个问题。

当我尝试下载并解压 ubuntu 13.04 时遇到了以下问题:

命令行是:

babil0nia@ubuntu:/mnt/sdcard$ wget http://cdimage.ubuntu.com/ubuntu-core/releases/13.04/release/ubuntu-core-13.04-core-armhf.tar.gz tar xzf ubuntu-core-13.04-core-armhf.tar.gz

并返回:

--2014-03-24 01:05:08--  http://cdimage.ubuntu.com/ubuntu-core/releases/13.04/release/ubuntu-core-13.04-core-armhf.tar.gz
Resolving cdimage.ubuntu.com (cdimage.ubuntu.com)... 91.189.92.164, 2001:67c:1360:8c01::20
Connecting to cdimage.ubuntu.com (cdimage.ubuntu.com)|91.189.92.164|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 35939978 (34M) [application/x-gzip]
ubuntu-core-13.04-core-armhf.tar.gz: Input/output error

Cannot write to `ubuntu-core-13.04-core-armhf.tar.gz' (Input/output error).
--2014-03-24 01:05:11--  http://tar/
Resolving tar (tar)... failed: Name or service not known.
wget: unable to resolve host address `tar'
--2014-03-24 01:05:21--  http://xzf/
Resolving xzf (xzf)... failed: Name or service not known.
wget: unable to resolve host address `xzf'
--2014-03-24 01:05:31--  http://ubuntu-core-13.04-core-armhf.tar.gz/
Resolving ubuntu-core-13.04-core-armhf.tar.gz (ubuntu-core-13.04-core-armhf.tar.gz)... failed: Name or service not known.
wget: unable to resolve host address `ubuntu-core-13.04-core-armhf.tar.gz'
babil0nia@ubuntu:/mnt/sdcard$ cd 
babil0nia@ubuntu:~$ cp u
u-boot-q.imx                         ubuntu-core-13.04-core-i386.tar.gz   
ubuntu-core-13.04-core-armhf.tar.gz  uImage                               
babil0nia@ubuntu:~$ cp u
u-boot-q.imx                         ubuntu-core-13.04-core-i386.tar.gz   
ubuntu-core-13.04-core-armhf.tar.gz  uImage                               
babil0nia@ubuntu:~$ cp ubuntu-core-13.04-core-armhf.tar.gz /mnt/sdcard/
cp: cannot create regular file `/mnt/sdcard/ubuntu-core-13.04-core-armhf.tar.gz': Input/output error

因此我下载了 ubuntu 13.04 并尝试复制到 /mnt/sdcard/ 文件夹,但遇到了下一个问题:

babil0nia@ubuntu:~$ cp ubuntu-core-13.04-core-armhf.tar.gz /mnt/sdcard/
cp: cannot create regular file `/mnt/sdcard/ubuntu-core-13.04-core-armhf.tar.gz': Input/output error

请帮帮我我该怎么办?

首先,我在 SD 卡上用 Gparted 创建一个 ext3 分区

然后在引导扇区上刷入 u-boot:

dd if=u-boot-q.imx of=/dev/sdb1 bs=512 seek=2 skip=2

sudo chmod 777 当我尝试刷新 u-boot 时,我需要/dev/sd1 的命令

然后将 SD 卡挂载到本地文件夹

sudo mkdir -p /mnt/sdcard
sudo mount /dev/sdd1 /mnt/sdcard

答案1

分隔 2 个命令。在不同的行上或使用 ; 或 &&。需要位于可写目录中才能运行它们。

现在我们只需在 $HOME 目录中获取并解压即可。没有参数的 cd 将改变为 homedir。

cd 
wget http://cdimage.ubuntu.com/ubuntu-core/releases/13.04/release/ubuntu-core-13.04-core-armhf.tar.gz
tar -xzf ubuntu-core-13.04-core-armhf.tar.gz

或者:

cd && wget http://cdimage.ubuntu.com/ubuntu-core/releases/13.04/release/ubuntu-core-13.04-core-armhf.tar.gz && tar -xzf ubuntu-core-13.04-core-armhf.tar.gz

问题的下一部分。写入 SD 卡挂载。

也许它被挂载为只有 root 用户可以写入。因此尝试:

cd /mnt/sdcard
sudo touch TEST # will prompt for your password
ls -al 

执行 touch 命令时是否出现错误?可能是无法写入任何如果是的话,请输入用户名和密码。

所以现在如果您成功(希望如此,也许)可以写​​入 /mnt/sdcard,请执行以下操作:

cd /mnt/sdcard
sudo wget http://cdimage.ubuntu.com/ubuntu-core/releases/13.04/release/ubuntu-core-13.04-core-armhf.tar.gz
sudo tar -xzf ubuntu-core-13.04-core-armhf.tar.gz

或者,如果您已经在 $HOME 目录中执行了 wget,最好跳过 wget。请执行以下操作:

cd /mnt/sdcard
# ~ is shorthand for your $HOME dir
sudo tar -xzf ~/ubuntu-core-13.04-core-armhf.tar.gz

抱歉,说得太详细了,但希望你能做到这一点,并且 root 可以写入 sdcard。。。如果出现错误,请发布它们以及 /mnt/sdcard 中的 ls -al 结果。如果需要,可以更改挂载选项以将其挂载为可写。。。将需要另一部分答案!

相关内容