Linux常用操作练习汇总
2017-07-22 16:52
549 查看
转自:http://www.cnblogs.com/kpengfang/p/5050261.html
练习一:安装CentOS
1、设置为1G内存(才有图形界面)、10G硬盘
2、分给交换分区2G(4G一下2G,8G-32G分4G-8G)
练习二:安装CentOS迷你版
1、安装
2、设置Linux服务器网卡:
编辑网卡配置项vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes BOOTPROTO=static NETMASK=255.255.255.0 IPADDR=192.168.1.22 #网关 DNS1=8.8.8.8
重启网卡
service network restart
测试网络
ping baidu.comCtrl+C中断ping测试
关闭Selinux
vi /etc/selinux/config
SELINUX=disabled
重启服务器
reboot
测试网络
ping baidu.com
关闭系统
halt
练习三:命令操作
查看当前所在的文件位置pwd
尝试切换终端
Ctrl+Alt+(F2~F6)
清屏
Ctrl+L/
clear
查看根目录下tmp中的文件
ls /tmp
查看根目录下tmp中文件的详细信息
ls -l /tmp
ll /tmp
查看根目录下tmp中文件的详细信息,文件大小以可识别单位查看
ls -lh /tmp
ll -h /tmp
按格式输出当前时间 [2014/02/17 23:59:59]
date "+%Y-%m-%d %H:%M:%S
按格式输出当前日期 [2014/02/17]
date "+%Y/%m/%d"
安装man帮助工具
yum search man有man.i686可以安装
yum install man安装man
y是否下载
y是否安装
yum install -y man不询问直接安装
man命令查看帮助
man date上下键滚屏幕,可以翻页,q退出
练习:使用man命令查看date帮助,输出星期几,十二小时制
显示日历
cal
cal 2 12 2012查看2012年12月02日
tab键补全路径或命令 [使用tab补全的方式完成]
vi /etc/sysconfig/network-script/ifcfg-eth0两次tab可显示相同前缀的
date
练习四:命令操作
1、关机练习
shutdown -h now立刻关机
shutdown -h 15:3015:30关机
shutdown -h +3030分钟后关机
shutdown -r +20 "20m shutdown"输出信息关机
shutdown -k +2 "一会要关机,抓紧保存"输出关机通知,不执行
Ctrl+C取消操作
halt立刻关机
reboot重新启动
2、找回ROOT密码
系统起动时,随便按一个键进入grub菜单按e键进入编辑模式
移入kernel行,按e继续编辑
在最后面输入 single
回车
按b引导系统进入单用户模式
执行passwd命令,输入新密码
3、目录操作
cd /tmp
ls
ll
cd直接打cd回当前用户的 家目录
pwd
4、如何计算目录权限
ll /查看根目录下的文件详情
d代表文件夹 可读(read)r->4 可写(write)w->2 可执行(execute)x->1
d|rwx|rwx|rwx 类型 | 所有者 | 所属组 | 其它用户
drwxr-xr-x 目录权限755
-rw-rw-r-- 文件权限664,一般文件不需要x权限
umask #查看默认权限
umask -S #以易读的方式查看
5、用户
useradd xz添加用户 xz
passwd xz添加密码给xz用户
admin888输入密码
admin888确认密码
who 查看谁在服务器上
6、文件权限
base
mkdir /test创建目录test
cd /test进入目录test
test.1
touch file创建文件file
vi file
cat file查看file文件
ll-rw-r--r-- 1 root root 0 Apr 3 07:58 file
chown xz file把file文件的所有者改为xz
llxz root
chown xz:xz file把file文件的所属组也给xz
llxz xz
chmod 060 file改变file文件的权限为---rw----
test.2
mkdir sina创建文件夹sina
touch ./sina/a
touch ./sina/b
chmod -R 777 sina目录sina里的所有文件都改为777权限
ll ./sina
test.3
touch baidu
chgrp xz baidu改变所属组为xz
touch sohu
chown :xz sohu改变所属组方法二
test.4
用户(user)u 组(group)g 其它人(other)o
touch abc
chmod g+wx abc使组内成员对abc 可写+执行
chmod u=rwx,g=rw,o=rw abc修改文件abc所有者权限为rwx,组为rwx,其他人为rwx
chmod o-r abc去掉其他人o的r(读)权限
chmod -r abc去除所有用户的r权限
7、练习:
用cxz帐号给文件/test/aaa添加其他人可读可写的权限,使用zxz帐号进行编辑ROOT账户useradd zxz
…
chmod 777 /test
cxz账号
cd /test
touch aaa新建文件
touch bbb
chmod o=rw aaa添加权限
chmod o=w bbb
zxz账号
cd /test
vi aaa
vi bbb
ll
root账号 rm -rf /test/* 不提示,删除文件 **只给文件x权限,不给r,其它人强制写入,会改变此文件所有者及所属组**
**如果只给目录r权限,无法读取到目录中文件详细信息,如修改时间等,所以rx一般配合使用**
文件:
读取文件内容 r
编辑修改文件 w(不表示可以删除文件)
执行文件 x(sh脚本)
目录:
列出文件列表 r(比如可以执行ls读取文件列表)
进入目录 x(网站目录给rx权限,表过进入目录读取内容)
新建文件 w
删除文件 w
改名 w
移动文件 w
**目录权限的w权限增删改查文件的存在。而不管文件内容的w权限**
练习五:
1、基础操作
ls .显示当前目录的文件
cd -切换工作目录
cd ~xz进入xz用户的家目录
history查看历史执行命令
!l执行上一次执行的ls .
tar zcvf /test/etc.tar.gz /etc打包etc目录到test中
2、环境
echo $PATH查看当前系统环境变量
test
cd /test
vi xz.shshell脚本
echo "hello world"
chmod +x xz.sh添加可执行权限
xz.sh失败
./xz.sh成功
PATH=$PATH:/test吧/test目录加入环境变量
xz.sh成功
3、查找文件
whereis man查看man文件位置
whereis yum查看yum文件位置
4、取得目录与文件名
dirname /home/xz取得目录名
basename /home/xz取得文件名
5、练习
使用mkdir创建目录Admin/App/Category/Controlmkdir /www
cd /www
mkdir -p Admin/App/Category/Control递增创建目录
6、练习
使用tree命令 查看Admin目录树yum install -y tree
tree Admin
tree ./
tree
练习六
1、删除操作
cd /test
touch {a,b,c}创建a、b、c三个文件,中间不能有空格
rm a删除文件a,带有确认
rm -f b直接删除空目录/文件
rm -rf c直接删除非空目录/文件
2、复制
mkdir /www创建/www目录
mkdir /backup创建/backup目录
cd
touch test.html创建/root/test.html文件
cp test.html /backup将/root/test.html复制到/backup
ls /backup/
3、复制
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /backup/ifcfg-eth0.bak备份网卡配置文件
ls /backup
4、软连接
test.1
cd /www
touch linux.php
ln -s /www/linux.php /backup/linux_link.php
ll /backup
test.2
vi exe.sh
date '+%Y-%m-%d %H:%M:%S'
chmod +x exe.sh
./exe.sh
ln -s /www/exe.sh /bin/exe.sh在任何目录执行exe.sh都可以
5、硬链接
cd /www
touch a.class.php
ln a.class.php b.class.php两个链接引用了磁盘上这块的地址
6、改名与移动
mv exe.sh /backup移动
cd /backup
mv exe.sh xz.sh改名
7、取文件内容
cp /etc/passwd /www复制passwd到www目录
head -n 3 passwd查看前3行
tail -n 3 passwd查看最后3行
cat passwd查看全部文件
cat -n passwd带行号
more passwd空格,下一屏,退出q
8、管道
cat passwd | nl | more查看passwd 结果 -> 显示行号 结果 -> 分屏
nl passwd | more分屏显示passwd 结果 -> 分屏
9、显示行、字符、字节数
wc -l passwd显示行数
wc -m passwd显示字符数
wc -c passwd显示字节数
wc passwd一次显示行、字符?、字节、文件名
练习七:(视频14)
1、文本内容搜索
cd /test
vi a.html
#aaa ;bbb ccc
grep -v "^[#;]" ./a.html查看非#;开头的
grep -i "aAa" a.html不区分大小写
2、查找文件
method.1
which passwd一般用来查找命令
whereis passwd查找文件名passwd的文件
method.2
touch abc.html
yum install -y mlocate安装locate
updatedb更新数据库才能查找到
locate abc.html
method.3
find abc.html相对locate走数据库会比较慢,但是都能找到
find / -nouser删除没有用户的文件
find / -size +10240k查找大于10MB的文件
find / -mtime -2查找3天内修改的文件
find / -mtime +2查找3天前修改的文件
find / -mtime 1查找昨天修改的文件
3、权限设置
cd /www
rm -rf *
mkdir html
touch index.html
chmod 0000 *
find /www -type d -exec chmod 755 {} \;目录权限改为755
find /www ! -type d -exec chrmod 644 {} \;文件权限改为644
find / -name index.html查找文件
find / -user xz查找用户xz
find ~xz -name *.html
find . -name *.html -exec rm -i {} \;-i表示删除的时候确认下
练习八:磁盘分区(视频15、16)
1、列出目录大小
du -a列出目录所有文件大小,字节(显示隐藏文件)
du -ah用可识别的单位
du -s只列出总大小,不显示
du -s | more分屏,空格下一屏,q退出
du -Shs不计算子目录大小
2、查看分区大小
df -h
3、查看硬盘信息并分区
关机,虚拟机插入硬盘fdisk -l
fdisk /dev/sdb
n分区操作。如果输入错误,使用Ctrl+删除键
p主分区
1第一个
回车 起始
+2G分配2G
w写入分区表
fdisk -l
mkfs -t ext4 /dev/sdb1格式化1,挂载中的不能被格式化
mount查看挂载
cd /
mkdir men
ls /men
mount /dev/sdb1 /men挂载sdb1到/men,但是,重启后会消失
ls多一个lost+found
umount /dev/sdb1卸载挂载点
yum install -y vim17M->49M
vim /etc/fstab修改自动挂载
/dev/sdb1 /men ext4 defaluts 0 0 #分区卷标 挂载点 系统类型 选项 备份 修复
4、练习
添加2块硬盘(8G)第一块分3个主分区 2、2、x
第二块分5个区 2、2、2、1、x
练习八 (视频18)
1、压缩与解压缩
cd /test
mkdir tmp
cp /etc/passwd ./tmp
cd tmp
zip/unzip
yum install -y zip
zip passwd .zip passwd压缩为passwd.zip把passwd
rm -rf passwd
yum install -y unzip
unzip passwd.zip解包
gzip
gzip passwd
llpasswd.gz
gzip -d passwd.gz解压缩
ll
bzip2
bzip2 passwd
llpasswd.bz2
bzip2 -d passwd.bz2解压缩
ll
2、打包
cd /test
tar zcvf etc.tar.gz /etcgz打包
tar jcvf etc.tar.bz2 /etcbzip2打包
tar zpcvf etc.tar.gz /etc备份etc目录
tar ztvf ./etc.tar.gz | more查看压缩包内容
rm -rf *
加上v可以看到过程 保留备份数据的缘由属性 装好环境,第一时间备份/etc/目录
练习九:VIM使用(视频19、20)
1、基础操作
cd /www
vi index.php
i <?php echo "hello" ?> Esc :wq! #强制保存退出:x!也可以
vi index.php
aaa :q! #强退
2、提高
cd /test
cp /etc/passwd passwd
test.1
vi passwd
i #当前插入 I #行首插入 a #下一个光标 A #行尾 r #替换 R #相当于Insert :sh #暂时最小化 exit #返回 ZZ #保存退出
test.2
vi passwd
:w pwd #另存文件为pwd :set nonu #不显示行号 :set nu #显示行号 :set tabstop=4 #设置tab宽度 :12 #跳转到第12行 12G #跳转到12行 Ctrl+F #查看下一页 Ctrl+B #查看上一页 $ #跳转到全文末尾 G #跳转到最后一行 1G #跳转到第一行 /a #向下搜索a,按n是继续搜索 ?a #向上搜索a 1,$s/a/b/g #从第1行到最后,把a替换成b,全局 1,$s/b/a/gc #替换时提示,y确认,n跳过 Esc x #删除一个字符 X #向前删除一个 dd #剪切当前行 p #向下粘贴 3dd #向下剪切3行 P #向上粘贴 yy #复制 nyy
test.3 vim配置
cd
vi .vimrc查看vi的配置项
set nu #显示行号 set tabstop=2 #tab宽度 set autoindent #自动缩排
cd /test
vim a.php
:sh
ls -a
rm -rf .a.php.swp暂存文件删除
练习十:文件权限(视频21、22)
1、用户
id
cat /etc/passwd
cat /etc/shadow
useradd user2
passwd user2
admin888 admin888
cat /etc/group查看组
id user2
2、用户组
usermod -L user2锁定用户user2
usermod -U user2解锁用户user2
groupadd admin创建用户组admin
id user2
usermod -G admin user2设置用户user2附加组admin
3、删除用户
userdel user2删除用户
ls /home用户的家目录还未删除掉
useradd user3
ll
userdel -r user3删除用户宿主目录
ll
4、用户状态
useradd user4
passwd -S user4
passwd user4
admin888 admin888
passwd -l user4锁定用户
passwd -u user4解锁
5、组
groupadd zu1添加组
groupdel zu1组里面有成员是删不掉的
6、查看
ll /usr/bin/passwd查看passwd下的目录和文件 -rwsr-xr-x.
ls -l /usr/bin/passwd查看passwd下的文件 权限 -rwsr-xr-x.
前面的“s”代表执行者可变身
ls -l /etc/shadow权限-----------
7、GID
4表示UID 2表示GID
cd /test
mkdir shop
groupadd shop添加shop组
id zxz
usermod -G shop zxz把shop组给予zxz用户
id zxz
usermod -G shop xz
chmod 770 shop
lldrwxrwx---
cat /etc/group查看组文件中列表
2770
chmod 2770 shopdrwxrws---
chown :shop shopshop目录的默认组改为shop
s表示,在shop目录里创建的文件,所属组都是这个shop 组成员可以互相修改对方创建的文件
1777
cd shop
touch a.php
ll
mkdir share
chmod 1777 share
lldrwxrwxrwt
任何人都可以在里面创建目录,只能控制自己的文件,
ls -ld /tmp只管理自己的目录,其它可以查看,不能修改
练习十一:ACL权限(视频23)
1、新磁盘挂在ACL
vim /etc/fstab修改自动挂载
/dev/sdb1 /men ext4 defaults,acl 0 0 #分区卷标 挂载点 系统类型 选项,acl 备份 修复
2、组权限
test.1
cd /test
touch index.html
setfacl -m u:zxz:rw index.html-rw-rw-r--+
getfacl index.html
test.2
setfacl -b index.html
groupadd cc添加组
usermod -G cc lisi添加成员
usermod -G cc qq
setfacl -m g:cc:rw index.html指定index.html为cc组
getfacl index.html
组内用户重新登陆,获取一下权限 用户的mask里有的才能设置
练习十二:源代码安装软件(视频24)
1、源代码安装软件
cd /usr/local/src/
yum install -y wget
wget http://www.memcached.org/files/memcached-1.4.17.tar.gz[/code]tar zxvf ./memcached-1.4.17cd ./memcached-1.4.17./configure生成配置检测yum isntall -y gcc make安装gcc和make工具./configurecd ..wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz[/code]下载扩展库tar zxvf libevent-2.0.21-stable.tar.gzlscd libevent-2.0.21-stable./configuremake生成可安装文件make install安装cd ..cd memcached-1.4.17./configuremake && make install
软件安装完成2、启动memcache
memcachedldd /usr/sbin/groupadd查看groupadd需要的库文件cat /etc/ld.so.confecho '/usr/local/lib'>>/etc/ld.so.conf追加cat /etc/ld.so.conf查看ldconfig重新加载动态链接库共享memcached -uroot -d启动memcachedps aux | grep mem查看进程yum install -y memcache可以自动安装好3、合理的安装软件
./configure -hmake cleanmkdir /usr/local/memcachels /usr/local/memcachecd /usr/local/src/memcache-1.4.17./configure --prefix=/usr/local/memcache/make && make installcd /usr/local/lscd memcache/cd binls./memcached -uroot -dcd ..lscd ../../rm -rf memcache这样删除就相当于删除了软件练习十三:软件安装(视频25)
1、RPM了解
rpm -q vim查看vim是否安装rpm -qarpm -qa | egrep -i tree查看tree命令是否安装rpm -qal | grep vim查看vim软件安装所有文件与目录rpm -qac | grep vim查看vim软件的配置文件rpm -qpR /media/Packages/tree-1.5.3-2el6.i686.rpm查看所依赖包2、RPM
su -切换为rootmount /dev/cdrom/media可以下载软件包,挂载光驱到mediafind /media -name tree*查找rpm包rpm -ivh /media/tree-1.5.3-2.el6.i686.rpm安装tree命令rpm -e treeerase删除;删除treerpm -q treequery查询;查询是否还有tree3、YUM
yum info mysql查看软件信息yum list tree\*联网搜索yum search tree搜索的范围更广yum remove tree删除treeyum install tree安装treeyum update更新全部软件yum install -y mysqlyum直接输入yum可以看到相关的命令练习十四:软件安装(视频26)
1、安装软件
更换yum软件包源
cd /etc/yum.repos.d/mv CentOS-Base.repo CentOS-Base.repo.bak备份原配置wget http://mirrors.163.com/.help/CentOS6-Base-163.repo[/code] 下载163源wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo[/code] 搜狐yum源,现在有问题?yum makecache生成缓存安装mysql+php+apache
yum install -y mysql mysql-server php php-mysql php-mbstring httpd启动apacheapachectl start开启Apache,出现错误不管ps aux | grep httpd查看Apache进程是否启动service iptables stop关闭防火墙cd /var/www/htmlvim index.php<?php phpinfo(); ?>
启动mysqlservice mysqld start启动MySQLmysql -uroot -p进入mysqlshow databases; exit;2、计划任务
/etc/init.d/atd start启动单一计划任务atyum search atyum install -y atps aux | grep at查看计划任务进程at 13:30 2014-2-21at>echo 'hello' #回车后,Ctrl+D编译命令at -l查看任务at -c 50查看为50的任务3、周期任务
service crond start周期性计划任务touch /test/xz.tplcrontab -e!whereis echo #查看echo在哪个目录 */1 * * * * /bin/echo 'hello\n'>>/test/xz.tpl :xcd /testwatch cat /test/xz.tpl每隔2S执行cat ... ctrl+c退出4、自动任务备份数据库
mysql -uroot -pCREATE DATABASE bbs; CREATE DATABASE study; USE mysql; #MySQL更改用户密码 UPDATE mysql.user SET password=password('admin888') WHERE user='root'; FLUSH PRIVILEGES; exit;cd /wwwvim backup.sh编译shell脚本cd /backup btime = `date +%Y_%m_%d_%H` #注意不是引号 /usr/bin/mysqdump -uroot -padmin888 --database bbs study > /backup/database/bbs_study-$btime.sql #mysqldump的位置,登录,备份数据库bbs、study;备份到$btime这个变量,每天都会有不同的文件 !shwhereis mysqldumpexit./backup.sh执行shell脚本测试ls /backup/database/cat /backup/database/bbs_study_*****.sqlcrontab -e创建定时任务10 3 * * * /www/backup.sh #每天3点10分自动执行5、练习
通过crontab完成每天3点59分重启
答案:59 3 * * * shutdown -h now 'system will shutdown!'
通过crontab完成每天5点执行updatedb
答案:0 5 * * * updatedb
每天3点执行软件更新yum update
答案:4 0 3 * * * yum update
每天3点备份网站数据库
答案:练习十五:进程服务管理(视频27、28)
1、进程与服务
cd /testvim a:shps
ps aux | grep vim查看vim进程kill -9 xxx结束进程xxxps -local查看当前任务ps aux | more查看所有进程pstree -p显示进程pidpstree -u显示进程调用账号uptime
uptime查看系统运行时间与负载,要小于0.8top
top一般看cpu的负载,用户,总内存按大写P,按照CPU占用排序 按大写M,按照内存占用排序 按大写N,按照PID占用排序 按大写q,离开topcd /etc/init.d查看进程ls/etc/init.d/httpd stop终止Apacheservice httpd start开启服务,只有CentOS里面有2、级别
init 1切换到单用户模式,就不能远程连接了。init 3多人,带网络cd /etc/rc.dlsls rc1.d所有以K开始的表示init 1下服务不启动ls rc3.d所有以S开始的表示init 3下启动的服务3、服务状态
chkconfig查看所服务状态chkconfig --level 345 httpd on开机启动Apachechkconfig --list httpd查看Apache的服务状态chkconfig --level 345 mysqld on开机启动mysqlservice iptables stop练习十六:网络和vnc(视频29、30)
1、网络地址查看
yum install -y bind-utils nslookup www.baidu.com2、iftop查看网络
cd /usr/local/src wget http://www.ex-parrot.com/~pdw/iftop/download/iftop-0.17.tar.gz yum install -y gcc make flex byacc libpcap ncurses ncurses-devel libpcap-devel tar zxvf iftop-0.17.tar.gz cd iftop-0.17 ./configure make && make install iftop3、SSH
SSH服务启动
/etc/init.d/sshd restart #启动SSH服务 netstat –tlp | grep sshd #检查SSH服务监听状态通过SSH执行命令
ssh root@www.houdunwang.com ssh root@www.houdunwang.com ls / scp ./mobile root@192.168.10.114:/mnt/data1/www/ #复制一个文件 scp root@192.168.10.114:/mnt/data1/www/ . #复制到本地4、VNC
桌面版安装 配置网卡 yum –y install tigervnc-server.i686vi /etc/sysconfig/vncserversVNCSERVERS="1:zhaxiaoze"passwdsu zhaxiaozevncpasswd/etc/init.d/vncserver startservice iptables stopvi /etc/selinux/configSELINUX=disabled #是Linux里面安全的一个组件,WEB服务一般关闭setenforce 0临时关一次/etc/init.d/vncserver start5、Linux网络安全
密码:lisi922liming->liming(@@liming /etc 目录备份安全意识 目录权限750:find /www -type d -exec chmod 750 {} \; 文件权限640:find /www ! -type d -exec chmod 640 {} \;
相关文章推荐
- linux下常用网络操作汇总
- Linux下常用操作汇总
- linux常用网络操作命令汇总(2013版)
- linux常用操作汇总
- linux操作常用技巧汇总
- Linux常用压缩和解压操作汇总
- 【linux】常用操作汇总
- linux常用操作命令汇总
- Linux 常用易忘操作命令整理汇总(持续收集更新...)
- Linux 系统常用命令汇总(一) 文件和目录操作
- linux常用操作汇总
- Linux 系统常用命令汇总(一) 文件和目录操作
- Linux下MySQL常用操作网络汇总总结
- linux下mysql常用操作
- Linux下MySQL数据库操作的常用命令行
- linux常用基本操作命令
- 常用的 Javascript 操作汇总 (二)
- Linux下MySQL数据库常用基本操作 一
- Linux常用操作-1
- 【HDFS篇】HDFS的常用的命令操作汇总