Wiki source code of Armbian OS instruction

Version 117.1 by Kilight Cao on 2024/11/05 16:25

Hide last authors
Kilight Cao 15.1 1 **Table of Contents:**
2
3 {{toc/}}
4
Edwin Chen 1.1 5
Xiaoling 50.1 6
7
Xiaoling 48.2 8 = 1.  Overview =
9
10
Edwin Chen 1.1 11 This is a general instruction for the use of Armbian base OS of Dragino devices. Current models include:
12
13 * HP0A
14 * HP0C
15 * LPS8v2
Edwin Chen 55.1 16 * MS20
Edwin Chen 1.1 17
Xiaoling 90.3 18 (% style="display:none" %)
Xiaoling 90.2 19
20
Xiaoling 48.2 21 = 2.  Development Guide =
22
23
Xiaoling 70.4 24 For advanced users to develop Driver/ Linux etc.
Edwin Chen 4.1 25
Kilight Cao 25.1 26
Xiaoling 48.2 27 == 2.1  How to recompile LoRaWAN Concentrator Driver ( dragino-fwd package). ==
Edwin Chen 4.1 28
29
Xiaoling 48.3 30 === (% style="color:blue" %)**Step 1. Clone dragino-fwd package**(%%) ===
Edwin Chen 4.1 31
Kilight Cao 30.1 32
Xiaoling 70.4 33 **Requirements:**
Xiaoling 48.3 34
Xiaoling 70.4 35 **~ (% style="background-color:yellow; color:green" %)sudo apt install -y libsqlite3-dev(%%)**
Kilight Cao 30.1 36
Xiaoling 70.4 37 **~ (% style="background-color:yellow; color:green" %)sudo apt install -y libftdi1-dev(%%)**
Kilight Cao 11.1 38
Xiaoling 48.3 39
Xiaoling 70.4 40 **Run command clone dragino-fwd package: (% style="background-color:yellow; color:green" %)git clone https:~/~/github.com/dragino/dragino_fwd_src.git(%%)**
Kilight Cao 11.1 41
Xiaoling 70.4 42
Kilight Cao 11.1 43 [[image:image-20220527151010-1.png]]
44
45
Xiaoling 48.3 46 === (% style="color:blue" %)**Step 2. Compile dragino_fwd**(%%) ===
Kilight Cao 48.1 47
Kilight Cao 11.1 48
Xiaoling 70.4 49 **After cloning is complete, Run the command starts compiling:**
Xiaoling 48.3 50
Xiaoling 70.5 51 (% style="background-color:yellow; color:green" %)**Compile HP0C/HP0A fwd:  ./hp0z-make-deb.sh c**
Xiaoling 70.4 52
Xiaoling 70.5 53
Kilight Cao 11.1 54 The following example compilers HP0C fwd.
55
56 [[image:image-20220527153913-3.png]]
57
58
59
Xiaoling 70.5 60 When the compilation is complete a** (% style="color:blue" %)draginofwd-*.deb(%%) **package is generated.
61
Kilight Cao 11.1 62 [[image:image-20220527154311-4.png||height="385" width="773"]]
63
Kilight Cao 25.1 64
Xiaoling 48.3 65 === (% style="color:blue" %)**Step 3. Install the dragino_fwd**(%%) ===
Kilight Cao 11.1 66
Kilight Cao 14.1 67
Xiaoling 70.4 68 **Run command:**
Kilight Cao 11.1 69
Xiaoling 70.5 70 (% style="background-color:yellow; color:green" %)**dpkg -i draginofwd-*.deb **
Kilight Cao 11.1 71
Xiaoling 70.4 72
Kilight Cao 11.1 73 [[image:image-20220527154811-5.png]]
74
75
Xiaoling 48.3 76 === (% style="color:blue" %)**Step 4. Test**(%%) ===
Kilight Cao 14.1 77
Xiaoling 48.3 78
Xiaoling 70.5 79 **Check the dragino_fwd log:**
Kilight Cao 11.1 80
Xiaoling 70.5 81 (% style="background-color:yellow; color:green" %)**journalctl -u draginofwd -f**
Kilight Cao 11.1 82
Xiaoling 70.4 83
Kilight Cao 13.1 84 [[image:image-20220527165221-7.png||height="182" width="931"]]
Kilight Cao 11.1 85
Xiaoling 48.3 86
Xiaoling 70.5 87 **Start/stop dragino_fwd via systemctl:**
Kilight Cao 11.1 88
Xiaoling 70.5 89 (% style="background-color:yellow; color:green" %)**systemctl start draginofwd**
Kilight Cao 13.1 90
Xiaoling 70.5 91 (% style="background-color:yellow; color:green" %)**systemctl stop draginofwd**
Xiaoye 46.1 92
Kilight Cao 13.1 93
Xiaoling 48.3 94 == 2.2  How to clone Complete OS on the EMMC to SD card ==
Kilight Cao 27.1 95
Xiaoling 48.3 96
Xiaoye 113.1 97 **2.2.1 Prepare a USB flash drive/SD card and plug it into the USB port of the gateway.**
Xiaoling 67.2 98
Xiaoye 51.1 99
Xiaoye 114.1 100
101
Xiaoye 113.1 102 **2.2.2 Mounting a USB Flash Drive/SD Card in the Linux CLI**
Xiaoye 51.1 103
104
105
106
Xiaoye 114.1 107 **2.2.3 Using the dd command, copy Emmc as an img file**
108
109
110 dd if=/etc/sidmem of=/dev/mmcblk2p2 bs=1M count=1
111
112
113
Xiaoye 113.1 114 **2.2.4 Export the img file and follow the steps in 2.3 for burning**
Xiaoye 51.1 115
116
Xiaoye 102.1 117 == 2.3  How to flash a new image(OS) to the gateway(LPS8V2) ==
Xiaoye 98.1 118
119
Xiaoye 102.1 120 Since the gateway has a large system, you need to use the sd card to reflash the system for the gateway
Xiaoye 98.1 121
Xiaoye 102.1 122
123 //2.3.1: Making an SD card with the new image//
124
125 //2.3.2: Instal the SD card to the gateway//
126
127 //2.3.3: Flash the image to the gateway's built memory from the SD card//
128
129 //2.3.4: Finished the process of flash and power cycle the gateway//
130
131
Xiaoye 98.1 132 ==== (% style="background-color:yellow" %)**//Preparations~://**(%%) ====
133
Xiaoye 102.1 134 1. Prepare an SD card
135 1. Prepare a card reader device
Kilight Cao 112.1 136 1. Download the OS image from the release.image~: **[[draginolps8v2-release-v1.7>>http://repo.dragino.com/release/hp0c-image/]]**
Xiaoye 98.1 137 1. A Flash software tool ( Such as v1.7.9 from [[balenaEtcher>>url:https://www.balena.io/etcher/]] )
Xiaoye 102.1 138 1. SD Card [[format>>url:http://repo.dragino.com/release/tool/PanasonicSDFormatter.zip]] tool
Xiaoye 98.1 139
Xiaoye 102.1 140 === **2.3.1 Making an SD Card with the new image** ===
141
142
Kilight Cao 97.1 143 ==== Step 1.  Formatting the SD Card ====
144
145 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609111027-9.png?rev=1.1||alt="image-20220609111027-9.png" height="318" width="292"]]
146
147
148 ==== Step 2. Select the OS image ====
149
150 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104907-8.png?rev=1.1||alt="image-20220609104907-8.png" height="435" width="689"]]
151
152
153 ==== Step 3. Select the target ====
154
155 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104637-2.png?rev=1.1||alt="image-20220609104637-2.png" height="436" width="690"]]
156
157 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104701-3.png?rev=1.1||alt="image-20220609104701-3.png" height="436" width="690"]]
158
159
160 ==== Step 4. Flash start ====
161
162 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104727-4.png?rev=1.1||alt="image-20220609104727-4.png" height="435" width="689"]]
163
164 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104741-5.png?rev=1.1||alt="image-20220609104741-5.png" height="434" width="687"]]
165
166
167
Xiaoye 102.1 168 === **2.3.2 Instal the SD card to the gateway** ===
Xiaoling 67.2 169
Xiaoye 98.1 170 1. Open the device's enclosure, and put the SD card into the SD card slot
Xiaoye 51.1 171
Xiaoye 102.1 172 [[image:image-20230712201032-1.png]]
Xiaoye 51.1 173
Kilight Cao 97.1 174
Xiaoye 102.1 175 2. Power the gateway with 5V2A, and access the gateway's Ethernet port to your PC
Kilight Cao 97.1 176
Xiaoye 102.1 177 [[image:image-20230712201458-3.png||height="649" width="832"]]
Kilight Cao 97.1 178
179
Xiaoye 102.1 180 Note: The PWR LED on red
Kilight Cao 97.1 181
Xiaoye 102.1 182 The  LAN LED blink
Kilight Cao 97.1 183
Xiaoye 102.1 184 The SYS LED on red
Kilight Cao 97.1 185
Xiaoye 102.1 186
187
Kilight Cao 115.1 188 === **3.2.3 Flash the image to the gateway's built memory from the SD card(LPS8v2)** ===
Xiaoye 102.1 189
190
191 Access the gateway Linux CLI to flash the image to the gateway's built memory
192
193
194 * **Use the IP address to access the gateway CLI**
195
Xiaoye 98.1 196 Users can access the gateway CLI via the SSH protocol. Make sure your PC and the gateway are connected to the same network, then use a SSH tool (such as [[putty>>url:http://www.chiark.greenend.org.uk/~~sgtatham/putty/download.html]] in Windows) to access it.
Kilight Cao 97.1 197
198
199 IP address:  IP address of gateway or **Fallback IP**(172.31.255.254)
200
201 Port:  22
202
203 User Name:      (% style="color:blue" %)**root**
204
205 Password:         (% style="color:blue" %)**dragino**(%%) (default)
206
207 //After logging in, you will be in the gateway CLI and can enter commands as shown below.//
208
209
210 [[image:image-20230508155357-1.png||height="225" width="634"]]
211
212
Xiaoling 70.4 213 **Run command:**
Kilight Cao 27.1 214
Kilight Cao 112.1 215 draginolps8v2-release-chirpsrtack-v1.7-240725 image :
Kilight Cao 27.1 216
Kilight Cao 112.1 217 (% style="background-color:#ffff00; color:#008000" %)** flash_emmc /usr/local/image/dragino-LPS8V2-ChirpStack-240725-1.img **
Xiaoling 70.4 218
Kilight Cao 112.1 219 draginolps8v2-release-ttnstack-v1.7-240712 image :
Kilight Cao 27.1 220
Kilight Cao 112.1 221 (% style="background-color:#ffff00; color:#008000" %)** flash_emmc /usr/local/image/dragino-LPS8V2-TTN-231124.img**
Kilight Cao 28.1 222
Kilight Cao 112.1 223 [[image:image-20241008091850-2.png]]
Kilight Cao 27.1 224
Kilight Cao 112.1 225 (% style="color:red" %)**Note: Note: After the flash is completed, please power off the device (run the command halt) and disconnect the power supply, and then unplug the SD card.**
Xiaoling 70.7 226
Kilight Cao 27.1 227
Kilight Cao 116.1 228 === **3.2.4 Flash the image to the gateway's built memory from the SD card(MS48-LR)** ===
Kilight Cao 115.1 229
230
231 Download the OS image from the release.image~: **[[MS48-LR-image>>https://www.dropbox.com/scl/fi/ug25bbwyk6gnqjnsee2m1/dragino-MS48-LR-231124.rar?rlkey=bqva7hkeft0m3haiui5uj12sv&st=ii6mp2g7&dl=0]]**
232
233
234 Access the gateway Linux CLI to flash the image to the gateway's built memory
235
236 * **Use the IP address to access the gateway CLI**
237
238 Users can access the gateway CLI via the SSH protocol. Make sure your PC and the gateway are connected to the same network, then use a SSH tool (such as [[putty>>url:http://www.chiark.greenend.org.uk/~~sgtatham/putty/download.html]] in Windows) to access it.
239
240 IP address:  IP address of gateway or **Fallback IP**(172.31.255.254)
241
242 Port:  22
243
244 User Name:      **root**
245
246 Password:         **dragino** (default)
247
248 //After logging in, you will be in the gateway CLI and can enter commands as shown below.//
249
250 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20230508155357-1.png?rev=1.1&width=634&height=225||alt="image-20230508155357-1.png" height="225" width="634"]]
251
252 **Run command:**
253
254 **nand-sata-install**
255
256 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20220602112051-1.png?rev=1.1||alt="image-20220602112051-1.png"]]
257
258 Select the **"Boot from eMMC - system on eMMC".**
259
260 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20220602112058-2.png?rev=1.1&width=646&height=292||alt="image-20220602112058-2.png" height="292" width="646"]]
261
262 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20220602112106-3.png?rev=1.1&width=643&height=301||alt="image-20220602112106-3.png" height="301" width="643"]]
263
264 Select the **"1  ext4"**
265
266 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20220602112113-4.png?rev=1.1&width=642&height=271||alt="image-20220602112113-4.png" height="271" width="642"]]
267
268 It takes 4-5 minutes to burn from SD card to eMMC
269
270 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20220602112119-5.png?rev=1.1&width=641&height=309||alt="image-20220602112119-5.png" height="309" width="641"]]
271
272 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20220602112125-6.png?rev=1.1&width=640&height=281||alt="image-20220602112125-6.png" height="281" width="640"]]
273
274 [[image:https://wiki.dragino.com/xwiki/bin/downloadrev/Main/Armbian%20OS%20instruction/WebHome/image-20220602112131-7.png?rev=1.1&width=638&height=241||alt="image-20220602112131-7.png" height="241" width="638"]]
275
276 **Note: After the flash is complete, power off the device and then remove the SD card.**
277
278
Kilight Cao 107.1 279 == 2.4 How to extend the gateway size of memory with SD card ==
Xiaoling 67.2 280
Xiaoling 72.2 281
Kilight Cao 107.1 282 Users can use the SD card slot to expand the gateway memory size by following the steps below
283
284
285 === 2.4.1 View SD card information ===
286
287 (% class="box infomessage" %)
288 (((
289 fdisk -l
290 )))
291
292 [[image:image-20230831150518-3.png]]
293
294
295 === 2.4.2 Displays the current file system disk usage statistics on Linux systems ===
296
297
298 (% class="box infomessage" %)
299 (((
300 df -h
301 )))
302
303 [[image:image-20230831150341-2.png]]
304
305
306 === 2.4.3 Mount SD card ===
307
308
309 (% class="box infomessage" %)
310 (((
311 mkdir /mnt/sd
312
313 mount /dev/mmcblk0p1 /mnt/sd
314 )))
315
316 After the mount is successful to check the file system disk usage on the Linux system again:
317
318 [[image:image-20230831151432-4.png]]
319
320
321 If the mount fails, you can format the file system and try the mount again
322
323 (% class="box infomessage" %)
324 (((
325 mkfs.ext4 /dev/mmcblk0p1
326 )))
327
328 == 2.5 Default Built Version ==
329
330
Edwin Chen 72.1 331 [[image:image-20220902155621-1.png]]
332
333
Kilight Cao 107.1 334 == 2.6 How to upgrade the nodejs version to the latest. ==
Edwin Chen 72.1 335
Xiaoye 78.1 336
337 By default, the nodejs uses the pre-install version v12 which is due to Debian the ultra-stable via ultra-old.
338
339 [[image:image-20221112145029-2.png]]
340
341 **If you want to upgrade the nodejs to the latest, please follow to use these commands on the gateway CIL.**
342
343
344 #install n, which is an Interactively Manage Your Node.js Versions
345
Xiaoye 83.1 346 [[image:image-20221112154230-3.png||height="89" width="689"]]
Xiaoye 78.1 347
348 (% class="box infomessage" %)
349 (((
350 **npm install -g n**
351 )))
352
353
354 #Install the latest LTS Node.js release (downloading if necessary)
355
Xiaoye 83.1 356 [[image:image-20221112154418-4.png||height="184" width="893"]]
357
Xiaoye 78.1 358 (% class="box infomessage" %)
359 (((
360 **n lts**
361 )))
362
363
364 #Remove all downloaded versions except the installed version
365
Xiaoye 83.1 366 [[image:image-20221112154456-5.png||height="139" width="899"]]
Xiaoye 78.1 367
368 (% class="box infomessage" %)
369 (((
370 **n prune**
371 )))
372
373
374 (% class="box infomessage" %)
375 (((
Xiaoye 83.1 376 **apt remove nodejs -y && apt autoremove -y && reboot**
Xiaoye 78.1 377 )))
378
379
380 Check the current version
381
Xiaoye 83.1 382 [[image:image-20221112154724-6.png]]
Xiaoye 78.1 383
384 (% class="box infomessage" %)
385 (((
386 **node -v**
387 )))
388
389
Kilight Cao 107.1 390 == 2.7 How to install Grafana and influxdb ==
Xiaoye 84.1 391
392
393 === **Grafana:** ===
394
395
396 (% class="box infomessage" %)
397 (((
398 curl https:~/~/packages.grafana.com/gpg.key | gpg ~-~-dearmor | sudo tee /usr/share/keyrings/grafana-archive-keyrings.gpg >/dev/null
399 echo "deb [signed-by=/usr/share/keyrings/grafana-archive-keyrings.gpg] https:~/~/packages.grafana.com/oss/deb stable main" | sudo tee /etc/apt/sources.list.d/grafana.list
400 apt update && apt install grafana
401 )))
402
403
404 Check the running status:
405
406
407 (% class="box infomessage" %)
408 (((
409 systemctl status grafana-server
410 )))
411
412
413 configuration path:
414
415
416 (% class="box infomessage" %)
417 (((
418 /etc/grafana/grafana.ini
419 )))
420
421
422 === **Influxdb:** ===
423
424
425 (% class="box infomessage" %)
426 (((
Kilight Cao 109.1 427 curl https:~/~/repos.influxdata.com/influxdata-archive_compat.key | gpg ~-~-dearmor | sudo tee /usr/share/keyrings/influxdb-archive-keyring.gpg >/dev/null
Xiaoye 84.1 428 echo "deb [signed-by=/usr/share/keyrings/influxdb-archive-keyring.gpg] https:~/~/repos.influxdata.com/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
429 apt update && apt install influxdb
430 )))
431
432
433 Check the running status:
434
435
436 (% class="box infomessage" %)
437 (((
438 systemctl status influxdb
439 )))
440
441
442 configuration path:
443
444
445 (% class="box infomessage" %)
446 (((
447 /etc/influxdb/influxdb.conf
448 )))
449
450
Xiaoling 95.6 451 = 3.  Package Management =
452
Kilight Cao 95.1 453 == 3.1 Default Package Maintain System ==
454
Xiaoling 95.6 455 === 3.1.1  How Package-Auto-Update works? ===
Kilight Cao 95.1 456
457
Xiaoling 67.2 458 By default, LPS8v2 / MS20 series products have an auto-update feature for main packages. The device will connect to Dragino's auto-update server and check for updates. 
459
460
461 (% style="color:blue" %)**When devices will check for updates**?
462
463 * Devices will check for updates for every boot.
464 * Devices will check for updates on every day midnight.
465
466 (% style="color:blue" %)**What packages will be checked for updates**?
467
468 dragino-httpd ~-~- Main Web UI http configuration
469
470 dragino-sid  ~-~- SN write and read tool
471
472 dragino-ui  ~-~- Gateway Web UI package
473
474 draginofwd   ~-~- UDP packet forwarder, LoRa Base Station
475
476 draginoups   ~-~- Miscellaneous between different versions
477
478
Xiaoling 70.9 479
Xiaoling 67.2 480 (% style="color:blue" %)**Location and changelog for packages**:
481
482 * Location: http:~/~/repo.dragino.com/release/tool/
483 * Changelog: [[http:~~/~~/repo.dragino.com/release/tool/Readme_HP0.txt>>http://repo.dragino.com/release/tool/Readme_HP0.txt]]
484
485 (% style="color:blue" %)**How to view auto-updated log**
486
487 You can view the log on the page of (% style="color:#037691" %)**System ~-~-> Package Management.**
488
489
490 [[image:1661305025451-220.png]]
491
492
Xiaoling 70.7 493
Xiaoling 67.2 494 (% style="color:blue" %)**Can I disable package-auto-update?**
495
Xiaoling 70.8 496 You can check the checkbox and click the(% style="color:red" %)** ‘SAVE’ **(%%)button to enable or disable the auto-update.
Xiaoling 67.2 497
498
499 [[image:1661305258501-636.png]]
500
501
Kilight Cao 95.1 502 === 3.1.2 How to manually update core packages? ===
Xiaoling 67.2 503
504
Xiaoling 70.8 505 You can click the (% style="color:red" %)**‘Manual Update’**(%%) to update the dragino's packages.
Xiaoling 67.2 506
507
508 [[image:1661305328295-218.png]]
509
510
Kilight Cao 95.1 511 === 3.1.3 How to manually update other packages? ===
Xiaoling 67.2 512
513
514 For the other packages, you have to access the device's CLI to do it via the apt command.
515
516
Kilight Cao 95.1 517 == 3.2 Set up a 3^^rd^^ party package maintain server ==
Xiaoling 67.2 518
Kilight Cao 95.1 519 === 3.2.1 Overview ===
Xiaoling 67.2 520
521
522 Customers can use their own package maintenance system instead of using the default one from Dragino. They need to set up a package maintenance system for Debian. Lots of instructions are available in Internet, below is a reference instruction.
523
524
Kilight Cao 95.1 525 === 3.2.2 Install Apache2 HTTP server ===
Xiaoling 67.2 526
527
Xiaoling 70.5 528 (% style="background-color:yellow; color:green" %)**apt install apache2**
Xiaoling 67.2 529
530
Kilight Cao 95.1 531 === 3.2.3 Creating Package Directories ===
Xiaoling 67.2 532
533
Xiaoling 70.5 534 **~ (% style="background-color:yellow; color:green" %)cd /var/www/html/(%%)**
Xiaoling 67.2 535
Xiaoling 70.5 536 **~ (% style="background-color:yellow; color:green" %)mkdir debian/release/dists/stable/main/binary-armhf/ -p(%%)**
Xiaoling 67.2 537
Xiaoling 70.5 538 **~ (% style="background-color:yellow; color:green" %)mkdir debian/release/pool/main/d/dragino/ -p(%%)**
Xiaoling 67.2 539
540
541 **Tree Structure:**
542
543 (% style="color:red" %)**Note: If you are not familiar with updating servers, most directory names are not recommended to be changed.**
544
545
546 └── debian
547
548 └── release
549
550 ├── dists
551
552 │   └── stable
553
554 │       └── main
555
556 │           └── binary-armhf
557
558 └── pool
559
560 └── main
561
562 └── d
563
Xiaoling 70.5 564 └── dragino   ~-~-> (% style="background-color:yellow; color:green" %)**This is the directory to store the packages. User can change it to other name.**
Xiaoling 67.2 565
566
Kilight Cao 95.1 567 === 3.2.4 Get deb packages ===
Xiaoling 67.2 568
569
570 The deb packages for auto-update can be placed in** (% style="color:blue" %)/var/www/html/debian/release/pool/main/d/dragino/(%%)**
571
572 Below is an example package(testing-0808.deb) for test purpose:
573
574
Xiaoling 70.5 575 **~ (% style="background-color:yellow; color:green" %)wget http:~/~/repo.dragino.com/release/tool/unimportant/testing-0808.deb(%%)**
Xiaoling 67.2 576
Xiaoling 70.5 577 **~ (% style="background-color:yellow; color:green" %)cp ./testing-0808.deb /var/www/html/debian/release/pool/main/d/dragino/(%%)**
Xiaoling 67.2 578
579
Kilight Cao 95.1 580 === 3.2.5 Generate Package Index file ===
Xiaoling 67.2 581
582
Xiaoling 70.5 583 (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/**
Xiaoling 67.2 584
Xiaoling 70.5 585 (% style="background-color:yellow; color:green" %)**dpkg-scanpackages pool/ > dists/stable/main/binary-armhf/Packages**
Xiaoling 67.2 586
Xiaoling 70.5 587 (% style="background-color:yellow; color:green" %)**cat dists/stable/main/binary-armhf/Packages | gzip -9 > dists/stable/main/binary-armhf/Packages.gz**
Xiaoling 67.2 588
589
590 (% style="color:red" %)**Note: Every time a package has been update, above comments need to be executed in the server to get the up-to-date package list.**
591
592
Kilight Cao 95.1 593 === 3.2.6 Generate Release file ===
Xiaoling 67.2 594
595
Xiaoling 70.10 596 ==== (% style="color:blue" %)**Create the generated script:**(%%) ====
Xiaoling 67.2 597
598
Xiaoling 70.5 599 (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable**
Xiaoling 67.2 600
601
Xiaoling 70.5 602 (% style="background-color:yellow; color:green" %)**wget [[http:~~/~~/repo.dragino.com/release/tool/unimportant/generate-release.sh>>url:http://repo.dragino.com/release/tool/unimportant/generate-release.sh]]**
Xiaoling 67.2 603
Xiaoling 70.5 604 (% style="background-color:yellow; color:green" %)**chmod + x ./generate-release.sh**
Xiaoling 67.2 605
Xiaoling 70.5 606 (% style="background-color:yellow; color:green" %)**./generate-release.sh > Release**
Xiaoling 67.2 607
608
Kilight Cao 95.1 609 === 3.2.7 Sign the Release file with gpg and generating Inrelease file ===
Xiaoling 67.2 610
611
Xiaoling 70.7 612 ==== (% style="color:blue" %)**Make sure auto-update server has gnupg**(%%) ====
Xiaoling 67.2 613
614
Xiaoling 70.5 615 (% style="background-color:yellow; color:green" %)**apt install gnupg**
Xiaoling 68.2 616
617
618
Xiaoling 70.7 619 ==== (% style="color:blue" %)**generate gpg key**(%%) ====
Xiaoling 67.2 620
621
Xiaoling 70.5 622 (% style="background-color:yellow; color:green" %)**gpg -gen-key**
Xiaoling 67.2 623
Xiaoling 68.2 624
Xiaoling 70.10 625 (% style="color:red" %)**Note: Fill in the content as required and remember the name and email address.**
Xiaoling 67.2 626
627
Xiaoling 68.2 628
Xiaoling 70.7 629 ==== (% style="color:blue" %)**Check the gen-key**(%%) ====
Xiaoling 67.2 630
631
Xiaoling 70.5 632 (% style="background-color:yellow; color:green" %)**gen -list-key**
Xiaoling 67.2 633
Xiaoling 68.2 634
635
Xiaoling 70.7 636 ==== (% style="color:blue" %)**Generate the release.gpg**(%%) ====
Xiaoling 67.2 637
638
Xiaoling 70.5 639 (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable**
Xiaoling 67.2 640
Xiaoling 70.5 641 (% style="background-color:yellow; color:green" %)**gpg ~-~-armor ~-~-detach-sign -o Release.gpg Release**
Xiaoling 67.2 642
643
Xiaoling 70.5 644 (% style="background-color:yellow; color:green" %)**gpg ~-~-clearsign -o InRelease Release**
Xiaoling 67.2 645
646
Xiaoling 68.2 647
Xiaoling 70.7 648 ==== (% style="color:blue" %)**Generate the public key**(%%) ====
Xiaoling 67.2 649
650
Xiaoling 70.5 651 (% style="background-color:yellow; color:green" %)**gpg ~-~-armor ~-~-output <name>.asc ~-~-export <email address>**
Xiaoling 67.2 652
Xiaoling 68.2 653
Xiaoling 67.2 654 **example: gpg ~-~-armor ~-~-output xiao.asc ~-~-export **[[xiaoye@dragino.cc>>mailto:xiaoye@dragino.cc]]
655
656
657
Kilight Cao 95.1 658 === 3.2.8 Add url as apt source in LPS8v2 / MS20 ===
Xiaoling 67.2 659
Xiaoling 68.2 660
661
Xiaoling 70.7 662 ==== (% style="color:blue" %)**Add the public key**(%%) ====
Xiaoling 67.2 663
664
Xiaoling 70.5 665 (% style="background-color:yellow; color:green" %)**cp xiao.asc /etc/apt/trusted.gpg.d/**
Xiaoling 67.2 666
Xiaoling 70.7 667
Xiaoling 68.2 668 (% style="color:red" %)**Note: First need to transfer the public key from auto-update server to device.**
Xiaoling 67.2 669
Xiaoling 68.2 670
671
Xiaoling 70.7 672 ==== (% style="color:blue" %)**Add the apt source list**(%%) ====
Xiaoling 67.2 673
Xiaoling 68.2 674
Xiaoling 67.2 675 Add the apt source list url and name this as test_server.list
676
Xiaoling 70.5 677 (% style="background-color:yellow; color:green" %)**echo "deb http:~/~/<IP_address or hostname>/debian/release stable main" | tee /etc/apt/sources.list.d/test_server.list**
Xiaoling 67.2 678
679
Xiaoling 68.2 680
Xiaoling 70.7 681 ==== (% style="color:blue" %)**Validate the apt repository**(%%) ====
Xiaoling 67.2 682
Xiaoling 68.2 683
Xiaoling 67.2 684 Get and install the testing package (download testing-0808.deb and test)
685
Xiaoling 70.5 686 (% style="background-color:yellow; color:green" %)**apt update && apt install testing**
Xiaoling 67.2 687
Xiaoling 68.2 688
Xiaoling 67.2 689 Example output:
690
Xiaoling 68.2 691 [[image:1661306420449-569.png]]
Xiaoling 67.2 692
693
Kilight Cao 95.1 694 === 3.2.9 Configure the gateway's auto-upgrade rules ===
Xiaoling 67.2 695
696
Xiaoling 70.7 697 ==== (% style="color:blue" %)**Remove dragino apt source**(%%) ====
Xiaoling 67.2 698
699
Xiaoling 70.5 700 (% style="background-color:yellow; color:green" %)**/etc/apt/sources.list**
Xiaoling 67.2 701
702
Xiaoling 70.2 703 [[image:1661306460134-112.png]]
Xiaoling 67.2 704
705
706
Xiaoling 70.7 707 ==== (% style="color:blue" %)**Set up automatic updates**(%%) ====
Xiaoling 67.2 708
709
Xiaoling 70.5 710 (% style="background-color:yellow; color:green" %)**Path : /usr/lib/dragino/dragino-apt-updates**
Xiaoling 67.2 711
Xiaoling 70.2 712
Xiaoling 67.2 713 The device performs automatic updates from this script,
714
715 But it will now only look for dragino as a keyword, so you need to replace the keyword dragino with your own keyword.
716
717
Xiaoling 70.2 718 [[image:1661306487761-768.png]]
Xiaoling 95.2 719
720
721