2018-08-31 linux

1、軟件安裝

(1)yum安裝(多)
yum install -y 包名 中間一路yes
yum remove -y 包名
可以只下載安裝包,不安裝
yum install -y --downloadonly --downloaddir=./ wget
下載就是.rpm的包。

(2)rpm安裝
不論你用的是yum還是用的rpm安裝,其實(shí)安裝的都是rpm包。在linux里面,安裝軟件的時(shí)候,不僅僅是安裝這么一個(gè)軟件,與之對(duì)應(yīng)的要按照很多的依賴(lài)軟件
a ==》 b===》c==》d
如果使用rpm安裝,你要知道軟件依賴(lài)關(guān)系才能安裝,但是使用yum的話(huà),不用知道依賴(lài)關(guān)系,yum自動(dòng)為你解決
比如 yum install -y --downloadonly --downloaddir=./ vim
包含vim的包以及vim依賴(lài)的包,全部下載下來(lái)之后,估計(jì)10個(gè)包,這10個(gè)都是rpm,請(qǐng)問(wèn)先裝哪個(gè)后裝哪個(gè)。
yum install -y vim 依賴(lài)關(guān)系自動(dòng)解決
-ivh :安裝 rpm -ivh 包.rpm
-e :卸載 rpm -e wget
-ql : 列出包安裝路徑 rpm -ql wget
-qi : 列出指定包的詳細(xì)信息 rpm -qi wget

(3)編譯安裝(多)
相對(duì)來(lái)說(shuō),編譯安裝是需要編譯源碼的,安裝的軟件更加適合你的電腦,你的軟硬件環(huán)境,更加的穩(wěn)定,相比較yum來(lái)說(shuō)穩(wěn)定
編譯安裝3個(gè)步驟:
a配置
./configure --prefix=你安裝路徑 --以及其它參數(shù)
b編譯
linux里面的軟件都是使用c、c++寫(xiě)的,所以你得有編譯器
gcc gcc-c++
yum install -y gcc gcc-c++
make
c安裝
make install
走完一步之后,可以執(zhí)行一個(gè)指令 echo $? ,如果返回0,代表上面指令執(zhí)行成功,如果返回其它,說(shuō)明執(zhí)行失敗
指令可以連寫(xiě): make && make install
安裝ntfs-3g
安裝python

2、服務(wù)和進(jìn)程相關(guān)指令

linux的啟動(dòng)等級(jí),打開(kāi)這個(gè)文件 vi /etc/inittab
0 : 關(guān)機(jī)等級(jí)
1 : 單用戶(hù)模式
2 : 多用戶(hù)的無(wú)網(wǎng)絡(luò)模式
3 : 多用戶(hù)模式,有網(wǎng)絡(luò)
4 : 保留模式
5 : 界面模式
6 : 重啟模式

切換等級(jí)   init 0   init 1   init 6
查看當(dāng)前等級(jí)  runlevel   who -r
whoami  : 我是誰(shuí),查看當(dāng)前用戶(hù)

查看隨開(kāi)機(jī)啟動(dòng)的服務(wù)
chkconfig --list
趙靈兒
隨開(kāi)機(jī)啟動(dòng)的服務(wù),我們給他們起了一個(gè)非常好聽(tīng)的名字,守護(hù)進(jìn)程(daemon)
sshd   httpd   mysqld  其實(shí)就是一個(gè)隨機(jī)開(kāi)機(jī)啟動(dòng)的服務(wù)

開(kāi)啟、關(guān)閉服務(wù)
要有控制開(kāi)啟、關(guān)閉服務(wù)的腳本,比如iptables(防火墻)
/etc/init.d/iptables start | stop | restart
/etc/init.d/network start | stop | restart
經(jīng)常找腳本,太不方便了,將服務(wù)腳本放到 /etc/init.d ,如果支持服務(wù)模式,那么就可以使用如下指令開(kāi)啟和關(guān)閉
service iptables start | stop | restart
service network start | stop | restart

一般情況,安裝服務(wù)的時(shí)候,控制服務(wù)的腳本在安裝包就有,但是有的沒(méi)有,比如nginx沒(méi)有
自己按照的服務(wù),你就可以將腳本放到 /etc/init.d 里面,然后通過(guò)service控制它的開(kāi)啟和關(guān)閉 service nginx start

