Ubuntu下各種服務搭建及操作技巧

Ubuntu下搭建TFTP

1、安裝軟件包

sudo apt-get install tftpd tftp xinetd

2、建立配置文件

/etc/xinetd.d/下建立一個配置文件tftp

sudo vi /etc/xinetd.d/tftp

內容如下

  1. service tftp  
  2. {  
  3.     socket_type = dgram  
  4.     protocol = udp  
  5.     wait = yes  
  6.     user = root  
  7.     server = /usr/sbin/in.tftpd  
  8.     server_args = -s /tftpboot  
  9.     disable = no  
  10.     per_source = 11  
  11.     cps = 100 2  
  12.     flags = IPv4  
  13. }  

3、建立tftp服務文件目錄

在上面的配置中有server_args = -s /tftpboot,其中/tftpboot這個目錄就是上傳文件與下載文件的位置。

sudo mkdir /tftpboot          --創建/tftpboot目錄

sudo chmod 777 /tftpboot -R   --設置權限爲777

4、重新啓動tftp服務

sudo /etc/init.d/xinetd restart  --重啓tftp服務器

5、測試

sudo netstat -a | grep tftp      --查看是否啓動成功,可以看到udp 0 0 *:tftp *:*



VMware虛擬機中的ubuntu硬盤擴容


1、通過vmUI界面進行擴容基本上是不行的,至少在我的版本上是這樣,各種灰色按鈕,各種出錯;並且,界面擴容失敗後若打不開虛擬機,不要慌,只要你擴容之前的那個硬盤文件(我的是ubuntu64.vmdk,全編一個android項目後39G)還在,基本上是可以恢復的,一定要有耐心喲。另外,如果不是服務器級的硬盤,就不要使用快照了,感覺這個功能很坑爹,非常吃硬盤不說,關鍵是當它吃完你的硬盤後,你想刪除快照,對不起,您的硬盤已滿,請預留70G空間再刪除。於是你這時只有一種選擇,就是刪掉整個虛擬機。ps:不要試圖暴力刪除快照,如:刪快照到一半時取消,這樣會照成你的虛擬機永遠進不去也恢復不了,這會使得你在刪除整個虛擬機之前喪失備份關鍵數據的唯一機會。筆者經歷了災難性的數據損失,完全是血的教訓。

下面是使用命令行工具擴容。使用vmware提供的命令行工具vmware-vdiskmanager.exe,在windows下運行cmd,轉到vmware安裝目錄,vmware-vdiskmanager.exe可以查看幫助。輸入如下命令擴容:vmware-vdiskmanager -x 160Gb "D:\VMware\WinXP\myUbuntu.vmdk"。注:此時要擴容的系統不能在運行,參數 -x表示要擴展虛擬機的硬盤空間,緊隨其後的數字是要擴展到的大小。最後是制定要操作的虛擬機磁盤的具體文件。要是路徑名中有空格,必須以雙括號括起來。

  

 

2、重啓虛擬機,發現虛擬機的硬盤是變成50G了,但進入Ubuntu系統後,用df -ah查看發現硬盤還是原先那麼大。接下來要分區、指定文件系統,ubuntu才能識別。

 

3、分區。以root權限進ubuntu

fdisk -l,打印當前磁盤分區表,這時我們可以看到磁盤總量的確增加到了前面設置的大小,但是分區還是隻有那幾個原有的分區。

fdisk /dev/sda         sda就是經過擴容的SCSI硬盤,IDE類型的硬盤對應爲hda,這個命令告知下面對該硬盤進行操作。

m,列出幫助

n,添加新分區

p,創建主分區

3,或直接回車選擇默認分區號,應該也是3

直接回車,採用默認Start值,此處不選擇默認值會浪費空間

再回車,採用默認End

注意!!此時注意看清end - start的大小,如果只有很小的一段空間,需要再添加一個分區,按上述步驟執行,NP,回車

v,檢查爲分配磁盤大小,若是隻有幾M或更小則成功。

w,保存並退出,分區完畢

重啓ubuntu

 

4、格式化新添加的分區:

mkfs -t ext3 /dev/sda3

 

5、掛載該分區:

手動掛載:sudo mount /dev/sda3  /mnt/sda3 表示將該新分區掛載到/mnt/sda3/這個目錄下。注,手動掛載的信息記錄在/etc/mtab

或者開機自動掛載,修改文件:gedit /etc/fstab,添加一行

/dev/sda3    /mnt/sda3    ext3   defaults,        0         1

到此便可以使用新分區了,df -ah查看結果

 

6、使用新分區

現在,硬盤中多出來的這80G空間,只有在/dev/sda3下才能用,在其它地方,使用的依然是system分區——也就是原來的那80G。但我要在其它地方存文件怎麼辦呢,可以用link來解決——把新分區中的內容映射到某個舊分區上,這樣佔用的新分區的空間,看起來確是存在舊分區某個你需要的位置。

