• Cubieboard2安装Fedora20


    几天前入手一块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,远程操作起来就比较方便了。 

  • 相关阅读:
    java中值传递和引用传递
    java中的XML
    java I/O流
    RandomAccessFile类
    java中File类
    Java 理论与实践: 正确使用 Volatile 变量
    eclipse 总弹出 secure storage的解决办法
    安卓表格布局android:collapseColumns,android:shrinkColumns和stretchColumn
    Android关联源码support-v4的问题解决
    关于spring framework最新发布压缩包的下载问题 【非常非常新手帖】
  • 原文地址:https://www.cnblogs.com/youlin/p/cubieboard2_install_fedora20.html
Copyright © 2020-2023  润新知