Hướng dẫn Debian — Ubuntu

I. Cài đặt

+ Tùy chọn cài vào EMMC (bộ nhớ trong)

Nếu bạn muốn cài vào EMMC, hãy gõ lệnh này trước khi tiến hành 2 tùy chọn phía dưới. Sau khi lệnh chạy xong, hãy tắt nguồn TX3 Mini, tháo thẻ nhớ, sau đó cắm lại nguồn để tiếp tục các bước phía dưới. Nếu bạn muốn cài trên thẻ nhớ, hãy bỏ qua dòng lệnh này./root/install-aml.sh

Armbian OPHUB

armbian-install

Chọn ID theo thông tin dưới:

N5 MAX S905X3

VERSION_CODEID='ubuntu'

VERSION_CODENAME='focal'

KERNEL_VERSION='5.15.49'

PACKAGED_DATE='2022-06-25'

**FDTFILE='meson-sm1-x96-air.dtb' (517)**

UBOOT_OVERLOAD='u-boot-x96maxplus.bin'

MAINLINE_UBOOT=''

ANDROID_UBOOT=''

MYBOX_UBOOT='/usr/lib/u-boot/mybox-bootloader.img'

SOC='s905x3'

K510='0'

+ Tùy chọn nâng lên Debian 11 rồi cài

Để nâng cấp Debian 10 lên Debian 11, gõ lần lượt các lệnh sau:

sudo apt update -y && sudo apt upgrade

sudo apt-get install \

apparmor \

jq \

wget \

curl \

udisks2 \

libglib2.0-bin \

network-manager \

dbus \

systemd-journal-remote -y

—-----------Cài docker----------------

curl -fsSL get.docker.com | sh

Chú ý: Kiểm tra phiên bản mới nhất tại đây

A. Sao chép địa chỉ liên kết phiên bản mới nhất của linux_x86_64.

wget https://github.com/home-assistant/os-agent/releases/download/1.4.1/os-agent_1.4.1_linux_x86_64.deb

sudo dpkg -i os-agent_1.4.1_linux_x86_64.deb

Sao chép địa chỉ liên kết phiên bản mới nhất của aarch64.

wget https://github.com/home-assistant/os-agent/releases/download/1.4.1/os-agent_1.4.1_linux_aarch64.deb

sudo dpkg -i os-agent_1.4.1_linux_aarch64.deb

—--------Install supervised-------------

wget https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb

sudo dpkg -i homeassistant-supervised.deb

Khi popup hiện lên, hãy chọn như trong ảnh:

2. Sửa lỗi Play Youtube trên Hassio

find / -name youtube.py

Tìm đến các file youtube.py theo link: _search_regex

Thay vào dòng này đoạn code dưới

'uploader_id': self._search_regex(r'/(?:channel/|user/|(?=@))([^/?&#]+)', owner_profile_url, 'uploader id', default=None),

=======Script Remove Log=======

  1. Tạo file

nano removelogs.sh

#!/bin/sh

log_path="/var/log/"

#delete files older than 3 days

find /var/log/ -mtime +3 -exec rm {} \\;

echo 'log files older than 3 days deleted from $log_path'

  1. Cấp quyền

sudo chmod +x removelogs.sh

  1. Chạy lệnh

crontab -e

Thêm dòng:

0 10 * * * ./removelogs.sh >/dev/null 2>&1

=======Reinstall Hassio========

  1. Tạo file

nano rehass.sh

—------------

# nano rehass.sh

# chmod 700 rehass.sh

# ./rehass.sh

#!/usr/bin/env bash

sudo systemctl disable apparmor

sudo systemctl disable hassio-apparmor.service

sudo systemctl disable hassio-supervisor.service

sudo systemctl daemon-reload

sudo systemctl reset-failed

sudo rm /etc/systemd/system/hassio-supervisor.service

sudo rm /etc/systemd/system/hassio-apparmor.service

# IMPORTANT: ONLY the home assistant docker containers

#sudo docker kill $(sudo docker ps -q) && sudo docker rm $(sudo docker ps -a -q)

sudo rm -rf /usr/share/hassio

sudo rm /usr/sbin/hassio-apparmor

sudo rm /usr/sbin/hassio-supervisor

sudo rm /usr/bin/ha

  1. Cấp quyền

sudo chmod 700 rehass.sh

  1. Chạy lệnh

./rehass.sh

I. Mount Disk

B1. Kiểm tra ổ cứng

lsblk

B2. Lệnh mout (thay sda,sdb):

sudo mount /dev/sda1 /media/data

B3. Lệnh tìm UUID disk

ls -al /dev/disk/by-uuid/

Tìm ổ cứng cần mount và sao chép UUID

B4. Tìm file /etc/fstab thêm dòng sau

/dev/sda1 /media/data ext4 defaults 0 0

Hoặc

UUID=xxxx /media/root ntfs defaults 0 0

B5. Test Fstab

findmnt --verify

-> https://confluence.jaytaala.com/display/TKB/Mount+drive+in+linux+and+set+auto-mount+at+boot

#=========REMOVE DOCKER CONTAINER=========

step1. stop and delete container.

sudo docker ps -a

sudo docker stop [container ID]

sudo docker rm -v [container ID]

step2. delete image

docker images (to check image ID)

docker rmi [image ID]

docker image prune -a

====Portainer Rename====

-----------------------------------------

Step 1: Install portainer with new tag***

docker pull portainer/portainer-ce

docker image tag portainer/portainer-ce:latest example/zung-ce:latest

docker image rm portainer/portainer-ce

docker run -d -p 8000:8000 -p 9000:9000 --name zung-ce --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer-ce:/data example/zung-ce:latest

-----------------------------------------

