2014/08/03
linux學習日誌
新安裝centos記得網路要設定為自動加入,不然網路卡會顯示停用
常用指令
pwd 列出目前所在的路徑
-r 反向排序
-t 根據時間排序
cd - 上一個目錄
lsattr 檢視檔案屬性(是否有不可刪除)
cp -a 保留原來屬性
df -h 以G顯示硬碟使用量
du -h 以G顯示資料夾使用空間
tail -f 持續更新顯示tail資料
diff f1 f2 列出f1 f2兩個檔案不同的地
sort排序
grep擷取有特定字元的行
>生成檔案
>>新增字元到檔案結尾
vi
:se nu = set nu =set number
全部批次取代字元 %s/patten/string/cgi
取代1-8行 1,8 s/patten/string/cgi
u復原
RPM
查詢/bin/bash是屬於哪個套件
rpm –qf /bin/bash
tar
v代表可見
f生成檔案
c打包
x解開
z壓縮
打包檔案 tar cvf file.tar 目標
打包並壓縮檔案 tar zcvf file.tar.gz 目標
解開檔案 tar xvf 檔案
解壓縮檔案 tar zxvf 檔案
開啟防火牆
setup 開好後
檢查/etc/sysconfig/iptables跟/etc/sysconfig/ip6tables
確認服務開啟狀態
chkconfig --list
只看特定服務httpd
chkconfig --list | grep httpd
開機啟動服務httpd
Chkconfig httpd on
程式別名
alias ls='ls -l'
alias df='df -h'
改完後要加入到/root/.bashrc
vi /root/.bashrc
排序sort
預設根據字首排序
要照第三個欄位排序
sort –k 3 檔案
丟給下一個程式
用 | 符號分隔
grep 擷取特定字串的該行
grep 關鍵字
grep ^[a-c] 擷取首欄有abc開頭的
grep ^[abd] 擷取首欄有a,b,d開頭的
grep ^a.a 擷取a開頭且有另外一個a的
檢查現在版本
#cat /etc/redhat-release
shell
執行批次檔案有兩種方式
第一種是把程式改成700
chmod 700檔名,然後
./檔名
就可以執行
或直接用這個指令
sh檔名
刪除使用者
userdel –r user (可以連使用者家目錄一起砍)
網路指令
ifconfig eth0 up 可以把網卡啟用(要本機操作)
netstat –i | more 看網路封包狀況
-n -a
uname –a 系統資訊
dmesg | more 開機資訊
top CPU使用量
ps ax 列出所有執行程序 例如 ps ax | grep httpd
kill -9 pid 砍掉某個程序
cp /dev/null 拷貝空值(清空資料)
禁止特定使用者登入SSH
修改PS檔案
vi /etc/passwd
把不要登入的帳號後面的/bin/bash改成/bin/任意字元如/bin/nologin
駭客入侵跡象
會把/root/.bash_history(指令紀錄)清空
把/var/log/secure清空
crontab -e會多出很多東西
駭客入侵要重新安裝
yum reinstall procps -y (/bin/ps)
yum reinstall net-tools -y (/bin/netstat)
yum reinstall openssh-server -y
用top看占掉的資源誰最高
用ps ax看有哪些多出來的pid
刪除不掉檔案要把唯讀拿掉
例如/etc/cupsdd這個檔案
chattr -i /etc/cupsdd
rm /etc/cupsdd –rf
rm /etc/cupsddh
kill -9 pid
awk
awk 把資料根據欄位加以擷取的指令
語法 awk ‘{ print $n “字串”}’檔案
例如awk ‘{ print $3 “+”$2 “+” $1}’
例如要殺掉特定程序httpd
ps ax | grep httpd | awk '{print "kill -9 " $1}' | sh
(要加上後面的sh 才會執行)
分隔符號不是空白的時候要用大寫F指定
awk –F: ‘{print $3 }’
例如要看passwd所有人的uid
awk -F: '{print $3 "=" $1}' /etc/passwd | sort
如果把檔案存成awk檔
像是這樣
{print $3}
{print $2}
就可以不用再打指令批次執行
語法
awk –f 檔案
awk –f 檔案 | sh (確定要執行)
quota
設定home要加入quota
vi /etc/fstab
找到home這行
/dev/mapper/xxx-lv_home /home ext4 defaults 1 2
改成
/dev/mapper/xxx-lv_home /home ext4 defaults, usrquota 1 2
就是在defaults後面加上,usrquota
然後用more /etc/mtab指令先看一下
然後
umount /home
mount /home
or mount -o remount /home
不開機啟用quota
quotaon -avug
編輯使用者quota
edquota username
soft會寄信通知
hard是實體
單位是k,100000=100M
複製使用者quota設定
edquota –p 範本使用者 *
要注意要在home底下有範本使用者資料夾下這個指令
Logical Volume Manager
vgs 顯示現在的虛擬邏輯磁區群組
vgdisplay 顯示更詳細資料
lvs顯示現有邏輯磁區
lvdisplay顯示更詳細資料
如何增加硬碟分割區容量
df
拿到home的dev名字
例如
/dev/mapper/vg_centos19-lv_home
增加home大小
lvextend -L +容量 /dev/home name
lvextend -L +100m /dev/mapper/vg_centos19-lv_home
生效
resize2fs /dev/home name
resize2fs /dev/mapper/vg_centos19-lv_home
可以再用df檢查
Squid
安裝
yum install squid –y
到setup把3128 port打開
更改設定檔案
vi /etc/squid/squid.conf
增加本地的ip
acl localnet src 163.17.233.0/24 # 頭家
要修改proxy容量
#cache_dir ufs /var/spool/squid 100 16 256
把這行的#拿掉
把100Mb改成 你要的
要阻擋網址關鍵字
例如設定game這組關鍵字(包含 facebook sex game )
acl game url_regex facebook sex game
阻擋剛剛設定的game
http_access deny game
設定開機啟動
chkconfig squid on
sarg
可以記錄squid的流量
安裝
wget http://www.cses.tc.edu.tw/study/squid/sarg-2.3.1-1.el6.test.x86_64.rpm
rpm -Uvh sarg-2.3.1-1.el6.test.x86_64.rpm
修改bug
vi /etc/sarg/sarg.conf
把font路徑修正
graph_font /etc/sarg/fonts/DejaVuSans.ttf
存檔
執行
sarg
把網頁改成除了本機之外區網可看
vi /etc/httpd/conf.d/sarg.conf
加入Allow from 163.17.208.0/24
存檔
service httpd restart
就可以上網看結果了
/etc/httpd/conf.d/底下的*.conf會被自動載入
所以alias可以不用放在httpd.conf裡面
可以另外建立一個檔案
Samba
安裝yum install smb –y
防火牆打開 setup
服務啟動 service smb restart
自動開啟 chkconfig smb on
檢查chkconfig –list
設定public目錄
vi /etc/samba/smb.conf
把 [public]這塊的;拿掉
目錄可以指定特定帳號
重新啟動服務service smb restart
ACL設定權限
vi /etc/fstab
在home加上acl
/dev/mapper/vg_centos19-lv_home /home ext4 defaults,usrquota,acl 1 2
重新掛載
mount -o remount /home/
設定user群組可以讀寫samba資料夾
setfacl -m g:users:rwx /home/samba
移除權限
setfacl -x g:users /home/samba
限制使用者不能刪除他人的檔案
chmod 1775 資料夾
檢查設定
testparm -v | more
修改編碼
vi /etc/samba/smb.conf
在[global最後面加上]
dos charset = CP950
存檔
service smb restart
Webmin
安裝WEBMIN
rpm -Uvh http://www.cses.tc.edu.tw/study/webmin/webmin-1.690-1.noarch.rpm
setup修改防火牆把10000打開
service iptables restart
service ip6tables restart
連線進入
學務系統安裝注意事項
不要預設編碼
vi /etc/httpd/conf/httpd.conf
把AddDefaultCharset UTF-8前面加上#
存檔
修改php.ini設定
vi /etc/php.ini
max_execution_time = 300
memory_limit = 128M
error_reporting = E_ALL改為E_ALL & ~E_NOTICE
magic_quotes_gpc = Off 改為 On
upload_max_filesize = 2M → 10M
post_max_size = 8M → 20M
short_open_tag =Off改為 On
確認 register_globals = Off
存檔
sevice httpd restart
安裝XOOPS& Joomla
把檔案改給Apache
chown apache.apache * -R
新增硬碟
fdisk /dev/sdb
p 顯示分割狀態
n 新增分割區
結束記得要w寫入
轉換成PV
先用pvs檢查
pvcreate /dev/sdb1
pvcreate /dev/sdb2
再用pvs確認
加入群組
vgextend vgname /dev/sdb1
再用vgs跟pvs檢查即可
新增lv
語法lvcreate -L 磁碟大小 -n lvname vgname
範例lvcreate -L 4G -n lv_students vgname
去home底下新增學生的資料夾
mkdir /home/students
格式化
mkfs.ext4 /dev/vgname/lvname
mkfs.ext4 /dev/vg_centos19/lv_students
掛載
mount /dev/vg name/lv name /home/資料夾
mount /dev/vg_centos19/lv_students /home/students
檢查
df –h
開機自動掛載
先df
拿到完整路徑/dev/mapper/vg_centos19-lv_students
vi /etc/fstab
把這行加進去
路徑 掛載目標 格式 條件
/dev/mapper/vg_centos19-lv_students /home/students ext4 defaults,usrquota,acl 1 2
存檔
重新mount
mount -o remount -a /dev/mapper/名稱
mount -o remount -a /dev/mapper/vg_centos19-lv_students
把原來在/home/2014的資料夾搬家到/home/students
mv 2014/ students/
修改家目錄檔案
vi /etc/passwd
批次取代2014變成students/2014
%s/2014/students\/2014/cgi
Rsync
備份
rsync -avl 來源目錄 目的目錄
rsync -avl 163.17.208.219:/home/ /home/
rsync -avl 163.17.208.219:/etc/ /root/etc
建立信任連線
產生key
ssh-keygen -d
都enter就可以了
把信任檔案利用scp傳過去
scp /root/.ssh/id_dsa.pub 163.17.208.219:/root/.ssh/authorized_keys
同一台如果要接受地另外一台主機的信任連線
就不能直接覆蓋authorized_keys
這時候可以一樣先丟,但是檔名改一下
例如
scp /root/.ssh/id_dsa.pub 163.17.208.219:/root/.ssh/authorized_keys2
然後去163.17.208.219這一台下這樣的指令
cat /root/.ssh/authorized_keys2 >> /root/.ssh/authorized_keys
就會把資料加入結尾了
大量授權
在dns加入這行
_vlmcs._tcp.tjes.tc.edu.tw. 90000 IN SRV 0 0 1688 kms.tc.edu.tw.
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言