邏輯上全部的目錄只有一個頂點/(根),全部的目錄的起點。
根下面相似一個倒掛的樹同樣的層次結構,只有一顆樹(區別window,每一個盤符都是一棵樹)node
tree -L 1(顯示層數) /
linux的目錄結構也是有規律的,並且也是按照類別組織的。linux
應用程序 /usr/bin
數據文件 幫助/usr/share
配置文件 /etc/
啓動命令 /etc/init.dvim
1).Linux的全部目錄結構是一個有層次的倒掛着的樹形目錄結構
2).根"/"是全部目錄的頂點
3).目錄結構和分區設備是沒有關係的,也就是不一樣的目錄能夠跨越不一樣的磁盤設備
4).全部的目錄都是按照必定的類別有規律的組織和命名的。windows
相對路徑和絕對路徑
絕對路徑:從根開始就是絕對路徑 cd /data/
相對路徑:不從根開始的路徑 cd ../安全
關機與重啓命令服務器
halt 關機 reboot 重啓 shutdown -r now(時間) 重啓 shutdown -h now 關機
linux的一些目錄結構分析:網絡
/dev/ 設備目錄 /etc/ 文件以及服務啓動的目錄 /proc/ 顯示內核及進程信息虛擬文件系統 /tmp 臨時文件目錄 /home 普通用戶家目錄 /var/ 變化目錄,通常是日誌文件的目錄 /usr/ 用戶程序及數據,幫助文件等目錄 /bin 和 /sbin 和 /usr/sbin 用戶命令的目錄
重要的一些子目錄說明:
1.網卡地址:併發
etc/sysconfig/network-scripts/ifcfg-eth0 /etc/init.d/network restart 重啓網卡(全部網卡) ifdown eth0 && ifup eth0 (只對eth0) 經過setup能夠設置網絡配置
2.設置Linux本地的客戶端DNS的文件--DNS能夠實現域名和IP的解析ssh
/etc/resolv.conf
3.設置用戶IP和名字(或域名)的對應解析表高併發
/etc/hosts
4.修改機器名及網卡啓動,網關等配置
/etc/sysconfig/network
5.記錄開機要mount的文件系統的一個文件
/etc/fstab
6.存放開機自啓動程序命令的文件(chkconfig只能管理yum、rpm安裝程序的啓動服務)
/etc/rc.local
7.設定系統啓動時,init進程將系統設置成什麼樣的runlevel及加載相關的啓動文件設置。linux開機啓動流程。
/etc/inittab
8.存放系統或服務器啓動的腳本
/etc/init.d
9.系統全局環境變量配置路徑
/etc/profile #查看系統版本 cat /etc/issue #查看版本信息 #隱藏系統版本 #>/etc/issue 或者 cat /dev/null >/etc/issue
鎖定關鍵系統文件
上鎖: chattr +i /etc/passwd /etc/shadow/ /etc/group /etc/gshadow /etc/inittab 解鎖: chattr -i /etc/passwd /etc/shadow/ /etc/group /etc/gshadow /etc/inittab
查看內容是否加鎖:
lsattr(查看文件屬性) /etc/passwd
chattr(修改文件屬性)
SELinux
關閉SElinux vim /etc/selinux/config 更改: SELINUX=enforcing 爲: SELINUX=disabled
或者使用命令:
sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/selinux/config
修改以後查看:
grep "disabled" /etc/selinux/config
執行命令:
setenforce 0 (生效須要重啓,可是Linux通常不重啓,全部先臨時更改setenforce 0,啓後永久更改)
Linux啓動有7種啓動模式:
查看當前系統運行級別
runlevel
編輯啓動文件
vi /etc/inittab(配置文件)
不一樣運行級別模式之間的切換
init 0(關機)/1/2/3(默認命令模式)/4/5(桌面模式)/6
精簡開機系統啓動的服務爲:
1).setup->systerm service
2).ntsysv
3).腳本一鍵完成處理
chkconfig查看設置開機自動啓動軟件的命令相似與windows下的msconfig命令
chkconfig --list |grep "3:on"
若是是中文,執行命令:
LANG=en
更改sshd遠程鏈接配置
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ori 對源文件進行備份 vi /etc/ssh/sshd_config 編輯sshd_config 更改內容: port 52113 ssh鏈接默認的端口爲22,更改更安全 PermitRootLogin no root用戶黑客都知道,禁止它遠程登陸,但能夠本地登陸 PermitEmptyPasswords no 禁止空密碼登陸 UseDNS no 不使用DNS
重啓生效
/etc/init.d/sshd restart
關閉防火牆
/etc/init.d/iptables stop
查看網絡狀態
netstat -an 或 -lntup | grep ssh lsof -i port(52113) 有結果表示服務已開啓52113爲更改後的sshd端口
更改字符集
vi /etc/sysconfig/il8n 更改成: LANG="zh_CN.GB18030" SYSFONT="latarcyrheb-sun 16" source /etc/sysconfig/il8n 使更改生效 echo $LANG 查看字符集
時間同步
Linux系統的時間同步方法--ntp服務時間軟件 which ntpdate /usr/bin/ntpdate
執行以下命令:
/usr/sbin/ntpdate time.nist.gov 臨時設置同步 #定時任務 echo '#time synv by user at 2016-1-30'>>/var/spool/cron/root echo '*/5 * * * */'usr/sbin/ntpdate time.nist.gov>/dev/null 2>&1'>>/var/spool/cron/root crontab -l
額外學習:linux優化筆記整理
基礎優化回顧總結:
1).不用root,添加普通用戶,經過sudo受權管理;
2).更改默認的遠程鏈接SSH服務端口及禁止root用戶遠程鏈接;
3).定時自動更新服務器時間
4).配置yum更新源,從國內更新源下載安裝rmp包
5).關閉selinux及iptables(iptables工做場景若是有wap ip通常要打開,高併發除外)
6).調整文件描述符的數量,進程及文件的打開都會消耗文件描述符
7).定時自動清理/var/spool/clientmquene/目錄垃圾文件,放在inodes節點被佔滿
8).精簡開機自啓動服務(crond,sshd,network,rsyslog)
9).Linux內核參數優化(etc/sysctl.conf,執行sysctl -p生效)
10).更改字符集,支持中文,但建議仍是用英文字符集,放在亂碼問題
11).鎖定關鍵系統文件
chattr +i /etc/passwd /etc/shadow/ /etc/group /etc/gshadow /etc/inittab
處理以上內容,把chattr更名test,會相對更安全。
12).清空/etc/issue,去除系統及內核版本登陸前的屏幕顯示。
cat 顯示內容輸出 tac 反轉內容輸出 tail -f(跟蹤文件結尾變化) a.txt