PL/SQL Developer相关

Q:ORA-00972 identifier is too long 标识符过长

注册环境变量 GBK 字符即可

Q:lnitialization error,Oracle Client 没有正确安装

没有安装 oracle 驱动

Q:无法初始化 oci.dll 你确认已经安装了 32 位 Oracle Client 吗?

前往官网 oci.dll 下载 32 位插件

Cockpit安装配置速记

安装

参考文档:https://cockpit-project.org/running.html

本系统为 AlmaLinux 9

1
2
3
4
5
6
7
#dnf或yum下载
sudo dnf install cockpit
#启用
sudo systemctl enable --now cockpit.socket
#若有防火墙请注意放行
sudo firewall-cmd --add-service=cockpit
sudo firewall-cmd --add-service=cockpit --permanent

创建用户

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#新增子账号
sudo useradd -g root username
passwd username
#开启密码登录 PasswordAuthentication yes
vim /etc/ssh/sshd_config
#刷新sshd
systemctl restart sshd
#开启子账号sudo权限
vim /etc/sudoers

root all=(all) all
username all=(all) all

#刷新权限
chmod u-w /etc/sudoers

Podman

使用 Podman 前先对服务器进行配置国内源

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 安装完毕后
vim /etc/containers/registries.conf

# unqualified-search-registries = ["registry.access.redhat.com", "registry.redhat.io", "docker.io"]
unqualified-search-registries = ["docker.io"]
[[registry]]
prefix = "docker.io"
insecure = false
blocked = false
location = "docker.m.daocloud.io"
[[registry.mirror]]
# 请填写自己的阿里云镜像服务地址
location = "xxx.mirror.aliyuncs.com"
[[registry.mirror]]
location = "docker.jianmuhub.com"
[[registry.mirror]]
location = "dockerhub.timeweb.cloud"
[[registry.mirror]]
location = "docker.hlyun.org"
[[registry.mirror]]
location = "huecker.io"
[[registry.mirror]]
location = "noohub.ru"

# 保存后刷新配置
podman info

最后也要记得刷新 Cockpit 里 Podman API Service 服务

podman info

环境

PHP 相关

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 安装 php 预先环境
sudo dnf install -y git gcc gcc-c++ make zlib-devel bzip2 bzip2-devel readline-devel libffi-devel openssl-devel libxml2 libxml2-devel sqlite sqlite-devel libcurl libcurl-devel libpng libpng-devel libjpeg libjpeg-devel icu libicu libicu-devel oniguruma oniguruma-devel tidy libtidy-devel libxslt libxslt-devel libzip libzip-devel
# 倘若部分无法安装可以尝试开启CRB (CodeReady Builder) 和EPEL (Extra Packages for Enterprise Linux) 仓库重试
dnf config-manager --set-enabled crb -y
sudo dnf install epel-release
git clone https://github.com/phpenv/phpenv.git /opt/phpenv
# 注册环境变量
export PHPENV_ROOT="/opt/phpenv"
export PATH="$PHPENV_ROOT/bin:$PATH"
eval "$(phpenv init -)"
source ~/.bashrc
# 重载bash
# 验证phpenv 正常显示system (set by /opt/phpenv/version)
phpenv version
# 安装 php-build 插件
git clone https://github.com/php-build/php-build $(phpenv root)/plugins/php-build
# 验证符合需求版本
phpenv install --list
# 正式安装 php
phpenv install 8.1.30
# [Info]: Done
# [Info]: The Log File is not empty, but the Build did not fail. Maybe just warnings got logged. You can review the log in /tmp/php-build.8.1.30.20241115003455.log or rebuild with '--verbose' option
# [Success]: Built 8.1.30 successfully.
phpenv versions
phpenv global 8.1.30
php -v
# PHP 8.1.30 (cli) (built: Nov 15 2024 17:42:32) (NTS)
# Copyright (c) The PHP Group
# Zend Engine v4.1.30, Copyright (c) Zend Technologies

# 正式安装 php-fpm 驱动

推荐应用

  • nginx-proxy-manager

https://hub.docker.com/r/jlesage/nginx-proxy-manager/tags

podman pull jlesage/nginx-proxy-manager

在 Cockpit 里 Podman 容器,创建来自docker.io/jlesage/nginx-proxy-manager:latest 镜像包容器。

<font style="color:rgb(21, 21, 21);">端口:0.0.0.0:8080 → 8080/tcp 0.0.0.0:8181 → 8181/tcp</font>

