首頁/ 汽車/ 正文

Linux作業系統學習(運維必會)

1、開機登入

開機會啟動很多程序,在Windows上叫“服務”(service),在Linux上叫做“守護程序”(daemon)

登入方式:

命令列登入

ssh登入

圖形介面登入

2、關機

不管是重啟系統還是關閉系統,首先要執行

sync

命令,把記憶體中的資料同步到硬碟中。

sync # 將資料從記憶體同步到硬碟中shutdownshutdown -h 10 # 10分鐘後關機shutdown -h +10 # 10分鐘後關機shutdown -h now # 立馬關機shutdown -h 20:25 # 系統將在今天20:25關機shutdown -r now # 立即重啟shutdown -r +10 # 10分鐘後重啟reboot # 重啟,相當於 shutdown -r nowhalt # 關機,相當於 shutdown -h now

3、根目錄結構

/bin # Binary的縮寫,存在最經常使用的命令/boot # 存放啟動Linux時要使用的一些核心檔案,包括連結檔案和映象檔案/dev # Device的縮寫,存放Linux的外部裝置/etc # 存放系統管理所需的配置檔案和子目錄/home # 使用者的主目錄,在Linux中,每個使用者都有一個自己的目錄,一般該目錄以使用者的賬號命名/lib # 存放系統最基本的動態連結共享庫,其作用類似於Windows裡的DLL檔案/lost+found # 這個目錄一般是空的,當用戶非正常關機時就會在這裡存放一些檔案/media # Linux系統識別出來的裝置,例如隨身碟,光碟機,Linux把識別到的裝置掛載到這個目錄下/mnt # 讓使用者臨時掛載別的檔案系統/opt # 給主機額外安裝軟體所存放的目錄,比如安裝Oracle資料庫可以放到這個目錄下面/proc # 虛擬目錄,系統記憶體的對映,可以透過訪問這個目錄來獲取系統資訊/root # 該目錄為系統管理員,也稱作超級許可權的使用者主目錄/sbin # s 就是 Super User的意思,這裡存放系統管理員使用的系統管理程式/srv # 存放一些服務啟動之後需要提取的資料/sys # Linux2。6核心一個很大的變化,該目錄下安裝了2。6核心中新出現的一個檔案系統sysfs/tmp # 存放臨時檔案的目錄/usr # 使用者的很多應用程式和檔案都存放在這個目錄,類似於Windows下的program files/usr/bin # 系統使用者使用的應用程式/www # 存放伺服器網站相關的資源,環境、網站的專案——————- # LNMP: Linux、Nginx、MySQL、Php # LTMP: Linux、tomcat、MySQL、Php

Linux作業系統學習(運維必會)

4、檔案屬性

r:read

w: write

x :可執行execute

-:沒有許可權

檔案型別

0

屬主許可權 owner

1 2 3

屬組許可權 group

4 5 6

其它使用者許可權 others

7 8 9

d

r w x

r - x

r - x

目錄檔案

讀 寫 執行

讀 寫 執行

讀 寫 執行

1、4、7:讀

2、5、8:寫

3、6、9:可執行

Linux作業系統學習(運維必會)

4。1、更改檔案許可權

chmod 更改9個檔案屬性[-rwxrwxrwx] 這九個許可權屬性,三個一組,用數字代表權限r: 4 w: 2 x: 1 4+2+1=7 chmod 777 可讀可寫可執行 chmod rwxrwxrwxchmod 666 可讀可寫不可執行 chmod rw-rw-rw-

檢視檔案方法

cat # 顯示檔案內容不夠tac # 倒序顯示檔案內容nl # 顯示檔案內容並展示行號more # 一頁一頁顯示檔案內容,(空格代表翻頁,enter代表向下看一行,:f 檢視當前行號)less # 和more類似,向上翻頁head # -n引數 控制顯示幾行tail # -n引數,倒著檢視最後n行資訊

5、硬連結、軟連結

軟連結跟Windows上的快捷方式類似,刪除原始檔,快捷方式也訪問不了了。

# 硬連結ln 01 02 # 給01檔案建立一個硬連結02,01和02指向同一個檔案,允許一個檔案有多個路徑,使用者透過這種機制建立硬連結到一些重要檔案上,以防誤刪!# 軟連結ln -s 01 03

