顯示具有 shell 標籤的文章。 顯示所有文章
顯示具有 shell 標籤的文章。 顯示所有文章

2023年1月29日 星期日

Xoops 網站從原先sslforfree憑證改用公用憑證的安裝步驟


壹、第一次設定:
自縣網中心取得檔案,其檔案內容如下圖:


一、下載與解壓縮eCA1_GTLSCA.zip,取得eCA1_GTLSCA.crt
$wget https://gtlsca.nat.gov.tw/download/eCA1_GTLSCA.zip
$unzip eCA1_GTLSCA.zip

二、變更已下載簽發之 SSL 伺服器軟體憑證(*.cer)檔名為server.cer
$mv 3E0F555985B24E84092C96C1762173B4.cer server.cer

三、將SSL伺服軟體憑證由DER編碼格式轉換成PEM編碼格式
$openssl x509 -in server.cer -inform DER -out server.crt

四、整合server.crt eCA1_GTLSCA.crt 為 server-chain.crt,再更名為server.crt
$cat server.crt eCA1_GTLSCA.crt > server-chain.crt
$mv server-chain.crt server.crt

五、將server.crt  與 myserver.key 分別複製到 /etc/ssl 與 /etc/ssl/private
目前只需要兩個檔案,分別是server.crt  與 myserver.key
將server.crt  與 myserver.key 分別複製到 /etc/ssl 與 /etc/ssl/private。即
server.crt         --->    /etc/ssl
myserver.key  --->    /etc/ssl/private
其指令如下:
$mv server.crt  /etc/ssl
$mv myserver.key  /etc/ssl/private

六、修改default-ssl.conf 與 000-default.conf
檔案名稱default-ssl.conf
檔案修改內容:
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite EECDH+AES128:EECDH+AES256:EECDH+CAMELLIA:!ECDSA:!MD5
SSLHonorCipherOrder on
SSLCertificateFile  /etc/ssl/server.crt
SSLCertificateKeyFile  /etc/ssl/private/myserver.key
將原先的設定作註解
                # SSLCertificateFile /etc/ssl/certificate.crt
                # SSLCertificateKeyFile /etc/ssl/private/private.key
                # SSLCertificateChainFile  /etc/ssl/ca_bundle.crt
整個狀況如下圖:

檔案名稱000-default.conf
檔案修改內容:
將原先的設定作註解
# Redirect permanent / https://abc.def.ghi.tw
其內容如下:

七、重啟Apache2
$sudo service apache2 restart

貳、日後處理
一、將縣網中心取得的檔案送至 /home/webadmin/PublicCert
二、修改CertReplacement.sh 黃色部分名稱
三、執行CertReplacement.sh

檔案名稱:CertReplacement.sh
檔案內容:
#!/bin/bash
wget https://gtlsca.nat.gov.tw/download/eCA1_GTLSCA.zip
unzip eCA1_GTLSCA.zip
mv 3E0F555985B24E84092C96C1762173B4.cer server.cer
openssl x509 -in server.cer -inform DER -out server.crt
cat server.crt eCA1_GTLSCA.crt > server-chain.crt
mv server-chain.crt server.crt
mv server.crt  /etc/ssl
mv myserver.key  /etc/ssl/private
service apache2 restart

資料來源:


2021年12月2日 星期四

用shell 在Xubuntu 18.04 安裝 python3 相關套件

       最近指導國三學生學python3,卻發現自己在ubuntu 18.04 x64 完全不會安裝套件。有點尷尬,於是便整理自己在python3 的指令。在更換主機練習時,能夠讓自己快速安裝開發環境。
1.安裝pip
$sudo apt-get install python3-pip

2.更新pip
$pip3 install -U pip

3.查詢pip安裝過的套件
$pip3 list

4.安裝python相關套件 numpy
$pip3 install numpy

5.解除安裝python相關套件 numpy
$pip3 uninstall numpy

6.搜尋 python相關套件 numpy
$pip3 search numpy

7.列出pip 指令與使用方式
$pip3 help
或是列出search 指令與使用方式
$pip3 help search 

8.安裝 virtualenv
$pip3 install virtualenv

9.建立目錄 test_env
$mkdir test_env

10.將目錄轉換成虛擬環境 test_env
$virtualenv test_env

11.啟動虛擬環境 test_env
$source test_env/bin/activate

12.停用虛擬環境 test_env
$cd test_env/
$deactivate

13.安裝虛擬環境軟體
$sudo pip3 install virtualenvwrapper

$sudo pico ~/.bashrc
将下面的文字 加入 ~/.bashrc
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS=' -p /usr/bin/python3 '
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

$source ~/.bashrc

