Dec 15, 2017 - 给树莓派安装ArchLinux

  ArchLinux是Linux的一个发行版,以简单、轻量为其设计理念。由于其小而美的特点,ArchLinux非常合适运行在树莓派等环境上,树莓派官方网站曾经提供了ArchLinux的镜像下载,不知道为何后来又取消其链接,也许是arm版本的ArchLinux本身不是官方版本的缘故,不过在http://archlinuxarm.org/还提供对树梅派的支撑,让我们一起来看看如何安装和配置。

第一部分:安装

  下载最新版的ArchLinux for Arm的系统:浏览http://archlinuxarm.org/os/ 可以找到适合的树梅派版本的安装文件。md5sum可以校验一下下载的文件是否有问题。

  1. 第一步:用fdisk给SD卡进行分区:
    fdisk /dev/sdx 进入fdisk的界面后,要删除原有分区,创建新的分区
    • 输入o并回车,清空原有分区。
    • 输入p列出当前分区,此时应该看不到任何分区。
    • 输入n,回车然后输入p选择建立主分区,然后输入1,然后直接回车选择默认的起始扇区,然后输入+100M为结束的扇区(为第一个分区指定100MB的空间)。
    • 依次输入t,c,设置第一个分区的分区类型为W95 FAT32 (LBA)。
    • 依次输入n,p建立第一个主分区,然后输入2为其分区号,然后两次回车接受默认起止扇区设置。
    • 输入w以写入分区数据并退出fdisk。
  2. 第二步: 创建并挂载文件系统
    mkfs.vfat /dev/sdx1
    mkdir boot
    mount /dev/sdx1 boot
    mkfs.ext4 /dev/sdx2
    mkdir root
    mount /dev/sdx2 root
    
  3. 第三步: 解压文件到root目录
    tar xzvf ArchLinuxARM-rpi-latest.tar.gz -C root
    sync
    mv root/boot/* boot
    umount boot root
    

    最后把SD卡插入树莓派,接入电源即可点亮。等等,怎么没反应。是不是用了HDMI转VGA的线?老规矩在boot分区的config.txt文件加上:

    hdmi_force_hotplug=1
    config_hdmi_boost=4
    hdmi_group=2
    hdmi_mode=9
    hdmi_drive=2
    hdmi_ignore_edid=0xa5000080
    

      再试试启动树莓派是否正常。 注意:你的系统中,需要把上面的sdx替换成相应的编号。系统root用户的默认密码是root,root用户默认不能远程登陆,可以使用alarm用户登陆,其默认密码为alarm。

第二部分:设置网络

archlinux如何简单配置网络?archlinux的网络配置和其它发行版有很大不同。 修改:

/etc/systemd/network/eth0.network
[Match]
Name=eth0
[Network]
Address=192.168.1.100/24
Gateway=192.168.1.1

vim /etc/systemd/resolved.conf

[Resolve]
DNS=114.114.114.114

rm -f /etc/resolv.conf
ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf 
systemctl disable netctl.service
systemctl enable systemd-networkd.service
systemctl enable systemd-resolved.service
reboot

  然后重启一下试试,可以用ip addr 或者ifconfig查看网卡状态。 另外无线配置可以使用wifi-menu启动菜单配置。

第三部分:备份和恢复系统

  从安装系统的方式受到启发,可以用tar来备份整个系统,这种方式不仅仅局限于ArchLinux,其它版本也应该适用。这样万一需要恢复系统,不需要从安装盘开始”重走长征路”,也不需要用dd命令将整个sd卡备份下来形成一个巨大的文件费事费力。

  • 备份:
      找一个容量比较大的u盘,删除原来的分区并格式化成ext4(ArchLinux默认不支持nt格式)。
    mount /dev/sda1 /mnt
    cd /mnt
    tar -czvf archlinux_pi2_20171213.tar.gz --exclude=/media/* --exclude=/sys/* --exclude=/proc/* --exclude=/mnt/* --exclude=/tmp/* /
    
  • 恢复:
      分区和格式化操作和前面安装系统时是一样的。将sd卡分成两个分区,一个用于启动分区(100M),剩余空间全部给根分区。如果已经分过区,这步不需要操作,直接格式化。
    cd /mnt
    mkdir boot
    mount /dev/sda1 boot
    mkdir root
    mount /dev/sda2 root
    tar -xzvf archlinux_pi2_20171213.tar.gz -C root
    mv root/boot/* boot
    unmount root boot
    

  本人的更多原创文章请加入个人微信公众号。

Nov 4, 2017 - 走在乡间的小路上一上青古道徒步游记

  秋高气爽的时节是最适合徒步的,抛下生活中的烦恼,约上三五好友来一次不算自虐的行走,保存一个季节的故事与回忆。
(古道地图)
  上青古道盛名久已,得名似乎来于其首尾两端地名,一曰上灶,一曰青坛也; 传闻乃古时嵊州一带通往绍兴的唯一官道,也有人称之为会稽古道,从青坛到上灶渡口为其中一段,全长约30公里,共有三部分组成为日铸岭,万寿山和陶元岭古道,其中只有万寿山是民道商道。
(兰若寺水库)   2017年10月28日一行六人自驾到绍兴金渔村,再叫车到出发地锁泗桥快十点了,吃了点某同学从桐乡买的粥赶紧上路。先到兰若寺水库然后折回日铸岭古道,一路石阶路保存的比较完好,从一开始乡村田园景色逐步过渡到山间竹林。那天真好是重阳节,徒步的人不少,看来这是一条比较经典的徒步线路了。期间基本一路向上,到达日铸岭古道与平王线老公路交会的地方,已是汗嗒嗒滴。缺乏锻炼啊,走平路不觉得,爬坡上山路累啊。
(乡间小路)

(铸岭古道)

(铸岭古道)

(铸岭古道)
  之后下山到了上祝村已经过了十二点了,看到有驴友已经在农家乐大吃大喝了,看着满桌的菜我们也迈不开腿了,问老板是否可以给我们搞几个菜,答曰:没预定不行。我们只好默默的找个地方拿出干粮……。
(万寿山水库)
  啃完干粮,我们向万寿山水库进发,这一段已经算万寿山步道了。万寿山水库有一个大坝,爬上大坝水库风景尽收眼底。这里大概是这段路程最重要的”景点”了,说不上有多漂亮,不过湖水碧绿清澈使人心旷神怡。
(竹林)
  沿水库边小路继续往前走,山路越来越窄,有的地方只能一人通过,碰到反穿的徒步队伍,还得等待让行。有的路段是泥路,有的路段是涉水町步,”民道商道”果然不能和”官道古道”比。不过好在一路基本以下坡为主,走起来不是很费劲,大约下午两点,我们就走到了金渔村也就是我们停车的地方,按计划我们不走陶元岭古道,就取车赶往下一个目的地了。
(万寿山步道)
  总体来说,上青古道是一条还算比较好走的徒步线路,大部分路有石阶,就算泥路也就是乡间小路。一路基本有明显的指示,岔路不多,适合男女老少锻炼休闲。好了,说一百次也不如亲身体验一次,赶紧放下手中电脑走进大自然吧。

  本人的更多原创文章请加入个人微信公众号。

Oct 25, 2017 - 制作基于u盘的linux系统

  1. 为何要制作基于u盘的linux系统
      虽然现在手机平板电脑已经取代了pc的一部分功能。但有时候全功能的pc还是需要的。特别是你需要在不同的地方使用pc又不想老背着台笔记本。其次碰到紧急情况可以应急一下充当急救盘。做一个随身的linux系统。 只要有一台电脑。。插入u盘就能any time any where的使用linux。 也是不是符合自由软件的精神?这也是我从ideal到实现的一次尝试。
    为了做一个基于u盘的linux系统。 我在网上搜了一下。 结果大部分是使用某个发行版的live启动盘做启动u盘(直接将镜像文件写入u盘)。这种方式无法当普通系统使用。 后来只找到一篇博文讲实现的一些思路。 所以决定亲手实践一下。以下操作经过本人验证。 有些坑已经踩过希望能帮助到有相同想法的人。
  2. 系统选择
      有一些专为U盘构建的Linux系统。 如试用过puppy。 这类系统确实很方便。 但作为长期使用的个人系统是不太明智的。 为了精简体积。 它们在系统架构上与常规Linux有很大不同。 遇到问题不容易获得别人的帮助(因为用的人少)。 软件仓库的数量也无法同主流发行版相比。别人apt-get就能安装的软件。 你可能得花几个小时 configure && make。 就别提U盘那缓慢的IO导致的糟糕的编译速度了。所以。 我倾向于选择一个成熟的。 完整的。 主流的发行版。我的选择是Debian。Debian足够主流。 是很多发行版的鼻祖。 有很好的包管理工具方便定制。 同时又稳定纯净。如果正好和你日常试用的发行版一样。 你就不需要因为换了发行版而需要重新学习。
  3. 写安装镜像到u盘
      准备2个u盘(一个做安装盘。 一个做目标盘)和一台运行windows的电脑(能u盘启动)。下载写入工具Win32DiskImager和debain安装盘。用Win32DiskImager将下载的安装盘镜像文件写入u盘。下载的文件后缀是iso。 不是Win32DiskImager的默认文件类型。 但是没有关系。 在选择文件时下拉框选择全部类型就可以了。另外我一开始选择的安装文件是debian-9。2。0-amd64-DVD-1。iso。 发现在安装debain到安装软件的步骤时候出错。后来又下载了安装文件debian-9。2。1-amd64-xfce-CD-1。iso。 则顺利安装完成。 所有各位一定要选择文件debian-9。2。1-amd64-xfce-CD-1。iso安装。

  4. 安装debain
      否则电脑硬盘数据会丢失)。完成安装之后试着用新的u盘启动电脑。 矣。 怎么没法启动。也不知道什么原因。 只能重新安装grub试试。所以用安装u盘重新启动电脑。 进入resuce模式。 注意此时root目录选择目标u盘的系统目录进入shell。 执行如下命令:
    grub-install –root-directory=/ /dev/sdx ;/dev/sdx目标u盘 退出安装流程。 重新启动电脑。 grub菜单出现了。 不由松了一口气。
  5. 配置
      如果成功启动电脑。 那么接下来你可以如下优化:
    • 安装无线网卡 我测试的IBMx220i笔记本电脑debain无法识别无线网卡。先查看芯片型号 lspic |grep Network(可能没有lspic命令。 需要先安装)。 到https://wireless。wiki。kernel。org/en/users/Drivers/iwlwifi下载相应驱动解压其中文件。 将iwlwifi-*。ucode文件复制到 /lib/firmware后重启就可以发现可爱的无线网络图标在状态栏出现了。
    • 安装自己常用的软件 安装自己常用的软件。 和正常安装没什么不同。 一般用apt-get install命令安装。
    • 设置ram缓存。 加快系统速度通过修改/etc/fstab来实现这一目的: tmpfs /tmp tmpfs size=1024m 0 0

  现在你可以拿着u盘到任意电脑上启动了。 enjoy it!

  本人的更多原创文章请加入个人微信公众号。