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

2018年6月1日 星期五

NAS 架設 git server 實戰範例

NAS 架設 git server 實戰範例

其實只要有 SSH+git 就可以架設了,貌似也沒有什麼限制 (git沒有分客戶端跟伺服器端)

伺服器端

這邊要先開好 SSH 可以連進來以及裝好git,簡單來說就是你可以連進這一台並且輸入git命令有東西,這樣就可以了。
再來是環境的部分,使用者建議多件一個名為 git 的使用者,如果是其他名字待會客戶端指令要跟著改。
接下來要開始建立伺服器倉庫,指令比較不一樣,工作目錄就直接使用者文件底下
git init --bare Repos.git
指令下完就在這裡產生一個 Repos.git 的資料夾,到時候倉庫會同步在這裡,以github來說目前的階段就是
你按下新倉庫然後輸入倉庫名稱,不初始化任何東西,此時頁面跳出教你如何上傳指令
的這個狀態。

客戶端

接下來照著 github 上的教學打就可以了,先初始化本地git並且至少有一個提交紀錄。
mkdir Repos
cd Repos

echo "# Repos" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@CHG-NAS:Repos.git
git push -u origin master
然後就傳上去了~就這麼簡單
要改的部分是 git@CHG-NAS:Repos.git
git = 使用者名稱
@CHG-NAS = 服務器IP
:Repos.git = 預設從使用者目錄開始算

2018年5月31日 星期四

ubuntu 16.04 安裝 cuda 9.0

ubuntu 16.04 安裝 cuda 9.0

驅動程式可以不安裝過程會自己安裝,先安裝也會重新安裝cuda選用的版本,整個流程跑完要手動重新開機。
因為有安裝驅動,建議下面流程跑完就馬上重新開機,不然用一用可能會當機。安裝驅動之後重新開機第一次會比較久,等一下會黑畫面什麼都沒有很像死機了。
過程涉及安裝驅動~如果有發生什麼衝突可能導致系統崩潰無法開啟,這點要注意一下~

可以不用點有包含再底下指令(cuda版本有升級文章還沒更新就要手動改版本號)
安裝指令
# 加入驅動鏡像站
sudo add-apt-repository ppa:graphics-drivers/ppa -y

# 升級系統
sudo apt-get update
sudo apt-get upgrade -y

# 安裝 cuda
cd ~/Downloads
sudo wget -c https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64-deb
sudo dpkg -i cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64-deb
sudo apt-key add /var/cuda-repo-9-0-local/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda -y

# 加入函式庫
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
到這邊就裝好了,還要配置他的bin跟lib位置,否則直接打 nvcc 會出現找不到
方法是參考官方說明網站:docs.nvidia.com
# 函式庫標頭檔路徑
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}

# 函式庫路徑(這個好像不用)
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64 ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
這樣就配置好了可以打
nvcc --version
只不過剛剛的配置方法只有對這個終端機有用,換終端機或是重開就沒了
想要真正加入的話把那兩行寫入 vi .bashrc 這個文件裏面開機自動執行就好了
vi .bashrc
加入最尾端或是隨意找個地方寫也可以,然後重新登入再打測試版本的指令就有了。
最後測試一下到底有沒有裝對。
這邊記得先重開機一次否則測試結果會失敗歐
git clone https://github.com/hunandy14/cuda_copyArr
cd cuda_copyArr
make run
看一下有沒有跑出 test ok 有的話就是一切都正常了,包含驅動。(失敗的話重新開機再試試看)
這是一個簡單的cuda程式,其中我有寫一個比較容易的呼叫使用記憶體的函式,適合新手學習使用。
寫文章測試的時候 cuda9.0 選用的版本 384 而當前最新版本是 390 ,建議不要更動這個版本裝好就別升級了,可能會發生一些無法預測的錯誤。

Unubunt gcin 中文輸入法安裝

Unubunt gcin 中文輸入法安裝

安裝指令如下
sudo apt-get install gcin
im-config
如須使用日文輸入法擇多一個
sudo apt-get install gcin-anthy
然後到輸入法裏面啟用日文輸入法即可

2018年5月30日 星期三

Linux 安裝中文版 "桌面" 與 "下載" 的路徑改成英文

Linux 安裝中文版 “桌面” 與 “下載” 的路徑改成英文

文中使用的系統是 ubuntu 如果你是用 Mint 應該也是通用的。
設定檔的路徑是
vi .config/user-dirs.dirs
進入之後就可以自行設置了~把桌面改為英文設定檔跟著改即可

