基本環(huán)境:
centos7磁玉、centos6.5
deb后綴的軟件包是for Debian系的(包括Ubuntu),不是給centos安裝的齐佳。
rpm后綴的軟件包才是for Redhat系的(包括CentOS)。
如果想安裝deb包,要安裝dpkg命令~
或者是用alien把.deb轉(zhuǎn)化為rpm磷杏,然后運(yùn)行~
yum是操作源組(里面各種官方程序),而rpm是操作自己的rpm包(自己下載過來的)
坑一
直接從windows拖到vm可能會(huì)導(dǎo)致文件縮小(丟失信息)
坑二
使用rpm可能需要依賴包笆怠,使用yum安裝(yum search :查詢的yum源)
坑三
如果你的linux采用最小安裝(沒有圖形界面等等),很多命令是默認(rèn)沒有安裝的嫉晶,所以你使用坑二或是在線下載的方式骑疆,結(jié)果各種錯(cuò)誤,此時(shí)就需要注意你的網(wǎng)絡(luò)試試:ip addr替废;發(fā)現(xiàn)你的ip并沒有分配箍铭,service network start; 開啟網(wǎng)絡(luò)吧!(記得修改配置文件ONBOOT=yes--開機(jī)啟動(dòng)網(wǎng)絡(luò))
接著yum search *,查詢到位置后椎镣,yum install *诈火。(有的命令需要updatedb,比如locate)
坑四
突然有天別人告訴我,所有賬戶都登錄不上(包括root)状答,后來直接通過阿里的控制臺(tái)登錄成功冷守,然后查看原因
一般遠(yuǎn)程登錄不上,先檢查端口22(負(fù)責(zé)遠(yuǎn)程連接的端口),發(fā)現(xiàn)root權(quán)限竟然無法開放和關(guān)閉端口惊科,腳本的所有權(quán)已被修改拍摇,而且每個(gè)文件的所有權(quán)都屬于某用戶,原來他誤操作(chmod *** /)馆截,當(dāng)時(shí)他沒發(fā)現(xiàn)可怕的事情充活,也就沒放在心上;之后就炸了蜡娶。
把所有的文件屬性都改為root混卵,然后單獨(dú)修改每個(gè)賬戶的文件夾(包括子文件夾)的權(quán)限 (-R:遞歸修改 子文件)
chmod -R / 權(quán)限修改
chgrp 權(quán)限組修改
chown -R tangyb.bxGroup ./polaris 修改文件屬性(權(quán)限、組等等)
坑五
個(gè)別用戶登錄不上(顯示建立連接通道窖张,然后就和卡機(jī)了一樣)幕随,查看登錄日志(文件:/var/log/secure),發(fā)現(xiàn)錯(cuò)誤宿接,此用戶的進(jìn)程數(shù)過多(默認(rèn)是1024) 赘淮,提升進(jìn)程數(shù)(文件:90-nproc.conf)或是關(guān)閉此用戶下的進(jìn)程(pkill -u username)。
坑六
突然某天vm不能遠(yuǎn)程了
主機(jī)不能ping通vm睦霎,vm可以ping通主機(jī)并且可以上網(wǎng)(采用的nat模式)
后改為橋接模式梢卸,主機(jī)可以連接但是vm無法上網(wǎng)(公司綁定了mac地址),尷尬!
因?yàn)橐郧笆强梢缘乃橛圆淮嬖诰W(wǎng)上說的nat不能被遠(yuǎn)程的情況低剔,仔細(xì)想想公司是以10開頭的網(wǎng)絡(luò),而vm是192開頭,根本就不在一個(gè)網(wǎng)段,那么原來是怎么通信的襟齿?
后來查了下是和兩個(gè)虛擬網(wǎng)卡有關(guān)vmnet1和vmnet8
一個(gè)是設(shè)置私有網(wǎng)絡(luò)(Host Only)時(shí)姻锁,用來和主機(jī)通信的,禁用以后就無法正常使用Host-Only模式了猜欺,另一個(gè)是設(shè)置網(wǎng)絡(luò)地址翻譯(NAT)時(shí)位隶,和主機(jī)通訊使用的。
而我上次直接禁用了這兩個(gè)开皿,如果你只是遠(yuǎn)程vm涧黄,只需打開vmnet8.
坑七
(自家wifi)
A、vm中新建的centos7無法連接網(wǎng)絡(luò)(橋接模式赋荆,沒有復(fù)制物理網(wǎng)絡(luò)連接狀態(tài))笋妥,后來ping宿主ip出現(xiàn)network is unreachable(網(wǎng)絡(luò)不可達(dá))也沒有ifcfg-eth0文件(cent7貌似都沒有),直接修改ifcfg-eno167777736文件窄潭,改為ONBOOT=yes(開機(jī)啟動(dòng)此配置)春宣,然后service network start。 ok嫉你!搞定
B月帝、如果 NAT也存在上面的問題unreachable,首頁查看宿主機(jī)器的默認(rèn)網(wǎng)關(guān)幽污,接著將v8的網(wǎng)關(guān)改為一致即可(或是.2嚷辅,.1)。
在公司的時(shí)候距误,宿主機(jī)器的ip和mac是綁定的簸搞,NAT模式是可以的。(有的時(shí)候會(huì)有問題)深寥,主要就是這個(gè)網(wǎng)關(guān)IP的原因攘乒。也可以使用橋接贤牛,指定宿主機(jī)器的物理網(wǎng)卡
ps:橋接相當(dāng)于你的兄弟機(jī)器惋鹅,大家在一個(gè)網(wǎng)段;NAT相當(dāng)于宿主機(jī)器做為路由殉簸,虛擬機(jī)做為局域網(wǎng)中的一臺(tái)機(jī)器(所以IP為192.168**)闰集。
<img src="http://upload-images.jianshu.io/upload_images/3650492-b77ea2470a92bb8b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240"/>
常識(shí)
1、下載***.sh文件般卑,并直接運(yùn)行武鲁,會(huì)下載相關(guān)組件及軟件(如google瀏覽器)
rpm 文件:rpm -ivh **.rpm
(rpm安裝后有些需要yum 真正安裝軟件及其依賴)
2、解壓文件
cp -r 源位置 目標(biāo)位置
tar -xvf **.tar.gz (-v/x:壓縮/解壓蝠检,-v:詳細(xì)過程沐鼠,-f:輸出/輸入文件)
3、循環(huán)刪除此目錄及子文件、文件夾:rm -rf ****
4.默認(rèn)安裝路徑:usr/java
環(huán)境配置: etc/profile
通過export只是臨時(shí)性饲梭,需要在profile加上路徑乘盖,然后source /etc/profile使環(huán)境立即生效
5、查詢安裝了哪些jdk
rpm -qa|grep jdk
6憔涉、卸載相應(yīng)jdk版本
rpm -qa | grep java #查詢
rpm -e --nodeps **** #卸載相關(guān)版本
(找不到openjdksource可以:yum -y remove java **)--貌似沒用订框,先備著(只是刪除軟件包)
7、文件屬性
r 表示文件可以被讀(read)
w 表示文件可以被寫(write)
x 表示文件可以被執(zhí)行(如果它是程序的話)
其中:rwx也可以用數(shù)字來代替
r ------------4
w ------------2
x ------------1
- ------------0
-rw-r--r-- (644) 只有所有者才有讀和寫的權(quán)限兜叨,組群和其他人只有讀的權(quán)限
4755:drwsr-xr-s d:文件類型(目錄文件) d/rws/r-x/r-x
這個(gè)4表示其他用戶執(zhí)行文件時(shí)穿扳,具有與所有者相當(dāng)?shù)臋?quán)限,所以寫成rws(原本是rwx)
8、wget 下載想要的rpm或是其他文件
9国旷、sudoers文件的作用是 控制用戶可以執(zhí)行哪些指令
10矛物、開放3306端口(新安裝的mysql可能無法遠(yuǎn)程,如果用戶表已經(jīng)賦權(quán)好了跪但,遠(yuǎn)程連接報(bào)10038錯(cuò)誤)
firewall-cmd --zone=public --add-port=3306/tcp --permanent #開放3306
firewall-cmd --reload #在不改變狀態(tài)的條件下重新加載防火墻
上面的指令完全ok泽谨,下面的備用
systemctl stop firewalld.service #停止
systemctl disable firewalld.service #禁用
(centos6.5 service iptables stop)
神坑:直接stop防火墻,依舊訪問不了特漩,必須要先開發(fā)端口
11吧雹、vi編輯器
gg:第一行
G:最后一行
ctrl+b:上翻一頁
ctrl+f:下翻一頁
/* 從光標(biāo)開始處向文件尾搜索
?* 從光標(biāo)開始處向文件首搜索
n:在同一方向重復(fù)上一次搜索命令(/?的方向決定方向)
shift+v:塊選擇
yy:塊復(fù)制
dd:剪切當(dāng)前行
p:粘貼
12、epel-release
安裝docker的時(shí)候看教程需要安裝epel-release包涂身,我記得以前安裝過雄卷,查詢之后才知道這是第三庫源,里面有很多程序方便下載而且很多擴(kuò)展包比官網(wǎng)更新較快(官方以穩(wěn)定為主)蛤售。
yum install docker(centos7下直接安裝丁鹉,不同版本會(huì)不同)
13、進(jìn)程操作
ctrl-c 發(fā)送 SIGINT 信號(hào)給前臺(tái)進(jìn)程組中的所有進(jìn)程悴能。常用于終止正在運(yùn)行的程序揣钦。
ctrl-z 發(fā)送 SIGTSTP 信號(hào)給前臺(tái)進(jìn)程組中的所有進(jìn)程,常用于掛起一個(gè)進(jìn)程
crtl+z 將進(jìn)程掛起漠酿,然后fg/bg把剛剛掛在的程序放在前臺(tái)/后臺(tái)運(yùn)行
14冯凹、查看版本
系統(tǒng)版本:cat /etc/redhat-release
內(nèi)核版本:uname -r
15、查看端口占用
ps -anp |grep 8080
16炒嘲、golang的install是默認(rèn)在/usr/local/bin/ 如果想自己配置宇姚,需要在profile添加指定路徑。
export GOROOT=/usr/tangyb/go
export GOPATH=$PATH:$GOROOT/bin
17夫凸、設(shè)置tomcat的https
a)生成文件 jdk1.7.0_79/bin/keytool -genkey -alias polaris -keyalg RSA -keystore ./polaris.keystore
b)導(dǎo)出證書 jdk1.7.0_79/bin/keytool -export -alias polaris -keystore ./polaris.keystore -storepass ******* -rfc -file polaris.cer
c) 在server.xml文件的ssl/tls端口 加入keystoreFile="/usr/baxia/users/tangyb/tomcat_https/polaris.keystore" keystorePass="huoying3138266"
****一定要記得在輸入name的時(shí)候是寫入 網(wǎng)站域名浑劳,否則會(huì)出現(xiàn)無法通過身份驗(yàn)證的紅叉
參考文章http://www.cnblogs.com/green-hand/p/6514597.html
18、rm命令的修改(改為mv) 及 定時(shí)清除文件
rm更改
a夭拌、創(chuàng)建回收站魔熏,存放刪除的文件
b衷咽、創(chuàng)建mv腳本文件
c、在bashrc將rm捕獲并改為調(diào)用mv腳本
d蒜绽、定時(shí)清除回收站的文件
用戶級(jí)別:
crontab -e 編輯crontab定時(shí)文件
crontab -l 查看明細(xì)列表(不包括系統(tǒng)級(jí)別的)
service crond restart 重啟crontab的服務(wù)
系統(tǒng)級(jí)別:
/etc/crontab ##注意格式兵罢,需要添加指定用戶
所有的crontab的執(zhí)行過程 都可以在 /var/log/cron 查看
(如果任務(wù)執(zhí)行了,沒有結(jié)果滓窍,多注意權(quán)限卖词、任務(wù)本身等等)
profile:登錄會(huì)讀取
bashrc:每次執(zhí)行bash會(huì)讀取
/etc/profile與/etc/bashrc的區(qū)別
前一個(gè)主要用來設(shè)置一些系統(tǒng)變量,比如JAVA_HOME等等,后面一個(gè)主要用來保存一些bash的設(shè)置.
/etc/profile:此文件為系統(tǒng)的每個(gè)用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次登錄時(shí),該文件被執(zhí)行.
并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置.
/etc/bashrc:為每一個(gè)運(yùn)行bash shell的用戶執(zhí)行此文件.當(dāng)bash shell被打開時(shí),該文件被讀取.
~/.bash_profile:每個(gè)用戶都可使用該文件輸入專用于自己使用的shell信息,當(dāng)用戶登錄時(shí),該
文件僅僅執(zhí)行一次!默認(rèn)情況下,他設(shè)置一些環(huán)境變量,執(zhí)行用戶的.bashrc文件.
~/.bashrc:該文件包含專用于你的bash shell的bash信息,當(dāng)?shù)卿洉r(shí)以及每次打開新的shell時(shí),該
該文件被讀取.
~/.bash_logout:當(dāng)每次退出系統(tǒng)(退出bash shell)時(shí),執(zhí)行該文件.
/etc/下的很多文件都是系統(tǒng)級(jí)別的
比如crontab、bashrc吏夯、profile(相當(dāng)于全局)
而這些文件 每個(gè)用戶也會(huì) 單獨(dú)擁有
19此蜈、locate
locate速度很快,是因?yàn)橛幸粋€(gè)檢索庫噪生,所以用之前最好updatedb下
20裆赵、郵件,廣播等
w: 查看在線賬戶
wall: 群發(fā)消息
write: 個(gè)人私發(fā)
mail: 郵件發(fā)送
21跺嗽、VMware Tools安裝(轉(zhuǎn)載:http://www.epinv.com/post/5217.html)
虛擬機(jī)-安裝VMware Tools
mkdir /media/mnt #新建掛載目錄
mount /dev/cdrom /media/mnt/ #掛載VMware Tools安裝盤到/media/mnt/目錄
可以移動(dòng)到安裝目錄在解壓安裝
tar zxvf VMwareTools-9.6.2-1688356.tar.gz #解壓
./vmware-install.pl #安裝
成功后重啟服務(wù)器
22战授、系統(tǒng)監(jiān)控
空間大小:du -sm ./logs/ (s:指定的目錄桨嫁,m:按照MB來顯示大兄怖肌)
日志ERROR高亮:tail -f xxx.log | perl -pe 's/(ERROR)/\e[1;31m$1\e[0m/g'
23. 集群網(wǎng)絡(luò)基本配置(centos 7)
a. 設(shè)置靜態(tài)ip(NAT模式)
修改配置文件 /etc/sysconfig/network-scripts/ifcfg-eno16777736
BOOTPROTO=static ##默認(rèn)dhcp,改為靜態(tài)分配
ONBOOT=yes ##自啟動(dòng)璃吧,默認(rèn)no
IPADDR=192.168.118.129 ##ip地址楣导,其中192.168.118和NAT模式的子網(wǎng)IP相同
GATEWAY=192.168.118.2 ##網(wǎng)關(guān),和NAT模式設(shè)置的網(wǎng)關(guān)相同
NETMASK=255.255.255.0
DNS1=192.168.118.2 ##和網(wǎng)關(guān)相同 或是 114.114.114.114(電信的DNS)或是223.5.5.5(阿里)畜挨,可在NAT模式菜單中修改
service network start 重啟ok, ping百度測(cè)試
b. 端口開放
firewall-cmd --zone=public --add-port=3306/tcp --permanent #永久開放3306
firewall-cmd --reload #重新加載防火墻規(guī)則
systemctl stop firewalld.service #停止
systemctl disable firewalld.service #禁用
24.集群資源共享
采用scp傳送筒繁,之前需要準(zhǔn)備ssh免密登錄
scp -r 源文件夾 username@ip(或者映射名):目標(biāo)文件夾
-r:傳輸文件夾