Step 3: Restart docker

sudo systemctl daemon-reload

sudo systemctl restart docker

***Update Portainer:***

docker stop zung-ce

docker rm zung-ceRepeat step 1

Uninstall Portainer

docker rm --force portainer

docker rmi portainer/portainer-ce

docker stop portainer-ce

docker rm portainer-ce

docker image rm portainer/portainer-ce

docker volume rm portainer_data

Cài đặt Sudo

su -

apt install sudo -y

usermod -aG sudo ngocdung

exit

Disable Sleep on Lid Close

Tạo script:

 nano turnoff_screen.sh

# nano turnoff_screen.sh

# sudo chmod +x /home/ngocdung/turnoff_screen.sh

#!/usr/bin/env bash

setterm --blank 5

sudo chmod +x /home/ngocdung/turnoff_screen.sh

Thêm vào crontab

sudo crontab -e

@reboot sh /home/ngocdung/turnoff_screen.sh

B2. Mask the targets using systemctl

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

Edit sudo nano /etc/systemd/logind.conf and change the accodring values

HandleLidSwitch=ignore

HandleLidSwitchDocked=ignore

Just reboot

=====RClone Config====

A. Cài đặt Rclone

sudo -v ; curl https://rclone.org/install.sh | sudo bash

Config: rclone config

Check config: rclone lsd dropbox:Music

Copy dữ liệu

1.Từ local lên remote

rclone copy /DATA/Media/Music tochim1:Live -P --checkers 3 --tpslimit 3 --transfers 3 --drive-chunk-size 32M

2. Từ remote xuống local

rclone copy tochim1:Live /DATA/Media/Music -P

3. Từ remote đến remote

rclone copy badinh:Music tochim1:Music -P --checkers 3 --tpslimit 3 --transfers 3 --drive-chunk-size 32M --bwlimit "08:00,3M 11:00,1M 13:00,3M 18:00,1M 23:00,off"

Đồng bộ dữ liệu một chiều

Gdrive đến BOX

rclone sync /data/media/tochim tochim1:Music -P --checkers 3 -v --tpslimit 3 --transfers 3

Di chuyển dữ liệu

rclone move /media/downloads/audio tochim1:Live -P --checkers 3 -v --tpslimit 3 --transfers 3 --drive-chunk-size 32M --delete-empty-src-dirs

rclone move /data/local/ gcrypt: -P --checkers 3 --log-file /logs/rclone/upload.log -v --tpslimit 3 --transfers 3 --drive-chunk-size 32M --delete-empty-src-dirs

rclone size gupload:video/2.zip rclone copy gupload:video/2.zip /data/local –transfers=12

B. Mount Google Drive vào thư mục rỗng

Lệnh mount Google Drive

rclone mount --daemon gdrive: /media/gdrive/

rclone mount gdrive:Music /media/gdrive/ --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000

Tạo file:

sudo nano /home/ngocdung/dropbox.sh

Thêm dòng

#!/bin/bash

#!/usr/bin/rclone

# Make script executable with: chmod a+x /home/ngocdung/dropbox.sh

/usr/bin/rclone mount -v dropbox: /media/data/dropbox \

--config=/home/ngocdung/.config/rclone/rclone.conf \

--vfs-read-chunk-size 128M \

--vfs-read-chunk-size-limit 0 \

--buffer-size 64M \

--vfs-cache-max-age 30m \

--allow-other \

--cache-workers=8 \

--cache-writes \

--no-modtime \

--drive-use-trash \

--stats=0 \

--checkers=16 \

--dir-cache-time=300m \

--cache-info-age=300m &

Lưu lại và chạy Lệnh

sudo chmod +x /home/ngocdung/dropbox.sh

Thêm vào crontab

sudo crontab -e

Thêm dòng

@reboot sh /home/ngocdung/dropbox.sh

===========================================

C. Mount OneDrive

  1. Mount OneDrive vào 1 thư mục Rỗng

rclone --vfs-cache-mode writes mount "chuoikho": /media/data/onedrive

  1. Tạo file onedrive.service trong etc/systemd/user

# /etc/systemd/user/onedrive.service

[Unit]

Description = RClone Mount OneDrive

After = network-online.target

[Service]

ExecStart = /usr/bin/rclone mount chuoikho: /media/data/onedrive \

--allow-other

--buffer-size 256M

--dir-cache-time 72h

--drive-chunk-size 32M

--log-level INFO

--log-file /home/user/rclone.log

--umask 002

--vfs-read-chunk-size 128M

--vfs-read-chunk-size-limit off

--rc

ExecStop = /usr/bin/fusermount -uz /media/data/onedrive \

Restart = on-failure

RestartSec = 5s

[Install]

WantedBy = default.target

Chạy lệnh (Bỏ — user nếu không dùng account ROOT )

systemctl enable --user --now onedrive.service

Truy cập etc/fuse.conf thêm dòng:

user_allow_other

Reboot

Fail to start RClone VFS Service — Help and Support — rclone forum

Mount Onedrive with Gnu/Linux (linkedin.com)

======================================

— — — — — Dùng SCREEN — — — — -

screen -S name

screen -ls

screen -r name

Thoát Session Ctrl+a D

Kết thúc Session Ctrl+a K

Hẹn giờ tắt (+ Số phút): sudo shutdown -h +30

— — — — — — Xoá phần mềm trên Debian — — — — — —

apt list

sudo apt-get purge firefox* (Bấm Tab nếu chưa viết hết tên)

sudo apt-get autoremove

Ex: Linux Mint:

sudo apt-get purge hexchat* thunderbird* pix* onboard* rhythmbox* libreoffice* youtube* redshift* celluloid* hypnotix* transmission* timeshift* xfce4-dict*