自己按照的服務(wù)隨開(kāi)機(jī)啟動(dòng)
chkconfig nginx on 默認(rèn)設(shè)置的等級(jí)為2345
chkconfig nginx off
還得給腳本權(quán)限,權(quán)限一般設(shè)置為755
通過(guò)chkconfig --list 查看有沒(méi)有配置成功

進(jìn)程相關(guān)指令
top : 實(shí)時(shí)查看系統(tǒng)的運(yùn)行情況
w :查看系統(tǒng)的當(dāng)前用戶(hù)的鏈接情況
free : -h 內(nèi)存的使用情況
ps : 查看進(jìn)程相關(guān)信息
ps -ef | grep ssh
ps aux | grep ssh
kill : 殺死一個(gè)進(jìn)程
kill -9 進(jìn)程id
netstat -lnp : 查看網(wǎng)絡(luò)和端口使用情況
netstat -lnp | grep 80

3、shell簡(jiǎn)介(了解一下)

shell編程 wget url 包.tar.gz
python break : 終止循環(huán)
continue : 結(jié)束當(dāng)次循環(huán),進(jìn)入下一次循環(huán)

4、ftp服務(wù)搭建

ftp是什么?文件傳輸協(xié)議,用在將本地文件上傳到服務(wù)器

ftp搭建教程

賴(lài) gcc和openssl-devel和perl
0、yum install -y gcc openssl-devel perl
1、去pureftp官網(wǎng)
download==》releases==》pure-ftpd-1.0.41.tar.gz
2、下載
wget https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.41.tar.gz
3、解壓
tar -zxvf 文件名
4、配置
./configure #進(jìn)行配置 -h 查看配置參數(shù)
--prefix=/usr/local/pureftpd #安裝目錄
--without-inetd #不使用ineted 超級(jí)服務(wù)器管理
--with-altlog #采用alt日志
--with-puredb #采用puredb來(lái)存儲(chǔ)ftp虛擬用戶(hù)信息
--with-throttling #開(kāi)啟帶寬控制
--with-tls #開(kāi)啟ftps支持

./configure --prefix=/usr/local/pureftpd --without-inetd --with-altlog --with-puredb --with-throttling --with-tls

echo $? 如果是0說(shuō)明上一步成功,其它為錯(cuò)誤

make && make install

5、修改配置文件
cd configuration-file/
mkdir /usr/local/pureftpd/etc 創(chuàng)建目錄
cp pure-ftpd.conf /usr/local/pureftpd/etc/
修改:vi /usr/local/pureftpd/etc/pure-ftpd.conf 如下
在文件最后添加如下兩行
PureDB /usr/local/pureftpd/etc/pureftpd.pdb
PIDFile /var/run/pure-ftpd.pid
6、拷貝控制文件
cp pure-config.pl /usr/local/pureftpd/sbin/
chmod 755 /usr/local/pureftpd/sbin/pure-config.pl
7、啟動(dòng)服務(wù)
cd /usr/local/pureftpd
./sbin/pure-config.pl ./etc/pure-ftpd.conf
檢查:ps -ef | grep ftp

8、添加管理用戶(hù)
useradd test
mkdir -p /var/www/html/
chown -R test:test /var/www/html/
./bin/pure-pw useradd ftp_user1 -u test -d /var/www/html
ftp_user1:ftp登錄用戶(hù)名
-u:指定系統(tǒng)中存在的用戶(hù)
-d:指定訪(fǎng)問(wèn)的目錄
9、創(chuàng)建虛擬的用戶(hù)數(shù)據(jù)庫(kù)
./bin/pure-pw mkdb

/usr/local/pureftpd/bin/pure-pw list #查看用戶(hù)列表
/usr/local/pureftpd/bin/pure-pw userdel 用戶(hù)名 #刪除用戶(hù)
10、通過(guò)ftp鏈接工具(FileZilla)測(cè)試

5、nfs搭建

nfs是什么?可以實(shí)現(xiàn)linux之間的文件共享
nfs客戶(hù)端還有服務(wù)端

nfs搭建教程