Linux作業系統學習(運維必會)

6、賬號管理

屬主、屬組

6。1、新增使用者

一切皆檔案,相當於在 /etc/passwd 檔案中寫入使用者資訊

useradd -引數 使用者名稱-m 使用者主目錄不存在,則自動在/home目錄下建立使用者名稱目錄-G 給使用者分配屬組useradd -m xiaotest[root@——- home]# cat /etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologingames:x:12:100:games:/usr/games:/sbin/nologinftp:x:14:50:FTP User:/var/ftp:/sbin/nologinnobody:x:99:99:Nobody:/:/sbin/nologinsystemd-network:x:192:192:systemd Network Management:/:/sbin/nologindbus:x:81:81:System message bus:/:/sbin/nologinpolkitd:x:999:998:User for polkitd:/:/sbin/nologinsshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologinpostfix:x:89:89::/var/spool/postfix:/sbin/nologinchrony:x:998:996::/var/lib/chrony:/sbin/nologinntp:x:38:38::/etc/ntp:/sbin/nologintcpdump:x:72:72::/:/sbin/nologinnscd:x:28:28:NSCD Daemon:/:/sbin/nologinmysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bashredis:x:997:995:Redis Database Server:/var/lib/redis:/sbin/nologinjenkins:x:996:992:Jenkins Automation Server:/var/lib/jenkins:/bin/falsetss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologinxiao:x:1000:1000::/home/xiao:/bin/bashxiaotest:x:1001:1001::/home/xiaotest:/bin/bash # /home/xiaotest 使用者主目錄[root@——- home]#

6。2、刪除使用者

userdel -r xiaotest # 刪除使用者的時候 一起刪除使用者的目錄

6。3、修改使用者

usermod usermod -d /home/test01 xiaotest # 更改使用者xiaotest的主目錄

6。4、切換使用者

su 使用者名稱

[root@——- home]# su xiaotest # root使用者切換到xiaotest使用者[xiaotest@——- home]$ exit # 退出當前使用者,回到root使用者exit[root@——- home]#

6。5、修改阿里雲伺服器主機名

隨機字串 - 自定義主機名

hostname hostname xiao # 修改主機名為xiao, 重連即可生效# 重啟主句,主機名就會變為隨機字串

6。6、密碼設定

root 使用者配置普通使用者密碼passwd xiaotest # 給xiaotest使用者設定登入密碼# 重建連線,使用普通使用者登入即可

6。7、鎖定解鎖使用者

只有root使用者才可以操作

使用場景: 某員工辭職,或者合夥人設定

passwd -l xiaotest # -l lock 鎖定使用者,不能繼續登入passwd -d xiaotest # -d 刪除密碼,給使用者輸入空口令,沒有密碼也不能登入-u:解鎖使用者passwd -u xiaotest

Linux作業系統學習(運維必會)

7、使用者組管理

/etc/group

檔案

每個使用者都有一個使用者組,系統可以對一個使用者組下面的所有使用者進行集中管理(開發、測試、運維、root)

7。1、建立使用者組

groupadd test01[root@xiao ~]# cat /etc/grouproot:x:0:bin:x:1:daemon:x:2:sys:x:3:adm:x:4:tty:x:5:disk:x:6:lp:x:7:mem:x:8:kmem:x:9:wheel:x:10:cdrom:x:11:mail:x:12:postfixman:x:15:dialout:x:18:floppy:x:19:games:x:20:tape:x:33:video:x:39:ftp:x:50:lock:x:54:audio:x:63:nobody:x:99:users:x:100:utmp:x:22:utempter:x:35:input:x:999:systemd-journal:x:190:systemd-network:x:192:dbus:x:81:polkitd:x:998:ssh_keys:x:997:sshd:x:74:postdrop:x:90:postfix:x:89:chrony:x:996:ntp:x:38:tcpdump:x:72:nscd:x:28:mysql:x:27:redis:x:995:cgred:x:994:docker:x:993:jenkins:x:992:tss:x:59:xiao:x:1000:xiaotest:x:1001:allblue:x:1002:test01:x:1003:test02:x:520: # 透過使用 -g 引數制定iddev:x:1003:dev01 # dev組 該組下有dev01使用者 新建使用者是透過-G引數指定dev01:x:1004:[root@xiao ~]# 透過使用 -g 引數指定idgroupadd -g 520 test02

