About me

Monday 21 May 2018

Ubuntu下幾個Printer設定方式

      最近因為工作上的需求,所以開始在研究印表機的設定和行為,主要用GUI的方式有兩個,一個是使用『cups』,另一個則是使用你的桌面環境(desktop environments)的工具,像我的話就是用『gnome-control-center』裡面的『printer』工具來設定的。有時候你的環境沒有網路也沒有桌面環境的話,更進階有另外兩種方式可以設定你的印表機,一個是透過terminal上的『lpadmin』和ppd來加入你的印表機,令一個則是使用『udev-configure-printer』的工具。


      Ubuntu Support Printers

      Ununtu裡面所支援的印表機請參考:
      https://help.ubuntu.com/community/Printers


      IJS VS HPLIP

      因為這篇文裡面用的是HP的印表機,有用到HPLIP和IJS的東西,一開始我還蠻混亂的,所以就當筆記,寫一下這兩個東西的差別。

      HPLIP是給CUPS用的完整版 imaging and printing system,裡面已經有包含HPIJS了。
      而HPIJS則是HPLIP的子元件,提供了一些基本的列印功能,可以使用在CUPS, LPD, PPR和其他的spoolers上。

      其他的還有像是HPIJS提供了沒有postscript功能的印表機支援,也可以在沒有spoolers的環境上運作,無法提供IO。而HPLIP則提供了雙向(bi-directional)的IO溝通,並且可以掃描(scanning), photo card存取, 和toolbox的功能. 但是HPLIP則一定需要CUPS的spooler.


Thursday 13 July 2017

sshfs

   

命令描述

通常在Linux裡面,一般我們要操作到遠端的檔案系統的話,都會用『samba』和『nfs』,這兩個方式比較正統,但是其實有第三種方式 - 『SSHFS (Secure SHell FileSystem)』的存在。sshfs可以直接用ssh的方式來掛載一個遠端檔案系統,主要是在linux上的檔案操作(還有其他有實做FUSE的OS,像是Mac OS X和FreeBSD等等)。 在本地端如果要把sshfs給掛載起來的話,實做的話會採用到FUSE (Filesystem in Userspace)的kernel module。所以呢,本地端就是要安裝這個軟體,而遠端則只要SSH的SFTP subsystem就夠了。這個命令如果要用到IPv6的話,記得要將IP給放在中括號(square brackets)裡面,像是[fe80::1025:45d0:9e4e:65c7]。

Sunday 16 April 2017

建立自己的作業系統 - step by step

之前研究過使用buildroot來建立一個客製化的Linux作業系統-『buildRoot study - 建立自己的作業系統』,那時候就想說想要把buildroot給抽掉,結果經過一年多,終於有空可以繼續之前的這個研究,這次完全的將buildroot給抽掉,『Bootloader-uboot』, 『Kernel』, 『Rootfs-busybox』,『glibc』完全都自己建立,藉由此了解一個小型OS的構成。




大綱

1.Preparation Ubuntu 數莓派2 TTL Cable Enviroment 2.目標 Firmware U-boot Kernel Root FileSystem 3.Partition SD Card 4.raspberry pi 官方軔體 5.Root File System 6.Glibc 7.Kernel 8.u-boot 9.Boot-up 10. Ref

Monday 10 April 2017

Linux poll 機制

語法
#須引入這個header
#include <poll.h>

#poll用法
int poll(struct pollfd *fds, nfds_t nfds, int timeout);

#define _GNU_SOURCE /* See feature_test_macros(7) */
#include  <signal.h>
#include  <poll.h>

int ppoll(struct pollfd *fds, nfds_t nfds,
const struct timespec *tmo_p, const sigset_t *sigmask);

 

Monday 27 March 2017

[Linux][Bash] 如何分享別人自己的Terminal畫面

  

如何分享別人自己的Terminal畫面
有時後在使用Terminal上有一些狀況,還是有一些問題,所以想要跟別人討論,通常都是擷取畫面或是錄製操作流程後在打電話或是使用像Line之類的軟體來討論。這種方式通常會有一些步驟會流失,或者是你描述的另一個人會無法想像。

所以最好的方式就是你可以在那個人面前操作terminal,然後直接討論,在有VNC還是有遠端桌面的狀況之下可以這樣,但是如果是terminal的話,似乎比較難,所以這篇文教你怎麼可以跟別人share你的terminal畫面。

Saturday 7 January 2017

[Linux] bash-completion

  

介紹

之前我不知道原來『bash-completion』沒有在Ubuntu上是預設,還以為是ubuntu上面就沒有這個功能,還在社群上鬧笑話=.=,這篇文來紀錄一下bash-completion的用法。

bash-completion是一系列的bash script,不只可以對檔案,資料夾,還可以對指令做自動完成的功能。

Thursday 5 January 2017

[Linux] bash - set指令

  
介紹

Linux 這個Unix-like的架構所使用的shell - 『Bourne shell』,底下有內建一個『set』指令,主要用來設置/取消/檢視shell的參數和變數。