linux基础1-3

来源:互联网 发布:流畅的python 英文版 编辑:程序博客网 时间:2024/06/06 00:58
linux--nu01
    常见的linux系统
        Redhat ,ubuntu ,centOs
    linux特点 :稳定性 ,安全性 ,开源
    linux目录功能
        bin目录:bin里面存放可以执行程序,其中的程序任何用户都可以执行;
        etc目录:系统的配置文件目录
        home目录:所有用户的家目录;
        root目录:是root用户的家目录;
        sbin目录:里面存放了可以执行的程序,只有root才有权限去执行;
        tmp目录:临时目录,相当于windows下的tmp目录;
        usr目录:存放了系统或用户自己安装的软件;
        var目录:是系统的日志目录
    常见的远程登录工具 Putty ,xshell,secureCRT 
    常见功能命令
        ls [路径]:显示目录文件  ls -a,ls-l详细信息,显示隐藏,ls -d当前目录属性,ls -i节点,ls -ld当前目录权限
          详细信息dr-xr-xr-x.   2 root root  4096 Mar 17 20:28 bin
        clear:用于清除屏幕
        init:用于切换linux运行模式 init 3命令行,init 5桌面
        su:切换用户   su -c ls root当前用户切换到root执行完ls自动切换回来
        cd:用户切换目录,相对和绝对目录,/根目录cd /,Root用户的家目录在:/root;cd ~
        pwd:显示当前所在的工作目录
        shutdown -h now和halt和poweroff和init 0立刻关机,shutdown -h 10是10分钟后关机
    目录命令
        mkdir:创建新目录, -p 递归创建mkdir -p cd ./aa/ab/ac/a.txt,其中a.txt也是目录
            -m  创建的时候并分配权限 mkdir -m 777 test 创建目录test指定权限为 777
    文件命令
        touch :创建空文件或vim一个不存在文件
        cp:复制文件或者目录
 cp -R [源文件或目录][目的目录], cp -R dir1 dir2 将dir1下的所有文件及子目录复制到dir2
 -p 保留时间值 不改变时间值
        mv:移动文件,更名mv /test/test.php /test/testOne.php移动同时修改文件名
        rm:删除目录 或文件  rm -rf /*千万不要这样做,删库清空根目录
linux--nu02-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

编辑文件vim 文件名 //打开指定文件(有则打开无则新建),vim +n 文件名,vim +/string 文件名
退出:q退出编辑,:q!强制退出,:x或:wq保存退出,区别:x只在文件修改了才会改变文件最后编辑时间,但是注意不能写成X,会导致文件加密
Linux中vim3种模式
命令模式---英文【:】--》---《--esc两下或删除末行命令---- 末行模式--【i,a,o】---》---《---【esc】---编辑模式
保存:w/:w 文件名     //保存/另存
查找:【/string 】查找并高亮string内容【 n/N】 向前切换搜索结果/向后切换
替换
:s/需要替换的字符/替换成的字符---替换当前行首字
:s/需要替换的字符/替换成的字符/g---替换当前行全部
:%s/需要替换的字符/替换成的字符---替换当前行至文尾部首字
:%s/需要替换的字符/替换成的字符/g---替换当前行至文尾部全部
光标移动
【G】文档末行行头,【gg】首行首位,上下移n行【数字↑/↓】,指定行:【数字G】,【数字gg】,【:数字】
删除【dd】,【数字dd】,【dd】,【D数字】大D删除留空
复制【yy】,【数字yy】,【yG】复制当前行至文尾
粘贴【p】,进入编辑模式:按下键盘上的【i】insert)键或者【a】after insert)键。退出编辑模式:按下esc键。
重做(撤销输入【:数字u】数字表示撤销的步骤数,或者输入【:u】表示撤销前一步
显示行号 set nu,不显示set nonu
默认设置显示行号,Vim的配置文件位于每个用户的家目录中,文件名叫做.vimrc可能不存在,如果不存在则需要自己创建)。创建.vimrc然后编辑set nu保存退出
别名机制,需要设置别名文件.bashrc(位于用户的家目录中)。修改后重新登录
去掉异常关闭的提示,则需要删除交换文件,交换文件名一般都是【.原始文件名.swp】,只需要删除即可
rpm软件管理工具
        查找:rpm –qa | grep 关键词 
        卸载:rpm –e  软件名  [--nodeps 强制删除关联]
        安装:rpm –ivh 软件名 
①先将iso光盘文件插入到虚拟机的光驱中
②打开光盘中的Packages目录,通过lsgrep的配合,过滤出火狐浏览器的名称:ls|grep firefox
③在Packages目录打开终端rpm命令进行安装,也可以:rpm -ivh `ls|grep firefox`
linux运行模式,文件的位置位于/etc/inittab
        0:停机
        1:单用户模式
        2:多用户模式,没有 NFS 支持。
        3:完整的多用户模式
        4:未定义模式,一般不用,在一些特殊情况下可以用它来做一些事情。
        5:X11 控制台,登陆后进入图形 GUI 模式
         6:重启。 
用户管理vim /etc/passwd,参数-d指定用户主目录,-g指定组,-u指定用户ID号
        1添加用户:useradd
        2添加密码;passwd------passwd参数:-S大写查看密码状态,-d删,-u解锁用户,-l锁定用户
          Passwd–l user   锁定用户user1
        3编辑用户:usermod修改用户名:usermod-l新的用户名之前的用户名
         修改用户组id:usermod-g用户组id之前的用户名
        4删除用户:userdel,参数 -r删除用户的同时也删除它的主目录
用户组管理vim /etc/group 注意:普通用户是 没有用户和用户组的管理权限的。只有超级用户才有这个权限
        1添加用户组:groupadd,参数-g或-G指定组id, groupadd –g 600 test2 添加名为test2的组且gid为600
        2编辑用户组:groupmod,参数-g或-n修改用户组的名字,groupmod -n 新的组名旧的组名
        3删除用户组:groupdel,删除用户组前需移除组内用户
文件权限ls -l查看         -rwxrwxrwx
l 表示软连接文件link,-文件
          -          rwx          rwx          ---
档案类型,d为目录,档案拥有者,档案所属组拥有者,其他人对此档案权限
 修改权限:chmod语法:chmod权限信息[-R]文件或者文件夹名
权限含义:r--可读(4)  w--可写(2) x--可执行(1),-R递归赋予权限
①将权限设置成某个状态#chmod u=rwx,g=rwx,o=rwx文件
②给某个部分添加权限#chmod u+wx 文件名
③给某个部分删除权限#chmod g-wx   
     通过数字形式来设置权限:如chmod 777 文件名4:表示读权限,2:表示写权限,1:表示执行权限
在设置权限的时候需要注意的是,读权限是最基本的权限,如果一个文件或者文件夹有写权限,则其必须要有读权限,
也就是说以后不要出现在设置权限的时候看到类似于“-wx”、“-w-”的奇葩权限。chmod -R 777 qrcode
 drwxr-xr-x    2          root     root          4096           12-01 20:52           bin
硬链接数或目录子目录数      所有者     所属组          文件大小      文件创建或最后修改的时间  文件
文件目录权限总结:
代表字符     权限     对文件的含义               相关命令                   对目录的含义                    相关命令
r    读权限     可以查看文件的内容     cat,more,hrad,tail     可以列出目录中的内容          ls
w   写权限     可以修改文件的内容    echo,vi ,vim             可以在目录中创建,删除文件  rm mkdir touch
x    执行权限     可以执行文件            脚本命令                可以进入目录                      cd     
chown nobody file改变文件file 的所有者为nobady
chgrp[用户组][文件或目录] 功能描述:改变文件或目录的所属组
补充命令:
ps -ef | grep 服务 查看服务进程
cat  查看文件内容
find:find 路径 查找类型 目标文件 -print     例find /  -name  test -print
shutdowm:-h关机     -r重启     -c取消     -k提示,now或后跟单个数字如10,则10分钟后关机,完整时间则到时关机
tail -f 目标文件 -----动态打印,例tail -f  /var/log/cron或在日历里输出
>>重定向,追加写
>重定向,覆盖写
Linux Crontab定时任务
linux内置的cron进程能帮我们实现这些需求,cron搭配shell脚本,非常复杂的指令也没有问题。
例:crontab -e;
* * * * *  echo  "1234567890" >> /home/good/abcd.txt
tail -f /home/good/abcd.txt能动态显示输出
tail -f  /var/log/cron或在日历里输出
cron介绍,配置命令在/var/spool/cronroot(或其他用户)文件里
  • /var/spool/cron/目录下存放的是每个用户包括rootcrontab任务,每个任务以创建者的名字命名
  • /etc/crontab这个文件负责调度各种管理和维护任务。
  • /etc/cron.d/这个目录用来存放任何要执行的crontab文件或脚本。
  • 我们还可以把脚本放在/etc/cron.hourly/etc/cron.daily/etc/cron.weekly/etc/cron.monthly目录中,让它每小时//星期、月执行一次。
crontab的使用,我们常用的命令如下:
查看所有用户的定时任务  /var/spool/cron需要在此目录下
crontab[-u username]    //省略用户表表示操作当前用户的crontab
-e      (编辑工作表)
-l      (列出工作表里的命令)
-r      (删除工作作)
crontab -e进入当前用户的工作表编辑,是常见的vim界面。每行是一条命令。
crontab的命令构成为时间+动作,其时间有分、时、日、月、周五种,操作符有*,/每过多少数字,-从x-z,散列数字
注意时间与星期不能同时设置,例如下面就是一个错误的写法:30 12 11 9 5 command,因为9月11日不一定是周五
实例1:* * * * * myCommand  每1分钟执行一次myCommand
实例2:3,15 * * * * myCommand  每小时的第3分钟和第15分钟执行
实例3:3,15 8-11 * * * myCommand  在每天上午8点到11点的第3分钟和第15分钟执行
实例4:3,15 8-11 */2  *  * myCommand  每两天的上午8点到11点的第3分钟和第15分钟执行
实例5:3,15 8-11 * * 1 myCommand    每周一上午8点到11点的第3分钟和第15分钟执行
实例6:30 21 * * * /etc/init.d/ Apache restart    每晚的21:30重启Apache
实例7:45 4 1,10,22 * * /etc/init.d/Apache restart  每月1、10、22日的4 : 45重启Apache
实例8:10 1 * * 6,0 /etc/init.d/Apache restart   每周六、周日的1 : 10重启Apache
实例9:0,30 18-23 * * * /etc/init.d/Apache restart     每天18 : 00至23 : 00之间每隔30分钟重启Apache
实例10:0 23 * * 6 /etc/init.d/Apache restart     每星期六的晚上11 : 00 pm重启Apache
实例11:* */1 * * * /etc/init.d/Apache restart         每一小时重启Apache
实例12:* 23-7/1 * * * /etc/init.d/Apache restart       晚上11点到早上7点之间,每隔一小时重启Apache
linux3-nu3--------------------------------------------------------------------------------------------------------------------------------------------------------------------
linux之 LAMP编程
一、ssh协议22端口号就是ssh协议使用的端口号
二、光盘挂载
挂载:就是指系统给外接设备(包括但不限于U盘,光盘)分配盘符的这么一个过程。
lsblk(list block devices)
1查看【lsblk】找到iso-dvd1光驱设备(或其他),     2然后创建一个dvd目录mkdir /mnt/dvd
3挂载【mount  块状设备的位置  挂载的位置】---例mount  /dev/sr0   /mnt/dvd,
4再lsblk检查挂载情况,MOUNTPOINT下有目录则成功
三、LAMP安装
1、准备工作---修改文件前先备份
1.1、关闭防火墙,必须,这样才能使用ssh,apache,mysql服务,远程
方法1#service 服务名 start/stop/restart 关闭防火墙服务
方法2rpm -e iptables-1.4.7-14.e16.i868 --nodeps 删除防火墙
方法3vim /etc/sysconfig/iptables,打开修改保存,复制并粘贴2句,将允许的端口设置为22,80,3306
例:-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT设置22端口允许
1.2linux中的解压命令
命令1gz格式文件                 #tar -zxvf 压缩包路径
命令2bz2格式文件              #tar -jxvf 压缩包路径
2开始编译模式安装LAMP
2.1安装zlib压缩库
shell>#cd /root/data
shell>#tar -zxvf zlib-1.2.5.tar.gz
shell>#cd zlib-1.2.5
shell>#./configure          //对当前的程序安装进行配置,指定安装路径
shell>#make && make install     //编译&&安装
2.2安装apache,先卸载系统中默认安装的Apache,防止80端口被占用
2.2.1rpm -e `rpm -qa|grep httpd`
2.2.2开始安装配置过程,注意配置#./configure--prefix=/usr/local/http2 --enable-modules=all --enable-mods-shared=all --sysconfdir=/etc/httpd --enable-so
2.2.3修改Apache配置文件(148行左右),去掉ServerName前的#注释
shell>#vim +148 /etc/httpd/httpd.conf
2.2.4Apache启动/停止/重启命令:
shell>#/usr/local/http2/bin/apachectl start/stop/restart
2.2.5测试访问,可以在windows主机的浏览器中输入linux服务器的ip地址来访问
2.3安装libxml2,2.4安装jpeg8,2.5安装libpng,2.6安装freetype(字体库软件),2.7安装GD库(处理图片的扩展),2.8安装php,2.9安装cmake,2.10安装ncurses-devel,2.11安装mysql
详见Linux-安装LAMP详解


apache安装路径/usr/local/http2,配置文件 /etc/httpd/httpd.conf
/usr/local/http2/bin/apachectl start/stop/restart
Apache的站点目录位于:/usr/local/http2/htdocs
php安装路径--prefix=/usr/local/php
#cd /root/data,#cp php.ini-development  /usr/local/php/lib/php.ini配置文件
#vim +355 /etc/httpd/httpd.conf
重启apache:#/usr/local/http2/bin/apachectl restart
mysql安装路径:/usr/local/mysql
mysql默认数据存储位置/usr/local/mysql/data
mysql配置文件路径/etc/my.cnf
后台开启运行mysql服务/usr/local/mysql/bin/mysqld_safe --user=mysql &
root用户登录数据库/usr/local/mysql/bin/mysql -u root
设置数据库密码:
mysql>use mysql;
mysql>UPDATE user SET Password=password('123456') WHERE user='root';
mysql>flush privileges;         //刷新权限信息
开启允许远程连接:
更新下user表中的host字段,更新成%(表示允许在任何地方连接):
update user set host= '%' where user ='root' limit 1;
注意:在开启允许远程连接修改host字段为%前,需新建一xxx@hostlocal字段
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
use mysql;
insert into user(host, user, password) values("%", "root", password("zhumysql"));#创建一个远程连接账号
grant all privileges on *.* to 'root'@'%' with grant option; #赋予任何主机访问数据库权限
flush privileges;
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
相关函数:
查找软件rpm -qa | grep iptables
rpm -ql XXXX查看软件安装路径
ps -ef | grep xxx;查看软件服务和ID
启动/关闭/重启服务:service 服务名 start/stop/restart/status
查看系统外接设备lsblk(list block devices)
linux中的解压命令
命令1:gz格式文件        #tar -zxvf 压缩包路径
命令2:bz2格式文件        #tar -jxvf 压缩包路径
./configure          //对当前的程序安装进行配置
make && make install     //编译&&安装
Apache启动/停止/重启命令:
shell>#/usr/local/http2/bin/apachectl start/stop/restart

原创粉丝点击