经过前段时间的努力,已经成功的将debian的ARM64版本跑在了树莓派3B+上。独乐乐不如众乐乐,所以将自己努力的成果分享,并详细介绍安装教程,希望能为树莓派爱好者做出些许贡献。
我已经制作好了镜像文件,可以在如下链接进行下载:
链接: https://pan.baidu.com/s/17DNKYIIiAodf6aTGct3-Cw 密码: aeg7
下面是安装教程:
1、将上面链接中的镜像文件debian-arm64-rpi3bplus.img下载到本地:
jiangxianxu@debian:/data/work/raspberrypi/debian$ ll
total 15910864
drwxr-xr-x 6 jiangxianxu jiangxianxu 4096 May 28 20:25 boot
-rw-r--r-- 1 jiangxianxu jiangxianxu 1315 Jun 3 20:56 cpuinfo
-rw-r--r-- 1 jiangxianxu jiangxianxu 3800989696 Mar 10 21:07 debian-9.4.0-arm64-DVD-1.iso
-rw-r--r-- 1 root root 4998561792 May 30 22:32 debian_arm64_rootfs.img
-rw-r--r-- 1 root root 3746562048 Jun 15 21:51 debian-arm64-rpi3bplus.img
-rw-r--r-- 1 jiangxianxu jiangxianxu 3746562048 Jun 14 21:29 debian-on-rpi_bak.img
-rwxr-xr-x 1 jiangxianxu jiangxianxu 4564 May 28 23:16 grub.cfg
-rwxr-xr-x 1 jiangxianxu jiangxianxu 6548 May 28 22:47 grub.cfg.debian
-rwxr-xr-x 1 jiangxianxu jiangxianxu 4659 May 28 22:47 grub.cfg.efi
jiangxianxu@debian:/data/work/raspberrypi/debian$
2、使用dd命令将debian-arm64-rpi3bplus.img文件烧写到TF卡中:
jiangxianxu@debian:/data/work/raspberrypi/debian$ sudo dd bs=2M if=debian-arm64-rpi3bplus.img of=/dev/sdb
1786+1 records in
1786+1 records out
3746562048 bytes (3.7 GB, 3.5 GiB) copied, 520.535 s, 7.2 MB/s
jiangxianxu@debian:/data/work/raspberrypi/debian$
烧写完成后可以看到整个镜像已经完整克隆到了TF卡上:
jiangxianxu@debian:/data/work/raspberrypi/debian$ sudo fdisk -l debian-arm64-rpi3bplus.img
Disk debian-arm64-rpi3bplus.img: 3.5 GiB, 3746562048 bytes, 7317504 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0ba16b58
Device Boot Start End Sectors Size Id Type
debian-arm64-rpi3bplus.img1 2048 1026047 1024000 500M c W95 FAT32 (LBA)
debian-arm64-rpi3bplus.img2 1026048 7317503 6291456 3G 83 Linux
jiangxianxu@debian:/data/work/raspberrypi/debian$
jiangxianxu@debian:/data/work/raspberrypi/debian$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 14.9 GiB, 16005464064 bytes, 31260672 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0ba16b58
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 1026047 1024000 500M c W95 FAT32 (LBA)
/dev/sdb2 1026048 7317503 6291456 3G 83 Linux
jiangxianxu@debian:/data/work/raspberrypi/debian$
3、将TF卡的第一个分区挂载到文件系统中,该分区就是我们的启动分区:
jiangxianxu@debian:/data/work/raspberrypi/debian$ sudo mount /dev/sdb1 /mnt/iso1/
jiangxianxu@debian:/data/work/raspberrypi/debian$ ll /mnt/iso1/
total 25456
-rwxr-xr-x 1 root root 24597 Jun 1 23:28 bcm2710-rpi-3-b-plus.dtb
-rwxr-xr-x 1 root root 52064 May 30 22:59 bootcode.bin
-rwxr-xr-x 1 root root 145 May 30 23:00 cmdline.txt
-rwxr-xr-x 1 root root 77 Jun 2 10:42 config.txt
-rwxr-xr-x 1 root root 2599 May 30 22:59 fixup_cd.dat
-rwxr-xr-x 1 root root 6575 May 30 22:59 fixup.dat
-rwxr-xr-x 1 root root 9726 May 30 22:59 fixup_db.dat
-rwxr-xr-x 1 root root 9730 May 30 22:59 fixup_x.dat
-rwxr-xr-x 1 root root 13496832 Jun 1 22:48 Image
drwxr-xr-x 2 root root 16384 May 30 22:59 overlays
-rwxr-xr-x 1 root root 673444 May 30 22:59 start_cd.elf
-rwxr-xr-x 1 root root 4968292 May 30 22:59 start_db.elf
-rwxr-xr-x 1 root root 2825124 May 30 22:59 start.elf
-rwxr-xr-x 1 root root 3912164 May 30 22:59 start_x.elf
jiangxianxu@debian:/data/work/raspberrypi/debian$
4、修改config.txt文件,将被#注释的这两行去掉#,让串口可用。
jiangxianxu@debian:/data/work/raspberrypi/debian$ cat /mnt/iso1/config.txt
arm_control=0x200
#dtoverlay=pi3-miniuart-bt
#enable_uart=1
kernel=Image
jiangxianxu@debian:/data/work/raspberrypi/debian$
5、取下TF卡插入树莓派,并将树莓派的TTL串口使用USB转TTL连接到电脑(这里不是必须的,如果有显示器则可以使用HDMI线直接连接到显示器即可),开电即可正常进入系统:
Welcome to minicom 2.7
OPTIONS: I18n
Compiled on Apr 22 2017, 09:14:19.
Port /dev/ttyUSB0, 22:59:41
Press CTRL-A Z for help on special keys
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.14.44-v8 (jiangxianxu@debian) (gcc version 6.3.0 20170516 (Debian 6.3.0-18)) #3 SMP PREEMPT Thu May 31 8
[ 0.000000] Boot CPU: AArch64 Processor [410fd034]
[ 0.000000] Machine model: Raspberry Pi 3 Model B Plus Rev 1.3
[ 0.000000] efi: Getting EFI parameters from FDT:
[ 0.000000] efi: UEFI not found.
[ 0.000000] cma: Reserved 8 MiB at 0x000000003ac00000
[ 0.000000] percpu: Embedded 22 pages/cpu @ffffffd33ab78000 s50456 r8192 d31464 u90112
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: enabling workaround for ARM erratum 845719
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 238896
[ 0.000000] Kernel command line: 8250.nr_uarts=1 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_baset
[ 0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes)
[ 0.000000] Memory: 930136K/970752K available (7164K kernel code, 892K rwdata, 2372K rodata, 2688K init, 694K bss, 32424K reserved,)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] modules : 0xffffff8000000000 - 0xffffff8008000000 ( 128 MB)
[ 0.000000] vmalloc : 0xffffff8008000000 - 0xffffffbebfff0000 ( 250 GB)
[ 0.000000] .text : 0xffffff935e280000 - 0xffffff935e980000 ( 7168 KB)
[ 0.000000] .rodata : 0xffffff935e980000 - 0xffffff935ebe0000 ( 2432 KB)
[ 0.000000] .init : 0xffffff935ebe0000 - 0xffffff935ee80000 ( 2688 KB)
[ 0.000000] .data : 0xffffff935ee80000 - 0xffffff935ef5f200 ( 893 KB)
[ 0.000000] .bss : 0xffffff935ef5f200 - 0xffffff935f00ca68 ( 695 KB)
[ 0.000000] fixed : 0xffffffbefe7fb000 - 0xffffffbefec00000 ( 4116 KB)
[ 0.000000] PCI I/O : 0xffffffbefee00000 - 0xffffffbeffe00000 ( 16 MB)
[ 0.000000] vmemmap : 0xffffffbf00000000 - 0xffffffc000000000 ( 4 GB maximum)
[ 0.000000] 0xffffffbf4c000000 - 0xffffffbf4ced0000 ( 14 MB actual)
[ 0.000000] memory : 0xffffffd300000000 - 0xffffffd33b400000 ( 948 MB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] ftrace: allocating 25498 entries in 100 pages
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] Tasks RCU enabled.
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] arch_timer: cp15 timer(s) running at 19.20MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[ 0.000006] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns
[ 0.000234] Console: colour dummy device 80x25
[ 0.001067] console [tty1] enabled
[ 0.001105] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=19200)
[ 0.001150] pid_max: default: 32768 minimum: 301
[ 0.001496] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes)
[ 0.001542] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes)
[ 0.002547] Disabling memory control group subsystem
[ 0.007099] ASID allocator initialised with 32768 entries
[ 0.009096] Hierarchical SRCU implementation.
[ 0.011349] EFI services will not be available.
[ 0.013163] smp: Bringing up secondary CPUs ...
[ 0.020365] Detected VIPT I-cache on CPU1
[ 0.020433] CPU1: Booted secondary processor [410fd034]
[ 0.027467] Detected VIPT I-cache on CPU2
[ 0.027514] CPU2: Booted secondary processor [410fd034]
[ 0.034580] Detected VIPT I-cache on CPU3
[ 0.034623] CPU3: Booted secondary processor [410fd034]
[ 0.034761] smp: Brought up 1 node, 4 CPUs
[ 0.034889] SMP: Total of 4 processors activated.
[ 0.034918] CPU features: detected feature: 32-bit EL0 Support
[ 0.034946] CPU features: detected feature: Kernel page table isolation (KPTI)
[ 0.038412] CPU: All CPU(s) started at EL2
[ 0.038460] alternatives: patching kernel code
[ 0.039778] devtmpfs: initialized
[ 0.051828] random: get_random_u32 called from bucket_table_alloc+0xf8/0x288 with crng_init=0
[ 0.052493] Enabled cp15_barrier support
[ 0.052534] Enabled setend support
[ 0.052875] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
[ 0.052929] futex hash table entries: 1024 (order: 5, 131072 bytes)
[ 0.053573] pinctrl core: initialized pinctrl subsystem
[ 0.053847] DMI not present or invalid.
[ 0.054187] NET: Registered protocol family 16
[ 0.059008] cpuidle: using governor menu
[ 0.059413] vdso: 2 pages (1 code @ ffffff935e987000, 1 data @ ffffff935ee84000)
[ 0.059462] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.062305] DMA: preallocated 256 KiB pool for atomic allocations
[ 0.062474] Serial: AMBA PL011 UART driver
[ 0.064752] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[ 0.065422] uart-pl011 3f201000.serial: could not find pctldev for node /soc/gpio@7e200000/uart0_pins, deferring probe
[ 0.098793] bcm2835-dma 3f007000.dma: DMA legacy API manager at ffffff800801d000, dmachans=0x1
[ 0.100559] SCSI subsystem initialized
[ 0.100823] usbcore: registered new interface driver usbfs
[ 0.100907] usbcore: registered new interface driver hub
[ 0.101054] usbcore: registered new device driver usb
[ 0.101315] dmi: Firmware registration failed.
[ 0.102146] raspberrypi-firmware soc:firmware: Attached to firmware from 2018-04-16 18:16
[ 0.103601] clocksource: Switched to clocksource arch_sys_counter
[ 0.194746] VFS: Disk quotas dquot_6.6.0
[ 0.194873] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.195097] FS-Cache: Loaded
[ 0.195398] CacheFiles: Loaded
[ 0.205840] NET: Registered protocol family 2
[ 0.206665] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.206806] TCP bind hash table entries: 8192 (order: 5, 131072 bytes)
[ 0.207045] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.207281] UDP hash table entries: 512 (order: 2, 16384 bytes)
[ 0.207351] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[ 0.207683] NET: Registered protocol family 1
[ 0.208285] RPC: Registered named UNIX socket transport module.
[ 0.208313] RPC: Registered udp transport module.
[ 0.208336] RPC: Registered tcp transport module.
[ 0.208359] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.210174] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
[ 0.212080] workingset: timestamp_bits=46 max_order=18 bucket_order=0
[ 0.222705] FS-Cache: Netfs 'nfs' registered for caching
[ 0.223481] NFS: Registering the id_resolver key type
[ 0.223556] Key type id_resolver registered
[ 0.223610] Key type id_legacy registered
[ 0.226275] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.226486] io scheduler noop registered
[ 0.226514] io scheduler deadline registered (default)
[ 0.226874] io scheduler cfq registered
[ 0.226903] io scheduler mq-deadline registered
[ 0.226929] io scheduler kyber registered
[ 0.229759] BCM2708FB: allocated DMA memory fac40000
[ 0.229820] BCM2708FB: allocated DMA channel 0 @ ffffff800801d000
[ 0.236547] Console: switching to colour frame buffer device 82x26
[ 0.240760] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[ 0.243806] bcm2835-rng 3f104000.rng: hwrng registered
[ 0.245366] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000 mem_size:0x40000000(1024 MiB)
[ 0.248970] gpiomem-bcm2835 3f200000.gpiomem: Initialised: Registers at 0x3f200000
[ 0.252073] cacheinfo: Unable to detect cache hierarchy for CPU 0
[ 0.265825] brd: module loaded
[ 0.278688] loop: module loaded
[ 0.280181] Loading iSCSI transport class v2.0-870.
[ 0.282536] libphy: Fixed MDIO Bus: probed
[ 0.284095] usbcore: registered new interface driver lan78xx
[ 0.285627] usbcore: registered new interface driver smsc95xx
[ 0.287047] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[ 0.516687] Core Release: 2.80a
[ 0.518123] Setting default values for core params
[ 0.519620] Finished setting default values for core params
[ 0.721385] Using Buffer DMA mode
[ 0.722878] Periodic Transfer Interrupt Enhancement - disabled
[ 0.724428] Multiprocessor Interrupt Enhancement - disabled
[ 0.725968] OTG VER PARAM: 0, OTG VER FLAG: 0
[ 0.727484] Dedicated Tx FIFOs mode
[ 0.729416] WARN::dwc_otg_hcd_init:1046: FIQ DMA bounce buffers: virt = 0x08181000 dma = 0xfac54000 len=9024
[ 0.732396] FIQ FSM acceleration enabled for :
[ 0.732396] Non-periodic Split Transactions
[ 0.732396] Periodic Split Transactions
[ 0.732396] High-Speed Isochronous Endpoints
[ 0.732396] Interrupt/Control Split Transaction hack enabled
[ 0.739158] WARN::hcd_init_fiq:486: MPHI regs_base at 0x0803d000
[ 0.740644] dwc_otg 3f980000.usb: DWC OTG Controller
[ 0.742060] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[ 0.743518] dwc_otg 3f980000.usb: irq 15, io mem 0x00000000
[ 0.744998] Init: Port Power? op_state=1
[ 0.746408] Init: Power Port (0)
[ 0.748009] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 0.749465] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 0.750912] usb usb1: Product: DWC OTG Controller
[ 0.752324] usb usb1: Manufacturer: Linux 4.14.44-v8 dwc_otg_hcd
[ 0.753747] usb usb1: SerialNumber: 3f980000.usb
[ 0.755847] hub 1-0:1.0: USB hub found
[ 0.757266] hub 1-0:1.0: 1 port detected
[ 0.759781] usbcore: registered new interface driver usb-storage
[ 0.761266] IR NEC protocol handler initialized
[ 0.762579] IR RC5(x/sz) protocol handler initialized
[ 0.763906] IR RC6 protocol handler initialized
[ 0.765216] IR JVC protocol handler initialized
[ 0.766499] IR Sony protocol handler initialized
[ 0.767791] IR SANYO protocol handler initialized
[ 0.769067] IR Sharp protocol handler initialized
[ 0.770289] IR MCE Keyboard/mouse protocol handler initialized
[ 0.771520] IR XMP protocol handler initialized
[ 0.773547] bcm2835-wdt 3f100000.watchdog: Broadcom BCM2835 watchdog timer
[ 0.775139] bcm2835-cpufreq: min=600000 max=1400000
[ 0.776864] sdhci: Secure Digital Host Controller Interface driver
[ 0.778189] sdhci: Copyright(c) Pierre Ossman
[ 0.779863] mmc-bcm2835 3f300000.mmc: could not get clk, deferring probe
[ 0.781564] sdhost-bcm2835 3f202000.mmc: could not get clk, deferring probe
[ 0.783025] Error: Driver 'sdhost-bcm2835' is already registered, aborting...
[ 0.784402] sdhci-pltfm: SDHCI platform and OF driver helper
[ 0.787299] ledtrig-cpu: registered to indicate activity on CPUs
[ 0.788891] hidraw: raw HID events driver (C) Jiri Kosina
[ 0.790503] usbcore: registered new interface driver usbhid
[ 0.791943] usbhid: USB HID core driver
[ 0.793628] Initializing XFRM netlink socket
[ 0.795053] NET: Registered protocol family 17
[ 0.796574] Key type dns_resolver registered
[ 0.799103] registered taskstats version 1
[ 0.808718] uart-pl011 3f201000.serial: cts_event_workaround enabled
[ 0.810335] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 72, base_baud = 0) is a PL011 rev2
[ 0.969721] Indeed it is in host mode hprt0 = 00021501
[ 1.049682] random: fast init done
[ 1.140631] usb 1-1: new high-speed USB device number 2 using dwc_otg
[ 1.140845] Indeed it is in host mode hprt0 = 00001101
[ 1.330474] usb 1-1: New USB device found, idVendor=0424, idProduct=2514
[ 1.330484] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 1.338757] hub 1-1:1.0: USB hub found
[ 1.344770] hub 1-1:1.0: 4 ports detected
[ 1.658629] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[ 1.752423] usb 1-1.1: New USB device found, idVendor=0424, idProduct=2514
[ 1.752433] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 1.756889] hub 1-1.1:1.0: USB hub found
[ 1.763743] hub 1-1.1:1.0: 3 ports detected
[ 1.930182] console [ttyAMA0] enabled
[ 1.937478] 3f215040.serial: ttyS0 at MMIO 0x0 (irq = 151, base_baud = 50000000) is a 16550
[ 1.950020] mmc-bcm2835 3f300000.mmc: mmc_debug:0 mmc_debug2:0
[ 1.957485] mmc-bcm2835 3f300000.mmc: DMA channel allocated
[ 1.989444] sdhost: log_buf @ ffffff80080ad000 (fac53000)
[ 2.019720] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[ 2.028350] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 2.036963] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 2.046704] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[ 2.053553] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[ 2.055347] of_cfs_init
[ 2.055473] of_cfs_init: OK
[ 2.068540] Waiting for root device PARTUUID=0ba16b58-02...
[ 2.121207] dwc_otg_handle_wakeup_detected_intr lxstate = 2
[ 2.147317] mmc0: host does not support reading read-only switch, assuming write-enable
[ 2.161324] mmc0: new high speed SDHC card at address 0002
[ 2.168762] bounce: isa pool size: 16 pages
[ 2.174533] mmcblk0: mmc0:0002 SD 14.9 GiB
[ 2.182341] mmcblk0: p1 p2
[ 2.189905] mmc1: new high speed SDIO card at address 0001
[ 2.413640] usb 1-1.1.1: new high-speed USB device number 4 using dwc_otg
[ 2.510248] usb 1-1.1.1: New USB device found, idVendor=0424, idProduct=7800
[ 2.518633] usb 1-1.1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2.798714] random: crng init done
[ 2.804983] libphy: lan78xx-mdiobus: probed
[ 2.964130] EXT4-fs (mmcblk0p2): recovery complete
[ 2.977327] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 2.988316] VFS: Mounted root (ext4 filesystem) on device 179:2.
[ 2.997229] devtmpfs: mounted
[ 3.006690] Freeing unused kernel memory: 2688K
[ 3.396876] systemd[1]: System time before build time, advancing clock.
[ 3.559055] NET: Registered protocol family 10
[ 3.566551] Segment Routing with IPv6
[ 3.586498] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 3.629367] systemd[1]: systemd 232 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSE)
[ 3.652759] systemd[1]: Detected architecture arm64.
[ 3.672708] systemd[1]: Set hostname to .
[ 3.724075] uart-pl011 3f201000.serial: no DMA platform data
[ 4.085268] systemd[1]: Listening on udev Control Socket.
[ 4.095346] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[ 4.108577] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[ 4.122232] systemd[1]: Listening on udev Kernel Socket.
[ 4.131470] systemd[1]: Reached target Paths.
[ 4.140402] systemd[1]: Created slice User and Session Slice.
[ 4.150043] systemd[1]: Reached target Encrypted Volumes.
[ 4.474295] systemd-journald[100]: Received request to flush runtime journal from PID 1
[ 4.783802] vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[ 4.848281] vchiq: vchiq_init_state: slot_zero = ffffff8008b0c000, is_master = 0
[ 4.991577] lan78xx 1-1.1.1:1.0 enxb827eba1dddd: renamed from eth0
[ 5.207201] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[ 5.237213] brcmfmac: brcmf_fw_map_chip_to_name: using brcm/brcmfmac43455-sdio.bin for chip 0x004345(17221) rev 0x000006
[ 5.258153] usbcore: registered new interface driver brcmfmac
[ 5.483884] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Feb 27 2018 03:15:32 version 7.45.154 (r684107 CY) FWID 01-4fb4
[ 5.505274] brcmfmac: brcmf_c_preinit_dcmds: CLM version = API: 12.2 Data: 9.10.105 Compiler: 1.29.4 ClmImport: 1.36.3 Creation: 20
[ 6.207147] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 6.216509] brcmfmac: power management disabled
[ 9.341277] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
Debian GNU/Linux 9 debianOnRpi ttyAMA0
debianOnRpi login: jiangxianxu
Password:
Last login: Sat Jun 2 03:16:18 SST 2018 from 192.168.0.102 on pts/0
Linux debianOnRpi 4.14.44-v8 #3 SMP PREEMPT Thu May 31 20:50:49 CST 2018 aarch64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
jiangxianxu@debianOnRpi:~$ ls
a a.c
jiangxianxu@debianOnRpi:~$ no
-bash: no: command not found
jiangxianxu@debianOnRpi:~$ ll
total 16
-rwxr-xr-x 1 jiangxianxu jiangxianxu 9312 Jun 1 18:01 a
-rw-r--r-- 1 jiangxianxu jiangxianxu 163 Jun 1 18:01 a.c
jiangxianxu@debianOnRpi:~$
6、修改/etc/wpa_supplicant/wpa_supplicant.conf文件,将我的WIFI热点修改为你自己要连接的热点即可。
jiangxianxu@debianOnRpi:~$ cat /etc/wpa_supplicant/wpa_supplicant.conf
#ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=CN
network={
ssid="your ssid"
psk="your passwd"
}
jiangxianxu@debianOnRpi:~$
7、重新开机,树莓派将自动连接到新的WIFI热点中,后续即可通过ssh的方式连接到树莓派(这里需要注意enxb827eba1dddd即为有线网接口,老版本的系统称之为eth0口):
jiangxianxu@debianOnRpi:~$ sudo ifconfig -a
enxb827eba1dddd: flags=4098 mtu 1500
ether b8:27:eb:a1:dd:dd txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4163 mtu 1500
inet 192.168.0.110 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::ba27:ebff:fef4:8888 prefixlen 64 scopeid 0x20
ether b8:27:eb:f4:88:88 txqueuelen 1000 (Ethernet)
RX packets 50 bytes 6422 (6.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 27 bytes 3038 (2.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
jiangxianxu@debianOnRpi:~$
8、通过ssh的方式连接树莓派:
jiangxianxu@debian:/data/work/raspberrypi/debian$ ssh -p 1314 [email protected]
[email protected]'s password:
Linux debianOnRpi 4.14.44-v8 #3 SMP PREEMPT Thu May 31 20:50:49 CST 2018 aarch64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Fri Jun 15 03:57:52 2018
jiangxianxu@debianOnRpi:~$
jiangxianxu@debianOnRpi:~$ ll
total 16
-rwxr-xr-x 1 jiangxianxu jiangxianxu 9312 Jun 1 18:01 a
-rw-r--r-- 1 jiangxianxu jiangxianxu 163 Jun 1 18:01 a.c
jiangxianxu@debianOnRpi:~$
9、由于镜像文件是裁剪了大小的,所以dd到TF卡上后,TF卡可用空间也只有3.5G,因而还需要在dd到TF后,对TF卡进行扩容,方法可以在我的另一篇博文中找到,链接:https://blog.csdn.net/u013451404/article/details/80552765
到此,分享和教程都已经完成。
10、与官方32位系统性能对比(使用的是unixbench测试软件进行简单的测试,从该软件的测试成绩来看,无论是单例程测试还是四例程测试,64位系统的成绩确实是要好于32位系统的):
32位
====================================================
BYTE UNIX Benchmarks (Version 5.1.3)
System: raspberrypi: GNU/Linux
OS: GNU/Linux -- 4.14.34-v7+ -- #1110 SMP Mon Apr 16 15:18:51 BST 2018
Machine: armv7l (unknown)
Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
CPU 0: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
CPU 1: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
CPU 2: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
CPU 3: ARMv7 Processor rev 4 (v7l) (0.0 bogomips)
19:40:48 up 16 min, 1 user, load average: 0.02, 0.04, 0.00; runlevel 5
------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 19:40:48 - 20:08:53
4 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 4999465.4 lps (10.0 s, 7 samples)
Double-Precision Whetstone 1208.4 MWIPS (9.9 s, 7 samples)
Execl Throughput 1079.5 lps (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 157182.0 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 47386.5 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 366933.5 KBps (30.0 s, 2 samples)
Pipe Throughput 344265.8 lps (10.0 s, 7 samples)
Pipe-based Context Switching 71365.7 lps (10.0 s, 7 samples)
Process Creation 2608.2 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 2101.8 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 656.6 lpm (60.0 s, 2 samples)
System Call Overhead 673175.9 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 4999465.4 428.4
Double-Precision Whetstone 55.0 1208.4 219.7
Execl Throughput 43.0 1079.5 251.0
File Copy 1024 bufsize 2000 maxblocks 3960.0 157182.0 396.9
File Copy 256 bufsize 500 maxblocks 1655.0 47386.5 286.3
File Copy 4096 bufsize 8000 maxblocks 5800.0 366933.5 632.6
Pipe Throughput 12440.0 344265.8 276.7
Pipe-based Context Switching 4000.0 71365.7 178.4
Process Creation 126.0 2608.2 207.0
Shell Scripts (1 concurrent) 42.4 2101.8 495.7
Shell Scripts (8 concurrent) 6.0 656.6 1094.3
System Call Overhead 15000.0 673175.9 448.8
========
System Benchmarks Index Score 356.6
------------------------------------------------------------------------
Benchmark Run: Mon Jun 18 2018 20:08:53 - 20:36:56
4 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables 19933309.3 lps (10.0 s, 7 samples)
Double-Precision Whetstone 4813.6 MWIPS (9.9 s, 7 samples)
Execl Throughput 2458.2 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 261784.4 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 74083.6 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 615716.8 KBps (30.0 s, 2 samples)
Pipe Throughput 1367597.0 lps (10.0 s, 7 samples)
Pipe-based Context Switching 281083.1 lps (10.0 s, 7 samples)
Process Creation 5312.5 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 5104.4 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 700.0 lpm (60.1 s, 2 samples)
System Call Overhead 2593023.6 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 19933309.3 1708.1
Double-Precision Whetstone 55.0 4813.6 875.2
Execl Throughput 43.0 2458.2 571.7
File Copy 1024 bufsize 2000 maxblocks 3960.0 261784.4 661.1
File Copy 256 bufsize 500 maxblocks 1655.0 74083.6 447.6
File Copy 4096 bufsize 8000 maxblocks 5800.0 615716.8 1061.6
Pipe Throughput 12440.0 1367597.0 1099.4
Pipe-based Context Switching 4000.0 281083.1 702.7
Process Creation 126.0 5312.5 421.6
Shell Scripts (1 concurrent) 42.4 5104.4 1203.9
Shell Scripts (8 concurrent) 6.0 700.0 1166.6
System Call Overhead 15000.0 2593023.6 1728.7
========
System Benchmarks Index Score 878.8
64位:
========================================================================
BYTE UNIX Benchmarks (Version 5.1.3)
System: debianOnRpi: GNU/Linux
OS: GNU/Linux -- 4.14.44-v8 -- #3 SMP PREEMPT Thu May 31 20:50:49 CST 2018
Machine: aarch64 (unknown)
Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
00:07:28 up 47 min, 2 users, load average: 0.28, 0.21, 0.74; runlevel
------------------------------------------------------------------------
Benchmark Run: Tue Jun 19 2018 00:07:28 - 00:35:30
0 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 6932858.6 lps (10.0 s, 7 samples)
Double-Precision Whetstone 1292.7 MWIPS (10.0 s, 7 samples)
Execl Throughput 1409.3 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 147907.7 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 43325.8 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 372730.8 KBps (30.0 s, 2 samples)
Pipe Throughput 367177.1 lps (10.0 s, 7 samples)
Pipe-based Context Switching 57982.3 lps (10.0 s, 7 samples)
Process Creation 2038.2 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 2543.0 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 742.7 lpm (60.1 s, 2 samples)
System Call Overhead 490551.3 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 6932858.6 594.1
Double-Precision Whetstone 55.0 1292.7 235.0
Execl Throughput 43.0 1409.3 327.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 147907.7 373.5
File Copy 256 bufsize 500 maxblocks 1655.0 43325.8 261.8
File Copy 4096 bufsize 8000 maxblocks 5800.0 372730.8 642.6
Pipe Throughput 12440.0 367177.1 295.2
Pipe-based Context Switching 4000.0 57982.3 145.0
Process Creation 126.0 2038.2 161.8
Shell Scripts (1 concurrent) 42.4 2543.0 599.8
Shell Scripts (8 concurrent) 6.0 742.7 1237.8
System Call Overhead 15000.0 490551.3 327.0
========
System Benchmarks Index Score 360.6
------------------------------------------------------------------------
Benchmark Run: Tue Jun 19 2018 00:35:30 - 01:03:34
0 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables 27777011.2 lps (10.0 s, 7 samples)
Double-Precision Whetstone 5173.0 MWIPS (10.1 s, 7 samples)
Execl Throughput 3315.5 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 236877.4 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 63935.9 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 592902.4 KBps (30.0 s, 2 samples)
Pipe Throughput 1467347.1 lps (10.0 s, 7 samples)
Pipe-based Context Switching 215370.7 lps (10.0 s, 7 samples)
Process Creation 6627.7 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 5723.1 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 772.0 lpm (60.2 s, 2 samples)
System Call Overhead 1925314.2 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 27777011.2 2380.2
Double-Precision Whetstone 55.0 5173.0 940.5
Execl Throughput 43.0 3315.5 771.0
File Copy 1024 bufsize 2000 maxblocks 3960.0 236877.4 598.2
File Copy 256 bufsize 500 maxblocks 1655.0 63935.9 386.3
File Copy 4096 bufsize 8000 maxblocks 5800.0 592902.4 1022.2
Pipe Throughput 12440.0 1467347.1 1179.5
Pipe-based Context Switching 4000.0 215370.7 538.4
Process Creation 126.0 6627.7 526.0
Shell Scripts (1 concurrent) 42.4 5723.1 1349.8
Shell Scripts (8 concurrent) 6.0 772.0 1286.7
System Call Overhead 15000.0 1925314.2 1283.5
========
System Benchmarks Index Score 905.4
说明:
1、系统的用户名是jiangxianxu,密码是linux,ssh服务端口为1314,登录后都可以自己修改,该用户已经添加到sudo
2、系统来源于debian ARM64版本,属于纯净版,无桌面环境,已经配置为163的源,可通过该源安装软件,所有通过apt-get从源安装的软件都是arm64的64位版本,所以这是一个真正的64位系统,不是一个只有64位内核的假系统。
3、目前我对图形界面无需求,所以没有做图形界面,如果后续有需求会放出带图形界面的版本,预计是LXDE或者XFCE等轻量级桌面,当然也可以直接使用apt包管理系统从源安装图形界面,不需要依赖于我发布另外的镜像。例如安装LXDE则可以使用如下两条命令即可:sudo apt-get update和sudo apt-get install lxde,如果要其它桌面可以将第二条命令中的lxde换成其它的即可,不过因为性能原因推荐安装LXDE和XFCE等轻量桌面,亲测LXDE开机后占用内存为170MB,还可以接受。安装完成后用HDMI连接显示器并重启树莓你就会自动进入到LXDE的图形登录界面。PS:记得要对TF卡扩容后再装桌面环境,不然可能会出现硬盘空间不够的错误。另外树莓派安装上系统后真的和电脑是一样的,除了性能外,没有太大差异!!
4、系统只在树莓派3B+上验证过,没有在其它设备上验证,所以只保证能在树莓派3B+上正常启动
5、乐意和广大爱好者交流,邮箱:[email protected]
6、转发请注明出处,感谢!!