服務(wù)器上操作
關(guān)閉防火墻 service iptables stop
關(guān)閉selinux setenforce 0
1、yum install -y nfs-utils
2、編輯配置文件
vi /etc/exports
/nfstest 10.0.144.0/24(rw,sync)
要共享的目錄 網(wǎng)段
3、創(chuàng)建目錄
mkdir /nfstest
vi /nfstest/lala.txt
4、啟動(dòng)服務(wù)
nfs是基于rpc協(xié)議的,所以首先啟動(dòng)rpc
service rpcbind start
service nfs start
客戶(hù)端上操作
1、yum install -y nfs-utils
2、查看對(duì)應(yīng)ip地址上面共享的目錄
showmount -e 10.0.144.156
3、掛載nfs
mount -t nfs 10.0.144.156:/nfstest /mnt/usb
mount -t nfs 10.7.181.94:/nfstest /mnt/usb
4、配置開(kāi)機(jī)掛載
vi /etc/fstab
10.0.142.34:/test/ /root/nfs nfs defaults 0 0

6、nginx服務(wù)搭建

nginx是什么? web服務(wù)器 apache打交道
nginx服務(wù)器的根目錄(www)在 /usr/local/nginx/html
ip:端口 域名(jd.com baidu.com taobao.com mi.com) sb.com
DNS服務(wù)商,阿里云、騰訊云都有

nginx安裝

1、關(guān)閉防火墻和selinux
2、安裝依賴(lài)軟件
yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel
3、tar -zxvf nginx-1.11.5.tar.gz
4、創(chuàng)建www用戶(hù),不允許以www用戶(hù)登錄系統(tǒng)
useradd www -s /sbin/nologin
5、./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_ssl_module
6、make && make install
7、cp nginx /etc/init.d/
8、開(kāi)啟服務(wù)
service nginx start
9、設(shè)置開(kāi)機(jī)啟動(dòng)
chkconfig nginx on
chkconfig --list 查看是否開(kāi)機(jī)啟動(dòng)
10、查看網(wǎng)絡(luò)和端口使用情況
netstat -lnp | grep nginx
nginx默認(rèn)監(jiān)聽(tīng)的端口為80端口

虛擬主機(jī)配置步驟

(1)修改nginx配置文件
vi /usr/local/nginx/conf/nginx.conf
在第116行加一行代碼
include vhost/*.conf;
(2)新建一個(gè)vhost文件夾
mkdir /usr/local/nginx/conf/vhost
(3)來(lái)到vhost下,新建一個(gè)虛擬主機(jī)配置文件
vi /usr/local/nginx/conf/vhost/www.lala.com.conf
server
{
server_name www.lala.com;
root html/lala;
index index.html;
}

[說(shuō)明]:
server_name : 域名
root : 網(wǎng)站的根目錄
index : 網(wǎng)站的默認(rèn)首頁(yè)
(4)新建虛擬主機(jī)根目錄
mkdir /usr/local/nginx/html/lala
vi /usr/local/nginx/html/lala/index.html

service nginx restart 重啟服務(wù)
(5)編輯本機(jī)的hosts文件
C:\Windows\System32\drivers\etc\hosts
10.9.151.154 www.lala.com

一個(gè)服務(wù)器是否能放多個(gè)網(wǎng)站呢?可以的,配置虛擬主機(jī)

7、各系統(tǒng)指令區(qū)別總結(jié)

centos6.8
centos7.0
ubuntu16.04

CentOS和Ubuntu的區(qū)別
1. centos中新建的非root用戶(hù)是沒(méi)有sudo的權(quán)限的,如果需要使用sudo權(quán)限必須在/etc/sudoers 中加入賬戶(hù)和權(quán)限,所以切換到root賬號(hào)的時(shí)候只需要輸入:su,加入root賬號(hào)的密碼即可。 在Ubuntu中,一般使用sudo+命令,如果是第一次使用會(huì)提示輸入當(dāng)前用戶(hù)的密碼(而不是root的密碼)
2. 在線(xiàn)安裝軟件中,centos使用的是yum命令,而ubuntu中使用的是apt-get命令。除此之外yum中還有一個(gè)從軟件源中搜索摸個(gè)軟件的方法:yum search + 軟件名

CentOS7.0系列新指令:
centos7.0 沒(méi)有netstat 和 ifconfig命令問(wèn)題
yum -y install wget
yum -y install net-tools
centos7.0服務(wù)管理相關(guān)指令
https://www.cnblogs.com/lgqboke/p/6069170.html

image.png

需要執(zhí)行的下載指令有
yum install -y gcc gcc-c++
yum install -y zlib*
yum install -y nfs-utils
yum install -y gcc openssl-devel perl
yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容