<font style="color:rgb(21, 21, 21);">环境变量:TZ=Asia/Shanghai</font>

账号密码可以看日志:info Creating a new user: admin@example.com with password: changeme

  • nginx-ui

  • 文件管理器

https://github.com/45Drives/cockpit-navigator

1
2
3
4
5
nmcli con show        # 列出所有连接
nmcli con modify <connection-UUID> ipv4.dns "8.8.8.8 8.8.4.4"
nmcli con up <connection-UUID>
sudo systemctl restart NetworkManager
cat /etc/resolv.conf

在ARM64架构Linux上运行Android

使用鲲鹏内核 KBox 虚拟

安装 kbox 一键部署

sudo apt install console-setup kbox

安装目标应用

sudo android-appmgr.sh install xxx.apk

查看应用列表

sudo android-appmgr.sh package-list

卸载目标应用

sudo android-appmgr.sh uninstall com.wandoujia.phoenix2

使用 AnBox 虚拟

安装 Anbox 驱动器

sudo apt install anbox

安装 Anbox 内核模块

git clone [https://github.com/anbox/anbox-modules.git](https://github.com/anbox/anbox-modules.git)

安装 dkms(默认已有)

sudo apt install dkms

安装配置文件

sudo cp anbox.conf /etc/modules-load.d/

sudo cp 99-anbox.rules /lib/udev/rules.d/

软连接准备

sudo cp -rT ashmem /usr/src/anbox-ashmem-1

sudo cp -rT binder /usr/src/anbox-binder-1

使用 dkms 进行构建和安装

sudo dkms install anbox-ashmem/1

sudo dkms install anbox-binder/1

加载内核模块

sudo modprobe ashmem_linux

sudo modprobe binder_linux

查看安装状态

1
2
3
4
5
6
7
8
9
lsmod | grep -e ashmem_linux -e binder_linux

binder_linux 114688 62
ashmem_linux 20480 0

ls -alh /dev/binder /dev/ashmem

crw-rw-rw-1 root root 10, 53 7 16 18:15 /dev/ashmem
crw-rw-rw-1 root root 10, 53 7 16 18:15 /dev/binder

下载 Android 镜像

官方提供的 arm64 镜像不能正常启动,但可以使用别人已经编译好的

链接: https://pan.baidu.com/s/1QDaDtCi4MIMLbQyc-Ov0UA 提取码: w6av

链接: https://pan.baidu.com/s/1P-SZOl0TUoy3QXV9-UCo_A 密码: 4988

https://build.anbox.io/android-images/2017/06/12/android_1_armhf.img
https://build.anbox.io/android-images/2017/08/04/android_1_arm64.img
https://build.anbox.io/android-images/2018/07/19/android_amd64.img

也可使用 Ubuntu Touch 项目提供的 Anbox-images 镜像

https://cdimage.ubports.com/anbox-images/android-armhf-32binder.img
https://cdimage.ubports.com/anbox-images/android-armhf-64binder.img

下载完毕后复制镜像

cp android.img /var/lib/anbox/android.img

启动 Anbox 容器管理器

sudo service anbox-container-manager start

启动 Anbox Session 管理器

anbox session-manager

查看 Anbox 容器管理器状态

anbox session-manager

anbox system-info

若无问题则可以启动 Anbox

anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity

使用 Ueginer 虚拟(强化版 Anbox)

GitHub - gfdgd-xi/uengine-runner: 新版本 Deepin/UOS 发布后,可以在应用商店安装部分官方已适配的安卓应用,对爱好者来说,不能自己安装 APK 软件包始终差点意思,本程序可以为 Deepin/UOS 上的 UEngine 安卓运行环境安装自定义 APK 软件包,并能发送安装的 APK 包启动菜单到桌面或系统菜单。

使用 Waydroid 虚拟

Waydro

GitHub - gfdgd-xi/waydroid-runner: Waydroid 运行器是可以通过 GUI 形式半自动配置 Waydroid 的工具,使用户使用 Waydroid 更为方便。Waydroid 本身存在很多因 AOSP 未考虑 PC 用户而产生的问题(如没有自带 Houdini,默认英语,默认非小窗模式)而使用户使用起来非常难受,本运行器支持以 GUI 形式自动化安装以及配置 Waydroid,并会创建快捷控制的快捷方式,可以用于玩游戏/刷视频/Android 开发等。

使用 xDroid 虚拟

xDroid

国产适配化 xDroid