使用"./bin/cassandra -f"启动Cassandra,如何恢复终端窗口?

3
使用./bin/cassandra -f命令时,会显示:
Cz@z-EX465-MX:~/cassandra$ ./bin/cassandra -f
 INFO 09:12:19,460 Logging initialized
 INFO 09:12:19,484 Heap size: 1033895936/1033895936
 INFO 09:12:19,486 JNA not found. Native methods will be disabled.
 INFO 09:12:19,501 Loading settings from file:/home/z/cassandra/conf/cassandra.yaml
 INFO 09:12:19,711 DiskAccessMode 'auto' determined to be standard, indexAccessMode is standard
 INFO 09:12:19,829 Creating new commitlog segment /var/lib/cassandra/commitlog/CommitLog-1297127539829.log
 INFO 09:12:19,888 Deleted /var/lib/cassandra/data/system/LocationInfo-f-12
 INFO 09:12:19,889 Deleted /var/lib/cassandra/data/system/LocationInfo-f-9
 INFO 09:12:19,890 Deleted /var/lib/cassandra/data/system/LocationInfo-f-11
 INFO 09:12:19,891 Deleted /var/lib/cassandra/data/system/LocationInfo-f-10
 INFO 09:12:19,939 reading saved cache /var/lib/cassandra/saved_caches/system-IndexInfo-KeyCache
 INFO 09:12:19,946 reading saved cache /var/lib/cassandra/saved_caches/system-Schema-KeyCache
 INFO 09:12:19,949 reading saved cache /var/lib/cassandra/saved_caches/system-Migrations-KeyCache
 INFO 09:12:19,952 reading saved cache /var/lib/cassandra/saved_caches/system-LocationInfo-KeyCache
 INFO 09:12:19,962 Opening /var/lib/cassandra/data/system/LocationInfo-f-13
 INFO 09:12:19,984 reading saved cache /var/lib/cassandra/saved_caches/system-HintsColumnFamily-KeyCache
 INFO 09:12:20,043 Couldn't detect any schema definitions in local storage.
 INFO 09:12:20,045 Found table data in data directories. Consider using JMX to call org.apache.cassandra.service.StorageService.loadSchemaFromYaml().
 INFO 09:12:20,058 Replaying /var/lib/cassandra/commitlog/CommitLog-1297127304757.log
 INFO 09:12:20,060 Finished reading /var/lib/cassandra/commitlog/CommitLog-1297127304757.log
 INFO 09:12:20,061 Log replay complete
 INFO 09:12:20,147 Cassandra version: 0.7.1-SNAPSHOT
 INFO 09:12:20,147 Thrift API version: 19.4.0
 INFO 09:12:20,168 Loading persisted ring state
 INFO 09:12:20,175 Starting up server gossip
 INFO 09:12:20,195 switching in a fresh Memtable for LocationInfo at CommitLogContext(file='/var/lib/cassandra/commitlog/CommitLog-1297127539829.log', position=89)
 INFO 09:12:20,197 Enqueuing flush of Memtable-LocationInfo@14850080(29 bytes, 1 operations)
 INFO 09:12:20,199 Writing Memtable-LocationInfo@14850080(29 bytes, 1 operations)
 INFO 09:12:20,604 Completed flushing /var/lib/cassandra/data/system/LocationInfo-f-14-Data.db (80 bytes)
 INFO 09:12:20,623 Starting Messaging Service on port 7000
 INFO 09:12:20,669 Using saved token 66456586001264063553489133185713650713
 INFO 09:12:20,670 switching in a fresh Memtable for LocationInfo at CommitLogContext(file='/var/lib/cassandra/commitlog/CommitLog-1297127539829.log', position=270)
 INFO 09:12:20,671 Enqueuing flush of Memtable-LocationInfo@5006112(53 bytes, 2 operations)
 INFO 09:12:20,671 Writing Memtable-LocationInfo@5006112(53 bytes, 2 operations)
 INFO 09:12:20,938 Completed flushing /var/lib/cassandra/data/system/LocationInfo-f-15-Data.db (163 bytes)
 INFO 09:12:20,945 Will not load MX4J, mx4j-tools.jar is not in the classpath
 INFO 09:12:21,008 Binding thrift service to localhost/127.0.0.1:9160
 INFO 09:12:21,013 Using TFastFramedTransport with a max frame size of 15728640 bytes.
 INFO 09:12:21,016 Listening for thrift clients...

当我浏览 127.0.0.1:9160 时,只显示一个空白页面。但是,除非按下 Ctrl+c 停止 cassandra,否则我无法使用此终端窗口。
我想知道是否可以使用 ./bin/cassandra -f & 来恢复终端窗口,但是当尝试运行 pgrep thriftpgrep cassandra 时,我什么也没找到。我不知道如何在使用其他终端窗口时停止它。
6个回答

11

-f参数是为了让Cassandra在前台运行。如果你想要将其作为守护进程运行,只需省略该参数即可。


3

问题已解决。 使用pgrep java命令查看进程。


2
在*nix系统上,您应该能够键入ctrl-z来停止前台cassandra进程。这将给您一个提示符,如果您在提示符处键入bg,则cassandra进程将被放到后台运行。您可以对任何需要后台运行的前台进程执行此操作。

1
使用以下命令运行:
./cassandra -f pid.txt
进程将自动在后台运行,并将进程ID写入文件中。使用pid.txt中的进程ID停止cassandra进程会很有用。

1
如果您同时使用-f&,则作业将在后台运行。您可以直接输入:
fg

将其带回前台,然后按CTRL-C

或使用:

jobs

查看后台进程,可以使用fg命令加上进程号。

同时,你也可以使用CTRL-Z暂停当前终端中正在运行的任何程序,然后使用:

bg

我将其放到后台运行。

下面是一个示例会话,我运行了tail两次,并演示了如何将其放到终端上和从终端上移除。

rob@deathstar:~$ tail -f /var/log/messages &
[1] 13074                                            <-- that's the PID :) 
rob@deathstar:~$ tail -f /var/log/daemon.log &
[2] 13089
rob@deathstar:~$ jobs
[1]-  Running                 tail -f /var/log/messages &
[2]+  Running                 tail -f /var/log/daemon.log &
rob@deathstar:~$ fg 1
tail -f /var/log/messages
^Z
[1]+  Stopped                 tail -f /var/log/messages
rob@deathstar:~$ bg
[1]+ tail -f /var/log/messages &
rob@deathstar:~$ jobs
[1]-  Running                 tail -f /var/log/messages &
[2]+  Running                 tail -f /var/log/daemon.log &
rob@deathstar:~$ fg 2
tail -f /var/log/daemon.log
^Z
[2]+  Stopped                 tail -f /var/log/daemon.log
rob@deathstar:~$ bg
[2]+ tail -f /var/log/daemon.log &
rob@deathstar:~$ jobs
[1]-  Running                 tail -f /var/log/messages &
[2]+  Running                 tail -f /var/log/daemon.log &
rob@deathstar:~$ 

0
在Windows的情况下,一旦服务在前台运行,集群就需要重新启动。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接