几天前入手一块Cubieboard2,又买了张16G的TF卡,装个linux折腾折腾。以前都是在虚拟机上用linux,个人比较喜欢Fedora,因为总能用上最新版的软件,像支持C++11的GCC、Clang等。这次搜了搜,终于找到适用于Cubieboard2的压缩镜像:Fedora-Xfce-armhfp-20-a10-1-sda.raw.xz

在TF卡上安装系统:

开始就按照README所讲,直接在Fedora20的虚拟机上用xzcat写入TF卡,然后重新插入进行挂载,不但写入非常慢,而且反复试了好几次,rootfs总是出现错误,SHA1校验镜像没有问题。于是就换了个方法,在Windows下用7zip解压出raw镜像,再用WinHex的Disk Clone工具写入TF卡,直写扇区速度翻了几倍。写完后,在虚拟机上正常挂载,按README指导安装好uboot和kernel。

接下来就插入TF卡开机了,果然如README所讲,首次重启,然后设置时区创建用户等。不过,等我首次登录进来后发现,/目录只有500MB剩余,不用说,README中提到的“resize the root partition to fill the entire sdcard”肯定没有成功。于是关机,拔卡,重新运行起WinHex,仔细研究了一下解压出来的raw image。

MBR分区表中一共发现3个分区:
分区1:起始于1953扇区,大小为1000001扇区(488MB),就是挂载后的uboot;
分区2:起始于1001954扇区,大小为1000000扇区(488MB),Linux Swap分区;
分区3:起始于2001954扇区,大小为5859375扇区(2.8GB),就是挂载后的rootfs。

此时TF卡中的分区格式也是这样的,这时最简单的方法就是手动修改分区表,让第三个分区的大小占据所有剩余空间,再把TF卡连到虚拟机上,用resize2fs调整文件系统占据整个分区大小。不过我还是想把各个分区调整到看着舒服的大小。

于是把3个分区参数都改了一下:
分区1:CHS从0,32,33到65,101,36,起始于2048扇区,大小为1048576扇区(512MB);
分区2:CHS从65,101,37到261,53,48,起始于1050624扇区,大小为3145728扇区(1.5GB);
分区3:CHS从261,53,49到1023,254,63,起始于4196352扇区,大小为26919936扇区(所有剩余扇区,12.8GB)。

随后,用WinHex将raw image中分区1和分区3的所有扇区分别写到TF卡对应分区的起始处,又挂载到虚拟机resize2fs调整了文件系统大小。因为之前写过一次,所以启动扇区不用写,不然的话要先把启动扇区写入后再修改分区表,以免覆盖。

此处隐约体会到了分层的概念,文件系统数据结构有其自身的完整性与独立性,就像FAT和NTFS都在首扇区保存了文件系统配置信息,不依赖于分区表。比以前在Windows上用Partition Magic更有些收获。

此时,装好TF卡,设置时区创建用户从头来过,登录,/目录剩余11.1GB,问题解决。

启用SSH和安装配置VNC Server:

防火墙默认已经放开了22端口,只不过sshd默认是不启动的。

在root账户下 vi /etc/ssh/sshd_config,将:
Port 22
Protocol 2
PermitRootLogin yes
MaxAuthTries 6
这4行取消注释。

然后vi /etc/rc.d/rc.local,加入:
systemctl start sshd
这样sshd就会开机启动,Putty和WinSCP等都可以连接了。

然后就是安装VNC Server:
yum install tigervnc-server

cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service,

vi /etc/systemd/system/vncserver@:1.service
将其中所有<USER>改为相应的用户目录名,例如我这里账户名是lambda,还要在ExecStart一行最后的引号内加上-geometry 1024x768 -depth 24,保存退出。

systemctl daemon-reload,
systemctl enable vncserver@:1.service,

然后在对应的账户,此处为lambda账户,vncpasswd命令设置链接密码,

systemctl start vncserver@:1
就可以启动服务器了,需要开机启动的话就加到rc.local里,

fedora下需要
firewall-cmd --add-port 5901/tcp
来放开5901端口,永久开启的话
firewall-cmd --permanent --add-port 5901/tcp。

首次连接VNC,出来一个灰屏幕什么都没有,查了查,因为这里用的是xfce,所以要修改一下~/.vnc/xstartup,只保留上面两行unset,在下面加上一行startxfce4 &,重启vncserver,连接,一切正常。

这样有了Putty,WinSCP,VNC Viewer,远程操作起来就比较方便了。