14.建立虛擬環境
$mkvirtualenvDjangoEnv(環境名稱)
## 查詢環境
lsvirtualenv
## 建立環境
mkvirtualenv DjangoEnv(環境名稱)
## 複製環境
cpvirtualenv (原有環境) (新環境名稱)
## 刪除環境
rmvirtualenv DjangoEnv(環境名稱)
## 使用環境
workon DjangoEnv(環境名稱)
## 退出環境
deactivate

2021年11月29日 星期一

用shell 在Xubuntu 18.04x64 安裝 Anaconda 3

檔案名稱:Anaconda3InstallXub1804x64.sh
檔案內容:
#!/bin/bash
apt-get update
apt-get install vim wget
wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh
sh Anaconda3-2020.02-Linux-x86_64.sh -y
chown -R $USER:$USER ~/anaconda3
source ~/.bashrc

如何使用?
$sudo chmod 777 Anaconda3InstallXub1804x64.sh
$sudo sh Anaconda3InstallXub1804x64.sh


用Shell 在Xubuntu 18.04 x64安裝 Visual Studio Code

檔案名稱:VSCodeInstallXub1804x64.sh
檔案內容:
#!/bin/bash
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg
apt install apt-transport-https
apt update
apt install code

如何使用
$sudo chmod 777 VSCodeInstallXub1804x64.sh
$sudo sh VSCodeInstallXub1804x64.sh

資料來源:

2021年7月11日 星期日

Xubuntu 20.04.2 x64 用shell 安裝Apache、MySQL、PHP、Geany、Bluefish、Chrome 與 Visual Studio Code

現在用shell 安裝下列步驟1~7的套件。
檔案名稱:Xub2004LAMP.sh
檔案內容:
#!/bin/bash
apt install -y apache2 apache2-utils
apt install mariadb-server mariadb-client
apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline
a2enmod php7.4
systemctl restart apache2
apt install phpmyadmin
apt install -y geany
apt install -y bluefish
apt install software-properties-common apt-transport-https wget
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
apt install code
clear
echo "請下指令  sudo mysql_secure_installation ,完成最後MySQL密碼設定"

1.安裝 Apache
$sudo apt install -y apache2 apache2-utils

2.安裝 MySQL
$sudo apt install mariadb-server mariadb-client
$sudo mysql_secure_installation

3.安裝 PHP
$sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline
$sudo a2enmod php7.4
$sudo systemctl restart apache2

4.安裝phpMyAdmin
$sudo apt install phpmyadmin

5.安裝Geany
$sudo apt install -y geany

6.安裝Bluefish
$sudo apt install -y bluefish

7.安裝Chrome
$wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
$sudo apt install ./google-chrome-stable_current_amd64.deb

8.安裝Visual Studio Code
$sudo apt install software-properties-common apt-transport-https wget
$wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
$sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
$sudo apt install code


9.安裝Visual Studio Code 套件 
EditorConfig for VS Code
統一專案中檔案的編輯風格

ESLint
編輯器會自動幫你檢查 coding style,需搭配 .eslintrc 檔

Git History
方便查看 Git 紀錄以及檔案歷史,包括 Line History,並可直接連結到變更的檔案。

Git Lens
版本控紀錄,一目了然誰在什麼時間點修改檔案

Path Intellisense
輸入 / 編輯器會自動查詢該目錄底下建議路徑

Path Autocomplete for Visual Studio Code
路徑自動補完

Preview on Web Server
前端開發時預覽的好幫手

vscode-icons
幫你 VS Code 檔案與資料夾 icon 美化

DotENV
讓 .env 檔也有 syntax 效果

Markdown All in One
一應俱全的 Markdown 工具,包括 highlight、快速鍵、自動補完、預覽

Docker
方便管理及操作 Docker Image、Container 的官方工具

YAML
讓 VSCode 支援 YAML 格式

Guides
在程式開關符號(例如左右大括號)拉一條線,方便識別程式區塊

Auto Close Tag
自動把右括號或結束標籤補上

資料來源:


2021年4月12日 星期一

如何用shell在linux升級 Apache2

1.ubuntu 升級 Apache2 的指令
$sudo add-apt-repository ppa:ondrej/apache2
$sudo apt-get update
$sudo apt install apache2

1.01 shell 升級 Apache2
檔案名稱:UbuntuApache2Update.sh
檔案內容: 
#!/bin/bash
add-apt-repository ppa:ondrej/apache2
apt-get update
apt install apache2

2.CentOS7 升級 http 的指令
$sudo cd /etc/yum.repos.d && wget https://repo.codeit.guru/codeit.el`rpm -q --qf "%{VERSION}" $(rpm -q --whatprovides redhat-release)`.repo
$sudo yum install httpd
$sudo systemctl restart httpd

2.01 shell 升級 Apache2
檔案名稱:CentOSHttpUpdate.sh
檔案內容: 
 #!/bin/bash