2018年5月27日 星期日

Linux 修復 GRUB 與自訂開機選單

Linux 修復 GRUB 與自訂開機選單

修復BRUB

事前環境架設:
使用 USB 或 CD 燒入 Ubuntu 或 Mint 安裝檔開機進入系統,然後開始本篇教學
安裝自動修復軟件
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
打開之後選擇1自動修復
照著選單走需要打上上面的指令,並依照圖片按Yes,然後按下Forward下一步
然後下一步一樣照著指令走
這裡需要注意的是照著圖片,按空白見選取第一個然後再按ok,然後回到程式按下一步
再來會自動繼續跑,會出現幾次選單,就直接按enter預設值就好,然後就完成了
再來移除 USB 重新開機即可~即可正常開機進入 linux


自訂開機選單

安裝軟體
sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer
然後直接打開,畫面都是GUI+中文介面的,可以自行設定,也可以新增 Windows 10 或 Windows7 的開機選單。

2018年5月24日 星期四

Ubuntu16.04 Adobe Reader Install 如何安裝

Ubuntu16.04 Adobe Reader Install 如何安裝

這篇參考[1] 測試的日期式發文日期 2018.05

安裝

新增鏡像站

sudo add-apt-repository "deb http://archive.canonical.com/ precise partner"
sudo apt-get update

安裝

sudo apt-get install adobereader-enu

刪除鏡像站

sudo add-apt-repository -r "deb http://archive.canonical.com/ precise partner"
sudo apt-get update

修改預設開啟軟體

sudo gedit /etc/gnome/defaults.list
找到這一行
application/pdf=evince.desktop
修改成這樣
application/pdf=acroread.desktop

參考

2018年5月23日 星期三

ubuntu 16.06 安裝 OpenCV3.4.1 contrib 編譯 C++

ubuntu 16.06 安裝 OpenCV3.4.1 contrib 編譯 C++

範例中使用的系統是 ubuntu ,使用其他系統在自己置換一下 apt-get install 即可
懶人包 script 在這裡:opencv341_installer for Ubuntu 16.04


事前準備

# 更新系統
sudo apt-get update
sudo apt-get dist-upgrade -y

# 安裝必要軟件
sudo apt-get install build-essentia
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

安裝 OpenCV

檔案從 OpenCV 的官方git下載,下載指令如下
mkdir opencv341
cd opencv341

git clone -b 3.4.1 https://github.com/opencv/opencv
git clone -b 3.4.1 https://github.com/opencv/opencv_contrib
再來就會自己下載好了然後我們建立一個資料夾準備編譯
mkdir build
cd build
cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules ../opencv

# 開始編譯
make -j8
這邊會跑一小段時間跑完之後就編譯好了,還需要安裝到系統上
cmake 的時候要從網路下載東西,那個會卡很久正常的,能跑好的就等一下吧
# 複製編譯後的檔案套系統目錄內
sudo make install

# 新增執行檔所需要的 lib 庫路徑到環境變數上
sudo ldconfig


測試

編譯的時候使用 pkg-config 幫我們設置路徑,我們先測試一下是否正確安裝OpenCV了
# 察看OpenCV版本
pkg-config -- modversion

# 察看路徑與函式庫
pkg-config opencv --libs --cflags
這邊都ok有看到東西就安裝好了,你應該會看到
3.4.1

-I/usr/local/include/opencv -I/usr/local/include -L/usr/local/lib -lopencv_cudabgsegm -lopencv_superres -lopencv_stitching -lopencv_cudafeatures2d -lopencv_cudastereo -lopencv_videostab -lopencv_cudaoptflow -lopencv_cudacodec -lopencv_cudaobjdetect -lopencv_cudalegacy -lopencv_cudawarping -lopencv_saliency -lopencv_fuzzy -lopencv_xobjdetect -lopencv_optflow -lopencv_ximgproc -lopencv_hfs -lopencv_bgsegm -lopencv_xphoto -lopencv_xfeatures2d -lopencv_shape -lopencv_bioinspired -lopencv_surface_matching -lopencv_face -lopencv_photo -lopencv_cudaimgproc -lopencv_cudafilters -lopencv_cudaarithm -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_video -lopencv_ml -lopencv_aruco -lopencv_freetype -lopencv_line_descriptor -lopencv_img_hash -lopencv_dnn_objdetect -lopencv_dnn -lopencv_ccalib -lopencv_reg -lopencv_stereo -lopencv_plot -lopencv_rgbd -lopencv_dpm -lopencv_objdetect -lopencv_structured_light -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_phase_unwrapping -lopencv_imgproc -lopencv_flann -lopencv_core -lopencv_cudev
再來讓我們編譯CPP檔案吧,下面是範例代碼,把他儲存為 opencv.cpp
/**********************************************************
Name :
Date : 2016/05/29
By   : CharlotteHonG
Final: 2018/05/23
**********************************************************/
#include <iostream>
using namespace std;

