分类目录归档:mac

mac下VirtualBox共享centos7文件解决方式

远程虚拟机以前请确认你是否?
1.设置共享目录
2.已下载扩展包
3.设置扩展包到对象虚拟机

#挂载需要的服务
yum -y install gcc++ gcc make kernel kernel-devel kernel-headers bzip2

#设置内核
ln -s /usr/src/kernels/3.10.0-327.28.2.el7.x86_64 /usr/src/linux

#挂载光驱

#创建光驱目录
mkdir /mnt/cdrom
#挂在光驱
mount /dev/cdrom /mnt/cdrom
#卸载光驱
umount /dev/cdrom /mnt/cdrom

#进入目录
cd /mnt/cdrom

#执行安装
./VBoxLinuxAdditions.run

#重起
shutdown -r now

#查看是否有vbox
ps -ef | grep -i vbox

#创建目录
mkdir /mnt/code

#挂载共享
mount -t vboxsf code /mnt/code

#重起
shutdown -r now

注意重起后会失效,需要在ssh脚本中进行设置

Mac 下 php多版本切换

php-version是一个帮助管理从brew安装的php版本切换的工具。

 

安装

brew install php-version

执行全局命令

source $(brew --prefix php-version)/php-version.sh && php-version 5

执行

php-version

可以看见安装的PHP

5.6.4

*5.5.30

 

然后使用以下命令切换即可

php-version 5.6.4

 

手动安装Homebrew

到Github官网上搜索Homebrew,找到对应的Homebrew后,查看它的安装文档,链接如下:

https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Installation.md

安装要求OS X 10.6以上系统,并且安装有XCode命令行工具。

安装路径不能有空格。官方建议安装在/usr/local路径下。

打开Mac的终端。进入该路径,然后执行安装文档中的命令即可。

cd /usr/local
mkdir homebrew
curl -L https://github.com/Homebrew/homebrew/tarball/master | tar xz --strip 1 -C homebrew

上面的安装只是将Homebrew解压到本地,还需要配置环境变量才能使用brew命令,否则终端会提示Command Not Found。

第一次配置Mac的环境变量,到网上转了一圈才找到正确方法。

打开终端,新建.bash_profile文件在~/目录下(如果电脑里已经有了这个文件,跳过这一步)

touch ~/.bash_profile

打开.bash_profile

open ~/.bash_profile

在弹出的编辑窗口中配置PATH

export PATH=/usr/local/homebrew/bin:$PATH

然后再回到终端输入,使文件生效。

source ~/.bash_profile

至此,环境变量配置完成。

 

终端

brew -v

 

Mac下通过 brew 安装不同版本的php和扩展

第一步,先安装 brew    Brew 是 Mac 下面的包管理工具,通过 Github 托管适合 Mac 的编译配置以及 Patch,可以方便的安装开发工具。 Mac 自带ruby 所以安装起来很方便,同时它也会自动把git也给你装上。官方网站: http://brew.sh    在mac下终端里直接输入命令行:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装完成之后,建议执行一下自检:brew doctor 如果看到Your system is ready to brew. 那么你的brew已经可以开始使用了。    常用命令: (所有软件以PHP5.5为例子)

brew update                        #更新brew可安装包,建议每次执行一下
brew search php55                  #搜索php5.5
brew tap josegonzalez/php          #安装扩展<gihhub_user/repo>
brew tap                           #查看安装的扩展列表
brew install php55                 #安装php5.5
brew remove  php55                 #卸载php5.5
brew upgrade php55                 #升级php5.5
brew options php55                 #查看php5.5安装选项
brew info    php55                 #查看php5.5相关信息
brew home    php55                 #访问php5.5官方网站
brew services list                 #查看系统通过 brew 安装的服务
brew services cleanup              #清除已卸载无用的启动配置文件
brew services restart php55        #重启php-fpm

第二步,安装PHP

先添加brew的PHP扩展库:

brew update
brew tap homebrew/dupes
brew tap homebrew/php
brew tap josegonzalez/homebrew-php

可以使用 brew options php53 命令来查看安装php5.3的选项,这里我用下面的选项安装:

brew install php53 --with-apache --with-gmp --with-imap --with-tidy --with-debug

请注意:如果你希望以mac下的apache作为web server,编译时要加 --with-apache;如果你的web server 是 nginx这类,就需要加上 --with-fpm。