命令例子:

mv /source/juice /mnt/sda3/source
ln -s /mnt/sda3/source/juice /source

這樣,就可以像原來那樣在/source/juice下做任何操作了,而它們實際發生在/mnt/sda3/source/juice下。

 

//-------------------------------------------------------------------------------------------------------------

 

 

fdisk -l  指令顯示出當前分區中有extended類型的大容量分區,:

[root@edes02 ~]# fdisk -l

Disk /dev/sda: 1979.1 GB, 1979119894528 bytes
255 heads, 63 sectors/track, 240614 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x2135c370

Device Boot Start End Blocks Id System
/dev/sda1 1 5 40131 de Dell Utility
Partition 1 does not end on cylinder boundary.
/dev/sda2 * 6 267 2097152 c W95 FAT32 (LBA)
Partition 2 does not end on cylinder boundary.
/dev/sda3 267 330 512000 83 Linux
Partition 3 does not end on cylinder boundary.
/dev/sda4 330 240615 1930084160 5 Extended
Partition 4 does not end on cylinder boundary.

 

則可用以下命令直接擴容:

lvextend -L +100G /dev/mapper/VolGroup-lv_root

/dev/mapper/VolGroup-lv_root

其中/dev/mapper/VolGroup-lv_root是我的主分區

 

擴容成功提示:

resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/VolGroup-lv_root is mounted on /; on-line resizing required
old desc_blocks = 4, new_desc_blocks = 35
Performing an on-line resize of /dev/mapper/VolGroup-lv_root to 144179200 (4k) blocks.
The filesystem on /dev/mapper/VolGroup-lv_root is now 144179200 blocks long.

 

現在查看分區:

[root@edes02 ~]# df -lh
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 542G 27G 488G 6% /
tmpfs 16G 26M 16G 1% /dev/shm
/dev/sda3 485M 40M 421M 9% /boot
/dev/mapper/VolGroup-lv_home 79G 29G 46G 39% /home




Ubuntu 14.04NFS安裝配置

發表於2014 7 21

參考:http://www.linuxidc.com/Linux/2013-08/89154.htm

1、執行命令:sudo apt-get install nfs-kernel-server ;

2、執行命令:mkdir /home/jacobxu/nfs-jacoxu建立一個nfs服務的專有的文件夾;

3、建立好文件夾後,接着執行命令:sudo vi /etc/exports配置nfs;

4、在文章的最後一行添加:/home/jacobxu/nfs-jacoxu *(rw,sync,no_root_squash,no_subtree_check)
/home/jacobxu/nfs-jacoxu *(rw,sync,no_root_squash,no_subtree_check)這一行的含義是:
/home/jacobxu/nfs-jacoxu:與nfs服務客戶端共享的目錄,這個路徑必須和你前面設置的文件的路徑一致!
*:允許所有的網段訪問,也可以使用具體的IP
rw:掛接此目錄的客戶端對該共享目錄具有讀寫權限
sync:資料同步寫入內存和硬盤
no_root_squashroot用戶具有對根目錄的完全管理訪問權限。
no_subtree_check:不檢查父目錄的權限。

5、修改完上述配置文件保存退出。

6、執行命令:sudo /etc/init.d/rpcbind restart重啓rpcbind 服務。nfs是一個RPC程序,使用它前,需要映射好端口,通過rpcbind設定。

7、執行命令:sudo /etc/init.d/nfs-kernel-server restart重啓nfs服務。

8、掛載指令:
sudo mount -t nfs 192.168.111.128:/home/jacobxu/nfs-jacoxu /nfs-jacoxu-node001/
到任意一臺服務器中執行掛載指令,則可以將指定ip服務器上的共享路徑,掛載到本地。

注:nfs只是一種文件目錄共享模式,以本地方式進行訪問。而HDFS是一種分佈式的文件系統,能夠在服務器中進行數據的負載均衡。

9、開機自動掛載:
上述指令 sudo mount -t nfs 192.168.111.128:/home/jacobxu/nfs-jacoxu /nfs-jacoxu-node001/寫到 /etc/rc.local文件中

附錄:NFS常用參數如下:
ro 只讀訪問
rw 讀寫訪問sync 所有數據在請求時寫入共享
async nfs在寫入數據前可以響應請求
secure nfs通過1024以下的安全TCP/IP端口發送
insecure nfs通過1024以上的端口發送
wdelay 如果多個用戶要寫入nfs目錄,則歸組寫入(默認)
no_wdelay 如果多個用戶要寫入nfs目錄,則立即寫入,當使用async時,無需此設置。
hide nfs共享目錄中不共享其子目錄
no_hide 共享nfs目錄的子目錄
subtree_check 如果共享/usr/bin之類的子目錄時,強制nfs檢查父目錄的權限(默認)
no_subtree_check 和上面相對,不檢查父目錄權限
all_squash 共享文件的UIDGID映射匿名用戶anonymous,適合公用目錄。
no_all_squash 保留共享文件的UIDGID(默認)
root_squash root用戶的所有請求映射成如anonymous用戶一樣的權限(默認)
no_root_squas root用戶具有根目錄的完全管理訪問權限
anonuid=xxx 指定nfs服務器/etc/passwd文件中匿名用戶的UID
anongid=xxx 指定nfs服務器/etc/passwd文件中匿名用戶的GID




 嵌入式nfs問題解決總結 


