回答:
起動時のジオクルーの競合により11.10でRedshiftの起動が自動的に停止するという既知のバグ#868904があります。
起動時に場所を永続的に設定する可能な解決策については、バグレポートのコメント17を参照してください。
1)http://itouchmap.com/latlong.htmlまたはその他のサービスを使用して、緯度/経度を見つけます
2)redshiftの起動コマンドを次のように調整します。
gtk-redshift -l <latitude>:<longitude>
赤方偏移のアムステルダムの緯度/経度の例:gtk-redshift -l 52.37:4.9
これはパッケージ1.7-1ubuntu2で修正されたと伝えられていますが、プロジェクトのLaunchpadホームページには35週間前にビルドされた1.7-0ubuntu1しかリストされていません。
あなたは彼らのウェブサイトから直接ダウンロードして、それがそれ以降のバージョンで問題を解決するかどうか確かめることができます。
私は2つの方法を提案します:
クロンタブ
Crontabは、常に実行されているプログラムです。プログラムとスクリプト、およびそれらが実行する正確な日付または間隔のリストがあります。Crontabは、システム管理者がバックアップの作成やタスクの自動化によく使用します。
入力できるプログラムのリストを表示するには
crontab -l
リストの種類を編集するには
crontab -e
最後にこの行を追加して、コンピューターが起動するたびにredshiftを起動します
@reboot export DISPLAY=:0.0 && /usr/bin/redshift -l 56.20:16.35
56.20:16.35はLATITUDE:LONGITUTE
現在地です。保存して再起動します。
アップスタート
Upstartは、とりわけ、起動時にスクリプトを実行するために特定のフォルダーを検索するプログラムです。そのため、そこにプログラムを追加するだけで、すべてのイベントで実行できます。Upstartはcrontabよりも低レベルであり、root権限が必要です。
赤方偏移を追加するには、/etc/rc.local
ファイルを編集するだけです。赤方偏移へのパスを追加する前に、exit
ファイルまたはそうでなければ実行されません。と入力すると、パスを見つけることができますwhereis redshift
。ファイルは次のようになります。
#!/bin/sh -e
pcscd
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/usr/bin/redshift
exit 0
保存して再起動します。
syslog
は、コマンドが実行され、エラーメッセージは表示されませんが、ログイン画面が表示されるまでにプロセスは終了しています。(つまり、Redshift実行の視覚効果はありません。ログイン後、実際に実行中のRedshiftプロセスがないことを確認できます。)
コンピューターをインターネットに接続しgtk-redshift
、ターミナルで実行します。
出力は次のようになります。
maez@maez:~$ gtk-redshift
Trying location provider `geoclue'...
Started Geoclue provider `Geoclue Master'.
Using provider `geoclue'.
** (process:3541): WARNING **: Could not get location, 3 retries left.
According to the geoclue provider we're at: 18.98, 72.83
Using method `randr'.
緯度と経度を上から取得したら、「〜/ .config / autostart /」にあるRedshiftの自動起動設定ファイルを編集します。
maez@maez:~$ cd .config/autostart/
maez@maez:~/.config/autostart$ gedit redshift-gtk.desktop
geditウィンドウで、「Exec = redshift-gtk」の横に「-l 18.98:72.83」を追加します
[Desktop Entry]
Comment=Color temperature adjustment tool
StartupNotify=true
Exec=redshift-gtk -l 18.98:72.83
Terminal=false
GenericName=Color temperature adjustment
Version=1.0
Categories=Utility;
Hidden=false
Icon=redshift
Type=Application
X-GNOME-Autostart-enabled=true
Name=Redshift
ここで、18.98:72.83はLATITUDE:LONGITUTEです
このファイルを保存して再起動します。
cp /usr/share/applications/redshift.desktop ~/.config/autostart/
かなり古い質問ですが、つまずくかもしれない人にとっては、geoclueを削除して(まだ存在しない場合は)geoclue-2.0をインストールするだけで解決できる可能性があります
何かのようなもの: apt remove geoclue && apt install geoclue-2.0
ログアウトして再度ログインし、変更を確認します。
ps色がわからない場合は、ps
コマンドを使用してredshiftが実行されているかどうかを確認できます。例えばps aux | grep redshift
~/.xprofile
次の内容でファイルを作成します。
#!/bin/sh
sleep 10 && redshift -PO 4200 &
xprofileは、グラフィカルシェル(UnityまたはGnomeの)にログインした後、Xユーザーセッションの開始時に実行されます。
このコマンドredshift -PO 4200
は、温度を4200Kに設定します。
ログアウトしてからログインすることで、スクリプトをテストできます。
別の方法:
構成ファイルを作成します。例えば /etc/redshift.conf
[redshift]
location-provider=manual
[manual]
lat=xx.xxx
lon=yy.yyy
このファイルを呼び出すスクリプトを作成します、例えば/usr/local/bin/redshift.sh
(chmod 755
その後)
redshift -c /etc/redshift.conf &
ディスプレイマネージャーが起動するたびにこれを呼び出します。LightDMの場合、これは次のファイルです/etc/lightdm/lightdm.conf.d/90-redshift.conf
。
[Seat:*]
display-setup-script=/usr/local/bin/redshift.sh