cd /etc/yum.repos.d && wget https://repo.codeit.guru/codeit.el`rpm -q --qf "%{VERSION}" $(rpm -q --whatprovides redhat-release)`.repo
yum install httpd
systemctl restart httpd


2021年3月28日 星期日

只要會用滑鼠點兩下,用shell 在 ubuntu 16.04 x64 桌面版本快速安裝 運動檢錄系統

整理:
1.只要會用滑鼠點兩下,用shell 在 ubuntu 16.04 x64 桌面版本快速安裝 運動檢錄系統
https://skjhcreator.blogspot.com/2021/03/shell-ubuntu-1604-x64.html
2.紀明村老師運動會競賽檢錄系統更新模組_學生帳號管理模組
https://skjhcreator.blogspot.com/2021/03/blog-post.html
3.二林國小紀明村老師的二林網管 PDO + SQLite 程式寫作工具箱2014.07
https://skjhcreator.blogspot.com/2021/03/pdo-sqlite-201407.html
4.用shell 在CentOS 7 minimal 64位元 安裝 紀明村老師的運動會檢錄系統
https://skjhcreator.blogspot.com/2021/02/shell-centos-7-minimal-64.html
5.紀明村老師的運動檢錄系統程式碼研究心得(一)介接CloudSchool與mysql資料庫
https://skjhcreator.blogspot.com/2021/03/cloudschoolmysql.html
6.紀明村老師運動檢錄系統程式碼研究心得(二)登入login登出logout與使用者認證
https://skjhcreator.blogspot.com/2021/02/loginlogout.html
7.紀明村老師運動檢錄系統程式碼研究心得(三)smarty
https://skjhcreator.blogspot.com/2021/02/smarty.html

後篇:紀明村老師的運動會競賽檢錄系統更新模組_學生帳號管理模組


        感恩二林國小紀明村老師開發運動檢錄系統
第一版Sport1090730.zip。
安裝成功後的畫面,本畫面Logo為員東國小徐千惠老師的大作。感恩員東國小徐千惠老師。

 一、現在將其寫成shell,希望能做到快速安裝。
檔名:SportInstall_ub1604.sh
內容為
#!/bin/bash
apt-get install apache2 -y
apt-get install php -y
apt-get install -y php7.0-common php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-xml php7.0-gd php7.0-curl php7.0-json php7.0-fpm php7.0-zip php7.0-mcrypt php7.0-sqlite3 libapache2-mod-php7.0
apt-get install curl sqlite sqlite3 unzip zip -y
mkdir ~/html
mv /var/www/html /var/www/html2
ln -s ~/html /var/www/html
unzip Sport1090730.zip
mv Sport1090730 Sport109
mv ~/Sport109 ~/html/Sport109
mkdir /home/Sport_data
chown www-data.www-data /home/Sport_data
sed -i 's/admin/學籍帳號/g' ~/html/Sport109/109.conf.php
sed -i 's/abc1234/學籍密碼/g' ~/html/Sport109/109.conf.php
sed -i 's/074XXX/教育部學校代碼/g' ~/html/Sport109/109.conf.php
sed -i "s/_client_id = ''/_client_id = '雲端學籍系統學校的API_ID'/g" ~/html/Sport109/109.conf.php
sed -i "s/_secret = '';/_secret = '雲端學籍系統學校的_API_密碼';/g" ~/html/Sport109/109.conf.php
reboot now

檔名:SportInstall_ub2004.sh
內容為
#!/bin/bash
apt-get install apache2 -y
apt-get install php -y
apt-get install -y php7.4-common php7.4-mbstring php7.4-dev php7.4-mysql php7.4-xml php7.4-gd php7.4-curl php7.4-json php7.4-fpm php7.4-zip php7.4-sqlite3 libapache2-mod-php7.4
apt-get install curl sqlite sqlite3 unzip zip -y
mkdir ~/html
mv /var/www/html /var/www/html2
ln -s ~/html /var/www/html
unzip Sport1090730.zip
mv Sport1090730 Sport109
mv ~/Sport109 ~/html/Sport109
mkdir /home/Sport_data
chown www-data.www-data /home/Sport_data
sed -i 's/admin/學籍帳號/g' ~/html/Sport109/109.conf.php
sed -i 's/abc1234/學籍密碼/g' ~/html/Sport109/109.conf.php
sed -i 's/074XXX/教育部學校代碼/g' ~/html/Sport109/109.conf.php
sed -i "s/_client_id = ''/_client_id = '雲端學籍系統學校的API_ID'/g" ~/html/Sport109/109.conf.php
sed -i "s/_secret = '';/_secret = '雲端學籍系統學校的_API_密碼';/g" ~/html/Sport109/109.conf.php
reboot now

二、如何使用SportInstall_ub1604.sh
$sudo chmod 777 SportInstall_ub1604.sh
$sudo sh  SportInstall_ub1604.sh

