最近在看虛擬機(jī)這塊的內(nèi)容,使用Oracle VM Virtualbox搭建ubuntu虛擬機(jī)蹋岩,遇到一些問題外恕,隨手記下來杆逗,備用。
1· 如何使用root賬戶登錄鳞疲,主要是為了減少權(quán)限設(shè)置問題罪郊,root賬號(hào)對(duì)所有內(nèi)容都有訪問權(quán)限,使用較為方便尚洽。
解決方案:
1) 在終端執(zhí)行命令
sudo gedit /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
2) 在彈出的編輯框最后添加一句:greeter-show-manual-login=true 保存關(guān)閉
3) 為root用戶設(shè)置登錄密碼悔橄,終端輸入命令
sudo passwd root
4) 重啟虛擬機(jī)
2· root賬戶登錄系統(tǒng)時(shí)候報(bào)錯(cuò)的提示。錯(cuò)誤提示為:Error found when loading /root/.profile stdin: is not a tty腺毫。
解決方案:
1) 修改相關(guān)文件癣疟,執(zhí)行命令
nano /root/.profile
2) 將mesg n注釋,并增加一行 tty -s && mesg n
#mesg n
tty -s && mesg n
3)使用快捷鍵ctrl+X退出潮酒,如果文件有修改睛挚,會(huì)彈出提示是否保存,輸入Y進(jìn)行保存急黎;如果沒有修改文件扎狱,會(huì)直接退出。
3· 顯示或隱藏不可見文件勃教。
解決方案:
1) ctrl+h
2) 文件菜單欄:編輯->首選項(xiàng)淤击,選中復(fù)選框“顯示隱藏和備份文件”
4· 安裝增強(qiáng)功能(我主要是為了分辨率,強(qiáng)迫癥故源,o(╯□╰)o)
解決方案1:
1) Oracle VM Virtualbox菜單欄:設(shè)備->分配光驅(qū)->VBoxGuestAdditions.iso(安裝VM之后污抬,安裝路徑下就有該文件,選擇添加即可)
2) 打開光驅(qū)文件夾绳军,雙擊文件VBoxLinuxAdditions.run即可印机。習(xí)慣命令行模式的童鞋,在終端執(zhí)行命令:
sudo /media/"username"(當(dāng)前登錄用戶)/VBOXADDITIONS_5.0.20_106931(根據(jù)自身情況删铃,版本號(hào)不一樣)/VBoxLinuxAdditions.run
3) 這塊會(huì)出現(xiàn)一個(gè)其他問題耳贬,"The headers for the current running kernel were not found",解決方案是猎唁,執(zhí)行命令:
sudo apt-get install dkms build-essential linux-headers-$(uname -r)
解決方案2:
1)首先下載virtualbox擴(kuò)展包咒劲,下載路徑:https://www.virtualbox.org/wiki/Downloads
2)Oracle VM Virtualbox菜單欄:設(shè)置->擴(kuò)展中添加該安裝包,會(huì)自動(dòng)安裝擴(kuò)展诫隅,之后便可使用擴(kuò)展功能腐魂。
5· 共享文件夾。
解決方案:
1) Oracle VM Virtualbox菜單欄:設(shè)備->共享文件夾->添加一個(gè)主機(jī)系統(tǒng)中的文件夾作share為共享文件夾
2) 進(jìn)行掛載逐纬,執(zhí)行命令:
sudo mount -t vboxsf share /home/xxx/share
3) 取消掛載蛔屹,執(zhí)行命令:
sudo umount -f /home/xxx/share
4)掛載時(shí)會(huì)出錯(cuò)mount: unknown system type ‘vboxsf’,是因?yàn)榈卿浻脩舨痪哂袡?quán)限豁生,是以訪客身份登錄兔毒。
6· 修改環(huán)境變量漫贞。
解決方案:
1) 修改系統(tǒng)環(huán)境變量,執(zhí)行命令:
sudo gedit /etc/environment
2) 修改用戶環(huán)境變量育叁,執(zhí)行命令:
sudo gedit ~/.bashrc
3) 修改完后迅脐,執(zhí)行命令:
source ~/.bashrc
7· 添加硬盤。
解決方案:
1) VM菜單欄:設(shè)置->存儲(chǔ)豪嗽,為控制器添加虛擬硬盤谴蔑。
2) 顯示當(dāng)前的硬盤及所屬分區(qū)的情況(剛添加的硬盤有提示:"DIsk /dev/sdb doesn't contain a valid partition table"),執(zhí)行命令:
sudo fdisk -lu
3) 對(duì)硬盤進(jìn)行分區(qū)龟梦,之后硬盤被識(shí)別隐锭,可以查看硬盤信息及所屬分區(qū)情況,執(zhí)行命令:
sudo fdisk /dev/sdb
sudo fdisk -lu
在Command (m for help)提示符后面輸入m顯示一個(gè)幫助菜單计贰;
在Command (m for help)提示符后面輸入n钦睡,執(zhí)行 add a new partition 指令給硬盤增加一個(gè)新分區(qū);
在Command (m for help)提示符后面輸入p蹦玫,顯示分區(qū)表赎婚;
在Command (m for help)提示符后面輸入w,保存分區(qū)表樱溉。
4) 硬盤格式化挣输,執(zhí)行命令:
sudo mkfs -t ext4 /dev/sdb
5) 顯示硬盤掛載情況(可以看到新添加的硬盤沒有掛載,無法進(jìn)入和查看)福贞,執(zhí)行命令:
sudo df -l
6) 指定硬盤分區(qū)文件系統(tǒng)類型為ext4 撩嚼,同時(shí)將 /dev/sdb 分區(qū)掛載到目錄 /devdata,之后便可查看新硬盤掛載情況挖帘,執(zhí)行命令:
sudo mount -t ext4 /dev/sdb /devdata
sudo df -l
7) 配置硬盤在系統(tǒng)啟動(dòng)自動(dòng)掛載完丽,執(zhí)行命令:
sudo gedit /etc/fstab
8) 修改文件中針對(duì)新硬盤的設(shè)置的最后兩項(xiàng)內(nèi)容為0,0即可
/dev/sdb /devdata ext4 defaults 0 0
8· 安裝java
1)之前的習(xí)慣是下載jdk文件后拇舀,設(shè)置環(huán)境變量來配置java逻族。某次發(fā)現(xiàn)有更方便的命令行方式安裝,記錄一下骄崩。
2)在Ubuntu上安裝Oracle JDK聘鳞,使用下面的命令安裝,只需一些時(shí)間要拂,它就會(huì)下載許多的文件抠璃,所及你要確保你的網(wǎng)絡(luò)環(huán)境良好:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
sudo apt-get install oracle-java8-set-default
3)如果你想安裝Java 7(i.e Java 1.7),在上面的命令中用java7代替java8脱惰。
4)安裝后卸載java搏嗡,移除所有 Java相關(guān)包 (Sun, Oracle, OpenJDK, IcedTea plugins, GIJ):
apt-get update
apt-cache search java | awk '{print($1)}' | grep -E -e '^(ia32-)?(sun|oracle)-java' -e '^openjdk-' -e '^icedtea' -e '^(default|gcj)-j(re|dk)' -e '^gcj-(.)-j(re|dk)' -e 'java-common' | xargs sudo apt-get -y remove
apt-get -y autoremove
清除配置信息: dpkg -l | grep ^rc | awk '{print($2)}' | xargs sudo apt-get -y purge
清除java配置及緩存: bash -c 'ls -d /home//.java' | xargs sudo rm -rf
手動(dòng)清除JVMs: rm -rf /usr/lib/jvm/*
9· 64位ubuntu添加32位支持
sudo apt-get install lib32ncurses5
10· 安裝git后從遠(yuǎn)程倉庫讀取,clone失敗拉一,提示no matching key exchange method found. Their offer: diffie-hellman-group1-sha1的解決方案采盒。修改~/.ssh/config旧乞,加入
Host *
KexAlgorithms +diffie-hellman-group1-sha1
11· /bin/sh: : No such file or directory錯(cuò)誤
1)編寫好的可執(zhí)行文件在運(yùn)行時(shí)提示Permission Denied,修改執(zhí)行權(quán)限為777:
chmod -R 777 可執(zhí)行文件名
2)權(quán)限修改之后纽甘,提示錯(cuò)誤No such file or directory良蛮,一般是系統(tǒng)的動(dòng)態(tài)鏈接器與XXX這個(gè)程序中的動(dòng)態(tài)鏈接器的名字或路徑不對(duì)抽碌。在命令行中執(zhí)行:
readelf -l 可執(zhí)行文件名
3)在輸出中有一行顯示:
INTERP 0x000134 0x00008134 0x00008134 0x00019 0x00019 R 0x1
[Requesting program interpreter: /lib/ld-linux-armhf.so.3]
4)上述文件即為缺失的文件悍赢,安裝該文件即可確保可執(zhí)行文件正確運(yùn)行货徙。