Я использую Ubuntu 13.10 и Lampp.
Когда я пытаюсь запустить sudo php artisan job-daemon
, я получаю сообщение выше. Но когда я запускаю php artisan job-daemon
, он работает просто отлично.
php -m
дает мне следующее:
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
imap
intl
json
ldap
libxml
mbstring
mcrypt
mhash
mssql
mysql
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pdo_sqlite
Phar
posix
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sybase_ct
sysvsem
sysvshm
tokenizer
wddx
xml
xmlreader
xmlwriter
xsl
zip
zlib
[Zend Modules]
which php
дает мне следующее:
/opt/lampp/bin/php
Почему тогда я пропускаю сообщение?
Я побежал
johnnemo@johnnemo:~$ sudo nano .bashhrc
Я добавил
export PATH=$PATH:/opt/lampp/bin/php
, но все еще не повезло .... Любые идеи ..?
$ PATH и sudo $ PATH:
sudo: /opt/lampp/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games: command not found
johnnemo@johnnemo:~$ $PATH
bash: /opt/lampp/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games: No such file or directory
Посмотрите на эту ссылку:
Модули PHP были перемещены из каталога conf.d в каталог доступных модов, и Модуль mcrypt остался позади.
ОК, поэтому проблема в том, что PATH отличается для учетной записи пользователя и учетной записи root. Попробуйте отредактировать файл профиля rood bash:
/root/.bashrc
Внизу добавьте строку
export PATH=$PATH:/opt/lampp/bin
, чтобы указать путь для запуска sudo
. Затем источник профиля:
sudo source /root/.bashrc
export PATH=/opt/lampp/bin:$PATH
НЕ
export PATH=$PATH:/opt/lampp/bin
По сути, порядок имеет значение. Теперь он сначала просматривает папку / opt / lampp / bin, чтобы найти определенные исполняемые файлы, а затем просматривает исходные пути.