三、手動變更~/html/Sport109/109.conf.php 與 設定/ect/apache2/sites-enabled/000-default.conf
檔案位置與名稱 ~/html/Sport109/109.conf.php
// 5.可寫入目錄(放置資料庫檔及暫存區用),建議搬至網頁目錄外
define('__SiteData', '/home/Sport_data/');

檔案位置與名稱 /ect/apache2/sites-enabled/000-default.conf
DocumentRoot /var/www/html 改為 DocumentRoot /home/使用者名稱/html/Sport109
或是
DocumentRoot /var/www/html 改為DocumentRoot /var/www/html/Sport109

四、用瀏覽器進入網址為 http://伺服器IP/,建立資料庫。若是沒有建立資料庫,請用瀏覽器進入網址為 http://伺服器IP/easy.php,建立資料庫。
                                           
五、設定各項比賽預設值




前面步驟一、二、三的詳細說明
        安裝完ubuntu 16.04 x64  桌面版本。現在要安裝運動檢錄系統,將安裝過程記錄下來。
(1).安裝Apache2
$sudo apt-get install apache2 -y

(2).安裝php與php擴展套件
$sudo apt-get install php -y
$sudo apt-get install -y php7.0-common php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-xml php7.0-gd php7.0-curl php7.0-json php7.0-fpm php7.0-zip php7.0-mcrypt php7.0-sqlite3 libapache2-mod-php7.0

(3).安裝 curl、sqlite、sqlite3、unzip、zip
$sudo apt-get install curl sqlite sqlite3 unzip zip -y

(4).設定資料夾
$mkdir ~/html
$sudo mv /var/www/html /var/www/html2
$sudo ln -s ~/html /var/www/html

(5).解壓縮Sport1090730.zip 與變更擁有者
$sudo unzip Sport1090730.zip
$sudo mv Sport1090730 Sport109
$sudo mv ~/Sport109 ~/html/Sport109
$sudo mkdir /home/Sport_data
$sudo chown www-data.www-data /home/Sport_data -R

(6).設定/ect/apache2/sites-enabled/000-default.conf
DocumentRoot /var/www/html 改為 DocumentRoot /home/使用者名稱/html/Sport109
或是
DocumentRoot /var/www/html 改為DocumentRoot /var/www/html/Sport109

(7).設定109.conf.php,其內容為
// 1.最高管理者的學籍帳號
$Admin['User']='自己在雲端學籍系統的帳號';
$Admin['Pass']='自己在雲端校務系統的密碼';
比方說
自己在雲端學籍系統的帳號與密碼分別為 webadmin 與 demo1234
此時要填入的資訊分別為
$Admin['User']='webadmin';
$Admin['Pass']='demo1234';
安裝完成後,要以帳號 webadmin 登入,才能在檢錄系統有最高權權限。

// 2.最高管理者的學籍帳號
$school_code='074XXX';//教育部學校代碼

// 3.雲端學籍系統內,學校的 API ID
$API_client_id = 'xxxxxxxxxxxxxxxxxxx';

// 4.雲端學籍系統內,學校的 API 密碼
$API_client_secret = 'xxxxxxxxxxxxxxxx';

// 5.可寫入目錄(放置資料庫檔及暫存區用),建議搬至網頁目錄外
define('__SiteData', '/home/Sport_data/');

(7).重開機
$sudo reboot now

(8).用瀏覽器進入網址為 http://伺服器IP/,建立資料庫。若是沒有建立資料庫,請用瀏覽器進入網址為 http://伺服器IP/easy.php,建立資料庫。
                                           
(9).設定各項比賽預設值


最後、如何取得雲端學籍系統內,學校的 API ID與雲端學籍系統內,學校的 API 密碼



除錯

感恩二林國小紀老師、花壇國小李志賢老師。
錯誤1.完全依照前面步驟一、二、三、最後 安裝完,登入系統點選項目。卻出現權限不足。如下的畫面
這表示
7.設定109.conf.php 的
// 1.最高管理者的學籍帳號
$Admin['User']='admin';
$Admin['Pass']='abc1234';//暫用不到
要修改成,在cloudschool.chc.edu.tw 自己的學校的帳號與密碼。
比方說,我在cloudschool.chc.edu.tw 自己的學校的帳號為 webadmin、密碼為demo1234
就要將109.conf.php 的
$Admin['User']='admin';
$Admin['Pass']='abc1234';//暫用不到
改成
$Admin['User']='webadmin';
$Admin['Pass']='demo1234';//暫用不到
安裝完成後,用帳號webadmin與密碼demo1234登入 ,才會擁有最高權限。
那接下來要如何處理?
(1).刪除/home/Sport_data
$sudo rm /home/Sport_data -R
(2).重建/home/Sport_data
$sudo mkdir  /home/Sport_data
(3).變更擁有者為www-data.www-data
#sudo chown www-data.www-data /home/Sport_data
(4).設定 /ect/apache2/sites-enabled/000-default.conf
DocumentRoot /var/www/html 改為 DocumentRoot /home/webadmin/html/Sport109
(5).用瀏覽器進入網址為 http://伺服器IP/,建立資料庫
(6).用帳號webadmin與密碼demo1234登入 
 
