이 모든 작업은 루트 계정에서 수행됩니다.
나는 이 가이드를 따랐습니다.https://www.digitalocean.com/community/articles/how-to-install-rails-apache-and-mysql-on-ubuntu-with-passenger
서버에는 512MB의 RAM(절반은 공유, 절반은 "광산")만 있으므로 추가 스왑 공간을 마운트해 보았습니다.
승객 설치 가이드에 사용된 소프트웨어를 설치했습니다.
실행하고 passenger-install-apache2-module
검사 rvmsudo passenger-install-nginx-module
하는 동안 모두 녹색으로 표시되고 마지막으로 발생하는 현상은 항상 오랜 시간 동안 멈춰 SSH 세션에서 나를 쫓아내는 것입니다.
mkdir -p buildout/common/libpassenger_common/ApplicationPool2
g++ -Iext -Iext/common -Iext/libev -Wno-ambiguous-member-template -D_REENTRANT -I/usr/local/include -DHAS_TR1_UNORDERED_MAP -DHAVE_ACCEPT4 -DHAS_ALLOCA_H -DHAS_SFENCE -DHAS_LFENCE -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-long-long -Wno-missing-field-initializers -ggdb -DPASSENGER_DEBUG -DBOOST_DISABLE_ASSERTS -fcommon -feliminate-unused-debug-symbols -feliminate-unused-debug-types -fvisibility=hidden -DVISIBILITY_ATTRIBUTE_SUPPORTED -Wno-attributes -o buildout/common/libpassenger_common/ApplicationPool2/Implementation.o -c ext/common/ApplicationPool2/Implementation.cpp
Write failed: Broken pipe
머리카락을 잡아당기고 있지만 별로 도움이 되지 않습니다. 내 google-fu를 사용하여 이 문제에 대한 흔적이 없는 것 같아서 이전 시점에 서버를 FUBAR한 것 같습니다. 하지만 실제로는 레일만 설치하려고 했기 때문에 다른 것은 많지 않습니다.
중요한 경우 RVM에 Ruby가 있습니다.
어떤 아이디어가 있나요?
편집: ps xfawww 출력:
PID TTY STAT TIME COMMAND
2 ? S 0:00 [kthreadd]
3 ? S 0:01 \_ [ksoftirqd/0]
4 ? S 0:00 \_ [kworker/0:0]
5 ? S 0:00 \_ [kworker/u:0]
6 ? S 0:00 \_ [migration/0]
7 ? S 0:02 \_ [watchdog/0]
8 ? S 0:00 \_ [migration/1]
9 ? S 0:00 \_ [kworker/1:0]
10 ? S 0:01 \_ [ksoftirqd/1]
11 ? S 0:01 \_ [watchdog/1]
12 ? S 0:00 \_ [migration/2]
13 ? S 0:00 \_ [kworker/2:0]
14 ? S 0:01 \_ [ksoftirqd/2]
15 ? S 0:01 \_ [watchdog/2]
16 ? S 0:00 \_ [migration/3]
17 ? S 0:00 \_ [kworker/3:0]
18 ? S 0:01 \_ [ksoftirqd/3]
19 ? S 0:01 \_ [watchdog/3]
20 ? S< 0:00 \_ [cpuset]
21 ? S< 0:00 \_ [khelper]
22 ? S 0:00 \_ [kdevtmpfs]
23 ? S< 0:00 \_ [netns]
24 ? S 0:00 \_ [kworker/u:1]
25 ? S 0:00 \_ [xenwatch]
26 ? S 0:00 \_ [xenbus]
27 ? S 0:03 \_ [sync_supers]
28 ? S 0:00 \_ [bdi-default]
29 ? S< 0:00 \_ [kintegrityd]
30 ? S< 0:00 \_ [kblockd]
31 ? S 0:07 \_ [kworker/2:1]
32 ? S< 0:00 \_ [ata_sff]
33 ? S 0:00 \_ [khubd]
34 ? S< 0:00 \_ [md]
36 ? S 0:00 \_ [khungtaskd]
37 ? D 0:12 \_ [kswapd0]
38 ? SN 0:00 \_ [ksmd]
39 ? S 0:00 \_ [fsnotify_mark]
40 ? S 0:00 \_ [ecryptfs-kthrea]
41 ? S< 0:00 \_ [crypto]
49 ? S< 0:00 \_ [kthrotld]
50 ? S 0:00 \_ [khvcd]
51 ? S 0:07 \_ [kworker/1:1]
70 ? S< 0:00 \_ [devfreq_wq]
94 ? S 0:07 \_ [kworker/0:1]
163 ? S 0:07 \_ [kworker/3:1]
204 ? S 0:01 \_ [kjournald]
612 ? S 0:02 \_ [flush-202:1]
1 ? Ss 0:00 /sbin/init
273 ? S 0:00 upstart-udev-bridge --daemon
287 ? Ss 0:00 /sbin/udevd --daemon
376 ? S 0:00 \_ /sbin/udevd --daemon
389 ? S 0:00 \_ /sbin/udevd --daemon
394 ? Ss 0:00 /usr/sbin/sshd -D
16303 ? Ss 0:00 \_ sshd: root@pts/0
16320 pts/0 Ss 0:00 | \_ -bash
16580 pts/0 Sl+ 0:00 | \_ /usr/local/rvm/gems/ruby-2.0.0-p247/bin/passenger-install-apache2-module
16702 pts/0 Sl+ 0:00 | \_ /usr/local/rvm/gems/ruby-2.0.0-p247@global/bin/rake
17120 pts/0 S+ 0:00 | \_ g++ -Iext -Iext/common -Iext/libev -Wno-ambiguous-member-template -D_REENTRANT -I/usr/local/include -DHAS_TR1_UNORDERED_MAP -DHAVE_ACCEPT4 -DHAS_ALLOCA_H -DHAS_SFENCE -DHAS_LFENCE -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-long-long -Wno-missing-field-initializers -ggdb -DPASSENGER_DEBUG -DBOOST_DISABLE_ASSERTS -fcommon -feliminate-unused-debug-symbols -feliminate-unused-debug-types -fvisibility=hidden -DVISIBILITY_ATTRIBUTE_SUPPORTED -Wno-attributes -o buildout/common/libpassenger_common/ApplicationPool2/Implementation.o -c ext/common/ApplicationPool2/Implementation.cpp
17121 pts/0 D+ 0:05 | \_ /usr/lib/gcc/x86_64-linux-gnu/4.6/cc1plus -quiet -I ext -I ext/common -I ext/libev -I /usr/local/include -imultilib . -imultiarch x86_64-linux-gnu -D_GNU_SOURCE -D _REENTRANT -D HAS_TR1_UNORDERED_MAP -D HAVE_ACCEPT4 -D HAS_ALLOCA_H -D HAS_SFENCE -D HAS_LFENCE -D PASSENGER_DEBUG -D BOOST_DISABLE_ASSERTS -D VISIBILITY_ATTRIBUTE_SUPPORTED ext/common/ApplicationPool2/Implementation.cpp -quiet -dumpbase Implementation.cpp -mtune=generic -march=x86-64 -auxbase-strip buildout/common/libpassenger_common/ApplicationPool2/Implementation.o -ggdb -Wno-ambiguous-member-template -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-long-long -Wno-missing-field-initializers -Wno-attributes -fcommon -feliminate-unused-debug-symbols -feliminate-unused-debug-types -fvisibility=hidden -fstack-protector -o /tmp/ccYZpm8l.s
16967 ? Ss 0:00 \_ sshd: root@pts/1
16986 pts/1 Ss 0:00 \_ -bash
17128 pts/1 R+ 0:00 \_ ps xfawww
429 ? S 0:00 upstart-socket-bridge --daemon
441 ? Ss 0:00 dbus-daemon --system --fork --activation=upstart
466 ? Sl 0:35 rsyslogd -c5
517 tty4 Ss+ 0:00 /sbin/getty -8 38400 tty4
521 tty5 Ss+ 0:00 /sbin/getty -8 38400 tty5
529 tty2 Ss+ 0:00 /sbin/getty -8 38400 tty2
530 tty3 Ss+ 0:00 /sbin/getty -8 38400 tty3
532 tty6 Ss+ 0:00 /sbin/getty -8 38400 tty6
534 ? Ss 0:00 acpid -c /etc/acpi/events -s /var/run/acpid.socket
540 ? Ss 0:00 cron
541 ? Ss 0:00 atd
550 ? S 0:22 /usr/bin/daemon --pidfile /var/run/pagekite.pid.wrapper --noconfig --unsafe --respawn --delay=60 --name=pagekite -- /usr/bin/pagekite --pidfile /var/run/pagekite.pid --clean --runas=daemon:daemon --logfile=/var/log/pagekite/pagekite.log --optdir=/etc/pagekite.d --noloop
585 hvc0 Ss+ 0:00 /sbin/getty -8 38400 hvc0
587 tty1 Ss+ 0:00 /sbin/getty -8 38400 tty1
답변1
서버를 512MB RAM에서 1024MB로 업그레이드했는데 모든 것이 작동했습니다.
답변2
이 튜토리얼처럼 스왑 영역을 추가해야 합니다.https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-12-04
하지만 256K 대신 1024를 사용해야 합니다.