2023年10月15日 星期日

java servlet printing from intranet printer on Debian

 apt-get install cups cups-bsd

cups-bsd contain lpr command

lpstat -p

lpadmin -d printername // set default printer

2023年5月28日 星期日

postgresql replication with docker-compose in AS1102T

docker-compose.yml

version: '2'


services:

  postgresql-slave:

    image: 'postgres:13'

    ports:

      - '5433:5433'

    environment:

      - POSTGRES_USERNAME=postgres

      - POSTGRES_PASSWORD=password

    volumes:

      - ../postgresql/data:/var/lib/postgresql/data


    networks:

      - disable_ipv6



networks:

  disable_ipv6:

    external: true


postgresql-master
    su postgres 
    psql -p 5433 
    CREATE USER replicator WITH REPLICATION ENCRYPTED PASSWORD 'password'; 
    SELECT * FROM pg_create_physical_replication_slot('replication_slot_slave1');

 postgresql.conf: 
     wal_level = replica 
 pg_hba.conf: 
     host replication replicator 0.0.0.0/0 trust 

postgresql-slave
exec docker-compose
    docker-compose exec -it postgresql-slave bash 
    cd /var/lib/postgresql/data  

    postgresql.conf: 
       wal_level = replica 
       primary_conninfo = 'user=replicator password=password channel_binding=prefer host=masterip port=5433 sslmode=prefer sslcompression=0 ssl_min_protocol_version=TLSv1.2 gssencmode=prefer krbsrvname=postgres target_session_attrs=any'
       primary_slot_name = 'replication_slot_slave1'

       hot_standby = on 
       restore_command = 'cp /var/lib/postgresql/data/pg_wal/%f "%p"' 
    mkdir masterdata 
    cd masterdata 
    pg_basebackup -h masterip -U replicator -p 5433 -D ./ -Fp -Xs -P -R -W 
    exit 
    docker-compose stop 
    postgresq/data: 
        mv *.conf ../ 
        mv masterdata ../ 
        rm -rf * 
        mv ../*.conf ./ 
        mv masterdata/* ./ 
    docker-compose start 

postgresql-master 
    su postgres 
    psql -p 5433 
    select * from pg_stat_replication;
    SELECT * FROM pg_replication_slots;

2023年5月24日 星期三

Debian apt-get update with error: timeout was reached

       記得那時有多一顆硬碟就把/var另外備份到多的硬碟再重新掛載。結果有一天硬碟掛了,舊有的/var資料比較舊、dpkg都亂了。只好強制升級,跑完升級後都會出現error: timeout was reached。

       勉強撐過一段時間之後終於有時間來找找解決辦法,東找找西找找最後發現沒裝packagekit,apt-get install packagekit之後就沒看見錯誤了。

2023年5月16日 星期二

Openwrt with RAIDON-BX32N(SL3650-LB2)


升級檔案->https://github.com/phchshow/openwrt-raidon-bx32n        

        前幾個禮拜突然想到很久之前買的儲存設備閒置,本來想趁著SSD便宜組個RAID1玩一下。結果設備有點舊,雖然在官網上可以找到升級檔,但是一樣舊,kernel版本只有2.6.31。

        本來想說修改升級檔讓admin取得root權限就好,順便跑跑debootstrap裝個minidlna發揮最後的殘值。但是還是有點不甘心,只好靠著幾年之前有稍微研究Android 2.3時有買uart的USB設備來碰碰運氣,明明看其他oxnas的只需要插三個pin。但是我用就沒辦法看到,只好去找先前是買什麼,才看到買的供電要由設備端供應,拿出三用電錶也只確認接地,一陣亂插之下運氣不錯可以看到uboot開機資訊。結果沒辦法輸入,後來東碰碰西碰碰另外兩條線碰在一起就可以輸入了,整個傻眼。

        原先想用其他oxnas版本來碰碰運氣看能不能直升,結果分區都不一樣,只能再研究研究怎麼編Openwrt,一研究就是好幾天,畢竟不是本科,靠著一些薄弱的知識東找西找總算是能夠生出一個穩定版本的Openwrt。不過也只限定在硬碟跟USB算穩定,LED燈跟風扇不知道怎麼控制。應該是i2c跟gpio,電路板也看不懂,有時間再來學習。

        最後雖然可以跑新的kernel,卻又受限在設備是32位元的,本來想跑Postgresql replication卻跑不了,再來想想能跑什麼服務。

 

2013年6月28日 星期五

compile tiap_drv.ko

make -C system/wlan/ti/WiLink_AP/platforms/os/linux KERNEL_DIR= $(KERNEL) ARCH="arm" CROSS_COMPILE="$(ANDROID_BUILD_TOP)/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-" HOST_PLATFORM="zoom2" REPORT_LOG=n

2013年2月25日 星期一

ramdisk and devtree for flipout

ramdisk:
    ./split_bootimg.pl CG35.smg
    mkdir ramdisk
    cd ramdisk
    gzip -dc ../CG35.smg-ramdisk.gz | cpio -i

    to new ramdisk:
    find . | cpio -o -H newc | gzip > ../newramdisk

devtree:
    apt-get install device-tree-compiler
    get device-tree directory from phone /proc
    dtc -f -I fs -O dtb -o devtree device-tree


reference: ramdisk:xda

2013年1月29日 星期二

ruth(MB511) device configure files for CM7, update rom status: RC Version 5

My ROM VERSION:
RUTEM_U3_01.14.16_DEBLUR_SIGNED_USARUTH15ND0RTINT056.0R_PDS000_USARUTHEHKTWEMARA_P011_A010_HWp3_1FF.sbf

RC version 5: v0.7.4
configure sources
gapps.zip

NOTICE:If you want update fix zip, you should use bootmenu to update.When boot at motologo,click click and click "vol -" to enter bootmenu. 
->because bootmenu executed by mot_boot_mode, so /system can't umount, only can remount.
--and update zip have to modify updater-script, remount /system.

can work:
camera
battd
fmradio
bluetooth
gps
sensors
usb connect
audio

half work:
video
-> 720p has problem.

wifi
->no softap.

ril
->I only use 2G service, so I can't test 3G.

2012年12月24日 星期一

flipout(rooted) overclock and drop voltage


insmod /system/lib/modules/overclock.ko[1] omap2_clk_init_cpufreq_table_addr=0xc00505b4
echo 50 > /proc/overclock/max_vsel
echo 800000 > /proc/overclock/max_rate

echo "1 600000" > freq_table
echo "2 400000" > freq_table
echo "3 200000" > freq_table
echo "4 125000" > freq_table


echo "1 125000000 16" > /proc/overclock/mpu_opps
echo "2 200000000 20" > /proc/overclock/mpu_opps
echo "3 400000000 30" > /proc/overclock/mpu_opps
echo "4 600000000 40" > /proc/overclock/mpu_opps

unstable[update]


echo 52 > /proc/overclock/max_vsel
echo 875000 > /proc/overclock/max_rate

echo "1 675000" > /proc/overclock/freq_table
echo "2 475000" > /proc/overclock/freq_table
echo "3 275000" > /proc/overclock/freq_table
echo "4 200000" > /proc/overclock/freq_table


echo "1 200000000 18" > /proc/overclock/mpu_opps
echo "2 275000000 22" > /proc/overclock/mpu_opps
echo "3 475000000 32" > /proc/overclock/mpu_opps
echo "4 675000000 42" > /proc/overclock/mpu_opps

[update]

echo 50 > /proc/overclock/max_vsel
echo 800000 > /proc/overclock/max_rate

echo "1 600000" > /proc/overclock/freq_table  
echo "2 400000" > /proc/overclock/freq_table  
echo "3 300000" > /proc/overclock/freq_table
echo "4 200000" > /proc/overclock/freq_table


echo "1 200000000 20" > /proc/overclock/mpu_opps
echo "2 300000000 25" > /proc/overclock/mpu_opps
echo "3 400000000 30" > /proc/overclock/mpu_opps
echo "4 600000000 40" > /proc/overclock/mpu_opps



2012年12月22日 星期六

steam on debian wheezy(x86_64) with ATI HD4650, play TF2.

add i386 architecture
#dpkg --add-architecture i386

use "Steam installer for Debian"[1]
#./steam_bootstrap.sh

use LD_DEBUG=libs to check i386 libs
# LD_DEBUG=libs steam

use ATI closed driver[2]

the question of "GL_EXT_texture_sRGB_decode", solved[3]

reference:[1]
               [2]
               [3]

2012年12月21日 星期五

2012年10月5日 星期五

My Openbox theme 'TheLunarCycle' with LXDE

about designed concept:
    iconify-> show the lunar eclipse
    max-> show half moon
    max_toggled-> show full moon
    close->show sun

close_hover:


iconify_hover:


max_toggled(left to right, Lunar eclipse, Full moon, Sun):


max(left to right, Lunar eclipse, Half Moon, Sun):


max_hover:



max_toggled_hover:



2012年9月10日 星期一

flipout (rooted), conservative and powersave module of cpufreq

flipout has no compiled conservative and powersave of cpufreq in kernel.
but we can use compile kernel for modules.

module files:
cpufreq_conservative.ko
cpufreq_powersave.ko

BTW: flipout must be rooted.

2012年7月23日 星期一

asus rt-n16 pppoe with jdownloader reconnect


#!/usr/bin/expect
spawn telnet 192.168.1.1
expect login:
send admin\r
expect Password:
send admin\r
send "killall pppd &\r"
send "nohup /usr/sbin/pppd file /tmp/ppp/options.wan0 nodetach &\r"
send exit\r
interact

save as a script file, than jdownloader can use it to reconnect.

2012年5月30日 星期三

2012年3月12日 星期一

xt502 CM7 z71 phone driver

when xt502 with CM7, the device become to z71 phone,
XP can't recognition the driver,
so we can use Google USB Driver package to install the driver.


1. download android SDK
2. use Android SDK Manager
3. in Extras, install Goole USB Driver package
4. the driver data will generated at extras directory
5. edit android_winusb.inf
the drive identify should be VID_0489&PID_C001
add to x86 or amd64


;Z71
%SingleAdbInterface%        = USB_Install, USB\VID_0489&PID_C001
%CompositeAdbInterface%     = USB_Install, USB\VID_0489&PID_C001&MI_01
;
6.install android_winusb.inf

2012年2月16日 星期四

tuning MB511 with sysctl

# white /system/etc/sysctl.conf

kernel.threads-max=4096 #max threads, smart phoen really use really use so much threads?
vm.swappiness = 0 #MB511 can't use swap, so...
vm.dirty_expire_centisecs=0
vm.dirty_writeback_centisecs=0
vm.min_free_kbytes = 4096 #keep minimum of 4MB idle space
vm.dirty_ratio = 90
vm.dirty_background_ratio = 70
vm.vfs_cache_pressure = 10
vm.panic_on_oom = 2
vm.oom_kill_allocating_task = 1 #use android memory manager
kernel.panic = 5 #Enabling kernel panic reboot
kernel.shmmax = 2147483648 #256MB
kernel.shmall = 16777216 #16MB

#userinit.sh
sysctl -p

echo "1536,2048,4096,8192,16384,24576" > /sys/module/lowmemorykiller/parameters/
minfree #use android memory manager


JUST FOR FUN!!