感恩二林國小紀老師、和東國小王麒富老師、明倫國中江明熹老師。
錯誤2.完全依照前面步驟一、二、三、最後 安裝完,登入系統。卻出現這個錯誤訊息,要如何處理?
表示找不到人。那表示伺服器架在學校網段外,所以無法從cloudschool.chc.edu.tw 學校伺服器的API取得資料。所以需將伺服器架在學校網段內。
         另外一個原因可能是尚未建立資料庫,請用瀏覽器進入網址為 http://伺服器IP/easy.php,建立資料庫。
                                             

感恩二林國小紀老師。
錯誤3.要印出檢錄單時,卻出現錯誤訊息,其截圖如下:
則表示php7.0-zip 沒有裝好。請重裝php7.0-zip後重啟,其指令如下:
$sudo apt-get install php7.0-zip
$sudo reboot now

感恩竹塘國中劉冠佑組長
錯誤4.安裝完成後,用學籍帳號卻一直無法登入。可能是您的彰化Gsuite帳號與學籍帳號是不同的,請您用彰化Gsuite帳號登入。




2021年3月4日 星期四

如何在linux shell 交互環境下,自動填入密碼

 


1.安裝expect
sudo apt-get install expect

2.建立test.exp
$sudo pico test.exp

目的:利用帳號 webadmin 密碼 demo1234 從192.168.1.150 用ssh連線到 192.168.1.157

檔案名稱:test.exp
檔案內容
#!/usr/bin/expect          
set user "webadmin"          
set pwd "demo1234"
set host "192.168.1.157"

set timeout -1
spawn ssh -p 22 $user@$host
expect {
    "password: " {send "$pwd\r"}
}
expect "]*"                
send "touch /home/webadmin/aa.txt\r"
expect "]*"
send "echo hello world >> /home/webadmin/aa.txt\r"
expect "]*"             
interact

3.變更權限
$sudo chmod 777 test.exp

4.執行 test.exp
$sudo expect test.exp





2021年2月22日 星期一

如何用shell快速建立自己的docker-nginx-php-mysql開發環境

 前一篇:建立在CentOS上的 docker 與 mongodb 介紹

經過陳瑩光老師指導後,希望能夠用shell快速完成自己專案開發環境
一、安裝前準備
1.確認安裝版本:
    docker 會呼叫 linux kernel 的 Namespace 與 Cgroup,所以建議使用 CentOS 7。
2.使用虛擬機

二、shell檔案快速完成
檔名:DockerEnvInstall.sh
檔案內容:
#!/bin/bash
yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
yum install -y yum-utils
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io
systemctl start docker
curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose version
yum install git
mkdir test
cd test
git clone https://github.com/mark2470mark/docker-nginx-php-mysql.git
cd ~/test/docker-nginx-php-mysql
docker-compose up -d
docker-compose ps

三、設定DockerEnvInstall.sh為可執行
$sudo chmod 755 DockerEnvInstall.sh
$sudo sh DockerEnvInstall.sh

四、設定git
1.命令列建立新的repository
echo "# docker-nginx-php-mysql" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/mark2470mark/docker-nginx-php-mysql.git
git push -u origin main

2.命令列上傳到既有的repository
git remote add origin https://github.com/mark2470mark/docker-nginx-php-mysql.git
git branch -M main
git push -u origin main


如何用shell在lubuntu 16.04快速安裝GitLab

 1.套件更新

$sudo apt-get update
2.安裝 curl openssh-server ca-certificates postfix tzdata
$sudo apt-get install -y curl openssh-server ca-certificates postfix tzdata
3.下載與安裝GitLab package server
$curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
4.安裝gitlab-ce,檔案很大 8百多M
$sudo apt-get install -y gitlab-ce
5.設定gitlab-ce 
$sudo gitlab-ctl reconfigure
6.修改/etc/gitlab/gitlab.rb
$sudo pico /etc/gitlab/gitlab.rb 
現在將其設定為
external_url 'http://192.168.1.150'


7.重新配置gitlab
$sudo gitlab-ctl reconfigure
8.用chrome瀏覽 http://192.168.1.150




用shell在CentOS 7 安裝編輯器 Geany 1.37.1、Leafpad、Bluefish、Visual Studio Code、Sublime Text 3、Phpstorm 2020.3

 因為在CentOS 7 編寫程式,所以要開始研究編輯器。 