Options
--disable-opcache
Build without Opcache extension
--disable-zend-multibyte
Disable auto-detection of Unicode encoded scripts
--homebrew-apxs
Build against apxs in Homebrew prefix
--with-apache
Enable building of shared Apache 2.0 Handler module, overriding any options which disable apache
--with-cgi
Enable building of the CGI executable (implies --without-apache)
--with-debug
Compile with debugging symbols
--with-fpm
Enable building of the fpm SAPI executable (implies --without-apache)
--with-gmp
Build with gmp support
--with-homebrew-curl
Include Curl support via Homebrew
--with-homebrew-libxslt
Include LibXSLT support via Homebrew
--with-homebrew-openssl
Include OpenSSL support via Homebrew
--with-imap
Include IMAP extension
--with-libmysql
Include (old-style) libmysql support instead of mysqlnd
--with-mssql
Include MSSQL-DB support
--with-pdo-oci
Include Oracle databases (requries ORACLE_HOME be set)
--with-phpdbg
Enable building of the phpdbg SAPI executable (PHP 5.4 and above)
--with-postgresql
Build with postgresql support
--with-thread-safety
Build with thread safety
--with-tidy
Include Tidy support
--without-bz2
Build without bz2 support
--without-mysql
Remove MySQL/MariaDB support
--without-pcntl
Build without Process Control support
--without-pear
Build without PEAR
--without-snmp
Build without SNmp support
--HEAD
Install HEAD version

PHP编译过程中如果遇到 configure: error: Cannot find OpenSSL's <evp.h> 错误,执行 xcode-select --install 重新安装一下 Xcode Command Line Tools 即可解决该错误(来源:https://github.com/Homebrew/homebrew-php/issues/1181)。     安装完php后,会有一段提示,请仔细阅读:

Caveats
To enable PHP in Apache add the following to httpd.conf and restart Apache:
LoadModule php5_module    /usr/local/opt/php53/libexec/apache2/libphp5.soThe php.ini file can be found in:
/usr/local/etc/php/5.3/php.ini✩✩✩✩ PEAR ✩✩✩✩If PEAR complains about permissions, 'fix' the default PEAR permissions and config:
chmod -R ug+w /usr/local/Cellar/php53/5.3.29/lib/php
pear config-set php_ini /usr/local/etc/php/5.3/php.ini✩✩✩✩ Extensions ✩✩✩✩If you are having issues with custom extension compiling, ensure that
you are using the brew version, by placing /usr/local/bin before /usr/sbin in your PATH:      PATH="/usr/local/bin:$PATH"PHP53 Extensions will always be compiled against this PHP. Please install them
using --without-homebrew-php to enable compiling against system PHP.✩✩✩✩ PHP CLI ✩✩✩✩If you wish to swap the PHP you use on the command line, you should add the following to ~/.bashrc,
~/.zshrc, ~/.profile or your shell's equivalent configuration file:      export PATH="$(brew --prefix homebrew/php/php53)/bin:$PATH"To have launchd start php53 at login:
 ln -sfv /usr/local/opt/php53/*.plist ~/Library/LaunchAgents
Then to load php53 now:
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.php53.plist
==> Summary
/usr/local/Cellar/php53/5.3.29: 480 files, 31M, built in 12.9 minutes

等待PHP编译完成,开始安装PHP常用扩展,扩展安装过程中 brew会自动安装依赖包,使用 brew search php53- 命令,可以查看还有哪些扩展可以安装,然后执行 brew install php53-XXX 就可以了。     由于Mac自带了php和php-fpm,因此需要添加系统环境变量PATH来替代自带PHP版本:

echo 'export PATH="$(brew --prefix homebrew/php/php53)/bin:$PATH"' >> ~/.bash_profile  #for php
echo 'export PATH="$(brew --prefix homebrew/php/php53)/sbin:$PATH"' >> ~/.bash_profile  #for php-fpm
echo 'export PATH="/usr/local/bin:/usr/local/sbin:$PATH"' >> ~/.bash_profile #for other brew install soft
source ~/.bash_profile  #更新配置

如何卸载安装的 php5.3呢?

# 卸载
brew uninstall php53
# 清除缓存以及老旧版本文件
brew cleanup -s

测试一下效果:

$ php -v
PHP 5.3.29 (cli) (built: Jan 24 2015 12:40:58) (DEBUG)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies# mac系统自带的php
$ /usr/bin/php -v
PHP 5.4.30 (cli) (built: Jul 29 2014 23:43:29)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
with Zend Guard Loader v3.3, Copyright (c) 1998-2013, by Zend Technologies

由于我们没有安装php的fpm模式,所以 php-fpm -v 命令显示的是mac自带的:

$ php-fpm -v
PHP 5.4.30 (fpm-fcgi) (built: Jul 29 2014 23:44:15)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
with Zend Guard Loader v3.3, Copyright (c) 1998-2013, by Zend Technologies

这个时候,我们使用 phpinfo 函数显示出来的php版本还是max自带的PHP5.4,需要我们修改 apache的配置文件 httpd.conf,加载的php5模块路径指向刚刚安装的 php5.3目录里的 libphp5.so:

LoadModule php5_module    /usr/local/opt/php53/libexec/apache2/libphp5.so

重启apache,phpinfo() 脚本里显示的 php 版本就变成了 PHP Version 5.3.29。

brew 安装apache in php or mysql

我们用到php运行环境的时候总喜欢用集成包,其实在mac下,用homebrew也可以很快的安装这些东西,配置也很简单。

homebrew

homebrew是mac下的一个包安装管理工具,使用非常简单方便。

  • 安装homebrew

在终端中执行:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

这样就安装好homebrew了。

  • 安装命令行软件

如安装wget,则执行:

brew install wget

其它具体的使用方法可自行翻阅 官网(中文)

安装apache php mysql

因为apache和php不在默认的仓库里,所以我们要先添加其所在的仓库。

brew tap homebrew/apache
brew tap homebrew/php

之后就是正常的安装了,安装过程homebrew会为你自行处理各种依赖。

brew install httpd24
brew install php53
brew install mysql

注意:apache在homebrew中的名字为httpd。
这些都可以指定安装的版本,这里我安装apache2.4,php5.3,mysql是最新版。
以下的路径说明都是以这个为基准,请自行修改为你所下载的版本。

配置apache

配置文件路径为/usr/local/etc/apache2/2.4/httpd.conf,以下的配置都需要在相应的地方修改。

  • 添加php模块
# ====php module====
LoadModule php5_module /usr/local/Cellar/php53/5.3.29/libexec/apache2/libphp5.so
<IfModule mod_php5.c>

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    <IfModule mod_dir.c>
        DirectoryIndex index.html index.php
    </IfModule>
</IfModule>
  • 修改监听端口
    默认的端口为8080,我们改为80:
Listen 80
  • 修改root根目录
DocumentRoot "/Users/lonewolf/Public/dev/php/app"
<Directory "/Users/lonewolf/Public/dev/php/app">

请自行修改为你的目录

配置mysql

使用默认的mysql配置启动时,会占用434M的内存,这个占用太多了,所以要修改一下。
配置路径为/usr/local/Cellar/mysql/5.6.23/my.cnf

# ========

skip-external-locking
key_buffer = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

# ========

这样启动之后就下降到100M以下了。

到这里,我们的安装和配置就完成了,不过有一点很不好,就是启动和停止这些服务都需要在命令行下输入,有没有图形化的管理界面呢?
有的,答案是LaunchRocket,说这个之前我们先来了解一下另一个工具homebrew-cask

homebrew-cask

homebrew-cask是homebrew的一个扩展,用于安装图形界面mac程序,如google chromeQQ等等。

  • 安装
brew install caskroom/cask/brew-cask
  • 使用
brew cask install google-chrome

具体的功能请翻阅官网。

LaunchRocket

LaunchRocket是管理homebrew所安装应用的一个管理器,它在系统设置中。
安装命令:

brew cask install launchrocket

界面如下:
launchrocket

不知道为什么,httpd需要选As Root才能真正运行起来。

到此,安装、配置、运行各方面都完成了。

其它工具

最后介绍两个有用的工具:

1、cakebrew

cakebrew是图形化管理homebrew的一个软件,也就是让你不用敲命令即可安装软件。
cakebrew

2、adminer

adminer是用php写的一个数据库管理工具,可以管理 MySQL, PostgreSQL, SQLite, MS SQL, Oracle, MongoDB等类型数据库,而且还是单文件,安装部署非常方便,支持多种语言。
adminer

mac install brew in use info

brew 又叫Homebrew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件, 只需要一个命令, 非常方便

brew类似ubuntu系统下的apt-get的功能

安装brew

brew 的官方网站: http://brew.sh/   在官方网站对brew的用法进行了详细的描述

安装方法:  在Mac中打开Termal:  输入命令:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

 不知道为什么, 在国内经常被屏蔽

使用brew安装软件

一个命令就搞定了, 比如安装git

brew install git

比如安装wget

brew install wget

使用brew卸载软件

卸载更方便了

brew uninstall wget

使用brew查询软件

有时候,你不知道你安装的软件的名字, 那么你需要先搜索下, 查到包的名字。

比如我要安装

brew search /wge*/

/wge*/是个正则表达式, 需要包含在/中

其他brew命令

brew list           列出已安装的软件

brew update     更新brew

brew home       用浏览器打开brew的官方网站

brew info         显示软件信息

brew deps        显示包依赖