#include <opencv2/opencv.hpp>
using namespace cv;

int main(int argc, char const *argv[]) {
    /* 畫布 */
    Mat img(270, 720, CV_8UC3, Scalar(56, 50, 38));
    /* 直線 */
    line(img, Point(20, 40), Point(120, 140), Scalar(255, 0, 0), 3);
    /* 實心方塊 */
    rectangle(img, Point(150, 40), Point(250, 140), Scalar(0, 0, 255), -1);
    /* 實心圓 */
    circle(img, Point(330, 90), 50, Scalar(0, 255, 0), -1);
    /* 空心橢圓 */
    ellipse(img, Point(460, 90), Size(60, 40), 45, 0, 360, Scalar(255, 255, 0), 2);
    /* 不規則圖形 */
    Point points[1][5];
    int x = 40, y = 540;
    points[0][0] = Point(0 + y, 50 + x);
    points[0][1] = Point(40 + y, 0 + x);
    points[0][2] = Point(110 + y, 35 + x);
    points[0][3] = Point(74 + y, 76 + x);
    points[0][4] = Point(28 + y, 96 + x);
    const Point* ppt[1] = { points[0] };
    int npt[] = { 5 };
    polylines(img, ppt, npt, 1, 1, Scalar(0, 255, 255), 3);
    /* 繪出文字 */
    putText(img, "Test Passed !!", Point(10, 230), 0, 3, Scalar(255, 170, 130), 3);
    /* 開啟畫布 */
    imshow("OpenCV Test By:Charlotte.HonG", img);
    waitKey(0);
    return 0;
}
然後編譯
# 長得很奇怪這沒有打錯,是蚯蚓上的那一撇
g++ opencv.cpp -o opencv  `pkg-config opencv --cflags --libs`
執行確認結果
./opencv
執行出問題 未定義參考到「cv::String::deallocate()」 opencv 可能是剛剛你的設置函式庫路徑沒執行,再重新執行一次 sudo ldconfig


最後是 makefile 檔不過我也正在學習,還不知道通常正規是怎麼寫的,就是一個能跑的而已~
CXX = g++

CXXFLAG :=
CXXFLAG += -O3
CXXFLAG += -std=c++11
CXXFLAG += -Wall

CXXLIBS :=
CXXLIBS += `pkg-config opencv --libs`

CXXINCS :=
CXXINCS += `pkg-config opencv --cflags`

CPPFILES :=
CPPFILES := opencv.cpp

EXEFILE := main

all: opencv
opencv: opencv.cpp
    g++ $(CXXFLAG) $(CPPFILES) -o $(EXEFILE) $(CXXINCS) $(CXXLIBS)

run: opencv
    ./$(EXEFILE)

2018年5月18日 星期五

ubuntu linux 以 EFI 模式安裝 注意事項

ubuntu linux 以 EFI 模式安裝 注意事項

首先先到 UEFI 內將開選項設置成 only UEFI ,只啟動 UEFI 系統,至於安全啟動開啟或關閉並不重要,因為 ubuntu 也有購買認證是可以通過的。
然後就是安裝的過程,與一般MBR安裝的差別在於
  1. 自己多切一個 100M 以上的 EFI 分區
  2. 開機引導選擇安裝到 EFI 分區
傳統的MBR安裝是不需要EFI分區的所以不用切這個,引導是安裝到MBR就是直接預設選磁碟而不應該選擇任何分區。
boot 分區是用來放開機選單的 grub 的這個倒是不影響有需求再自己切
筆電或是某些版本的 UEFI 系統不會自己抓EFI開機選單,要自己進BIOS設置新增選單,通常是會讓你瀏覽到EFI分區然後選EFI文件,選文件的時候選 s 開頭的,這個有認證的可以過安全啟動。