檔案名稱:CenOS7GeanyInstall.sh
檔案內容:
#!/bin/bash
yum install -y gcc-c++
yum install -y intltool
yum install -y libgnomeui-devel
wget https://download.geany.org/geany-1.37.1.tar.gz
tar zxvf geany-1.37.1.tar.gz
rm geany-1.37.1.tar.gz -y
cd geany-1.37.1
./configure
make
make install

如何使用
$chmod 777 CenOS7GeanyInstall.sh
$sudo sh  CenOS7GeanyInstall.sh

檔案名稱:CenOS7LeafpadInstall.sh
檔案內容:
#!/bin/bash
yum install -y epel-release
yum install -y snapd
systemctl enable --now snapd.socket
ln -s /var/lib/snapd/snap /snap
snap install leafpad

如何使用
$chmod 777 CenOS7LeafpadInstall.sh
$sudo sh  CenOS7LeafpadInstall.sh

檔案名稱:CenOS7BluefishInstall.sh
檔案內容:
#!/bin/bash
yum install -y dnf
dnf install -y bluefish 

如何使用
$chmod 777 CenOS7BluefishInstall.sh
$sudo sh  CenOS7BluefishInstall.sh

檔案名稱:CenOS7VisualStudioCodeInstall.sh
檔案內容:
#!/bin/bash
yum install dnf -y
rpm --import https://packages.microsoft.com/keys/microsoft.asc
sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
dnf check-update
dnf install code

如何使用
$chmod 777 CenOS7VisualStudioCodeInstall.sh
$sudo sh  CenOS7VisualStudioCodeInstall.sh

檔案名稱:CenOS7SublimeText3Install.sh
檔案內容:
#!/bin/bash
rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
yum-config-manager --add-repo https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
yum install -y sublime-text

如何使用
$chmod 777 CenOS7SublimeText3Install.sh
$sudo sh  CenOS7SublimeText3Install.sh

需在視窗環境下安裝
檔案名稱:CenOS7Phpstorm20203Install.sh
檔案內容:
#!/bin/bash
wget https://download-cf.jetbrains.com/webide/PhpStorm-2020.3.tar.gz
tar -xvf PhpStorm-2020.3.tar.gz
mv PhpStorm-203.5981.175 PhpStorm
ln -s ./PhpStorm/bin/phpstorm.sh /usr/bin/phpstorm
echo "#!/bin/bash"  > phpstormsetup.sh
echo "sh ~/PhpStorm/bin/phpstorm.sh"  >> phpstormsetup.sh
chmod 777 phpstormsetup.sh
sh phpstormSetup.sh

如何使用
$chmod 777 CenOS7Phpstorm20203Install.sh
$sudo sh  CenOS7Phpstorm20203Install.sh

如何啟動phpstorm
$sudo sh phpstormSetup.sh 


2021年2月21日 星期日

如何用 shell 在CentOS 7快速安裝HA Proxy 2.3

 一、官方網站:HAProxy

二、下載處

三、可直接使用yum install haproxy,但會安裝1.5 版
其指令如下:
$sudo  yum install haproxy

以下,目前測試有錯。目前正在除錯中。

