Изменение уровня запуска: init или telinit?

Вам нужно использовать данные маркера, которые вы должны подписать с помощью протокола OAuth.

Вот пример сценария Python, который будет запущен на Ubuntu, который будет подписывать URL-адрес, а затем распечатать URL; если вы затем запросите этот URL-адрес, он должен работать.

Сообщите мне, если это все еще проблематично. (Примечание: API возвращает данные как тип контента application/json, поэтому это может не быть загружено в мобильном браузере.)

import oauth, urlparse, sys
from ubuntuone.couch.auth import *
if __name__ == "__main__":
  # If you already have token details, then use them here; you'll need
  # access_token, token_secret, consumer_key, and consumer_secret. This
  # script fetches them from a running Ubuntu instead.
  try:
      credentials = get_oauth_credentials()
  except CredentialsNotFound:
      print "COULDN'T GET CREDENTIALS"
      sys.exit()
  access_token = credentials['token']
  token_secret = credentials['token_secret']
  consumer_key = credentials['consumer_key']
  consumer_secret = credentials['consumer_secret']

  # Now we have token details; let's use them to sign a request.

  token = get_oauth_token(access_token, token_secret)
  consumer = oauth.OAuthConsumer(consumer_key, consumer_secret)

  url = "https://one.ubuntu.com/api/file_storage/v1"
  request_body = ""
  signature_method = HMAC_SHA1

  parameters = {}
  query = urlparse.urlparse(url)[4]
  for key, value in urlparse.parse_qs(query).items():
      parameters[key] = value[0]

  request_len = len(request_body) if request_body else 0
  timeout = 10 * (request_len / 1024 / 1024 + 1)  # 10 seconds per megabyte

  oauth_request = oauth.OAuthRequest.from_consumer_and_token(
      http_url=url,
      http_method="GET",
      oauth_consumer=consumer,
      token=token,
      parameters=parameters)
  oauth_request.sign_request(signature_method, consumer, token)
  print oauth_request.to_url()
0
задан 11 February 2012 в 21:17

2 ответа

Страница руководства telinit (8) на ваш вопрос: используйте telinit.

telinit может использоваться для изменения уровня управления системой.
1
ответ дан 25 May 2018 в 14:22

Должно быть хорошо изменить уровень запуска с помощью одного. Поскольку init должен проверить, является ли он реальным процессом init. Или просто telinit, проверяя, является ли это pid одним, а не именем файла.

Итак, да, вы должны иметь возможность использовать их взаимозаменяемо.

Однако , Я не могу гарантировать, что нет несоответствующих систем, где это не сработает. Лучше проверить себя, если он будет работать в соответствии с вашими установками.

0
ответ дан 25 May 2018 в 14:22

Другие вопросы по тегам:

Похожие вопросы: