mwwdfl 发布的文章

权限管理命令:

    1    权限位
        -  rw-  r--  r--   1   root  root     08-11  01:45  aa.txt

        权限位是十位
        第一位:    代表文件类型

            -    普通文件
            d    目录文件
            l    链接文件

权限 读 写 执行 读 写 执行 读 写 执行

    字符  r   w   x       r   w   x        r   w   x
              4   2   1       4   2   1        4   2   1 
    分配  文件所有者(u) 文件所属组(g)  其他用户(o)


            r    读        4
            w    写        2         
            x    执行        1

1) 命令名称:chmod

        
        功能描述:修改文件的权限
            例:

chmod u+x aa 给aa文件的所有者添加x权限

            chmod  g+w,o+w   aa    给aa文件的所属组和其他人添加w权限
            chmod  u=rwx          aa    给aa文件的所有者赋予rwx权限
            chmod  644  aa            修改aa文件的权限为755,对应为rw-r--r--

useradd 用户名 #添加用户
passwd 用户名 #为用户设置密码
rwx权限对于目录和文件,实际意义是不一样的。

文件:    
r    cat  more  head  tail               查看文件内容
w    echo  vi                            修改或删除文件内容
x    sh     脚本文件                        执行

目录:
r    ls  find  tree                        列出文件
w    touch  mkdir  rm    mv   cp        创建删除文件或目录
x    cd                                    进入目录

对文件有写权限,只代表可以修改这个文件;要想删除文件,需要对文件所在目录有写权限
只要对目录有写权限,目录中的文件,就算是root创建的,普通用户一样能删除

目录一般都同时有rx权限,如果一个目录只有r却没有x,你能用ls查看,却不能cd 进去!

2) 命令名称:chown

        命令所在路径:/bin/chown
        功能描述:修改文件或目录的所有者、所属组

        例:chown  user1  aa        将aa文件的所有者修改为user1用户

chown user1:user1 aa 将aa文件的所有者修改为user1用户
并且所属组修改为user1组

            chown  :user1  aa        将aa文件的所属组修改为user1组

3) 命令名称:chgrp
命令所在路径:/bin/chgrp
功能描述:改变文件或目录的所属组
语法:chgrp 用户组 文件或目录
例:chgrp adm file1

改变文件file1的所属组为adm      
    
    4)    命令名称:umask
        功能描述:显示和设置默认掩码值

             777
            -022
        --------------
              755    
        就是创建文件的默认权限

Linux的安全机制,不给新建文件x权限。

fedora、redhat、Centos、 suse、ubuntu都是常见的linux
/分区、swap分区、/boot分区都是linux的必须分区
Linux 命令格式
命令 -选项 参数(操作对象)
ls -la /etc
linux常见目录
/根目录
/bin 命令保存目录(普通用户就可以读取的命令)
/sbin 命令保存目录(超级用户才能使用的目录)
/boot 启动目录,启动相关文件

            /dev            设备文件保存目录
            /etc                配置文件保存目录
            /root            超级用户的家目录
            /home            普通用户的家目录
            /lib                系统库保存目录
            /mnt            挂载目录
            /media            挂载目录
            /tmp            临时目录
            /proc            直接写入内存的
            /usr                系统软件资源目录
            /var                系统相关文档内容
            /var/log/        系统日志位置

/var/spool/mail/ 系统默认邮箱位置

            /var/lib/mysql/        默认安装的mysql的库文件目录

1) 命令名称:ls
命令英文原意:list
命令所在路径:/bin/ls
功能描述:显示目录文件
语法:ls 选项 文件或目录
-a 显示所有文件,包括隐藏文件
-l 详细信息显示
-d 查看目录属性,不显示目录下内容 -ld
-h 文件大小显示为常见大小单位 B KB MB -lh
ls -l
-rw------- 1 root root 1190 08-10 23:37 aa.txt

            第一项:            权限位    
            第二项:          引用计数(文件:硬链接数;目录:目录下的目录个数)
            第三项:         所有者
            第四项:          所属组
            第五项:          文件大小    (默认字节)
            第六项            最后一次修改时间

第七项 文件名

        2) 命令名称:cd
            命令英文原意:change directory
            命令所在路径:shell内置命令

功能描述:切换目录
语法:cd 目录
cd ~ 进入当前用户的家目录 /root /home/aa/

            cd  -    进入上次目录
            cd  ..    进入上一级目录
            cd  .    进入当前目录

        3)    命令名称:pwd

功能描述:显示当前目录

        4)    命令名称:mkdir

功能描述:创建新目录
语法:mkdir -p 目录名
-v 显示创建过程
-p 递归创建

5) 命令名称:tree
命令所在路径:/usr/bin/tree
功能描述:显示目录树
语法:tree 目录

6) 命令名称:touch
命令所在路径:/bin/touch
功能描述:创建空文件
语法:touch 文件名
拓展:echo “hello” >> 文件名
用echo 创建有内容的新文件

会覆盖源文件的内容

追加内容到源文件中
                   Vim  3.txt      #不保存,文件不生成

#保存,文件生成
touch {5..10}.txt

        7)    命令名称:cp

命令所在路径:/bin/cp
功能描述:复制文件或目录

语法:cp -rp 源文件或目录 目标目录

              -r  复制目录
                -p  保留文件属性

        8)    命令名称:mv

命令所在路径:/bin/mv
功能描述:剪切文件、改名
语法:mv 源文件或目录 目标目录

        9)    命令名称:rm

命令所在路径:/bin/rm
功能描述:删除文件
语法:rm -rf 文件或目录

       -r   删除目录
       -f   强制执行

        10)命令名称:cat

命令所在路径:/bin/cat
功能描述:显示文件内容
语法:cat 文件名

            注:文件超过一页内容后只能显示最后一页的内容

11)命令名称:more
命令所在路径:/bin/more
功能描述:分页显示文件内容
语法:more 文件名
(空格)或 f 翻页
(Enter) 换行
q或Q 退出

拓展:
head –n 显示文件前n行
tail -n 显示文件最后n行
tail -f 实时监控文件尾部变化

12)命令名称:ln
命令所在路径:/bin/ln
功能描述:生成链接文件
语法:ln -s 源文件 目标文件

      -s  创建软链接
  ln         源文件     目标文件

mac下是自带有Apache和php的服务器的,不需要另外安装,配置即可。
第一:Apache

在终端中输入下面指令即可启动Apache服务器:

//启动
sudo apachectl-k start
//重新启动
sudo apachectl -k restart

验证:

在浏览器中输入:http://127.0.0.1,显示为It Works!,既证明服务器已经启动。

但是由于默认站点位于系统路径下,所以我们修改到自定义的路径。所以还需要进行相关配置

修改站点位置:

终端中输入

cd /etc/apache2/
sudo vim httpd.conf // 会提示输入密码,输入后回车即可
英文下输入: /DocumentRoot,查找,
注:1:注意区分大小写;2:要修改两个地方,故要进行两次查找。

第一次查找后,修改:

第二次查找后,修改

都改为你要自定义的路径

修改好后:wq保存退出,重启服务器,并在自定义的路径下放置html文件,即可访问。

第二:配置PHP服务器:

1:终端中输入指令:

cd /etc/apache2
sudo vim httpd.conf
按 /php,进行搜索,把带有LoadModule php5…..这一行的#(注释符号)去掉即可。

2:终端中输入:

cd /etc/
sudo cp php.ini.default php.ini

重启服务器,在自定义的站点路径下放置php文件,即可访问php内容。

第三:MySQ安装:

MySql下载:http://dev.mysql.com/downloads/mysql/ MySqlWorkbench下载:http://dev.mysql.com/downloads/workbench/

下载后直接安装即可,一路默认就好

MySql配置:

打开终端,输入:

vim ~/.bash_profile

输入 i进行编辑 ,然后粘贴以下内容

mysql

alias mysql='/usr/local/mysql/bin/mysql'
alias mysqladmin='/usr/local/mysql/bin/mysqladmin'

ls

alias ls='ls -G'

按ESC键 ,输入 :wq
这样在终端中 直接输入 mysql 就可以进入mysql 。输入 exit 为退出

修改MySql的管理员密码,在终端中输入:

mysqladmin -u root password "root"

启动Mysql服务

 sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

停止Mysql服务

 sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

重启Mysql服务

 sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

至此,Apache+MySQL+PHP安装配置完毕。

附:对vim编辑器进行介绍
vim有两种模式:
1:命令模式

shift+v -> 选中一行
y -> 复制一行
yy -> 复制当前行 (yank current line)
p -> 在当前行的下一行复制粘贴的内容
x -> 删除一个字符
:wq -> 保存退出
:q! -> 不保存退出
i -> 进入编辑
/ -> 按/再输入字符可进行查找

PHP IDE

PhpStorm 
NetBeans
ZendStudio

文本编辑器

IDE还是比较庞大占内存的,有时候改一些小文件还是需要点灵活小巧的工具,Sublime Text,同样跨平台,功能强大,界面够酷,各种好用的插件,谁用谁知道,当然还有VIM,这个,你懂的。
SSH

Xshell

FTP

FileZilla

数据库管理

Mysql的管理工具很多,最常用的是Navicat,里面的定时备份功能还是挺好用的,

Navicat
Workbench

缓存管理

常用的是Redis和Memcached

Redis GUI工具

Redis Desktop Manager
RedisClient

文本比较工具

Beyond Compare

PHP设置脚本最大执行时间的三种方法
php文件输出PHPinfo();找到php.ini配置文件

  1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完.
    但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.
    这就导致出现 无法打开网页的情况.这时我们可以修改 max_execution_time
    在php.ini里查找
    max_execution_time
    默认是30秒.改为
    max_execution_time = 0
    0表示没有限制
  2. 修改 post_max_size 设定 POST 数据所允许的最大大小。此设定也影响到文件上传。
    php默认的post_max_size 为2M.如果 POST 数据尺寸大于 post_max_size $_POST 和 $_FILES superglobals 便会为空.
    查找 post_max_size .改为
    post_max_size = 150M
  3. 很多人都会改了第二步.但上传文件时最大仍然为 8M.
    为什么呢.我们还要改一个参数upload_max_filesize 表示所上传的文件的最大大小。
    查找upload_max_filesize,默认为8M改为
    upload_max_filesize = 100M

另外要说明的是,post_max_size 大于 upload_max_filesize 为佳.

php代码中:

ini_set("max_execution_time", "200");

或者

set_time_limit(200);

以上几个数字设置为0则无限制,脚本会一直执行下去,直到执行结束。