四、shell安裝2.3 版Ha Proxy
檔案名稱:HaProxy23Install.sh
檔案內容:
#!/bin/bash
yum install -y make gcc wget
wget http://www.haproxy.org/download/2.3/src/haproxy-2.3.2.tar.gz
tar zxvf haproxy-2.3.2.tar.gz
cd ~/haproxy-2.3.2
make TARGET=linux310 ARCH=x86_64 PREFIX=/usr/local/haproxy
make install PREFIX=/usr/local/haproxy
cp /usr/local/haproxy/sbin/haproxy /usr/sbin/
cp examples/haproxy.init /etc/init.d/haproxy
chmod 755 /etc/init.d/haproxy
useradd -r haproxy
mkdir /etc/haproxy
echo "global" > /etc/haproxy/haproxy.cfg
echo "    log         127.0.0.1 local2" >> /etc/haproxy/haproxy.cfg
echo "    chroot      /var/lib/haproxy" >> /etc/haproxy/haproxy.cfg
echo "    pidfile     /var/run/haproxy.pid" >> /etc/haproxy/haproxy.cfg
echo "    maxconn     4000" >> /etc/haproxy/haproxy.cfg
echo "    user        haproxy" >> /etc/haproxy/haproxy.cfg
echo "    group       haproxy" >> /etc/haproxy/haproxy.cfg
echo "    daemon" >> /etc/haproxy/haproxy.cfg
echo "    stats socket /var/lib/haproxy/stats" >> /etc/haproxy/haproxy.cfg
echo "defaults" >> /etc/haproxy/haproxy.cfg
echo "    mode                    http" >> /etc/haproxy/haproxy.cfg
echo "    log                     global" >> /etc/haproxy/haproxy.cfg
echo "    option                  httplog" >> /etc/haproxy/haproxy.cfg
echo "    option                  dontlognull" >> /etc/haproxy/haproxy.cfg
echo "    option http-server-close" >> /etc/haproxy/haproxy.cfg
echo "    option forwardfor       except 127.0.0.0/8" >> /etc/haproxy/haproxy.cfg
echo "    option                  redispatch" >> /etc/haproxy/haproxy.cfg
echo "    retries                 3" >> /etc/haproxy/haproxy.cfg
echo "    timeout http-request    10s" >> /etc/haproxy/haproxy.cfg
echo "    timeout queue           1m" >> /etc/haproxy/haproxy.cfg
echo "    timeout connect         10s" >> /etc/haproxy/haproxy.cfg
echo "    timeout client          1m" >> /etc/haproxy/haproxy.cfg
echo "    timeout server          1m" >> /etc/haproxy/haproxy.cfg
echo "    timeout http-keep-alive 10s" >> /etc/haproxy/haproxy.cfg
echo "    timeout check           10s" >> /etc/haproxy/haproxy.cfg
echo "    maxconn                 3000" >> /etc/haproxy/haproxy.cfg
echo "frontend  main *:5000" >> /etc/haproxy/haproxy.cfg
echo "    acl url_static       path_beg       -i /static /images /javascript /stylesheets" >> /etc/haproxy/haproxy.cfg
echo "    acl url_static       path_end       -i .jpg .gif .png .css .js" >> /etc/haproxy/haproxy.cfg
echo "    use_backend static          if url_static" >> /etc/haproxy/haproxy.cfg
echo "    default_backend             app" >> /etc/haproxy/haproxy.cfg
echo "backend static" >> /etc/haproxy/haproxy.cfg
echo "    balance     roundrobin" >> /etc/haproxy/haproxy.cfg
echo "    server      static 127.0.0.1:4331 check" >> /etc/haproxy/haproxy.cfg
echo "backend app" >> /etc/haproxy/haproxy.cfg
echo "    balance     roundrobin" >> /etc/haproxy/haproxy.cfg
echo "    server  app1 127.0.0.1:5001 check" >> /etc/haproxy/haproxy.cfg
echo "    server  app2 127.0.0.1:5002 check" >> /etc/haproxy/haproxy.cfg
echo "    server  app3 127.0.0.1:5003 check" >> /etc/haproxy/haproxy.cfg
echo "    server  app4 127.0.0.1:5004 check" >> /etc/haproxy/haproxy.cfg
service haproxy start

五、安裝2.3 版Ha Proxy的相關步驟
01.安裝make、gcc、wget
$sudo yum install -y make gcc wget

02.wget Ha Proxy 2.3
$sudo wget http://www.haproxy.org/download/2.3/src/haproxy-2.3.2.tar.gz

03.解壓縮haproxy-2.3.2.tar.gz
$sudo tar zxvf haproxy-2.3.2.tar.gz

04.進入haproxy-2.3.2
$cd haproxy-2.3.2

05.編譯
$sudo make TARGET=linux310 ARCH=x86_64 PREFIX=/usr/local/haproxy

06.安裝Ha Proxy,並將執行檔指定到/usr/local
$sudo make install PREFIX=/usr/local/haproxy

07.將執行檔複製到/usr/sbin/底下
$sudo cp /usr/local/haproxy/sbin/haproxy /usr/sbin/

08.複製啟動腳本檔案到系統中,並調整權限,確保系統可以正常將Haproxy啟動
$sudo cp examples/haproxy.init /etc/init.d/haproxy
$sudo chmod 755 /etc/init.d/haproxy

09.新增使用者帳號haproxy給Haproxy使用
$sudo useradd -r haproxy

10.在/etc/下新增一個haproxy的資料夾,並放入設定檔,檔名為:haproxy.cfg
$mkdir /etc/haproxy
$vi /etc/haproxy/haproxy.cfg
檔案名稱:haproxy.cfg
檔案內容:
global
    log         127.0.0.1 local2
    chroot      /var/lib/haproxy
    pidfile     /var/run/haproxy.pid
    maxconn     4000
    user        haproxy
    group       haproxy
    daemon
    stats socket /var/lib/haproxy/stats

defaults
    mode                    http
    log                     global
    option                  httplog
    option                  dontlognull
    option http-server-close
    option forwardfor       except 127.0.0.0/8
    option                  redispatch
    retries                 3
    timeout http-request    10s
    timeout queue           1m
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 10s
    timeout check           10s
    maxconn                 3000

