1. apt-get install dante-server
2.編輯 /etc/danted.conf
mv /etc/danted.conf /etc/danted.conf.ori
cat >/etc/danted.con <<EOF
# /etc/danted.conf
logoutput: syslog
user.privileged: root
user.unprivileged: nobody
# The listening network interface or address.
internal: 0.0.0.0 port=1080
# The proxying network interface or address.
external: eth0
# socks-rules determine what is proxied through the external interface.
# The default of "none" permits anonymous access.
#socksmethod: username
socksmethod: none
# client-rules determine who can connect to the internal interface.
# The default of "none" permits anonymous access.
clientmethod: none
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}
socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}
EOF
3.systemctl enable danted;systemctl start danted
4.測試
curl -v -x socks5://192.168.1.1:1080 http://www.google.com/
2020年12月30日 星期三
Debian 10 安裝 dante-server
2020年12月16日 星期三
Debian 10 xfce4 更改 wallpaper 筆記
xfconf-query --channel xfce4-desktop --property /backdrop/screen0/monitorDisplayPort-1/workspace0/last-image --set /home/1.jpg
相關指令及檔案
xfconf-query --channel xfce4-desktop --list
/usr/share/desktop-base/profiles/xdg-config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
Debian 10 Python 安裝 虛擬環境
apt-get install -y python-libvirt
apt-get install -y libvirt-dev
apt install -y python3-pip
pip3 install virtualenv
2020年12月15日 星期二
Proxmox 6.x LXC 設定quota 摘要
1.host lxc
apt install -y quota
2.lxc
resource configure enable quota
quotacheck -cmug /
quotaon /
2020年12月11日 星期五
bash 尋找可用的port
#!sh
j=10240
f(){ for i in $(netstat -an|grep TCP|awk '{print $2 }'|uniq|awk -F : '{print $2 }'|sort -n);do [ $1 -lt $i ]&&break;[ $1 -eq $i ]&&echo found&&break; done; };
p(){ for i in $(seq $1 65535);do [ -z "$(f $i)" ]&& echo $i && return 0;done;echo 0;return 1; };
ncvzn(){ r=$(echo|timeout ${3:-3} nc $1 $2 2>/dev/null);r0=$?;echo $r;return $r0;};
for i in p1 p2;do eval "$i=\$(p \$j);j=\$(expr \$$i + 1)";done;
echo $p1 $p2
2020年12月3日 星期四
pvcreate 錯誤訊息:Device /dev/sdx excluded by a filter.
原因為pvcreate 無法識別硬碟分割區訊息
pvcreate /dev/sdx
Device /dev/sdx excluded by a filter.
parted /dev/sdx
mklabel msdos
Proxmox VE 6.x 安裝 Proxmox backup server
echo "deb http://download.proxmox.com/debian/pbs buster pbs-no-subscription" >/etc/apt/sources.list.d/pbs-no-subscription.list
apt update
apt-get install proxmox-backup-server
Debian 10 瘦身摘要
清除 dpkg cache 相關檔案
/var/lib/apt/lists/
apt clean
apt autoremove --purge
保留所需的 kernel 及module
消除沒用的設定檔
dpkg -l | grep ^rc | cut -d' ' -f3 | sudo xargs dpkg --purge
移除相關多國語言支援
/usr/lib/locale/
/usr/share/locale
apt-get install localepurge
dpkg --configure localepurge
localepurge
參考資料
https://wiki.debian.org/ReduceDebian
2020年12月2日 星期三
Debian 10 安裝 tftp server
apt-get install -y tftpd xinetd
cat <<REM > /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
REM
systemctl enable xinetd
systemctl restart xinetd
2020年11月30日 星期一
DReichLab / EIG 安裝摘要(debian 10)
Python pip 常用指令
pip list 列出安裝清單
pip install :pacakagename: 安裝
pip install -v :packagename:==1.0 安裝指定版本
pip install -U :pacakagename: 更新
pip uninstall :pacakagename: 移除
pip install -r :requirements.txt: 安裝清單
pip freeze > :requirements.txt: 輸出清單
EIGENSOFT 安裝摘要
apt-get install -y libgsl0-dev libopenblas-dev gfortran liblapacke-dev
wget https://storage.googleapis.com/broad-alkesgroup-public/EIGENSOFT/EIG-6.1.4.tar.gz
安裝 RTG Tools
#!/bin/bash
# RTG Tools
# https://github.com/RealTimeGenomics/rtg-tools
apt install -y ant
target=/opt
cd $target
git clone https://github.com/RealTimeGenomics/rtg-tools.git
cd rtg-tools
ant runalltests
ant zip-nojre
cd $target
unzip ${target}/rtg-tools/dist/*
安裝 vcflib
Debian/Ubuntu apt-get install libvcflib-tools libvcflib-dev
by source
#!/bin/bash
#https://github.com/vcflib/vcflib
target=/opt
pwd=$(pwd)
apt install -y git make cmake libbz2-dev liblzma-dev libc6-dev
cd $target
git clone --recursive https://github.com/vcflib/vcflib.git
cd vcflib
make -j
cd bin
for i in $(find ${target}/vcflib/bin/ -type f -perm /a=x);do ln -s $i /usr/local/bin/$(basename $i);done;
cd $pwd
安裝 vcftools
#!/bin/bash
# http://vcftools.sourceforge.net/
src=https://nchc.dl.sourceforge.net/project/vcftools/vcftools_0.1.13.tar.gz?viasf=1
target=/opt
pwd=$(pwd)
mkdir -p ${target}
cd $target
wget -O- $src |tar zx
cd vcftools_0.1.13
make
cd bin
for i in $(find ${target}/vcftools_0.1.13/bin/ -type f -perm /a=x);do ln -s $i /usr/local/bin/$(basename $i);done;
cd $pwd
安裝 bcftools
#!/bin/bash
# install bcftools
# https://samtools.github.io/bcftools/
pwd=$(pwd);
target=/opt/
cd ${target};
apt install -y git automake libgsl-dev libcurl4-openssl-dev
git clone --recurse-submodules git://github.com/samtools/htslib.git
git clone git://github.com/samtools/bcftools.git
cd bcftools
# The following is optional:
#autoheader && autoconf && ./configure --enable-libgsl --enable-perl-filters
make
ln -s ${target}/bcftools/bcftools /usr/local/bin/bcftools
cd ${pwd};
安裝 plink 2
#!/bin/bash
# install PLINK 2.00 alpha
# https://www.cog-genomics.org/plink/2.0/
src=http://s3.amazonaws.com/plink2-assets/alpha2/plink2_linux_x86_64.zip
src=https://s3.amazonaws.com/plink2-assets/plink2_linux_x86_64_20211125.zip
target=/opt/PLINK2a
[ $(which busybox) ]&& { for i in wget unzip;do [ -f "/usr/local/bin/${i}" ] || ln -s $(which busybox) /usr/local/bin/${i}; done; };
for i in unzip wget;do [ $(which ${i}) ]&& : || { echo check ${i}: not found ${i}! &&exit 1; } ;done;
[ -d "$target" ]&&mv ${target} ${target}.$(date +%Y-%m-%d-%H-%M);
mkdir -p $target;cd $target;
echo $target >readme.txt;echo $src >>readme.txt
wget -q -O- $src | unzip -;
chmod a+x plink2;cd -;
for i in plink2;do [ -f "/usr/local/bin/${i}" ]&&mv /usr/local/bin/${i} /usr/local/bin/${i}.$(date +%Y-%m-%d-%H-%M); ln -s ${target}/${i} /usr/local/bin/${i};done;
~
2020年11月24日 星期二
Proxmox backup Server 安裝 OpenMediaVault 摘要
apt-get install --yes gnupg
wget -O "/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.asc" https://packages.openmediavault.org/public/archive.key
apt-key add "/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.asc"
cat <<EOF >> /etc/apt/sources.list.d/openmediavault.list
deb https://packages.openmediavault.org/public usul main
# deb https://downloads.sourceforge.net/project/openmediavault/packages usul main
## Uncomment the following line to add software from the proposed repository.
# deb https://packages.openmediavault.org/public usul-proposed main
# deb https://downloads.sourceforge.net/project/openmediavault/packages usul-proposed main
## This software is not part of OpenMediaVault, but is offered by third-party
## developers as a service to OpenMediaVault users.
# deb https://packages.openmediavault.org/public usul partner
# deb https://downloads.sourceforge.net/project/openmediavault/packages usul partner
EOF
export LANG=C.UTF-8
export DEBIAN_FRONTEND=noninteractive
export APT_LISTCHANGES_FRONTEND=none
wget -O "/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.asc" https://packages.openmediavault.org/public/archive.key
apt-key add "/etc/apt/trusted.gpg.d/openmediavault-archive-keyring.asc"
apt-get update
apt-get --yes --auto-remove --show-upgraded \
--allow-downgrades --allow-change-held-packages \
--no-install-recommends \
--option Dpkg::Options::="--force-confdef" \
--option DPkg::Options::="--force-confold" \
install openmediavault-keyring openmediavault
omv-confdbadm populate
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash
2020年11月13日 星期五
Debian 10 R 3 升級 R 4
apt-key adv --keyserver keys.gnupg.net --recv-key 'E19F5F87128899B192B1A2C2AD5F960A256A04AF'
echo "deb https://cloud.r-project.org/bin/linux/debian buster-cran40/" >/etc/apt/sources.list.d/r.list
apt update
apt upgrade
2020年11月11日 星期三
2020年11月9日 星期一
Windows 10 系統發生 1272 錯誤
regedit.msc
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] , 修改或新增[AllowInsecureGuestAuth] = 1 (DWORD)
2020年11月3日 星期二
LEAF 使用 TFTP 備份設定檔
TFTP_SERVER="192.168.1.1"
HOST=`hostname`
TMP_DIR="/tmp"
CFG_FILE=`echo $TMP_DIR"/configdb.lrp"`
APKG="/usr/sbin/apkg"
TFTP="/usr/bin/tftp"
OUTFILE=`date +%Y-%m-%d_%k_%M_%S`
OUTFILE=`echo $HOST-$OUTFILE-configdb.lrp`
CMD="put $CFG_FILE $OUTFILE"
echo "tftp file"
$APKG -o $TMP_DIR
$TFTP $TFTP_SERVER -c $CMD
OUTFILE=`echo $OUTFILE-list`
CMD="put $TMP_DIR/list $OUTFILE"
$APKG -l >$TMP_DIR/list
$TFTP $TFTP_SERVER -c $CMD
2020年10月26日 星期一
putty forward 指令列摘要
putty -ssh ssh-server -P 2128 -L 3489:rds-remote:3389 -L 2122:sftp-remote:22
相關參數參考
-l 指定帳號
-pw 指定密碼
-P 指定 port
-ssh 指定 ssh 協定
-m 指定執行連線端指令集,指令執行完畢,putty視窗會自動關閉
-L 指令 tunnel(local_port:sftp.remote:remote_port)
2020年10月14日 星期三
CentOS 7 (LXC) 安裝 XRDP摘要
yum install -y gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm;yum -y install -y xrdp tigervnc-server
cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.ori;
cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.$(date +%s);
sed -i 's/ssl_protocols=TLSv1.2, TLSv1.3/ssl_protocols=TLSv1, TLSv1.1, TLSv1.2, TLSv1.3/g' /etc/xrdp/xrdp.ini;
systemctl enable xrdp;systemctl start xrdp;
防火牆設定
firewall-cmd --permanent --add-port=3389/tcp
firewall-cmd --reload
sssd設定
echo "ad_gpo_map_interactive = +xrdp-sesman">>/etc/sssd/sssd.conf
2020年10月13日 星期二
ssh 登入錯誤
登入錯誤訊息
Unable to negotiate with 192.168.0.253 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1
登入錯誤訊息
Unable to negotiate with 192.168.0.253 port 22: no matching cipher found. Their offer: 3des-cbc
ssh 加入相關參數
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oCiphers=+3des-cbc 192.168.0.253
編輯 ~/.ssh/config
Host *
ServerAliveInterval 10
HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa
Proxmox VE 6.x 錯誤訊息 short read on command socket (16 !=0)(500)
Proxmox 6.x 錯誤訊息
short read on command socket (16 !=0)(500)
解決方式
systemctl restart lxc.service
Proxmox Backup Server 1.0.1-1 安裝摘要
mv /etc/apt/sources.list.d/pbs-enterprise.list /etc/apt/sources.list.d/pbs-enterprise.list.bak
echo "deb http://download.proxmox.com/debian/pbs buster pbs-no-subscription"> /etc/apt/sources.list.d/pbs-no-subscription.list
apt update
apt upgrade -y
Cisc, Netgear VLAN 設定摘要
Cisco
interface GigabitEthernet1/0/1
switchport access vlan 200
switchport mode access
Netgear
interface 1/0/1
vlan pvid 200
vlan participation include 200
R 重新安裝 package
# R 匯出舊套件名稱
pkgs.file = "~/r_packages.rdata"
pkgs.df <- installed.packages(priority = "NA")
pkgs.vec <- as.vector(pkgs.df[,1])
save(pkgs.vec, file = pkgs.file)
# 使用匯出清單 安裝 套件
pkgs.file = "~/r_packages.rdata"
load(pkgs.file)
install.packages(pkgs.vec)
2020年10月6日 星期二
2020年9月26日 星期六
wget mirror site example
wget \
--recursive \
--no-clobber \
--page-requisites \
--html-extension \
--convert-links \
--restrict-file-names=windows \
--no-parent 192.168.1.1:80/Docs/
2020年9月25日 星期五
Debian 10 install JupyterHub + Hail
#Installing OpenJDK 8
sudo apt update
sudo apt install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common
wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -
sudo add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/
sudo apt update
sudo apt install adoptopenjdk-8-hotspot
# install JupyterHub
apt install -y python3-pip npm
python3 -m pip install jupyterhub
npm install -g configurable-http-proxy
python3 -m pip install notebook # needed if running the notebook servers locally
#install Hail
pip3 install hail
2020年9月24日 星期四
Debian 10 安裝 R Studio
wget https://download1.rstudio.org/desktop/bionic/amd64/rstudio-1.3.1093-amd64.deb
apt install libxkbcommon-x11-0
dpkg -i rstudio-1.3.1093-amd64.deb
How to list the available package groups in Fedora/CentOS/Debian
CentOS
yum grouplist
yum groupinfo "Performance Tools"
Fedora
dnf grouplist
dnf groupinfo Editors
Debian / Ubuntu
tasksel --list-task
tasksel --task-desc "desktop"
tasksel install xfce-desktop
2020年9月17日 星期四
tcp-wrapper iptables 筆記
1.tcp-wrapper: Application layer
2.iptable: Transport layer
3.確認是否支援 tcp-wrapper 方法 ldd [program] | grep libwrap
4.tcp-wrapper 設定檔:/etc/hosts.allow,/etc/hosts.deny
5.tcp-wrapper 設定檔語法 daemon_list : client_list [ : shell_command ]
6.tcp-wrapper 配置規則保存後,立即生效
2020年9月15日 星期二
2020年9月13日 星期日
Debian 10 安裝 mongodb 4.4
apt install dirmngr gnupg apt-transport-https software-properties-common ca-certificates curl wget gnupg
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
apt-get update
apt-get install -y mongodb-org
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections
移除
apt-get purge mongodb-org*
rm -r /var/log/mongodb
rm -r /var/lib/mongodb
2020年9月11日 星期五
2020年9月8日 星期二
snmpd 錯誤訊息 No more variables left in this MIB View (It is past the end of the MIB tree)
/etc/snmp/snmpd 加入
#access notConfigGroup "" any noauth exact all none none
view all included .1
Debian snmpd 設定
apt-get install -y snmp snmpd wget
wget -O /etc/snmp/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod a+x /etc/snmp/distro
mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.$(date +%s)
cat <<EOF >/etc/snmp/snmpd.conf
rocommunity public localhost
rocommunity public 192.168.0.0/16
#sysName hostname
syslocation 5FG
syscontact email@email
extend hardware "/bin/cat /sys/devices/virtual/dmi/id/product_name"
extend manufacturer "/bin/cat /sys/devices/virtual/dmi/id/sys_vendor"
extend distro "/etc/snmp/distro"
#access notConfigGroup "" any noauth exact all none none
#view all included .1
EOF
systemctl enable snmpd;systemctl start snmpd
測試
snmpwalk -v 2c -c public localhost
autofs 設定筆記
編輯 /etc/auto.master.d/auto.cifs
cifs -fstype=cifs,acl,uid=kwai_yang,gid=tnode1,user_xattr,cred=/root/password,vers=3.0,users,file_mode=0760,dir_mode=0770 ://10.0.0.1/cifs
編輯 /etc/auto.master.d/cifs.autofs
/aumnt /etc/auto.master.d/auto.cifs --timeout=60
Enable Serial Console on CentOS/RHEL 7/ Debian
方法一
編輯 /etc/default/grub 加入以下設定
GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
重建 grub.cfg
grub2-mkconfig -o /boot/grub2/grub.cfg
方法二
編輯 /etc/default/grub
GRUB_CMDLINE_LINUX="quiet console=tty0 console=ttyS0,115200"
重建 grub
# debian based
update-grub
# redhat based
grub2-mkconfig --output=/boot/grub2/grub.cfg
2020年9月3日 星期四
nginx 413 Request Entity Too Large
http、server 或 location 加入 client_max_body_size 設定
client_max_body_size 128M;
2020年9月2日 星期三
Debian 10 X window xfce4 語系設定
目前預設語系
/etc/default/locale
查詢已安裝的語系
locale -a
安裝新語系
locale-gen zh_TW.utf-8
dpkg-reconfigure locales
更新語系
locale-gen
dpkg-reconfigure locales
變更個人環境語系
echo export LANG=en_US >>~.xsessionrc
2020年9月1日 星期二
Proxmox cluster 異常修復
Proxmox Cluster 修復同步
for i in pve-cluster pvedaemon pveproxy corosync;do systemctl restart $i;done
有問題 Node
pvecm expected 1
for i in pve-cluster pvedaemon pveproxy corosync;do systemctl restart $i;done
2020年8月31日 星期一
CentOS 7 安裝 MariaDB 10.
編輯 /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.1 CentOS repository list - created 2017-01-27 16:31 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
安裝
yum install MariaDB-server MariaDB-client
2020年8月27日 星期四
sudo 傳入環境變數
使用方式
sudo --preserve-env=HOME /usr/bin/env
sudo ZEBRA=true /usr/bin/env
修改 /etc/sudoers
ALL ALL=NOPASSWD:SETENV:/bin/mount
2020年8月26日 星期三
pypi mirror site 建置
安裝
mkdir -p /home/pypi
cd /home/pypi
apt-get install python3-venv
python3 -m venv bandersnatch
bandersnatch/bin/pip install bandersnatch
bandersnatch/bin/bandersnatch mirror 建立設定檔 /etc/bandersnatch.conf
bandersnatch/bin/bandersnatch mirror #執行 mirror 工作
可在 /etc/crontab 中增加設定
* */1 * * * root bandersnatch mirror |& logger -t bandersnatch[mirror]
client 設定
~/.pip/pip.conf
[global]
trusted-host=10.10.10.10
index-url=http://10.10.10.10/simple
2020年8月25日 星期二
2020年8月24日 星期一
bash ldapsearch 網域帳號認證
#!/bin/bash
_timeout="/usr/bin/timeout 3"
_ldapsearch=/usr/bin/ldapsearch
user=${1%@*}
_dn=${1#*@};
_dbn=$(for i in $(echo $_dn|tr . " ");do t="$t dc=$i";done;echo $t|tr " " ,);
t=$($_timeout $_ldapsearch -D ${1} -w ${2} -b "$_dbn" -h ${_dn} "sAMAccountname=$user"
2>/dev/null|grep "sAMAccountName: $user");
[ "$t" = "sAMAccountName: $user" ]&&echo -e "OK"&&exit 0;
echo -e "ERR";
2020年8月23日 星期日
2020年8月20日 星期四
2020年8月19日 星期三
sudo 指令傳入環境變數
錯誤訊息
sudo: sorry, you are not allowed to preserve the environment
編輯 /etc/sudoers
user ALL=(ALL) NOPASSWD:SETENV: /usr/bin
執行方式
sudo var=varvalue 1.sh
2020年8月18日 星期二
Windows AD accountexpires 欄位摘要
1700-01-01 最早時間表示
31241952000000000
1970-01-01
116445312000000000
2020-08-01
132407712000000000
10000000 = 1 秒
PHP程式計算時間
$time1="2020-08-01 00:00:00";
$time2="2020-08-15 00:00:00";
132407712000000000 + (strtotime($time2) - strtotime($time1)) * 10000000
2020年8月13日 星期四
2020年8月12日 星期三
Ubuntu 18.4 capture screen with VLC
安裝
apt install -y vlc vlc-plugin-access-extra
使用
Media-Open capture Device-Capture mode-Desktop-Play-Convert-Browse-Start
2020年8月7日 星期五
How do I allow remote desktop to domain controller?
2020年8月5日 星期三
2020年8月3日 星期一
2020年7月29日 星期三
Debian 10 設定 /etc/rc.local
[Unit]
Description=/etc/rc.local
ConditionPathExists=/etc/rc.local
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
2.編輯 /etc/rc.local
#!/bin/bash
exit 0;
3.chmod a+x /etc/rc.local
4.systemctl enable rc-local
5.systemctl start rc-local
2020年7月28日 星期二
Debian 10.4 安裝 R Studio server 摘要
sudo apt-get install gdebi-core wget https://download2.rstudio.org/server/bionic/amd64/rstudio-server-1.3.1093-amd64.deb sudo gdebi rstudio-server-1.3.1093-amd64.deb
Debian 10.4 安裝 R 摘要
apt install dirmngr --install-recommends
apt install software-properties-common
apt install apt-transport-https
apt update
apt upgrade -y
apt install r-base
親屬關係分析工具-KING 安裝摘要
# http://people.virginia.edu/~wc9c/KING/Download.htm
src=http://people.virginia.edu/~wc9c/KING/Linux-king.tar.gz
target=/opt/KING2.2.5
[ $(which busybox) ]&& { for i in wget;do [ -f "/usr/local/bin/${i}" ] || ln -s $(which busybox) /usr/local/bin/${i}; done; };
for i in wget;do [ $(which ${i}) ]&& : || { echo check ${i}: not found ${i}! &&exit 1; } ;done;
[ -d "$target" ]&&mv ${target} ${target}.$(date +%Y-%m-%d-%H-%M);
mkdir -p $target;cd $target;
echo $target >readme.txt;echo $src >>readme.txt
wget -q -O- http://people.virginia.edu/~wc9c/KING/Linux-king.tar.gz|tar zxf -;
chmod a+x king;cd -;
for i in king;do [ -f "/usr/local/bin/${i}" ]&&mv /usr/local/bin/${i} /usr/local/bin/${i}.$(date +%Y-%m-%d-%H-%M); ln -s ${target}/${i} /usr/local/bin/${i};done;
GWAS工具-Haploview安裝摘要
Haploview
https://www.broadinstitute.org/haploview/downloads
apt install -y openjdk-11-jre*
wget -q -O /opt/Haploview.jar https://www.broadinstitute.org/ftp/pub/mpg/haploview/Haploview.jar
echo "java -jar /opt/Haploview.jar &" >/usr/local/bin/haploview
chmod a+x /usr/local/bin/haploview
GWAS 分析工具-plink 安裝摘要
# http://zzz.bwh.harvard.edu//plink/download.shtml#download
src=http://zzz.bwh.harvard.edu//plink/dist/plink-1.07-x86_64.zip
target=/opt/PLINK1.07
[ $(which busybox) ]&& { for i in wget unzip;do [ -f "/usr/local/bin/${i}" ] || ln -s $(which busybox) /usr/local/bin/${i}; done; };
for i in unzip wget;do [ $(which ${i}) ]&& : || { echo check ${i}: not found ${i}! &&exit 1; } ;done;
[ -d "$target" ]&&mv ${target} ${target}.$(date +%Y-%m-%d-%H-%M);
mkdir -p $target;cd $target;
echo $target >readme.txt;echo $src >>readme.txt
wget -q -O- $src | unzip -;
mv ${target}/plink-1.07-x86_64/* ${target}/
chmod a+x ${target}/plink;
# https://www.cog-genomics.org/plink/1.9/
src=http://s3.amazonaws.com/plink1-assets/dev/plink_linux_x86_64.zip
target=/opt/PLINK1.90beta
[ $(which busybox) ]&& { for i in wget unzip;do [ -f "/usr/local/bin/${i}" ] || ln -s $(which busybox) /usr/local/bin/${i}; done; };
for i in unzip wget;do [ $(which ${i}) ]&& : || { echo check ${i}: not found ${i}! &&exit 1; } ;done;
[ -d "$target" ]&&mv ${target} ${target}.$(date +%Y-%m-%d-%H-%M);
mkdir -p $target;cd $target;
echo $target >readme.txt;echo $src >>readme.txt
wget -q -O- $src | unzip -;
chmod a+x plink prettify;cd -;
for i in plink prettify;do [ -f "/usr/local/bin/${i}" ]&&mv /usr/local/bin/${i} /usr/local/bin/${i}.$(date +%Y-%m-%d-%H-%M); ln -s ${target}/${i} /usr/local/bin/${i};done;
xrdp client 資源限制
rdpdr=[true|false] 設備轉向
If set to 1, true or yes using the RDP channel for device redirection is allowed.
rdpsnd=[true|false] 聲音功能
If set to 1, true or yes using the RDP channel for sound is allowed.
drdynvc=[true|false] 初始化附加動態 channel
If set to 1, true or yes using the RDP channel to initiate additional dynamic virtual channels is allowed.
cliprdr=[true|false]
If set to 1, true or yes using the RDP channel for clipboard redirection is allowed.
rail=[true|false]
If set to 1, true or yes using the RDP channel for remote applications integrated locally (RAIL) is allowed.
xrdpvr=[true|false] 視訊流功能
If set to 1, true or yes using the RDP channel for XRDP Video streaming is allowed.
2020年7月27日 星期一
Debian 10.4安裝browser chrome
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
scim 無法正確執行
export XMODIFIERS="@im=SCIM"
export GTK_IM_MODULE=SCIM
export QT_IM_MODULE=SCIM
export XIMPROGRAM="scim -d"
scim -d
2020年7月21日 星期二
限制 Windows RDS 遠端主機和本機資源
本機電腦原則-電腦設定-系統管理範本-Windows元件-遠端桌面服務-遠端桌面工作階段主機-裝置及資源重新導向
Administrative Templates > Windows Components > Terminal Services > Client/Server data redirection: Do not allow Clipboard redirection - enabled
Windows AD 查詢帳號登入資訊,包含密碼上次變更時間
2020年7月18日 星期六
windows eerver 2003 install Certificate Services
2.Request a new server certificate for LDAP server
Open Certificates mmc:
Start - Run - mmc
File - Add/Remove Snap-in
Add - Certificates - Computer Account - Local Computer
Request certificate
Certificates > Personal - Certificates
Actions - All Tasks- Request New Certificate
Complete wizard with default values.
sssd 除錯
編輯 /etc/krb5.conf
[libdefaults]
rdns = false
2.無法正確查詢
編輯 /etc/krb5.conf
[libdefaults]
default_realm = DOMAIN.NAME
2020年7月17日 星期五
2020年7月15日 星期三
windows server 2003 + sssd + xrdp 除錯摘要
2. /etc/X11/Xwrapper.config containing
allowed_users = anybody
3./etc/pam.d/common-session
# add to the end if need (create home directory automatically at initial login)
session optional pam_mkhomedir.so skel=/etc/skel umask=077
4./etc/sssd/sssd.conf
ad_gpo_map_interactive = +xrdp-sesman
5. /etc/krb5.conf
[libdefaults]
default_realm = domainname.local
default_tgs_enctypes = arcfour-hmac-md5 des-cbc-crc des-cbc-md5
default_tkt_enctypes = arcfour-hmac-md5 des-cbc-crc des-cbc-md5
2020年7月11日 星期六
windows server 2003 ad 重建 dns server
2.net stop netlogon
3.刪除 system32\config\netlogon.dnb,netlogon.dns
刪除 system32\dns\domain.com.dns,_msdcs.domain.com.dns
4.dns server 指向自己
5.net start netlogon
6.ipconfig /flushdns, ipconfig /registerdns.
2020年7月9日 星期四
/etc/skel/目錄
2.新增新使用者的時候,這個目錄下的所有檔案會自動被複制到新新增的使用者的家目錄下。
3.通過修改、新增、刪除/etc/skel目錄下的檔案,可為新建立的使用者提供統一的、標準的、初始化使用者環境。
2020年7月4日 星期六
nginx: [emerg] unknown "connection_upgrade" variable
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
2020年7月3日 星期五
xrdp + sssd
ad_gpo_map_interactive = +xrdp-sesman
2.編輯 /etc/X11/Xwrapper.config 修改
allowed_users = anybody
3.重啟 sssd
systemctl restart sssd
Xpra + Apache2 proxy (Debian 10.4)
echo "deb https://xpra.org/ buster main" >/etc/apt/sources.list.d/xpra.list
apt-get install apt-transport-https
wget -q https://xpra.org/gpg.asc -O- | sudo apt-key add -
apt-get update
apt-get install xpra
2.Apache2 載入模組
a2enmod proxy
a2enmod proxy_http
a2enmod proxy_ajp
a2enmod rewrite
a2enmod deflate
a2enmod headers
a2enmod proxy_balancer
a2enmod proxy_connect
a2enmod proxy_html
a2enmod proxy_wstunnel
3.修改 Apache2 設定檔,加入
RewriteEngine on
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
RewriteRule .* ws://localhost:14500/%{REQUEST_URI} [P]
ProxyPass ws://localhost:14500
ProxyPassReverse ws://localhost:14500
ProxyPass http://localhost:14500
ProxyPassReverse http://localhost:14500
</Location>
4.xpra 執行方式
xpra start :100 --start-child=xterm --bind-tcp=0.0.0.0:14500
2020年7月1日 星期三
Debian 10 安裝 Shell in a box
apt install -y shellinabox
允許 root 登入
修改 /etc/default/shellinabox
SHELLINABOX_ARGS=--no-beep
加入 --service=/:SSH
2020年6月29日 星期一
apache2.service: Failed to set up mount namespacing: Permission denied
修改 PrivateTmp=true 為
PrivateTmp=false
NoNewPrivileges=yes
2.執行
systemctl daemon-reload
2020年6月10日 星期三
Linux 列出伺服器廠商、型號及 SN
dmidecode -s system-product-name
dmidecode -s system-serial-number
ipmitool fru list
2020年6月7日 星期日
Raspberry pi Waveshare 3.5 RPi LCD XPT2046 A 設定
git clone https://github.com/waveshare/LCD-show.git
cd LCD-show/
sudo ./LCD35-show
編輯 /boot/config
dtoverlay=waveshare35a:rotate=270
hdmi_force_hotplug=1
#max_usb_current=1
hdmi_group=0
hdmi_mode=1
hdmi_mode=87
hdmi_cvt 640 480 60 6 0 0 0
hdmi_drive=2
#display_rotate=1
#lcd_rotate=2
參考資料
https://t.codebug.vip/questions-171571.htm
https://www.raspberrypi.org/documentation/configuration/config-txt/video.md
2020年6月3日 星期三
Raspberry pi 3 Under-voltage detected! (0x00050005)
# Disable under-voltage warning
avoid_warnings=1
2020年6月2日 星期二
2020年5月28日 星期四
Linux Hugepages 相關資訊
cat /proc/meminfo | grep Huge
開機時執行
編輯 /etc/sysctl.conf 加入
vm.nr_hugepages=4096
設定方法
sysctl -w vm.nr_hugepages=4096
echo 4096 > /proc/sys/vm/nr_hugepages
2020年5月27日 星期三
ipxe 編譯 (Debian 10)
apt install -y git gcc binutils make perl liblzma-dev libz-dev mtools genisoimage syslinux isolinux
2.取得原始程式 git clone git://git.ipxe.org/ipxe.git3.編輯設定檔案
src/config/general.h
相關檔案及指令
make bin-x86_64-efi/ipxe.efi
make bin/undionly.kpxe
./bin/ipxe.dsk
./bin/ipxe.lkrn
./bin/ipxe.iso
./bin/ipxe.usb
./bin/ipxe.pxe
2020年5月26日 星期二
Debian 10 自動登入
systemctl edit getty@tty1 加入以下內容
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin root --noclear %I 38400 linux
2.啟用相關服務
systemctl enable getty@tty1.service
3.重新開機
reboot
2020年5月20日 星期三
bash 大寫轉小寫
echo $str | awk '{print tolower($0)}'
bash 4
echo "${str,,}"
2020年5月18日 星期一
Raspberry PI3 設定 WiFI AP
10.3
1.安裝相關軟體
apt install hostapd dnsmasq -y
2.編輯 /etc/hostapd/hostapd.conf
interface=wlan0
ssid=pi-ap
hw_mode=g
channel=1
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=0123456789
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
3.編輯 /etc/dnsmasq.conf
interface=wlan0
dhcp-range=192.168.13.2,192.168.13.20,255.255.255.0,1h
5.執行
#sudo ip addr add 192.168.13.1/24 dev wlan0
sudo systemctl start dnsmasq
sudo systemctl unmask hostapd
sudo systemctl start hostapd
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
2020年5月14日 星期四
Raspberry pi 更改 console 字體
sudo dpkg-reconfigure console-setup
2.更改設定檔
sudo vi /etc/default/console-setup
FONTFACE="Terminus"
FONTSIZE="16x32"
3.套用設定
sudo /etc/init.d/console-setup.sh restart
2020年5月13日 星期三
Proxmox mount VM partition
使用範例
kpartx -av /dev/pve/vm-100-disk-0
相關指令
2020年5月1日 星期五
QNAP TS219P:screen Cannot find termcap entry for 'xterm'
2020年4月30日 星期四
2020年4月24日 星期五
2020年4月14日 星期二
linux machine-id 筆記
machine ID一個32字符長度的十六進位小寫字母字符串, 並以換行符結尾,128位二進制整數的16進位表示。
systemd-machine-id-setup 產生 /etc/machine-id
/var/lib/dbus/machine-id 玲存在時,系統會產生連結至 /etc/machine-id
2020年4月9日 星期四
Debian 缺少 add-apt-repository 指令
apt-get install software-properties-common
2020年4月8日 星期三
Proxmox 關閉 KVM windows server 2003
1."Shutdown: Allow system to be shut down without having to log on".
2."Interactive logon: Do not require CTRL+ALT+DEL"
disable logon screen screensaver using regedit
[HKEY_USERS\.DEFAULT\Control Panel\Desktop] "ScreenSaveActive"="0"
2020年3月29日 星期日
2020年3月28日 星期六
Raspberry pi Zero 開啟 USB OTG Serial
echo "dwc2" | sudo tee -a /etc/modules
echo "g_serial" | sudo tee -a /etc/modules
sudo systemctl enable getty@ttyGS0.service
Linux 連接方式
screen /dev/ttyACM0 115200
2020年3月24日 星期二
CentOS 8 / Proxmox 6.x 啟用 rc.local
2.編輯 /usr/lib/systemd/system/rc-local.service
加入 [Install]區塊
WantedBy=multi-user.target
[Unit] 區塊新增
Requires=network-online.target
After=network-online.target
3.systemctl enable rc-local.service
2020年3月19日 星期四
Proxmox 6.x CentOS 8 root 登入 console 設定
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
編輯 /etc/securetty 加入
lxc/console
lxc/tty0
lxc/tty1
lxc/tty2
lxc/tty3
lxc/tty4
pts/0
console
CentOS 7(x86_amd64) Squid 3.5 使用 Windows AD 認證(指定群組)
1.squid proxy 使用帳號須為 ad_group 群組成員
2.dc 192.168.1.1
3.domain name aaa.com
4.squid 向dc認證用帳號 squid 密碼 p@ssw0rd
/etc/squid/squid.conf 加入
auth_param basic program /usr/lib64/squid/basic_ldap_auth -R -b "dc=aaa,dc=com" -D "CN=squid,cn=Users,DC=aaa,DC=com" -w p@ssw0rd -f sAMAccountName=%s -h 192.168.1.1
external_acl_type ldap_group %LOGIN /usr/lib64/squid/ext_ldap_group_acl -R -b "dc=aaa,dc=com" -D "CN=squid,cn=Users,DC=aaa,DC=com" -w p@ssw0rd -f "(&(objectclass=person)(sAMAccountname=%v)(memberof=cn=%g,cn=Users,DC=aaa,DC=com))" -h 192.168.1.1
acl ad_group external ldap_group ad_group
http_access allow ad_group
2020年3月9日 星期一
CentOS 7(x86_amd64) Squid 3.5 使用 Windows AD 認證
編輯 /etc/squid/squid.conf
在 http_access deny all 前加入
auth_param basic program /usr/lib64/squid/basic_ldap_auth -P -R -b "dc=aaa,dc=com" -D "cn=squid,cn=Users,dc=aaa,dc=com" -w "password" -f sAMAccountName=%s -h 192.168.1.1
acl ldapauth proxy_auth REQUIRED
http_access allow ldapauth
2020年2月15日 星期六
Linux realm 設定筆記
Proxmox VE 6.x 5.x 4.x 更改名稱
/etc/hosts
/etc/hostname
/etc/mailname
/etc/postfix/main.cf
重啟相關服務
systemctl start pve-cluster
systemctl restart pvedaemon
systemctl restart pveproxy
systemctl restart pvestatd
相關檔案
/proc/sys/kernel/hostname
Debian 10 產生pxe boot 安裝開機檔
/mini.iso -O /tmp/mini.iso
mkdir /mnt2;mount -o loop /tmp/mini.iso /mnt2
cp /mnt2/linux /tmp/debian.kernel
mkdir /tmp/a;cd /tmp/a
zcat /mnt2/initrd.gz |cpio -i
cp /tmp/mini.iso /tmp/a
find .|cpio -o -H newc|gzip -9 >/tmp/debian.initrd
Proxmox PVE 6.x 移除 cluster
service pve-cluster stop pmxcfs -l rm /etc/pve/corosync.conf rm /etc/corosync/corosync.conf rm /etc/corosync/authkey
2020年1月22日 星期三
Debian/Ubuntu :Fix add-apt-repository: command not found error
sudo apt-get install software-properties-common
Raspberry pi 設定無線網路、開啟 ssh
boot 區下 產生 wpa_supplicant.conf 檔案內容
country=TW
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="SSID_NAME"
psk="SSID_KEY"
key_mgmt=WPA-PSK
scan_ssid=1
}
squid custom authentication helper 摘要
read a
echo user=${a% *} password=${a#* } >/tmp/input
#echo -e "OK";
echo -e "ERR";
squid 設定方式
auth_param basic program /usr/bin/bash /tmp/1.sh
auth_param basic children 5
auth_param basic realm Please enter your proxy server username and password
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive on
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
IMS4000取得 datalog
ip=192.168.0.1
username=admin
password=password
url="http://${ip}/cgi-bin/web2timehist.cgi?unit=0&chan=0&ip=100&frame=82"
x=$(curl -s --cookie "username=${username}; password=${password}" $url|sed -e 's/<[/]tr>/ \n/g'|sed -e 's/<[^>]*>/ /g'|sed '/^$/d')&&x=${x#*GMT\"}&&x=${x%<!--*}&&IFS=xxxxxxx&&echo ${x}|while read a;do [ ${#a} -gt 18 ]&&echo $a|tr -s " ";done;
IMS4000取得目前狀況
ip=192.168.0.1
username=admin;
password=password;
url="http://${ip}/cgi-bin/do_frames.cgi?unit=0&frame=202"
url="http://${ip}/cgi-bin/do_frames.cgi?unit=1&frame=202"
#url="http://${ip}/cgi-bin/do_frames.cgi?unit=2&frame=202"
x=$(curl -s --cookie "username=${username}; password=${password}" $url|sed -e 's/<[/]td>/ \n/g'|sed -e 's/<[^>]*>/ /g'|sed '/^$/d')&&x=${x##*//-->};
OIFS=$IFS&&IFS=xxxxxx;
x=$(echo $x|while read i;do ii=$(echo $i|tr -d " \n"|grep -v onClick|grep -v onmouse);[ ${#ii} -gt 2 ]&&echo $ii;done);
IFS=$OIFS&&n=0;
for i in $x;do echo -n "${i%°C} ";n=$(($n + 1));[ $(($n %4)) -eq 0 ]&&echo ;done;
2020年1月2日 星期四
Debian 10 nfs ganesha 安裝摘要
apt install -y nfs-ganesha nfs-ganesha-vfs
編輯設定檔 /etc/ganesha/ganesha.conf
EXPORT
{
# Export Id (mandatory, each EXPORT must have a unique Export_Id)
Export_Id = 1;
# Exported path (mandatory)
Path = /nfs;
# Pseudo Path (required for NFS v4)
Pseudo = /nfs;
# Required for access (default is None)
# Could use CLIENT blocks instead
Access_Type = none;
Squash = No_root_squash;
CLIENT {
Clients = 192.168.1.0/24;
Access_Type = RW;
}
# Exporting FSAL
FSAL {
Name = VFS;
}
}
啟動服務
systemctl restart nfs-ganesha