一、文件系統的管理
tips:輸入命令的時候要常用tab鍵來補全
ls 查看目錄信息 ( ls / )
ls -l 等價於 ll
pwd 查看當前所處的路徑
cd 切換目錄 (cd /) ,如果不帶參數則切換到用戶主目錄 ~
mkdir 創建文件夾
rmdir 刪除空文件夾 (只能刪除空文件夾)
rm -r /a/b (刪除非空文件夾)
創建文件
touch a.avi 創建一個空文件
vi blabla.txt 用文本編輯器編輯一個文件並且保存
echo "angelababy,zhen de hen xihuan ni" > qingshu.txt 把左邊的輸出放到右邊的文件裏去
刪除文件
rm filename (rm -r 刪除文件夾 rm -rf 強制刪除文件或文件夾)
移動文件 修改文件名
mv a/wenjian1.txt b/file1.txt (移動文件的同時還修改了文件名)
拷貝文件
cp srcFile destFile
查看文件內容
cat wodeqingshu.txt
more wodeqingshu.txt 可以分頁看
less wodeqingshu.txt 不僅可以分頁,還可以方便地搜索,回翻等操作
tail -10 wodeqingshu.txt 查看文件的尾部的10行
程序打出的日誌在生產實踐中具有非凡的debug的意義
tail -f user.log 實時刷新顯示文件的尾部
head -20 wodeqingshu.txt 查看文件的頭部20行
二、權限管理
drwxrwxr-x
修改權限
chmod u+rwx file 爲file添加或取消所屬用戶的權限
(u代表所屬用戶 o代表其他用戶 g代表所屬組的成員用戶)
chmod 567 file 用數字也可以表示權限
5 ---> 101 ---> r-x
修改文件的所有者owner
chown hadoop:hadoop file 將file的所有者改成hadoop用戶,所屬組改成hadoop組
上級目錄的權限對本級文件或者文件夾的操作也有約束
三、用戶管理
添加用戶
useradd xxxx
必須設置密碼才能正常登陸 passwd xxx
刪除用戶
userdel xxx
userdel -r ihr -----刪除用戶的同時刪除用戶的主目錄
修改用戶屬性
usermod -l b a 將a的登陸名改爲b
usermod -g hadoop xxx 將xxx的組改爲hadoop組
usermod -G hadoop,root xxaa 給aaa添加兩個組hadoop,root
usermod -d /home/dd iaadd 將iaadd的主目錄改成/home/itcast
(要事先創建iwwww目錄,並且拷入環境變量文件)
----****----修改用戶的密碼
passwd lvll
添加用戶組
groupadd beauties
刪除用戶組
groupdel beauties
修改用戶組屬性
groupmod
查看當前登陸的身份
whoami
查看當前用屬的組
groups
四、常見系統管理(凡是涉及到修改,就一定要用root權限)
****
輕易不要使用su去切換到root的身份
普通用戶使用sudo來執行root權限的命令
如,將hadoop用戶添加到sudoers文件中去
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL
磁盤空間信息查看
df -h 查看磁盤空間狀態信息
du -sh * 查看當前目錄下所有子目錄和文件的彙總大小
進程信息查看
free 查看內存使用狀況
top 查看實時刷新的系統進程信息
ps -ef 查看系統中當前瞬間的進程信息快照
ps -ef | grep myshell.sh 搜索myshell進程的信息
kill -9 pid 殺掉進程 (-9 表示強制殺死)
五、文件歸檔壓縮(1:打包--歸檔; 2:壓縮)
1、歸檔
tar -cvf testdir.tar testdir/
2、壓縮
gzip testdir.tar
gzip file
bzip file
tar -czvf testdir.tar.gz testdir/
tar -xzvf testdir.tar.gz 解壓到當前目錄下
tar -zxvf testdir.tar.gz -C Downloads/ 解壓到指定的Downloads目錄下
六、網絡管理
修改ip地址的配置
vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改該配置文件即可改ip地址
或者用setup指令通過一個帶提示的僞圖形界面來修改
查看ip地址
ifconfig
修改主機名
vi /etc/sysconfig/network 修改其中的hostname配置項
要想立即生效 可以執行指令 hostname nidezhujiming
HOSTNAME=yun12-01
管理內網的主機名---ip地址映射
vi /etc/hosts
192.168.2.250 yun12-01
重啓網絡服務
root權限下 service network restart
關閉防火牆服務 service iptables stop
關閉防火牆自動啓動 chkconfig iptables off
1、firewalld的基本使用
1.查看防火牆運行狀態 firewall-cmd --state
啓動: systemctl start firewalld
關閉: systemctl stop firewalld
查看狀態: systemctl status firewalld
開機禁用 : systemctl disable firewalld
開機啓用 : systemctl enable firewalld
2.systemctl是CentOS7的服務管理工具中主要的工具,它融合之前service和chkconfig的功能於一體。
啓動一個服務:systemctl start firewalld.service
關閉一個服務:systemctl stop firewalld.service
重啓一個服務:systemctl restart firewalld.service
顯示一個服務的狀態:systemctl status firewalld.service
在開機時啓用一個服務:systemctl enable firewalld.service
在開機時禁用一個服務:systemctl disable firewalld.service
查看服務是否開機啓動:systemctl is-enabled firewalld.service
查看已啓動的服務列表:systemctl list-unit-files|grep enabled
查看啓動失敗的服務列表:systemctl --failed
那怎麼開啓一個端口呢 centos7
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,沒有此參數重啓後失效)
firewall-cmd --zone=public --add-port=5086/tcp --permanent
firewall-cmd --zone=public --add-port=8860/tcp --permanent
查看所有打開的端口: firewall-cmd--zone=public --list-ports
更新防火牆規則: firewall-cmd --reload
ftp安裝
1.創建用戶及用戶主目錄
/usr/sbin/adduser -d /srv/ftp -g hairunyunwei -s /sbin/nologin hairuntech
2.安裝
yum install -y vsftpd
#設置開機啓動
systemctl enable vsftpd.service
#啓動
systemctl start vsftpd.service
#停止
systemctl stop vsftpd.service
#查看狀態
systemctl status vsftpd.service
修改系統的默認啓動級別
vi /etc/inittab
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:3:initdefault:
~
用level 3 就啓動全功能狀態的字符界面
查看當前的進程連接網絡的信息
netstat -nltp
五、常用工具指令
wc 統計文本信息(行數,詞數,字符數)
date 查看或者修改系統的日期和時間
echo 輸出字符串或者變量的值
vi linux系統中最通用的文本編輯器
六、linux中的軟件安裝
jdk
將安裝包解壓到你的安裝路徑下
然後修改環境變量 sudo vi /etc/profile
然後 source /etc/profile 來生效
tomcat
Eclipse
mysql
redhat 公司的RPM方式的包管理 也是很常用的軟件包管理器
rpm -qa | grep mysql
sudo rpm -e mysql-libs-5.1.66-2.el6_3.i686 --nodeps
sudo rpm -ivh MySQL-server-5.1.73-1.glibc23.i386.rpm
數據庫增加字段
alter table test_record add custTaskName varchar(120);
alter table test_record add testScene varchar(120);
alter table test_record add column del_flag varchar(1) default '0';
修改字段
alter table test_record modify column del_flag varchar(1
df -hl 查看磁盤剩餘空間
df -h 查看每個根路徑的分區大小
du -sh [目錄名] 返回該目錄的大小
du -sm [文件夾] 返回該文件夾總M數
uptime命令:uptime用於查看系統的負載信息
(1)tar命令:tar命令用於對文件進行打包壓縮或解壓;
tar命令的參數及其作用
參數 作用
-c 創建壓縮文件
-x 解開壓縮文件
-t 查看壓縮包內有哪些文件
-z 用Gzip壓縮或解壓
-j 用bzip2壓縮或解壓
-v 顯示壓縮或解壓的過程
-f 目標文件名
-p 保留原始的權限與屬性
-P 使用絕對路徑來壓縮
-C
指定解壓到的目錄
/bin 用於保存命令的目錄
/sbin 用於保存命令的目錄(只有root能用)
/usr/bin 用於保存命令的目錄
/usr/sbin 用於保存命令的目錄(只有root能用)
/boot啓動目錄,系統啓動的文件都放這裏,一般不動該目錄
/dev 該目錄下存放的都是設備相關的文件,一般也不要去動
/etc 主要存放配置文件的目錄
/home 是普通用戶目錄 (普通用戶對應目錄下可以隨便放文件)
/root 是超級用戶目錄(root用戶對應目錄下可以隨便放文件)
/lib 存放linux系統函數庫
/mnt 空目錄,用於掛在外接存儲設備
/media 空目錄,用於掛在外接存儲設備(在原來的linux系統中沒有)
/misc 空目錄,用於掛在外接存儲設備(在原來的linux系統中沒有)
/proc 是內存過載點;這兩個目錄的內容直接寫在內存,因此不能直接操作
/sys 是內存過載點;這兩個目錄的內容直接寫在內存,因此不能直接操作
/temp 臨時目錄(隨便放文件)
/usr 系統軟件資源目錄
/var 系統相關文檔內容
find / - name install.log 從根目錄開始,搜索文件名爲install.log的文件;
儘可能避免大範圍搜索,會非常消耗系統資源;
可以使用通配符:
* 匹配任意內容
? 匹配任意一個字符
[] 匹配任意一箇中括號內的字符
-iname 不區分大小寫
-user 按照所有者搜索
-nouser 查找所有沒有所有者的文件
根據時間查找:
-mtime +10 查找10天之前的修改文件(也可以是創建時間)
-mtime 10 查找10天前當天的修改文件
-mtime -10 查找10天內的修改文件
-atime 天數 文件訪問時間(天數同上)
-ctime 天數 改變文件屬性時間(天數同上)
根據文件大小查找:
-size +10k 查找大於10k的文件(小寫k)
-size 10M 查找等於10M的文件(大寫M)
-size -10G 查找小於10G的文件(大寫G)
-size 10 不加單位表示搜索10個扇區,一個扇區512B(不推薦使用)
根據i節點號查詢:
ls -i 可以查看i節點
-inum 262422 查找i節點是162422的文件
組合查詢:
-a 邏輯與
-o 邏輯或
-exec/-ok 命令 {} \; 對搜索結果進行操作
例:
find /etc -size +20k -a -mtime -10 -exec ls -lh {} \;
####rpm如何安裝軟件####
rpm -ivh name.rpm ##安裝 ,-v顯示過程,-h指定加密方式爲hash
-e name ##卸載
-ql name ##查詢軟件生成文件
-qlp name.rpm ##查詢軟件安裝後會生成什麼文件
-qa ##查詢系統中安裝的所有軟件名稱
-qa |grep name ##查詢軟件是否安裝
-q name ##顯示全名
-qp name.rpm ##查詢軟件安裝包安裝後的名字
-qf filename ##查看filename屬於那個安裝包
-ivh name.rpm --force ##強制安裝
-qi name ##查看軟件信息
-Kv name.rpm ##檢測軟件包是否被篡改
-qp name.rpm --scripts ##檢測軟件在安裝或卸載過程中執行的動作