剛開始用的ubuntu10.04,無論如何搞都不成功,最後無奈選擇 fedora14nfs成功,現記錄如下:

1 如果沒有安裝nfs則安裝nfs,每種發行版linux安裝方法不同

2 改寫 /etc/exports文件,我增加了一行  /root *(sync,rw,no_root_squash)

sync,rw,no_root_squash的意思可以網上查一下,直接搜 nfs配置,多點一個就有介紹了

3 開啓nfs

fedora下開啓方法 service nfs start  /status/stop/restart

4 保證開發板,WIndows(宿主機)linux(虛擬機)能夠互相ping通,注意關閉Windows防火牆及federo的防火牆及SELinux功能

5 開發版上找載NFS,這一步如果這樣:mount -t nfs 192.168.1.106:/root share這樣執行不成功,顯示

svc: failed to register lockdv1 RPC service (errno 111).
lockd_up: makesock failed, error=-111

把上述命令改爲:mount -t nfs -o nolock 192.168.1.106:/root share 成功

說是 nfs mount默認是帶鎖的,所以要取消鎖,具體不懂




 關於mount nfs時-o nolock的問題 


 需要將在linux裏交叉編譯好的程序放在arm上運行,所以首先要將程序copyarm上,選擇了nfs

       但在armmount nfs的時候遇到了失敗的情況:


       在網上查找解決方案:

        nfs mount 默認選項包括文件鎖,依賴於portmap提供的動態端口分配功能。
        解決方法:kill文件鎖(lockd)或者mount -o nolock

 

        於是嘗試mount -o nolock -t nfs 192.168.1.24:/home/test /mnt/nfs,正常工作。







Ubuntu 14.04 修改密碼


安裝完Ubuntu 14.04後默認是沒有主動設置root密碼的,也就無法進入根用戶。

  1、用當前登錄用戶打開終端,在終端輸入命令 sudo passwd,輸入當前用戶的密碼然後回車


 

  2、會提示輸入新密碼,輸入完成後回車

  3、然後提示再輸入一次新密碼以確認,然後回車,設置成功

  linuxidc@ubuntu:~$ sudo passwd

  [sudo] password forlinuxidc:

  輸入新的 UNIX 密碼:

  重新輸入新的 UNIX 密碼:

  passwd:已成功更新密碼

  linuxidc@ubuntu:~$

  注意:這個新密碼就是root的密碼,可以與當前用戶的密碼不同。

  在終端中輸入 su root,然後輸入root的密碼,驗證成功即可切換到root用戶。在root用戶下做完操作後,用exit命令即可退出root用戶,退回當前登陸用戶。





ubuntu 14.04 install java8  Eclipse

1、下載JDK

從官網下載jdk8

jdk-8u45-linux-i586.gz

2、解壓
$ tar -zxvf jdk-8u45-linux-i586.gz
解壓出來是一個jdk1.8.0_45文件夾
3、將文件夾移動到安裝目錄
$ sudo mv jdk1.8.0_45 /usr/local/

或者:

sudo tar xzvf jdk-8u45-linux-i586.gz -C /usr/local

4、配置環境變量 ,更改/etc/profile文件

  sudo gedit /etc/profile

         在文件最後加上如下幾行:

export JAVA_HOME=/usr/local/jdk1.8.0_45
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

5、更改默認JDK配置選項 ,依次執行如下命令

 sudo update-alternatives  --install  /usr/bin/java java /usr/local/jdk1.8.0_65/bin/java 300

sudo update-alternatives  --install  /usr/bin/javac javac /usr/local/jdk1.8.0_65/bin/javac 300

sudo update-alternatives  --install  /usr/bin/jar jar /usr/local/jdk1.8.0_65/bin/jar 300
sudo update-alternatives  --install  /usr/bin/javah javah /usr/local/jdk1.8.0_65/bin/javah 300

sudo update-alternatives  --install  /usr/bin/javap javap /usr/local/jdk1.8.0_65/bin/javap 300


eclipse官網下載壓縮包                                               

下載地址:http://www.eclipse.org/downloads/


解壓縮到/usr/local                                                      

sudo tar xzvf eclipse-standard-luna-R-linux-gtk.tar.gz -C /usr/local

tar-C參數指定了文件解壓後所在的目錄








發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章