Cubieboard2安装Fedora20的更多相关文章

  1. VirtualBox安装Fedora20

    工具/原料 Fedora20 32位版(必须是32位,VirtualBox不识别64位操作系统) Oracle VM VirtualBox 方法/步骤 1 搜索Oracle VM VirtualBox ...

  2. Fedora20上Xen的安装与部署

    XEN 是一种直接执行在硬件上一层软件,它能够让电脑硬件上同一时候跑多个用户的操作系统.其体系结构例如以下: XEN Hypervisor :介于操作系统和硬件之间的一个软件描写叙述层.它负责在各个虚 ...

  3. Unix/Linux环境C编程入门教程(6) 安装Fedora C/C++开发环境

    安装Fedora  C/C++开发环境 1 Fedora 是一个开放的.创新的.前瞻性的操作系统和平台,基于 Linux. 2.选择自定义配置 3.设置版本为10.0 4.选择稍后安装 5.选择64位 ...

  4. Fedora20安装fcitx输入法

    Fedora20安装fcitx输入法 Fedora20默认安装的是ibus输入法,总有一些原因让我们选择fcitx输入法: ibus出词顺序有bug 在输入人名的时候,有些名字输入两三次后还是不会出现 ...

  5. fedora20安装spin以及用户界面ispin

    (博客园-番茄酱原创) (最近感觉用make会出现库错误,所以改进了教程,把之前的make步骤省掉了,直接下载可执行文件进行配置最简单啦...) 1.首先,下载对应版本的spin,我64位的fedor ...

  6. fedora20安装hadoop-2.5.1

    (博客园-番茄酱原创) 首先感谢作者lxdhdgss,他的博文直接帮助了我如何安装hadoop,下面是他的博文修改版,用于安装在fedora20上面的,jdk1.8版本. 到hadoop官网去copy ...

  7. 在Fedora20上安装Oracle 12c

    本文将引导大家在Fedora20的环境下成功安装Oracle12c. 安装前的准备 编辑/etc/hosts文件,添加本机名称 编辑/etc/selinux/config文件 编辑/etc/redha ...

  8. Fedora20安装完Nvidia后启动一直黑屏解决办法。

    安装完Fedora20后,把Nvidia驱动装上后重起机器一直黑屏时,切换到命令行下:Alt+F2  登陆上去,然后直接更新: su -c ‘yum update’ ,再重起就OK了.

  9. fedora20 安装搜狗输入法及各种问题的解决

    http://blog.csdn.NET/g457499940/article/details/38656719 0 环境描述: 系统环境:Fedora20 64位 截止2014年09月 8日17:5 ...

随机推荐

  1. MYSQL数据库引擎区别详解

    数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEAP.另 ...

  2. 使用phpExcel导出excel时,报500错

    在自己本地导出excel没有问题,但是放到服务器出现500的错误! 解决方法:查看控制器引用的header文件,是否包含空格,如下: header('Pragma:public');          ...

  3. win10 + python3.6 + VSCode + tensorflow-gpu + keras + cuda8 + cuDN6N环境配置

    写在前面的话: 再弄这个之前,我对python也好,tensorflow也好几乎是0认知的,所以配置这个环境的时候,走了不少弯路,整整耗费了一个星期的时间才搭配完整这个环境,简直了...然而最气的是, ...

  4. STM32F10x -- 利用IIC协议操作AT24C02

    关于AT24C02芯片的一些参数性能可参考其他的一些相关资料.此处只贴出程序. 宏文件AT24CXX.h #ifndef _AT24CXX_H_ #define _AT24CXX_H_ #includ ...

  5. [原创]InnoDB体系结构

    参阅:<innodb存储引擎内幕> innodb整体的体系结构如下图所示:  整体结构分两大部分:内存和进程其中内存包括:buffer_pool\redo log buffer\addit ...

  6. LINUX 笔记-MOUNT

    mount [-t vfstype] [-o options] device dir -o options: 主要用来描述设备或档案的挂接方式 1)loop:用来把一个文件当成硬盘分区挂上系统 2)r ...

  7. .NET之父 - Anders Hejlsberg

    简介 安德斯·海尔斯伯格(Anders Hejlsberg,1960.12~),丹麦人,Turbo Pascal编译器的主要作者,Delphi和.NET之父! 安德斯·海尔斯伯格曾在丹麦技术大学学习工 ...

  8. C++ 对象成员函数(非静态方法)

    1.神奇的inline语法与语义 inline语义C99和C++98都有.之前在单源文件编写的时候一直没有发现问题,但是一考虑到多文件的链接,就发现矛盾了. 一些inline的原则: 1. inlin ...

  9. iOS下OpenCV开发用OC还是Swift

    本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 其实标题中这个问题并不准确,准确的说法应该是iOS下的OpenCV开发是使用OC还是Swift ...

  10. 如何让Vim成为我们的神器

    Vim 是 Linux 系统上的最著名的文本/代码编辑器,也是早年的 Vi 编辑器的加强版,而 gVim 则是其 Windows 版.它的最大特色是完全使用键盘命令进行编辑,脱离了鼠标操作虽然使得入门 ...