frontend  main *:5000
    acl url_static       path_beg       -i /static /images /javascript /stylesheets
    acl url_static       path_end       -i .jpg .gif .png .css .js
    use_backend static          if url_static
    default_backend             app

backend static
    balance     roundrobin
    server      static 127.0.0.1:4331 check

backend app
    balance     roundrobin
    server  app1 127.0.0.1:5001 check
    server  app2 127.0.0.1:5002 check
    server  app3 127.0.0.1:5003 check
    server  app4 127.0.0.1:5004 check

11.啟動Ha Proxy服務
$service haproxy start

12.啟動、重啟、關閉Ha Proxy服務
#啟動服務
$sudo systemctl start haproxy.service

#重新啟動服務
$sudo systemctl restart haproxy.service

#關閉服務
$sudo systemctl stop haproxy.service







如何用shell在linux mint 20.04 安裝中文輸入法

         自從安裝了linuxmint 桌面版,卻發現沒有中文輸入法,覺得不方便. 開始學安裝中文輸入法

fcitx 精簡安裝
$ sudo apt-get install fcitx fcitx-ui-classic fcitx-config-gtk
新酷音輸入法
$ sudo apt-get install fcitx-chewing
無蝦米輸入法
$ sudo apt-get install fcitx-table-boshiamy

檔案名稱:Zh-TwInput.sh
檔案內容:
#!/bin/bash
apt-get install fcitx fcitx-ui-classic fcitx-config-gtk
apt-get install fcitx-chewing
apt-get install fcitx-table-boshiamy

使用方法:
$sudo chmod 777 Zh-TwInput.sh
$sudo sh Zh-TwInput.sh

資料來源:


用shell 快速安裝CentOS 7 桌面環境、遠端桌面環境

為了要在CentOS 7 寫php程式,開始要了解 CentOS 7 桌面環境。

檔案名稱:CentOS7Gnome.sh
檔案內容:
#!/bin/bash
yum -y groups install "GNOME Desktop" "Graphical Administration Tools"
systemctl set-default graphical.target
reboot

如何使用
$sudo chmod 777 CentOS7Gnome.sh
$sudo sh CentOS7Gnome.sh

檔案名稱:CentOS7Xfce.sh
檔案內容:
#!/bin/bash
yum install epel-release -y
yum groupinstall "Xfce" -y
systemctl set-default graphical.target
reboot

如何使用
$sudo chmod 777 CentOS7Xfce.sh
$sudo sh CentOS7Xfce.sh

檔案名稱:CentOS7GnomeXrdp.sh
檔案內容:
#!/bin/bash
yum -y groups install "GNOME Desktop" "Graphical Administration Tools"
systemctl set-default graphical.target
rpm -Uvh http://download.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install xrdp tigervnc-server -y
systemctl enable xrdp.service
reboot

如何使用
$sudo chmod 777 CentOS7GnomeXrdp.sh
$sudo sh CentOS7GnomeXrdp.sh

檔案名稱:CentOS7XfceXrdp.sh
檔案內容:
#!/bin/bash
#!/bin/bash
yum install epel-release -y
yum groupinstall "Xfce" -y
systemctl set-default graphical.target
rpm -Uvh http://download.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install xrdp tigervnc-server -y
systemctl enable xrdp.service
reboot

如何使用
$sudo chmod 777 CentOS7XfceXrdp.sh
$sudo sh CentOS7XfceXrdp.sh




用shell 在CentOS 7 快速安裝 Chrome 與安裝、設定字型Fira Code

 為了要在CentOS 7 寫php程式,開始要了解 CentOS 7 桌面環境。

 
檔案名稱:CentOS7Chrome.sh
檔案內容:
#!/bin/bash
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
yum install -y ./google-chrome-stable_current_*.rpm

如何使用
$sudo chmod 777 CentOS7Chrome.sh
$sudo sh CentOS7Chrome.sh

檔案名稱:CentOS7FiraCode.sh
檔案內容:
#!/bin/bash
yum install -y git
git clone https://github.com/tonsky/FiraCode.git
mv ~/FiraCode/distr/ttf /usr/share/fonts/FiraCode
chmod 755 /usr/share/fonts/FiraCode -R
fc-cache -v
fc-cache-64  -v
rm ~/FiraCode -rf

如何使用
$sudo chmod 777 CentOS7FiraCode.sh
$sudo sh CentOS7FiraCode.sh

重啟後,Chrome 才能設定字型Fira Code



資料來源:

只要點兩下就能將 彰化縣EIP系統全校學生帳號總表 依 各班級 分成 各班級學生帳號總表

系列文章: 1. 只要點兩下就能產出彰化縣Cloud School 學生帳號密碼匯入彰化縣EIP系統學生帳號密碼的CSV 1. https://skjhcreator.blogspot.com/2025/08/cloud-school-eipcsv.html 2. 只要點兩下就能...