7。2、刪除使用者組

groupdel test01

7。3、修改使用者組

修改許可權資訊和名字

-g 修改id-n 修改名字groupmod -g 123 test01groupmod -n newtest01 test01

7。4、切換使用者組

# 登入當前使用者 xiaotest$ newgrp root

7。5、使用者密碼

/etc/shadow

檔案下

密碼已經加密

allblue:$6$hSPupMOZ$WMbjL2pn8bhSkiD7NicH6sDAJYfEKnU3ofylMuOrSMuqqt/i/wirkCwbinA0VjhXBTExmSSPdFb6LPpLRN3hS。:18917:0:99999:7:::

8、磁碟管理

du - disk usage

df 檢視系統整體磁碟的使用量df -h 以兆(m)為單位顯示du 檢視當前磁碟的空間使用量du -a # 檢視全部檔案,包括隱藏檔案和子檔案# 檢視根目錄下每個目錄多佔用的容量du -sm /* #尋找當前目錄,哪個資料夾佔用空間最大du -h ——max-depth=1

Linux作業系統學習(運維必會)

Linux作業系統學習(運維必會)

8。1、釋放空間

使用

du -h --max-depth=1

命令查詢大檔案

/var/log/journal/ 垃圾日誌清理

// 1。 只保留近一週的日誌journalctl ——vacuum-time=1w// 2。 只保留500MB的日誌journalctl ——vacuum-size=500M

9、程序管理

Linux中每一個程式都有一個自己的程序,每一個程序都有一個id

每一個程序都會有一個父程序

程序有兩種存在方式:前臺、後臺

一般服務都是後臺執行的,程式都是是前臺執行的

9。1、ps -aux

ps # 檢視當前系統中正在執行的各種程序的資訊-a # 顯示當前終端執行的所有程序資訊-u # 以使用者的資訊顯示程序-x # 顯示後臺執行程序的引數 啟動程序時所攜帶的引數| # 管道符A | B # A、B命令,A命令的結果作為輸出傳遞給B命令grep # 檢視檔案中複合條件的字串ps -aux|grep nginx # 檢視nginx的程序資訊[root@xiao composetest]# ps -aux|grep nginxroot 15986 0。0 0。0 112712 960 pts/0 S+ 19:29 0:00 grep ——color=auto nginxroot 19664 0。0 0。0 45940 1168 ? Ss Oct06 0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx。confnobody 19668 0。0 0。1 46928 3248 ? S Oct06 1:52 nginx: worker process[root@xiao composetest]# ps -aux|grep mongo # 檢視mongo的程序資訊root 16035 0。0 0。0 112712 956 pts/0 S+ 19:29 0:00 grep ——color=auto mongoroot 19440 0。4 5。3 1635344 101348 ? SLl Sep04 308:50 mongod ——config /usr/local/mongodb/etc/mongodb。conf

UID //使用者ID、但輸出的是使用者名稱

PID //程序的ID

PPID //父程序ID

C //程序佔用CPU的百分比

STIME //程序啟動到現在的時間

TTY //該程序在那個終端上執行,若與終端無關,則顯示? 若為pts/0等,則表示由網路連線主機程序。

CMD //命令的名稱和引數

9。2、ps -ef 可以檢視到父程序的資訊

ps -ef|grep mysql

9。3、程序樹(目錄樹)

看父程序可以透過目錄樹來檢視

pstree-p # 顯示父id (PPID)-u # 顯示使用者組pstree -pu

Linux作業系統學習(運維必會)

9。4、top命令

Linux作業系統學習(運維必會)

9。5、結束程序

kill pid # 終止程序kill -9 pid # 強制終止程序

9。6、nohup 後臺執行程序

nohup java -jar jenkins。war &

10、環境安裝

三種方式:

rpm

解壓縮

yum線上安裝

11、防火牆

systemctl status firewalld 檢視firewalld狀態systemctlfirewall-cmdfirewall-cmd ——list-allfirewall-cmd ——add-port=8080/tcp ——premanentfirewall-cmd ——reload

阿里雲伺服器配置安全組

相關文章

頂部