前言: 最近刚安装了Linux系统, 所以学了一些最基本的操作, 在这里把自己总结的笔记记录在这里.
1,V8:192.168.40.10 V1:192.168.40.11 Linux ip:192.168.40.128
2,Linux是一个操作系统, 与windows的区别: Linux:图形化界面简单,性能很快,在企业中当做服务器来使用. Windows:图形化界面很炫,性能相对差,大众用户. windows的服务器: windows2003,windows2008,windows2012
3,Linux的作用: 当做服务器来使用
4,Linux中目录结构: bin:存放二进制可执行文件 sbin: 存放二进制可执行文件,只有root才能访问 etc:存放系统配置文件 usr:用于存放共享的系统资源 home:存放用户文件的根目录 root:超级的用户目录 dev:用于存放设备文件 lib:存放跟文件系统中的程序运行所需要的共享库及内核模块 mnt:mount系统管理员安装临时文件的安装点 boot:存放用于系统引导时使用的各种文件 tmp:用于存放各种临时文件 var:用于存放运行时需要改变数据的文件(log日志)
5,NetWork connection: Host-only:本地跟远方的Linux通信需要用这个 NAT:多个Linux系统之间相互通信
6,使用SecureCRT
Linux命令: ifconfig: 查看ip service network restart:重启 命令分类: 内部命令:执行shell解析器的一部分,存放在bash目录,执行速度快,不需要创建子进程 cd:切换目录change directory pwd:显示当前工作目录 print working directory help:帮助 外部命令:独立于Shell解析器之外的文件程序,执行速度慢,一般存放在bin/sbin/usr/sbin/此类目录,执行时创建子线程. ls:显示文件和目录列表 mkdir:创建目录 cp:复制文件或目录 操作文件或目录的命令: pwd touch:创建空文件 echo:写文件内容: echo "aaa">a.txt mkdir:创建目录 -p父目录不存在的情况下先生成父目录 cp:复制文件或目录 -r:递归处理,将指定目录下的文件与子目录一并拷贝 mv:移动文件或目录,文件或目录改名 rm:删除文件 -r同时删除该目录下的所有文件 -f强制删除文件或目录 rmdir:删除空目录 cat:显示文本文件内容 more,less:分页显示文本文件内容 head,tail:查看文本中开头或结尾部分的内容.
查看帮助文档: 内部命令 :help+命令(help cd) 外部命令: man+命令(man ls) 7,常见命令 ===========常用命令============= 一,目录与文件命令 1,目录处理命令:mkdir,rm,ls,find,cd,mv,cp,pwd,chmod 2,操作文件命令:touch,rm,find,cat,more,less 3,压缩/解压命令:gzip,bzip2,tar 4,其他常用命令:head,tail,wc,in,mount 二,用户操作命令 useradd,userdel,usermod
三,用户组操作命令 groupadd,groupdel,groupmod
四,安装软件命令 yum,rpm
五,网络命令 ping,ifconfig,netstat
=========================== echo "welcome to linux" > a.txt: 往a.txt中写入字符 cat a.txt: 查看a.txt中的内容 ctrl+L: 清屏 ctrl + z: 退出(cat > file 写入文件时使用这个键退出写入) vi模式下: 编辑完成后点esc ,然后 如果要保存退出输入:wq,不保存退出输入:q! 点击esc, shift + z + z 退出并保存 ============详解============ mkdir:创建目录 (touch a.txt :创建文件) mkdir dir : 创建名称叫做dir目录, 创建单个目录 mkdir dir1 dir2 : 创建多个目录,dir1, dir2 mkdir dir{3..10}: 创建dir3 dir4...dir10
cp:copy复制 复制文件: cp a.txt b.txt: 复制a.txt 且复制后的文件名为b.txt cp a.txt dir: 将a.txt拷贝到dir文件夹下 cp *.txt dir cp ../*.txt ../dir2:将上一级目录下的所有txt文件拷贝到上一级目录的dir2文件夹下 cp ../file* . //拷贝到上一级目录下的所有file文件到当前目录 复制目录: cp -r dir1 dir2: 将dir1 目录复制到dir2目录中 cp -r dir/* dir1/ : 将dir中的所有文件和目录复制到dir1目录中
mv:目录移动(剪切) 移动文件: mv file1 file2 //如果file2不存在,将file1重命名为file2 mv file2 file1//将file2命名为file1, 如果file1中有内容, 则覆盖 mv dir/* dir1//将dir 中所有目录及文件移动到dir1目录中 移动目录: mv dir dir1//将dir目录移动到dir1目录中 mv dir2 dir3 dir1//将dir2和dir3移动到dir1中
rm:remove 删除 删除文件: rm a.txt //删除a.txt rm a.txt b.txt //同时删除a.txt b.txt rm *txt//删除所有扩展名为txt的文件 rm -rf dir1/* //强制删除dir1下所有文件和目录 删除目录: rm -rf dir1// 删除dir1 下的所有文件和目录, f是强制删除, 不需要提示
cd:切换目录 cd .. //跳转到上一级目录 cd ~ //跳转到根目录 cd /usr/local //跳转到usr下的local目录
pwd:显示当前的目录
touch:创建文件 语法:touch filename touch myfile1//创建单个文件,文件名为myfile1 touch myfile2 myfile3//同时创建两个文件 touch myfile{1..10}//创建多个文件 cat 功能1: 查询文件内容,查询全部文件内容(如果文件过大, 会卡死) cat filename// 查看文件名filename的文件内容 功能2: 可以创建文件, 并且写入内容 cat > myfile10 功能3:合并文件,合并内容 cat myfile1 myfile2 > myfile10//将myfile1 和 myfile2 中的内容合并到myfile10中, myfile10中内容被覆盖
more: 查看文件, 可以分页查看 +n 从第几行开始 -n 定义屏幕显示多少行 more myfile//分页查看myfile文件 more +3 myfile//从第三行开始查看myfile文件 more -2 myfile//每页显示两行 more +/pattern myfile//从myfile中搜索pattern, 结果显示在第三行 less: 查看文件, 分页上下翻滚页
head: 查看文件, 分页显示, 每页只显示10条 head myfile// 默认每页只显示10条 head -n 5 myfile//查看myfile1,每页显示5条记录 head -c 12 myfile//查看myfile,只显示前面12字节符 tail:查看文件, 实时监控文件 tail -f myfile// 实时监控myfile文件的变化
which:查找命令 which 命令 which mv//将mv命令的别名和mv所在的位置都给查询出来 whereis: 查找命令 whereis mv: 查找命令的所在位置, 帮助文档,命令源码 locate: 查找文件 locate myfile//搜索出来myfile所在目录, 需要先刷新db, 使用命令: updatedb 新创建的文件搜索不到,新创建的文件被放在Linux的文件数据库, 需要属性文件数据库才能够找到 find: 查找文件 find -name myfile//根据文件名, 在当前的目录进行查询 find -name "myfile"//和上面一个没有区别 find /etc/ /root/ -name "*[A-Z]*" //查询目录etc和root下以A-Z开头的所有文件 find /etc/ /root/ -name "*[A-Z]*" -exec ls -l {} \;// 把查询结果交给ls命令继续执行, 显示前面查询结果详细信息. -exec:执行,执行后面的命令,执行ls -l命令 {}: 标识查询结果在一行显示 \; :命令要使用很好结束,斜杠是用来转义的. | (管道命令) 把前面的查询结果交给后面的命令进行执行 ls -al | more -5 //查询所有,把查询的结果交给more命令去执行 grep (过滤命令) 经常和管道命令一起使用 ps -ef | grep svn//查询所有进程, 过滤查询svn ln: 连接命令,创建快捷方式 ln -s myfile link//给myfile创建一个快捷方式link
top:显示当前系统中消耗资源的进程情况 top //每隔5秒显示徐偶有进程的资源占用情况 top -d 2//每隔2秒刷新 ps: 查看进程(常用) ps -ef//查看所有进程 ps -ef | grep redis //查看redis进程是否存在 kill: 杀死进程(常用) kill -9 PID
df: 显示磁盘使用情况 df -h//查看当前磁盘使用情况, 包括占用量单位 shutdown: 关机 shutdown 系统关机 shutdown -r 关机后立即重启 shutdown -h 关机后不重新启动 halt: 关机后关闭电源
reboot: 重新启动
=============================解压缩命令 gzip zip bzip2 压缩命令
gzip: 压缩文件, 不能够压缩目录 gzip file3// 把file3压缩, 压缩后文件名变为: file3.gz
gunzip: 解压 gunzip file3.gz//解压单个文件 gunzip file1.gz file2.gz //解压多个文件 通常使用 gzip -d 来解压 gzip -dv file1.gz// 解压file1, v 是视图可以看到解压过程 bzip2和gzip压缩方式一样
zip: zip myzip.zip file1 //将file1 压缩成myzip.zip unzip myzip.zip// 解压 tar: 打包命令, 将多个文件压缩成一个文件 tar -cvf dir.tar dir//将dir目录下所有文件打包成dir.tar tar -xvf dir1.tar//解包 gzip dir.tar //压缩tar文件变成dir.tar.gz tar -zxvf dir.tar.gz//解压dir.tar.gz到dir -z:解压gz扩展名的文件 -x:解压tar包 -v:显示执行过程 -f:指定解压文件 bzip2 dir.tar//使用bzip2压缩tar包: dir.tar.bz2 tar -jxvf dir.tar.bz2//解压bzip2格式包 ==============vim文本编辑器 vim进入编辑器 vi有3总模式: 插入模式,命令模式,低行模式 1,插入模式 i 进入插入模式
2,命令模式 esc 进入命令模式
3,底行模式 :或者/ 进入底行模式
在命令模式下: 基本: a:在当前光标位置的右边添加文本 i:在当前光标的位置的左边添加文本 A:在当前行的末尾位置添加文本 I:在当前行的开始处添加文本 O: 在当前行上面创建一行 0: 在当前行下面创建一行 R:替换(覆盖)当前光标位置及后面的若干文本 J:合并光标所在行及下一行为一行 删除,撤销: x:删除当前字符 nx: 删除从光标开始的n个字符 dd:删除当前行 ndd:删除n行 u:撤销上一步操作 U:撤销当前行的操作 搜索: /vpser: 向光标下搜索vpser字符串 ?vpser: 向光标闪搜索vpser字符串 n: 先下搜索前一个搜索动作 N: 向上搜索前一个搜索动作 跳转指定行: n+: 向下跳转n行 n-: 向下跳转n行 nG: 调到行号为n的行 G: 跳至文件的底部 设置行号: :set nu //显示行号 :set noun//取消显示行号 复制粘贴: yy: 将当前行复制到缓存区 nyy:将当前行向下n行复制到缓存区 p: 当前行的下面进行粘贴 P: 当前光标所在行的上面进行粘贴 yw:复制光标到单词词尾 nyw:复制从光标开始的n个单词 y^: 复制从光标到行首的内容 y$: 复制从光标到行尾的内容 替换: :s/old/new //用new替换行中首次出现的old 这个单词为new :s/old/new/g //用new替换当前行中所有的old单词 :n,m s/old/new/g //用new替换从n到m行在哪个所有的old单词 :%s/old/new/g //用new替换当前文件中的所有old 8,权限管理 ==================权限管理 -rwxrw-r-- - :类型 rwx:所属用户权限 rw-:所属组权限 r--:其他用户权限 最高位:文件类型 -: 普通文件 d: 目录 l: 快捷方式文件
高三位:u 所属用户权限(rwx) 中间三位:g 用户所属组权限(rw-) 第三位:o 其他用户权限(r--) 设置权限第一种方式举例: ---------- file1: file1 无权限 (使用chmod 0 file1 就取消所有权限) 设置权限: (x:执行权限 r:读权限 w:写权限) chmod u+x file1----> ---x------ file1 chmod u+r file1----> -r-x------ file1 chmod g+w file1----> -r-x-w---- file1 chmod g+rx file1---> -r-xrwx--- file1 chmod o+rwx file1--> -r-xrwxrwx file1 chomod o=x file1---> -r-xrwx--x file1 设置权限第二种方式举例: 用421来代表rwx, 对应关系如下: 421 421 421 rwx rwx rwx
chmod后面每一位数字匹配三位: 3=2(w)+1(x) 5=4(r)+1(x)
chmod 421 file1-----> -r---w---x file1 (4代表用户的读权限,2代表组的写权限,1代表其他用户的执行权限) chmod 354 file1-----> -rwxrwxw-x file1
9,安装软件 =======================安装软件 rpm: 安装麻烦 不建议使用 yum: 支持在线升级
1,关联dvd磁盘到本地: 右键CentOS 选择Settings, 然后找到CD/DVD 选择connected即可.
2,Yum命令支持在线升级,执行yum命令的时候,检测/etc/yum.repos.d/下面所有repo文件. repo文件里面存储的是网址,yum命令检测repo文件里面网址直接去网上下载. 可以把repo文件修改, 让repo文件指向本地的dvd盘. 3,挂载dvd盘到mnt目录 挂载命令:mount /dev/cdrom/ mnt/ 挂载成功截图:
4,修改repo文件 先备份repo文件: rename .repo .bak * //将所有repo扩展名的文件修改为后缀为.bak 创建自己的repo文件,指向本地文件:touch mine.repo 进入vim编辑repo文件: vim mine.repo [centos6.6] name=centos-dvd baseurl=file:///mnt gpgcheck=0 enabled=1 清空yum源:yum clean all 加载yum源:yum repolist all
安装mysql: yum install mysql-server
启动mysql:service mysqld start
登录数据库:mysql -uroot p
查询数据库:show databases;
======================安装jdk和tomcat 1, 先将jdk和tomcat传输到Linux root目录下
2, 在usr/local 下建立文件夹存放jdk和tomcat安装包: mkdir hadoop
3, 移动root目录下安装包 到 usr/local目录下: mv jdk-7u55-linux-i586.tar.gz apache-tomcat-7.0.47.tar.gz /usr/local/hadoop/
4, 解压安装包: tar -zxvf jdk-7u55-linux-i586.tar.gz tar -zxvf apache-tomcat-7.0.47.tar.gz 5,配置环境变量: vim profile 在最后一行添加: export JAVA_HOME=/usr/local/hadoop/jdk1.7.0_55 export PATH=$JAVA_HOME/bin:$PATH
6,刷新设置: source /etc/profile 7,查看是否安装成功:java -version
常见问题: 1,修复/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory问题 解决方案:在64系统里执行32位程序如果出现/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory, 安装下glic即可:sudo yum install glibc.i686 2,error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory 使用:sudo yum install zlib.i686
====================安装lrzsz(可以上传文件到指定目录) 1,安装:yum install lrzsz 2,安装后使用命令: cd /usr/local/hadoop/ rz: 直接弹出传输对话框 3,将tomcat传递到hadoop目录下 4,启动tomcat cd /usr/local/hadoop/apache-tomcat-7.0.47/bin/ ./startup.sh